首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >twilio python出站拨号

问twilio python出站拨号
EN

Stack Overflow用户
提问于 2018-02-26 19:37:20
回答 1查看 314关注 0票数 0

我正试着用我的笔记本电脑(运行Twilio)用python 3拨号,并进行语音对话。这是最简单的用例。

下面是我在笔记本上运行的python代码。

代码语言:javascript
复制
def test_voice_command_inline(self):
    '''calls landline from laptop via twilio'''

    twilio_client = twilio.rest.Client(self.twilio_account_sid,
                                        self.twilio_auth_token)
    vps_url = self.get_vps_url()

    twilio_voice_call = twilio_client.calls.create(
        from_=self.twilio_phone_number,
        to=self.land_line_number,
        url=vps_url
        )

当我运行这段代码时,我的电话线响了,然后我回答它。电话接通了。接下来,Twilio提示我按一个键来“执行我的代码”(也就是web钩子)。

既然我已经有了一个连接电话,我就不需要网钩了。我只想开始说话。然而,Twilio 需要 me放入一个webhook url,返回TwiML来指导调用流。当TwiML完成处理后,调用被挂起。我不需要一个钩子,但我需要一个。

我尝试了web钩子代码中的各种内容,试图让已经连接的调用继续进行。我尝试从我的web钩子中返回空白的TwiML,这会导致立即挂起。我还试着从网钩里面拨电话号码。由于rest已经连接了呼叫,试图从web钩子重拨号码会导致繁忙状态(Twilio控制台)。看看我可以在web钩子中使用的所有TwiML动词,没有一个看上去适合我的需要。

我一定是错过了一些简单的东西。为什么我不能用上面的代码在我的笔记本电脑和我的电话线(或者其他电话)之间打个电话呢?

EN

回答 1

Stack Overflow用户

发布于 2018-02-27 11:19:21

两位开发人员在这里传道。

当您使用使用REST进行出站调用时,Twilio正在我们的服务器和to号码之间设置一个调用。您提供的from号码只是呼叫的callerId。

为了将您使用REST拨打的电话连接到另一个电话,您需要从您的TwiML twiml_url中返回刻度盘另一个号码。目前,您的TwiML只是一个空的<Response>,但是应该是这样的:

代码语言:javascript
复制
<Response>
  <Dial><Number>OTHER_NUMBER</Number></Dial>
</Response>

如果您希望Python代码是动态的,那么它也可以由Python代码写出。这就是你使用你提到的VoiceResponse的地方。重要的是,您正在进行的调用的第二阶段应该由从您的URL返回的TwiML控制。

如果这有帮助的话请告诉我。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48995859

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档