我使用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,则我希望得到不同的响应,因为默认响应将传递给默认机器人 “我知道我可以将Messenger集成到网站中,但是当我将它用于更多机器人时,我想了解这种方式。”
答案 0 :(得分:0)
您可以使用与代理相同的库来执行此操作。要发送特定的平台响应,只需将平台添加到响应中即可。例如,如果您要专门向Google Assistant发送文本,则可以使用agent.add(new Text({ text: 'text_here', platform: 'ACTIONS_ON_GOOGLE'}));
进行操作。
完整的Dialogflow实现代码可在GitHub上找到。 https://github.com/dialogflow/dialogflow-fulfillment-nodejs。我还修改了一些代码来设置此库中不可用的其他一些响应,例如电话传输和语音响应。因此,如果您愿意,也可以这样做。