我使用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 回答
我遇到了同样的问题,在对话框流下使用json下面解决了:
我做了一个简单的节点程序,它接受一个post响应并返回Dialogflow接受的格式的json . 你可以用你喜欢的任何方式发送你的请求 . 检查Fulfillment status选项卡:
从v1到v2,响应对象几乎完全改变 . 对于简单的文本,您可以使用如下:
仅消息是不够的 . 有关预期参数的完整列表和JSON格式,请参阅Dialogflow V2 webhook履行文档 .
您确定使用的是DialogFlow API的V2吗?
字段messageswas renamed/refactored to fulfillmentMessages - "can not find"表示它不是定义中的属性 . 这是v2接受的一些可比结果: