From 27b1e2b22c06621373fb6d271cdb38a43a4600a5 Mon Sep 17 00:00:00 2001 From: Jonathan D'Orleans <jonathan.dorleans@gmail.com> Date: Thu, 26 May 2016 16:10:05 -0400 Subject: [PATCH] Issues 54 - Displaying pairing code only once --- mycroft/client/enclosure/enclosure.py | 11 +++++++---- mycroft/skills/pairing/__init__.py | 4 +++- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/mycroft/client/enclosure/enclosure.py b/mycroft/client/enclosure/enclosure.py index 203877a1a1..0c9f687f29 100644 --- a/mycroft/client/enclosure/enclosure.py +++ b/mycroft/client/enclosure/enclosure.py @@ -164,12 +164,15 @@ class Enclosure: def __register_events(self): self.client.on('mycroft.paired', self.__update_events) + self.client.on('recognizer_loop:wakeword', self.eyes.blink) + self.__register_mouth_events() + + def __register_mouth_events(self): self.client.on('recognizer_loop:listening', self.mouth.listen) self.client.on('recognizer_loop:audio_output_start', self.mouth.talk) self.client.on('recognizer_loop:audio_output_end', self.mouth.reset) - self.client.on('recognizer_loop:wakeword', self.eyes.blink) - def __remove_events(self): + def __remove_mouth_events(self): self.client.remove('recognizer_loop:listening', self.mouth.listen) self.client.remove('recognizer_loop:audio_output_start', self.mouth.talk) @@ -180,9 +183,9 @@ class Enclosure: def __update_events(self, event=None): if event and event.metadata: if event.metadata.get('paired', False): - self.__register_events() + self.__register_mouth_events() else: - self.__remove_events() + self.__remove_mouth_events() def run(self): try: diff --git a/mycroft/skills/pairing/__init__.py b/mycroft/skills/pairing/__init__.py index 52baf6a5a5..060506b7ed 100644 --- a/mycroft/skills/pairing/__init__.py +++ b/mycroft/skills/pairing/__init__.py @@ -29,6 +29,7 @@ class PairingSkill(MycroftSkill): def __init__(self): super(PairingSkill, self).__init__(name="PairingSkill") self.client = None + self.displaying = False def initialize(self): intent = IntentBuilder("PairingIntent").require( @@ -54,7 +55,8 @@ class PairingSkill(MycroftSkill): self.__emit_paired(True) self.emitter.remove("recognizer_loop:audio_output_start", self.__display_pairing_code) - else: + elif not self.displaying: + self.displaying = True self.enclosure.mouth_text( "Pairing code: " + self.client.pairing_code)