2017-01-01 1 views

Répondre

5

Je piraté ce script minimum pour obtenir le Reponse JSON que le sdk nodejs retournerait:

gaction.js:

let ApiAiAssistant = require('./actions-on-google.js').ApiAiAssistant; 
const assistant = new ApiAiAssistant({request: { 
    get:function() {} 
}, response: { 
    append:function(args) {}, 
    status:function(code) { 
    console.log("code="+code); 
    return { 
     send:function(resp) { 
     console.log("response="+JSON.stringify(resp)); } 
    } 
    } 
}, 
    sessionStarted:false}); 

let permission = assistant.SupportedPermissions.NAME; 
assistant.askForPermission('To pick you up', permission); 

Je ne suis pas programmeur Node.js donc ce pourrait ne pas être une solution optimale. Lorsque vous avez installé le noeud et exécutez npm install debug. La dernière étape consiste à télécharger le fichier sdk principalactions-on-google.js. Lorsque vous avez tout cela fait, vous pouvez exécuter node gaction.js vous obtiendrez cette sortie:

code = 200
réponse = { "speech": "PLACEHOLDER_FOR_PERMISSION", "data": { "google": { "expect_user_response ": true," is_ssml ": false," no_input_prompts ": []," permissions_request ": {" opt_context ":" Pour vous récupérer "," permissions ": [" NAME "]}}}," contextOut ": [{ "name": "_ _ actions_on_google", "durée de vie": 100, "paramètres": {}}]}

Si vous envoyez maintenant JSON ci-dessus il vous sera demandé de la maison Google. S'amuser!

it works

0

La demande/réponse formats JSON pour les API.AI webhooks avec des actions est documentée à https://developers.google.com/actions/apiai/webhook

Comme vous l'avez découvert, l'attribut data.google.permissions_request contient deux champs concernant la demande:

  1. opt_context contient une chaîne qui est lu pour donner un peu de contexte au sujet de pourquoi vous demandez l'information.

  2. permissions est un tableau de chaînes spécifiant les informations que vous demandez. Les cordes peuvent avoir les valeurs

    • NOM
    • DEVICE_COARSE_LOCATION
    • DEVICE_PRECISE_LOCATION