如何使用实现对具有相同意图的不同平台进行不同的响应

时间:2019-09-26 13:45:44

标签: node.js dialogflow

我希望有一定的检查条件。如果为真,我希望该机器人拨打电话;否则,我希望该机器人合成特定的消息。如果平台不支持电话,则仅显示一些文本而不检查条件。 在意图构造函数本身中,对于具有相同意图的不同平台具有不同的响应是很容易的,但是如果我启用该意图的实现,将变得很困难。我知道,可以添加

之类的文本
agent.add("text here")

,它将显示文本消息。根据平台的不同,我想对此意图有不同的答复,但是我在webhook客户端文档中找不到此功能的任何字段(例如agent.platforms)。我也希望能够从履行中拨打电话。我试图用json对象替换文本消息:

agent.add({
  "facebook": {
    "text":"hi123"
  },
  "hangouts": {
  },
  "kik": {
  },
  "line": {
  },
  "skype": {
  },
  "slack": {
  },
  "telegram": {
  },
  "viber": {
  }
});

但这没用。

1 个答案:

答案 0 :(得分:0)

您无法使用agent.add()指定动态响应,它只是用于在代理响应中添加文本。

您需要使用自定义有效负载来生成特定于集成的响应,如以下页面所述:[class.dtor]/2