Twilio Voice api调用url和启用机器检测的statusCallback的顺序
在进行twilio调用时,我们有一个Twilio Voice api调用url和启用机器检测的statusCallback的顺序,twilio,twilio-api,Twilio,Twilio Api,在进行twilio调用时,我们有一个url和一个statusCallback参数,如下所示: client.calls .create({ method: 'GET', statusCallback: 'https://www.myapp.com/events', statusCallbackMethod: 'POST', statusCallbackEvent: ['completed', 'answered'], url: 'http:/
url
和一个statusCallback
参数,如下所示:
client.calls
.create({
method: 'GET',
statusCallback: 'https://www.myapp.com/events',
statusCallbackMethod: 'POST',
statusCallbackEvent: ['completed', 'answered'],
url: 'http://demo.twilio.com/docs/voice.xml',
to: '+14155551212',
from: '+18668675310'
})
.then(call => console.log(call.sid))
.done();
(来自)
我很难弄清楚是在调用statusCallback
之前调用url
,还是反之亦然
我看到当调用中启用machineDetection
时(如给定),如果responsed\u by
是machine\u start
,则在url
(提供twiml)之前调用statusCallback
在一个案例中,我发现如果machineDetection
被启用并且应答者是human
(即,它检测到有人接听电话),我首先看到调用的是url
那么调用url
和statusCallback
的预期顺序是什么呢?(假设我已经设置了statusCallback
以调用进行中的调用)Twilio开发者福音传道者
下面是关于状态回调的一些其他详细信息:
Twilio将在StatusCallbackEvent参数中指定的每个调用事件上向其发送异步webhook请求的URL。如果未指定事件,Twilio将默认发送已完成
StatusCallbackEvent
参数可以设置为启动、振铃、应答和完成中的任意或多个
由于没有事件设置,因此使用默认的completed
事件。呼叫结束后应触发此事件。如果您看到它在调用URL之前启动,您是否正在使用其他事件
另一件事是,这些事件与调用异步触发。即使触发了ringing
事件,当您的web服务器响应该事件时,呼叫可能已经结束。所以我会为通话状态进行防御性编程,而不是假设通话肯定正在进行中
更清楚地说:事件是异步触发的,因此您不能保证已应答的回调将在获取url
参数之前或之后触发。感谢您的回答,但我已经完成了和已应答的事件的设置。刚刚更新了我的答案。我的问题是关于获取twiml的url
参数的更多信息。什么时候应该开火?(在statusCallback url之前或之后?)事件是异步触发的,因此您无法保证应答的回调将在获取url
参数之前或之后触发。好的,谢谢!这真的帮了大忙!!我认为在你的回答中加入这一评论是值得的