我正在尝试使用一个简单的webhook(用PHP编写)来与Google上的dialogflow /动作一起使用。我有一个对话框流程意图标签为“ hello”,该意图链接到“ Google Assistant Welcome”和对话框流程“ welcome”事件。
设置为启用Webhook,并且在对话框流测试区域中一切正常。但是,当我在Google Assistant中对其进行测试时,出现以下错误:
“格式错误的响应 无法将Dialogflow响应解析为AppResponse。”
我不知道怎么了。这是我的JSON响应的样子:
{
"payload": {
"google": {
"expectUserResponse": false,
"richResponse": {
"items": {
"simpleResponse": {
"textToSpeech": "test speech"
}
}
}
}
},
"fulfillmentText": "fulfillment test"
}
谢谢!
答案 0 :(得分:1)
它在Dialogflow测试区域中起作用,因为它仅测试响应的Dialogflow部分。它会忽略特定于平台的payload
区域下的任何内容。
您的有效载荷包含一个小错误。 richResponse
的items
属性应该是item对象的数组,即使您只发送一个。
因此JSON的该部分应类似于:
"richResponse": {
"items": [
{
"simpleResponse": {
"textToSpeech": "test speech"
}
}
]
}