首页 文章

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

提问于
浏览
0

我使用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的答复的确切格式 .

4 回答

  • 2

    我遇到了同样的问题,在对话框流下使用json下面解决了:

    enter image description here

    我做了一个简单的节点程序,它接受一个post响应并返回Dialogflow接受的格式的json . 你可以用你喜欢的任何方式发送你的请求 . 检查Fulfillment status选项卡:

    enter image description here

  • 0

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

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

    仅消息是不够的 . 有关预期参数的完整列表和JSON格式,请参阅Dialogflow V2 webhook履行文档 .

    您确定使用的是DialogFlow API的V2吗?

  • 0

    字段messageswas renamed/refactored to fulfillmentMessages - "can not find"表示它不是定义中的属性 . 这是v2接受的一些可比结果:

    {
       "fulfillmentText": "response text",
       "fulfillmentMessages": [{"simpleResponses": {"simpleResponses": [   {
          "textToSpeech": "response text",
          "displayText": "response text"
       }]}}]
    }
    

相关问题