我已激活Dialogflow电话网关,任何人都可以拨打我的Google号码并与Dialogflow进行交互。当有人呼叫我的Dialogflow电话号码时,我想访问呼叫者号码。我已使用Firebase的云功能启用了全功能。我要使用云功能访问呼叫者电话号码吗?
答案 0 :(得分:1)
在仔细研究了这个示例(https://github.com/dialogflow/fulfillment-telephony-nodejs)之后,我发现Firebase实现中的agent.parameters.phone
正在访问手动收集的参数,如json中为其中一种意图所定义:第68行: (https://github.com/dialogflow/fulfillment-telephony-nodejs/blob/master/dialogflow-agent/intents/makeRes.json)。
这是标准的DialogFlow功能。它不代表会话元数据,我认为这是您要的。因此,无法访问传入的电话号码。
答案 1 :(得分:0)
Google整理了一个示例,介绍了用于电话的Dialogflow实现,这应该有帮助:
https://github.com/dialogflow/fulfillment-telephony-nodejs
您要查找的特定代码在functions / index.js中,第40-43行:
agent.handleRequest(agent => {
let [date, time, name, group, phone] = [agent.parameters.date, agent.parameters.time, agent.parameters.name, agent.parameters.groupN, agent.parameters.phone];
您可以通过agent.parameters.phone
参数访问用户的电话号码
答案 2 :(得分:0)
我根本不提供市场营销中的dialogflow电话号码,而是给 twilio电话号码,一旦有人拨打该电话,我就会记下 降低呼叫者的电话号码并将呼叫重定向到dialogflow电话 数字,以便我的客户开始与dialogflow对话。
https://github.com/dialogflow/dialogflow-fulfillment-nodejs/issues/285
也许这是适合您的解决方法