如何使用dialogflow webhook v2 / v1来响应丰富的消息

时间:2018-03-14 13:26:37

标签: dialogflow

尝试实现的方案: 当用户说'#34;批准"机器人必须与api / webhook交谈并使用带有标题和小描述的列表进行回复

标题1 ABCD

标题2 EFGH

用户将点击选择任何人。

整合类型:网站整合

我想使用nodejs作为webhook v2使用,是否有特定于此的样本。

我在v1 webhook中看到,只有一个选项可以发送一个文本作为回复。我不知道也许它在v2中支持任何人都可以分享一些样本和信息

  

return res.json({           演讲:' text',           displayText:' title',           来源:' getevents'       });

2 个答案:

答案 0 :(得分:1)

在Dialogflow webhook中,当Google Actions通过Dialogflow v2调用您的实现时,它定义JSON负载格式。因此,dialogflow本机不支持列表丰富的响应,因此需要应用Google动作提供的JSON代码
这是列表模板的示例代码

    "messages": [
  {
    "items": [
      {
        "description": "Item One Description",
        "image": {
          "url": "http://imageOneUrl.com"
          "accessibilityText": "Image description for screen readers"
        },
        "optionInfo": {
          "key": "itemOne",
          "synonyms": [
            "thing one",
            "object one"
          ]
        },
        "title": "Item One"
      },
      {
        "description": "Item Two Description",
        "image": {
          "url": "http://imageTwoUrl.com"
          "accessibilityText": "Image description for screen readers"
        },
        "optionInfo": {
          "key": "itemTwo",
          "synonyms": [
            "thing two",
            "object two"
          ]
        },
        "title": "Item Two"
      }
    ],
    "platform": "google",
    "title": "Title",
    "type": "list_card"
  }
]

您可以从此来源link中找到更多信息, here

上有关于如何使用实现网络挂钩实现此目标的教程

但是,如果要避免这种麻烦,可以将dialogflow与某些第三方应用程序(例如Kommunicate)集成以构建每条丰富的消息。他们可以使用自定义有效载荷Dialogflow来实现丰富消息,而Google Assistant和Kommunicate支持所有类型的丰富消息,例如按钮,链接,卡轮播的图像等,并提供相同的示例代码。有关更多详细信息,请选中此article

免责声明:我为Kommunicate工作

答案 1 :(得分:0)

您可以在V1中使用Quick Replies Message Object。 只需回复以下内容:

{
    'messages': [
        {
            'type': 2,
            'platform': 'line',
            'title': 'title',
            'replies': [
                'select one',
                'select one',

            ]
        },
    ]
}