我有一个webhook服务器,它使用丰富的消息对象响应Dialogflow,这些对象在Google Assistant上运行。
但是,如果用户从Google Assitant以外的其他平台(例如网络或Amazon Alexa)与我的机器人聊天,我想发送基本的文本响应。
浏览完文档后,我不确定如何发送响应消息对象,该对象将在用户使用 Google 助理时显示富消息对象,并在其他平台上发送纯文本响应作为后备。
这是我当前的富消息响应对象的格式,取自文档:https://dialogflow.com/docs/reference/agent/message-objects#basic_card_response
{
"messages": [
{
"buttons": [
{
"openUrlAction": {
"url": "https://linkUrl.com"
},
"title": "AoG Card Link title"
}
],
"formattedText": "AoG Card Description",
"image": {
"url": "http://imageUrl.com"
},
"platform": "google",
"subtitle": "AoG Card Subtitle",
"title": "AoG Card Title",
"type": "basic_card"
}
]
}
为此,您只需在messages
对象中包含常规文本/语音响应。
在/query 文档中,查看 POST 响应示例。
您的 JSON 应如下所示:
{
"messages": [
{
"buttons": [
{
"openUrlAction": {
"url": "https://linkUrl.com"
},
"title": "AoG Card Link title"
}
],
"formattedText": "AoG Card Description",
"image": {
"url": "http://imageUrl.com"
},
"platform": "google",
"subtitle": "AoG Card Subtitle",
"title": "AoG Card Title",
"type": "basic_card"
},
{
"speech": "text response",
"type": 0
}
]
}