Twilio 如何在检测到机器时触发对url的调用

Twilio 如何在检测到机器时触发对url的调用,twilio,Twilio,我们目前正在使用Twilio的RESTAPI来启动调用。我们想使用Twilios机器检测,但有问题。无论结果如何,我们都希望启动一个url,并使用AnsweredBy添加一些逻辑来返回不同的twiml,这取决于它是由人工还是机器应答的 我们使用C#开发,代码如下: var call=CallResource.Create( 到 从…起 url:successfulCallUrl, 记录:对, 机器检测:“启用” ); 但是,我们的url只有在呼叫由人工应答时才会触发,而不是在呼叫进入应答机时触发

我们目前正在使用Twilio的RESTAPI来启动调用。我们想使用Twilios机器检测,但有问题。无论结果如何,我们都希望启动一个url,并使用AnsweredBy添加一些逻辑来返回不同的twiml,这取决于它是由人工还是机器应答的

我们使用C#开发,代码如下:

var call=CallResource.Create( 到 从…起 url:successfulCallUrl, 记录:对, 机器检测:“启用” );


但是,我们的url只有在呼叫由人工应答时才会触发,而不是在呼叫进入应答机时触发。无论呼叫结果如何,我们都需要触发它来确定如何处理它。

当出站呼叫被应答时,无论发生什么,都会请求您的URL,唯一的区别是,如果应答机检测处于打开状态,则Twilio会提供一个额外的请求参数。在任何情况下(据我所知),当REST发起的传出呼叫被应答时,Twilio都不会从您的URL请求TwiML

在语音日志的请求检查器中,什么显示为请求参数?对于人工接听的电话,Twilio是否提供AnsweredBy参数

我刚刚尝试在Twilio站点上使用curl示例,让呼叫转到语音邮件,在我的控制台日志中,Twilio正在发布到我的呼叫处理URL,以使用以下参数检索我的twiml,因此您想要做的在技术上是可能的

由机器负责启动


也许您正在呼叫的应答机让Twilio感到困惑,您需要降低超时阈值吗?也许启用检测的C#语法与您的不同?我不知道答案,但您的呼叫日志肯定会给出从何处开始的线索。

这就是应答机检测的工作原理,因此我们可能无法解决堆栈溢出问题。我建议您与团队联系,并为他们提供一些未触发webhook的呼叫的呼叫SID。无论url处理程序中有谁应答(人或机器),您都会请求相同的url,您必须确定如何处理该呼叫。启用machineDetection时,Twilio沿“anweredBy”发送一个额外参数。在url处理程序中读取该参数,并确定如何处理该调用。