Как вы относитесь к данному параметру имени в коде выполнения? - PullRequest
0 голосов
/ 01 января 2019

Я создал намерение в веб-интерфейсе Dialogflow.Он автоматически обнаружил параметр с именем имя-имени, который отображает его как $given-name в веб-интерфейсе.Я пытаюсь обратиться к $given-name в встроенном редакторе выполнения, предоставляемом веб-интерфейсом, но у меня ничего не получается.

Я попытался изменить имя параметра на случай верблюда, а также в качестве альтернативы использованию символа подчеркивания для замены дефиса, но ни один из них не работал.

Вот фрагмент кода из выполнения диалогового потокавстроенный редактор:

'use strict';

// Import the Dialogflow module from the Actions on Google client library.
const {dialogflow} = require('actions-on-google');

// Import the firebase-functions package for deployment.
const functions = require('firebase-functions');

// Instantiate the Dialogflow client.
const app = dialogflow({debug: true});

// Can't address given-name, intentionally used an underscore 
app.intent('run demo', (conv, {given_name}) => {
conv.close('Hi ' + given_name +'! This is the demo you asked me to run!');
});

// Set the DialogflowApp object to handle the HTTPS POST request.
exports.dialogflowFirebaseFulfillment = functions.https.onRequest(app);

Я хочу знать правильный способ адресации указанного параметра имени в разделе кода app.intent('run demo', (conv ...);

1 Ответ

0 голосов
/ 01 января 2019

Решение

Одно решение, которое я нашел, это кусок кода:

app.intent('run demo', (conv, params) => {
    conv.close('Hi ' + params['given-name'] +'! This is the demo you asked me to run!');
});

Объяснение

(conv, params) => {...} из app.intent('run demo',... на самом деле является функцией обратного вызова, котораяявляется анонимным (анка функция обратного вызова).conv и params являются аргументами / параметрами, передаваемыми в функцию обратного вызова.Определение функции, по-видимому, находится на этой странице API: Callable .Это статистика параметров / аргументов, которые могут быть переданы, могут быть conv, params, argument, status.

Заключительные мысли

Справка по API для действий в Google помогла: Действия над ссылкой на API Google API

...