【发布时间】:2018-09-22 11:34:02
【问题描述】:
我正在制作一个聊天机器人,目前正在使用 Google Hangout Chat,但将移植到其他聊天平台上。
聊天代码在 Node.js 后端处理,意图识别使用 DialogFlow 的 Nodejs API 完成。
环聊回复如下:
{
thread: {
name: thread.name
},
text: 'The response in text',
cards:['List of cards to show data']
}
数据工作正常,但我一直在解析从 DialogFlow 获得的响应并决定响应的 text 属性。有两个选项可以选择作为text 属性发送。一个是queryResult.fulfillmentText,它只是一个字符串,很容易分配给text 属性,而另一个是queryResult.fulfillmentMessages,它是在某处包含相同文本的对象数组。这就是我的情况:
"fulfillmentText": "We could find few matching products based on your query",
"fulfillmentMessages": [
{
"text": {
"text": [
"We could find few matching products based on your query"
]
}
},
{
"text": {
"text": [
"2nd text"
]
}
}
],
我的问题是我应该在fulfillmentText 和fulfillmentMessages 之间使用什么?还有他们两者有什么区别。鉴于 Hangout Chat 只需要一个文本响应,为什么会有多个文本/消息?
PS:我正在使用 DialogFlow V2 API
【问题讨论】:
标签: javascript node.js google-cloud-platform dialogflow-es hangouts-chat