如何在实现对话框流中从 Twilio 获取 phone 号码

How can I get the phone number from Twilio in fulfillment dialogflow

我在 Twilio 和 Dialogflow 之间的 whastapp 机器人中工作。在其中一个意图中,我将媒体文件从 dialogflow 发送给用户。这就是问题所在,现在它正在使用我的硬编码手机号码,但我需要在每种情况下访问用户 phone 号码才能发送媒体文件。

我在 fulfillment dialogflow, inline editor 中开发了这个,使用了一些 nodejs 代码,但是在那里我无法访问用户号。

实现节点 js

function sendAudioMensaje(agent) {
     client.messages.create({
       body: 'Body message',
       to: 'whatsapp:+34---------',  // Text to this number
       from: 'whatsapp:+14155238886', // From a valid Twilio number
       mediaUrl: 'https://demo.twilio.com/owl.png'
     }).then((message) => agent.add(message.sid));
   }

我希望在每次对话中都会将消息发送到当前号码

此处为 Twilio 开发人员布道师。

据我所知,Dialogflow webhook request comes with a originalDetectIntentRequest property in the JSON. This contains a OriginalDetectIntentRequest 对象有一个包含原始请求的 payload 属性。

我首先会记录 webhook 请求的内容,以查看您完全可以使用的内容。

如果有帮助请告诉我。

OriginalDetectIntent 请求的负载中,如果启用,您将在 webhook 中看到这样的 JSON。

{
  "source": "twilio",
  "data": {
    "SmsSid": "",
    "Body": "",
    "SmsStatus": "received",
    "MessageSid": "",
    "ApiVersion": "2010-04-01",
    "From": "",
    "AccountSid": "",
    "NumMedia": "0",
    "To": "",
    "SmsMessageSid": "",
    "NumSegments": "1"
  }
}