我想使用 dialogflow fulfillment 发送特定于平台的响应

I want to send platform specific responses using dialogflow fullfilment

我在网站上使用 dialogflow 构建了一个集成到 Messenger 和默认 bot 的机器人,现在该机器人具有默认响应和 Messenger 响应,但是当我完成任务时,我无法为每个

设置特定响应

这是我的代码

 function time(agent) {
    if (currentlyOpen()) {
      agent.add(`Hi, We're open now! We close at 11pm today.`);
    } else {
      agent.add(`We're currently closed, but we open every day at 6am!`);
    }
  }

如果我使用 Messenger,我希望得到不同的响应,因为默认响应转到默认 bot "I know I can inrtegrate messenger in the website but I want to know this way as I use it for more bots"

您可以使用与代理相同的库来完成此操作。要发送特定平台响应,只需将平台添加到响应中即可。例如,如果您想专门向 Google 助理发送一条文本,则可以使用 agent.add(new Text({ text: 'text_here', platform: 'ACTIONS_ON_GOOGLE'})); 来实现。

GitHub 上提供了完整的 Dialogflow 实现代码。 https://github.com/dialogflow/dialogflow-fulfillment-nodejs。我还修改了一些代码来设置一些其他的响应,这些响应在这个库中不可用,例如电话转接和语音响应。所以,如果你愿意,你也可以这样做。