首页 文章

DialogFlow中的fulfillmentText与fulfillmentMessages

提问于
浏览
0

我正在制作一个目前正在使用Google Hangout Chat的Chatbot,但它将被移植到其他聊天平台上 .
聊天代码在Node.js后端处理,Intent标识使用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"
      ]
    }
  }
],

我的问题是我应该在 fulfillmentTextfulfillmentMessages 之间使用什么?两者之间有什么区别 . 为什么有多个文本/消息,因为Hangout Chat只需要一个文本响应?

PS:我正在使用DialogFlow V2 API

1 回答

  • 0

    Dialogflow Docs得到这个

    fulfillmentText(String)要发送给用户或显示在屏幕上的文本 . fulfillmentMessages(Object)收集显示用户的丰富消息 .

    所以我应该使用 fulfillmentText 作为环聊聊天响应的 text 属性发送 . fulfillmentMessages 用于 "Rich Messages" ,例如我从我的数据库生成的卡片 .

相关问题