关于pi的Google助手sdk对自定义操作不采取任何措施

时间:2017-06-25 00:25:06

标签: google-assistant-sdk

我已经使用Raspberry Pi设置了Google智能助理。我想定义一个自定义操作,但它不起作用。 Google智能助理会识别该句子,但不执行任何操作。 Here's a log。我该如何解决?

我已编辑action.py以放置我的代码

class SwitchControl(object):
        """Control a RC-Socket"""


        COMMAND_ON = 'sudo /home/pi/rcswitch-pi/send 00111 3 1'
        COMMAND_OFF = 'sudo /home/pi/rcswitch-pi/send 00111 3 0'


        def __init__(self, say, toggle):
                self.say = say
                self.toggle = toggle

        def run(self, voice_command):
                try:
                        if (self.toggle == 'ON'):
                                self.say(_('Turning switch on.'))
                                for i in range(10):
                                        subprocess.call(SwitchControl.COMMAND_ON, shell=True)
                        elif (self.toggle =='OFF'):
                                self.say(_('Turning switch off.'))
                                for i in range(10):
                                        subprocess.call(SwitchControl.COMMAND_OFF, shell=True)
                except (ValueError, subprocess.CalledProcessError):
                        logging.exception("Error using codesend to toggle rc-socket.")            self.say("Sorry I didn't identify that command")

    # =========================================
    # Makers! Add your own voice commands here.
    # =========================================

    actor.add_keyword(_('pi power off'), PowerCommand(say, 'shutdown'))
    actor.add_keyword(_('pi reboot'), PowerCommand(say, 'reboot'))
    actor.add_keyword(_('switch on'), SwitchControl(say, 'ON'))
    actor.add_keyword(_('switch off'), SwitchControl(say, 'OFF'))
    return actor

1 个答案:

答案 0 :(得分:0)

好吧最后我设法使它工作:) 要做出本地操作,您需要了解的第一件事就是使用云语音。 然后我被卡住,因为在我的终端 当我启动谷歌助手时,我没有看到: [2017-07-26 09:25:20,672]信息:主要:准备好...... 按GPIO 23上的按钮然后说话,或按Ctrl + C退出...

我只看到了START RECORDING

所以我抓住了像magpi的像素raspbian的图像,它正在与这个发行版合作,然后我把我的旧sdcard与我的raspbian重新测试和tada它正在工作!!!