Как интегрировать ответы Google Actions в ответ webhook в Dialogflow?
Я пытаюсь выяснить, как я могу встроить ответы Google Actions, такие как карусель карточек, в ответ webhook для DialogFlow.
На https://developers.google.com/actions/dialogflow/webhook я нашел следующую информацию:
Формат ответа веб-крючка Dialogflow содержит стандартное содержимое ответа веб-крючка Dialogflow и объект data.google, который очень похож на стандартный ответ веб-крючка разговора со следующими общими различиями.
Поэтому я попытался расширить ответ webhook с помощью data.google
структура следующим образом:
{
"fulfillmentText":"Please select any card you like.",
"data":{
"google":{
...
}
}
}
При тестировании в консоли я получаю следующую ошибку:
Не удалось позвонить через Интернет. Ошибка: не удалось разобрать ответ JSON webhook: не удается найти поле: данные в сообщении google.cloud.dialogflow.v2beta1.WebhookResponse.
Глядя на определение WebhookResponse
Похоже, действительно нет data
поле.
Я хожу по кругу. Мой вопрос в основном: как я могу обогатить ответы веб-крючка Dialogflow ответами на действия Google?
1 ответ
Документация по действиям в Google по-прежнему относится к документации по протоколу Dialogflow V1, а библиотека node.js от Google поддерживает только протокол V1. Поскольку кажется, что вы пытаетесь использовать Dialogflow V2 Beta, вам необходимо изменить формат JSON.
Вместо использования data.google
структура данных, как и в V1, V2Beta использует payload.google
поле (то есть payload
объект, который имеет google
объект в нем). (См. https://dialogflow.com/docs/fulfillment разделе "Ответ" и щелкните вкладку V2.)
payload.google
поле будет установлено на то же самое, что содержимое data.google
поле было установлено в.