2017-08-13 1 views
0

Après cette commande dans Node.js en utilisant le module ApiAiApp:réponse Permission non traitée correctement

app.askForPermission('To know what day it is where you are', 
        app.SupportedPermissions.DEVICE_PRECISE_LOCATION); 

Je reçois ce qui suit dans les actions sur Google Simulator.

Il invite correctement pour ma réponse, mais alors est confus et ne reconnaît pas ma réponse! Y a-t-il un élément manquant ou cassé dans mon agent API.AI? Après le , il n'y a pas d'autres appels d'exécution.

enter image description here

+0

Pouvez-vous inclure dans votre question des captures d'écran de l'intention selon laquelle vous devriez traiter la réponse et obtenir les informations de localisation? – Prisoner

Répondre

0

Le concept que je manque est mentioned here. Tout ce que vous avez à faire est de créer une intention de repli d'enfant pour l'intention que vous demandez des autorisations. Par conséquent, si vous avez quelques intentions qui demandent des autorisations, chacune d'entre elles a besoin de son propre objectif de repli.

+0

Alors que le repli inetnt fonctionne, il fonctionne plus par accident que la conception. Voyez ma demande d'images d'écran pour clarifier votre question. – Prisoner

3

Le problème est probablement que vous devez définir une intention qui sera déclenchée lorsque l'autorisation est accordée. Pour ce faire, définissez l'événement sur actions_intent_PERMISSION.

Cela ressemble à quelque chose comme ceci:

enter image description here

Vous pouvez définir l'action à tout ce qui est logique pour votre webhook, et assurez-vous de permettre l'exécution de webhook de l'intention aussi bien.

Si vous devez suivre l'origine de la demande d'autorisation et la gérer via une action différente, vous pouvez définir un contexte et gérer des intentions différentes en fonction de différents paramètres de contexte. La méthode d'intention de repli fonctionne car il n'y a pas de meilleure correspondance à ce stade puisque vous n'avez pas spécifié d'intention régulière avec actions_intent_PERMISSION. Ce n'est pas le meilleur choix, cependant, car il pourrait correspondre à d'autres situations de votre utilisateur.