2017-07-05 1 views
2

J'ai écrit une compétence de maison intelligente pour Alexa, qui interagit avec un tas de RIS apis j'ai créé. Il a intégré avec mon serveur OAUTH2, tout bon.Actions sur Google Smart Home

J'ai essayé de lire la documentation Actions limitées sur Google, et j'ai regardé l'exemple de l'application Node sur github, et je suis perplexe. L'action.json semble prendre une seule URL - je ne sais pas sur ce que cela devrait être, l'exemple prend la route facile de passer une seule URL, puis de décider de synchroniser/exécuter etc comme paramètre url dans l'index.js, ce que je ne veux pas faire. Quelqu'un peut-il expliquer comment cela fonctionne pour eux? Je vois un tas d'autres personnes qui luttent ici, donc je prends un peu de réconfort pour que je sois épaisse, mais je ne suis pas seule!

Répondre

0

Depuis que vous avez développé une compétence de maison intelligente Alexa, vous devez connaître l'adaptateur de compétences hébergé en tant que fonction Lambda. L'exemple de programme Node.js fonctionne exactement comme l'adaptateur de compétences.

Lorsque Google Home appelle votre application résidentielle intelligente, elle envoie la demande à l'URL dans le fichier action.json. Vous pouvez utiliser l'exemple d'application Node.js pour cette URL, puis écrire votre fonction pour gérer les requêtes de synchronisation/d'exécution. Cette partie devrait être très similaire aux API REST que vous avez créées pour Alexa.

+0

merci Chris - Je m'attendais à des comportements différents obvs - de sorte que l'action google home attend une seule route qui va ensuite gérer toute invocation, et je pars de là? – MadgeMan

+0

Oui, dans l'exemple Node app smart-home-provider/smart-home-app.js, il y a un app.post ('/ ha', fonction (requête, réponse).) Tout commence ici. , action.devices.SYNC est similaire à Alexa.ConnectedHome.Discovery d'Alexa, action.devices.EXECUTE est similaire à Alexa.ConnectedHome.Control Alexa. –

+0

parfait, merci Chris :) – MadgeMan