如何在 Dialogflow 的 webhook 响应中集成 Google 操作响应?
How can I integrate the Google Actions responses in a webhook response in Dialogflow?
我正在尝试弄清楚如何在 DialogFlow 的 webhook 响应中嵌入 Google 操作响应,例如 cards carousel。
在https://developers.google.com/actions/dialogflow/webhook上,我找到了以下信息:
Dialogflow webhook 的响应格式包含标准 Dialogflow webhook 响应内容和一个非常类似于标准对话 webhook 响应的 data.google 对象具有以下一般差异。
所以我尝试使用如下 data.google
结构扩展 webhook 响应:
{
"fulfillmentText":"Please select any card you like.",
"data":{
"google":{
...
}
}
}
在 console 中测试时,出现以下错误:
Webhook 调用失败。错误:无法解析 webhook JSON 响应:找不到字段:消息中的数据 google.cloud.dialogflow.v2beta1.WebhookResponse.
查看definition of WebhookResponse
,好像确实没有data
字段。
我在兜圈子。我的问题基本上是:如何使用 Google 操作响应来丰富 Dialogflow webhook 响应?
Google 上的操作文档仍然引用 Dialogflow V1 协议文档,Google 中的 node.js 库仅支持 V1 协议。由于听起来您正在尝试使用 Dialogflow V2 Beta,因此您需要更改格式化 JSON.
的方式
与 V1 中使用 data.google
数据结构不同,V2Beta 使用 payload.google
字段(即一个 payload
对象具有 google
对象在里面)。 (请参阅 "Response" 部分下的 https://dialogflow.com/docs/fulfillment#requirements,然后单击 V2 选项卡。)
payload.google
字段将设置为与 data.google
字段的内容设置相同的内容。
我正在尝试弄清楚如何在 DialogFlow 的 webhook 响应中嵌入 Google 操作响应,例如 cards carousel。
在https://developers.google.com/actions/dialogflow/webhook上,我找到了以下信息:
Dialogflow webhook 的响应格式包含标准 Dialogflow webhook 响应内容和一个非常类似于标准对话 webhook 响应的 data.google 对象具有以下一般差异。
所以我尝试使用如下 data.google
结构扩展 webhook 响应:
{
"fulfillmentText":"Please select any card you like.",
"data":{
"google":{
...
}
}
}
在 console 中测试时,出现以下错误:
Webhook 调用失败。错误:无法解析 webhook JSON 响应:找不到字段:消息中的数据 google.cloud.dialogflow.v2beta1.WebhookResponse.
查看definition of WebhookResponse
,好像确实没有data
字段。
我在兜圈子。我的问题基本上是:如何使用 Google 操作响应来丰富 Dialogflow webhook 响应?
Google 上的操作文档仍然引用 Dialogflow V1 协议文档,Google 中的 node.js 库仅支持 V1 协议。由于听起来您正在尝试使用 Dialogflow V2 Beta,因此您需要更改格式化 JSON.
的方式与 V1 中使用 data.google
数据结构不同,V2Beta 使用 payload.google
字段(即一个 payload
对象具有 google
对象在里面)。 (请参阅 "Response" 部分下的 https://dialogflow.com/docs/fulfillment#requirements,然后单击 V2 选项卡。)
payload.google
字段将设置为与 data.google
字段的内容设置相同的内容。