使用twilio拨出电话

时间:2015-05-29 19:45:51

标签: python-3.x flask twilio

所以我使用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()也不起作用。

帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

Twilio传道者在这里。

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

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

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

希望有所帮助。