当前位置: 首页 > 知识库问答 >
问题:

调用URL获取电话号码以使用TwiML转发Twilio呼叫

郗福
2023-03-14

我正在尝试使用Twilio自动化呼叫转接。当用户调用Twilio号码时,它将播放一些欢迎信息,然后它应该调用外部API,API将返回Twilio应该调用的电话号码。我正试着用这个TwiML。这是我的TwiML-bin文档

<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Pause length="1"/>
    <Say voice="Polly.Joanna"> Welcome
    </Say>
  <Dial> HERE THE NUMBER SHOULD COME THAT API WILL RETURN
  </Dial>

</Response>

例如https://getmynumber/samplenumber是返回数字的URL。我如何用TwiML实现这一点?有没有可能在TwiML中定义一个变量?因为如果我可以使用<代码>

共有1个答案

施茂
2023-03-14

仅使用TwiML-Bin很难做到这一点,但您可以尝试以下方法:

<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Pause length="1"/>
    <Say voice="Polly.Joanna">Welcome</Say>
    <Dial>{{Number}}</Dial>
</Response>

然后通过:https://调用它

这会将自定义值传递到TwiML容器中,这里是Number

如果您真的需要调用API来获取要拨打的号码,您将需要某种endpoint来形成TwiML,例如Twilio函数或任何其他endpoint。

Python中的一个版本可能如下所示:

from twilio.twiml.voice_response import VoiceResponse

response = VoiceResponse()
response.pause(length=1)
response.say('Welcome')
number = '+123456789' # Here you would do an API call
response.dial(number)

print(response)

上面基本上创建了您在TwiML bin中但使用Python的TwiML。您需要将其包装在endpoint中才能被调用和返回。当然,您需要添加逻辑以通过API检索号码。

 类似资料:
  • 我们需要使用语音连接两位客户,但我们需要隐藏彼此的客户电话号码。我们决定使用下一种方法——用twilio屏蔽电话号码 问题是: 我们使用twilio号码连接两个客户。我们可以使用相同的号码进行另一个呼叫吗?或者在呼叫完成之前它是“忙”的? 如果它是'忙',我们可以购买例如20个电话号码,并在每次需要打电话时可用吗? 不相关,但为什么没有可能购买乌克兰电话号码。 非常感谢您的帮助。

  • 当我将短信转发给另一个电话号码时,我想传递Twilio电话号码的友好名称。(友好名称是在购买Twilio number时分配给它的属性。) 这与这里和这里描述的“使用Twilio字母数字发送者ID发送品牌SMS消息”不同。 我在美国操作,上面不支持,我可以在转发的消息(或电子邮件的主题行)的正文中包括“友好的名字”。此外,“友好名称”并不像上面的示例那样与消息的原始发送者相关联,而是与我的Twil

  • 我对爱奥尼亚和科尔多瓦很陌生。我想得到用户的电话号码,可能吗?我正在尝试为我的应用程序创建号码注册。当用户第一次打开一个应用程序时,他被要求输入一个通过短信获得的代码。和viber差不多。第一个视图包含一个按钮“发送代码给我”,下一个视图有一个表单“输入代码:”和一个按钮“登录我”。

  • 它说。 我的问题是,你如何“在你的Twilio账户中拥有一个电话号码”?这是否意味着我可以让我的用户选择他们的电话号码,然后添加到我的Twilio帐户,然后用他们的号码发送短信?

  • 我想从应用程序拨打电话。 是否可以将选项限制为仅从内置电话应用程序呼叫,而不将Viber,Skype或Whatsapp显示为选项? 以下是我的代码: 我想看起来像这样: 而不是这样(如果我已经安装了Viber和Skype): 我尝试使用以下代码: 这让Skype成为一种选择,我也不知道为什么?

  • 我想在Twilio Flask应用程序中打印/获取来电号码。我指的是twilio ivr电话树。我在函数中尝试了,这是我接到来电时调用的第一个方法。但是它会打印一个空的。 我错过什么了吗?感谢您的帮助。提前谢谢。 为了吸引选民,请发表评论。它有助于提高问题的质量,使堆栈成为一个更好的地方。