def standby(self, prompt=False): logger.info("Standby") if prompt: Speaker.play_async("如果需要協助再呼叫我。") Information.set_user_speaking(False, 5) else: Information.set_user_speaking(False, 1) self._user_listener.listen_hotword()
def play_sound(self, msg, play_async=False, quieter=False): # logger.debug("play_sound: 0") now = datetime.now() if msg == self.last_kanban_msg: # logger.debug("play_sound: 1") diff = now - self.last_kanban_msg_time if diff.total_seconds() < 8: logger.warning("Skip message: " + msg) return self.last_kanban_msg = msg self.last_kanban_msg_time = now if not Speaker.is_playing(): if play_async: Speaker.play_async(msg) else: Speaker.play(msg, quieter)
def start(self): Speaker.play_async("HI,我叫小美,你好。") # Speaker.play_async("HI How are you") if not os.path.exists("user"): os.makedirs("user") if not os.path.exists("output"): os.makedirs("output") self._user_listener = UserListener.UserListener( args=(self.user_words, )) self._user_listener.start() self._user_processor = UserProcessor.UserProcessor( args=(self.user_words, self)) self._user_processor.start() Information.subscribe('sub1_arrived', self.__arrived_outdoor, True) Information.subscribe('sub4_arrived', self.__arrived_indoor, True) Information.start() Information.set_indoor(True) self.is_terminated = False
def play_sound(self, msg, play_async=False): if not Speaker.is_playing(): if play_async: Speaker.play_async(msg) else: Speaker.play(msg)