2017-08-02 5 views
0

Ich habe ein Raspberry Pi, auf dem das Google Assistant SDK läuft, und es funktioniert bis jetzt erstaunlich gut. Ich frage mich nur, wie ich benutzerdefinierte Befehle für den Assistenten machen könnte, die dann Bash-Befehle auf dem Pi auslösen würden. Jede Hilfe würde sehr geschätzt werden.Benutzerdefinierte Befehle für Google Assistant SDK

Antwort

1

Soweit ich weiß, was Sie suchen, ist komplizierter als das. Der Assistent hat keinen direkten Zugriff auf seine Umgebung, in der er installiert ist.

Also wenn es auf Ihrem Telefon ist, können Sie nicht einfach etwas direkt auf dem Telefon ausführen.

, was Sie suchen, ist eine Aktion auf Google zu erstellen:

die Aktion auf Google, die Sie auf den Assistenten mit dem Befehl wird erstellen ausgelöst es dann Wird es selbst einen Webhook auslösen (Funktion, die in der Cloud läuft), die möglicherweise in Ihrem pi gehostet wird (wenn Sie einen Webserver haben, auf den Sie öffentlich zugreifen können) und von dort aus können Sie das Skript ausführen, über das Sie sprechen. ich getan habe, dass meine Verwendung:

  • Google-Startseite ==> Aktionen auf Google ==> api.ai ==> Raspberry Pi ==> run Aktion

fühlen sich frei zu fragen, ob Sie jede Sache unklar.

+0

Ich habe von dem Ansatz des Webhooks gehört, aber ich habe keine Ahnung, wie ich das zur Arbeit bringen soll. Gibt es ein Tutorial, dem ich vielleicht folgen könnte? Danke für die Antwort. – Digiton

+0

ja, aber lassen Sie mich zuerst eine kurze Erklärung, wie es funktioniert: Sie erstellen eine Google-Aktion auf console.actions.google.com Sobald Sie fertig sind, benötigen Sie etwas für NLP (Natural Language Processing), die in meinem Fall API ist .ai und es ist ein Google-Produkt. dann von dort API.ai haben Sie einen Abschnitt namens fulfillment, wo Sie eine URL für ein Back-End (Webhook), die einige Berechnungen für Sie und Comeback mit einem anwser, die an Ihre Google Assistant-Gerät gesendet wird, um Ihre Erfüllung lokal hosten werden Suche nach Ngrok das Video, das ich verwendete: https://www.youtube.com/watch?v=Y26vvxCb3zE – Ayoub

+0

Ich kann nicht akzeptieren, dass es so kompliziert ist. Sie haben diese Demo im Code enthalten. Ich habe es einfach nicht geschafft, es zur Arbeit zu bringen. https://github.com/google/aiyprojects-raspbian/blob/aiyprojects/src/assistant_library_with_local_commands_demo.py#L68-L73 –

1

Sie können Ihre eigenen Funktionen hinzufügen, externe Befehle aufrufen usw., indem Sie das Muster in assistant_library_with_local_commands_demo.py aus dem aiyprojects-raspbian-Projekt auf GitHub verwenden. Here is a commit Hier füge ich eigene benutzerdefinierte lokale Befehle zu Google Assistant hinzu.

Sie müssen durch die Creops springen, um die Cloud Speech-API zu verwenden, aber Google Assistant wird weiterhin verwendet. Sie müssen keine "Aktionen bei Google" verwenden, die von @Ayoub oben beschrieben wurden.

Hinweis: Wenn Sie die assistant.stop_conversation() einzuschliessen, wie ich zum ersten Mal tat, erhalten Sie eine seltsame Reaktion mit 2 Stimmen mit dir zu reden.

Verwandte Themen