我有一个案例,我需要在用户输入内容时发送电子邮件,因此我需要使用 node.js 和亚马逊来处理电子邮件部分,但我希望响应来自 dialogflow 界面。
目前我有这样的东西:
let intentMap = new Map();
intentMap.set('Default Welcome Intent', welcome);
agent.handleRequest(intentMap);
function welcome(agent) {
var content = "Hello.\n\n"
+""
+"phone : " + agent.parameters.phoneNumber + ""
+"\nIA";
sendEmail("phone number", sendToEmail, content);
agent.add(`Thank you`);
}
如您所见,我希望 Dialogflow 仪表板响应“谢谢”回复,我会删除 agent.add(Thank you
)。
这可能吗?
最佳答案
如果“谢谢”被写为您的 Dialogflow 意图文本响应,并且您的 webhook 使用非 200 HTTP 响应或无效响应进行响应,Dialogflow 将回退到意图。
更好的是,Dialogflow 的 request您的 webhook 包含一个 fulfillmentText
属性,其中包含 Dialogflow 将在 Dialogflow 控制台的意图中使用的文本响应中的文本。您可以在 agent.add
调用中使用此字符串以确保您的 webhook 成功,并且您仍然控制来自控制台的响应。
关于javascript - Dialogflow Fullfilments 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51025891/