【问题标题】:Call multiple numbers sequentially using twilio outgoing call使用 twilio 拨出呼叫顺序呼叫多个号码
【发布时间】:2015-05-29 19:45:51
【问题描述】:

所以我正在使用 twilio api 从列表中拨打电话

NUMS = ['xxx-xxx-xxxx', 'jjj-jjj-jjjj']
for num in NUMS:
    c = make_call(num, "Hi-how-are-you!!!")

make_call 函数包含 twillio 代码

def make_call(to_number, mesg):
    global FROM
    call_status = ['COMPLETED', 'FAILED', 'BUSY', 'NO_ANSWER']

    # put your own credentials here 
    ACCOUNT_SID = "--------------------" 
    AUTH_TOKEN = "--------------------" 

    client = TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN) 

    call = client.calls.create(
       to=to_number, 
       from_=FROM, 
       url=URL+"/voice/reply/"+mesg,  
       method="POST",  
       status_callback=URL+"/voice/status",
       status_callback_method="POST",
       timeout=10
    ) 
    return call

不知道我做错了什么,但它会排队,然后同时呼叫他们。如果我接听电话,另一个结束。 我想按顺序调用,并且输入time.sleep() 也不起作用。

感谢您的帮助。

【问题讨论】:

  • 愚蠢的问题,但您是否尝试过将time.sleep 的时间设为 11 秒?

标签: python-3.x flask twilio


【解决方案1】:

Twilio 布道者在这里。

对 client.calls.create 的每次调用都是对 Twilios REST API 的简单 HTTP 请求,告诉它开始出站电话呼叫。调用是异步进行的,因此如果您愿意,您可以调用该函数 10 次以同时启动十个单独的电话。

如果您想以串行方式进行调用,而不是使用循环开始调用,我建议您开始第一次调用,然后使用 StatusCallback 路由处理程序让 Twilio 告诉您第一次调用何时完成(以及为什么),然后在那个处理程序中,开始下一个调用。

每次活动呼叫完成时,Twilio 都会请求 StatusCallback 路由,允许您开始序列中的下一个呼叫。

希望对您有所帮助。

【讨论】:

  • 谢谢!我终于发现调用是异步的......然后走这条路。
猜你喜欢
  • 2016-05-20
  • 1970-01-01
  • 2018-01-02
  • 1970-01-01
  • 1970-01-01
  • 2012-06-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多