如何在Google Dialogflow电话网关中访问呼叫者电话号码?

时间:2018-11-23 12:08:51

标签: google-cloud-functions dialogflow chatbot

我已激活Dialogflow电话网关,任何人都可以拨打我的Google号码并与Dialogflow进行交互。当有人呼叫我的Dialogflow电话号码时,我想访问呼叫者号码。我已使用Firebase的云功能启用了全功能。我要使用云功能访问呼叫者电话号码吗?

3 个答案:

答案 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

也许这是适合您的解决方法