首页 > 解决方案 > Webhook 调用失败。错误:无法解析 webhook JSON 响应:找不到字段:消息 google.cloud.dialogflow.v2.Intent.Message 中的消息

问题描述

我使用 Dialogflow 构建了一个机器人并将其连接到本地 webhook(现在通过 ngrok 访问它)。我能够收到来自 Dialogflow 的响应,但我无法重播它。我遵循此处所示的 JSON 结构 - Test response from webhook。但我在 Dialogflow 中收到以下错误。

Webhook 调用失败。错误:无法解析 webhook JSON 响应:找不到字段:消息 google.cloud.dialogflow.v2.Intent.Message 中的消息。

以下是我发送给 Dialogflow 的回复 -

{
   "messages":[
      {
         "speech":"Text response",
         "type":0
      }
   ]
}

请告诉我应该发送给 Dialogflow 的回复的确切格式是什么。

标签: webhooksdialogflow-es

解决方案


从 v1 到 v2,响应对象几乎完全改变。对于简单的文本,您可以使用如下:

{
  "fulfillmentText": "Text response",
  "fulfillmentMessages": [
    {
      "text": {
        "text": ["Text response"]
      }
    }
  ],
  "source": "<Text response>"
}

推荐阅读