def doResponse(self, query, UUID='', onSay=None): statistic.report(1) self.interrupt() self.appendHistory(0, query, UUID) if config.get('/LED/enable', False): LED.think() if onSay: self.onSay = onSay if query.strip() == '': self.pardon() return lastImmersiveMode = self.immersiveMode if not self.brain.query(query): # 没命中技能,使用机器人回复 msg = self.ai.chat(query) self.say(msg, True, onCompleted=self.checkRestore) else: if lastImmersiveMode is not None and lastImmersiveMode != self.matchPlugin: time.sleep(1) if self.player is not None and self.player.is_playing(): logger.debug('等说完再checkRestore') self.player.appendOnCompleted(lambda: self.checkRestore()) else: logger.debug('checkRestore') self.checkRestore() if config.get('/LED/enable', False): LED.off()
def doResponse(self, query, UUID=''): statistic.report(1) self.interrupt() self.appendHistory(0, query, UUID) if not self.brain.query(query): # 没命中技能,使用机器人回复 msg = self.ai.chat(query) self.say(msg, True, onCompleted=self.checkRestore)
def doResponse(self, query, UUID=''): statistic.report(1) self.interrupt() self.appendHistory(0, query, UUID) if not self.brain.query(query, self.immersiveMode): # 没命中技能,使用机器人回复 msg = self.ai.chat(query) self.say(msg, True) if self.immersiveMode: self.brain.restore(self.immersiveMode)
def run(self): self.init() # capture SIGINT signal, e.g., Ctrl+C signal.signal(signal.SIGINT, self._signal_handler) # site server.run(self._conversation, self) statistic.report(0) self.initDetector()
def doResponse(self, query, UUID=''): statistic.report(1) self.interrupt() self.appendHistory(0, query, UUID) if query.strip() == '': self.say("抱歉,刚刚没听清,能再说一遍吗?", cache=True, onCompleted=self.checkRestore) return if not self.brain.query(query): # 没命中技能,使用机器人回复 msg = self.ai.chat(query) self.say(msg, True, onCompleted=self.checkRestore)
def run(self): self.init() # capture SIGINT signal, e.g., Ctrl+C signal.signal(signal.SIGINT, self._signal_handler) # site server.run(self._conversation, self) statistic.report(0) try: self.initDetector() except AttributeError: logger.error('初始化离线唤醒功能失败') pass