Ios Twilio,检测对方是否接电话?

Ios Twilio,检测对方是否接电话?,ios,twilio,Ios,Twilio,我正在编写一个Twilio iOS应用程序,对通话的生命周期有一个问题:如果我开始通话(使用TCDevice connect:delegate:),我想知道对方是否接听了电话。我找到了TCConnectionDelegate connectionDidDisconnect:来跟踪一个电话没有被接听,但是有没有类似的方法来检测一个电话是否被接听?这里是Twilio福音传道者 因此,让我们从澄清你的设置开始,并确保我理解你提出的具体问题 听起来您正在使用动词将Twilio客户端的实例连接到另一个端点

我正在编写一个Twilio iOS应用程序,对通话的生命周期有一个问题:如果我开始通话(使用
TCDevice connect:delegate:
),我想知道对方是否接听了电话。我找到了
TCConnectionDelegate connectionDidDisconnect:
来跟踪一个电话没有被接听,但是有没有类似的方法来检测一个电话是否被接听?

这里是Twilio福音传道者

因此,让我们从澄清你的设置开始,并确保我理解你提出的具体问题

听起来您正在使用
动词将Twilio客户端的实例连接到另一个端点(PSTN、SIP、客户端?)。如果是这样的话,那么真正隐藏的是你有一个两条腿的电话。第一步是通过Twilio客户端将应用程序连接到Twilio。第二个分支通过
动词将Twilio与端点(PSTN、SIP、客户端)连接起来

听起来你是在问如何知道第二段是否得到了回答

如果我的问题是正确的,不幸的是,没有办法直接从Twilio客户端SDK中找到答案,但是你可以从服务器端应用程序中找到答案,然后将结果转发到你的iOS应用程序

动词包含一个名为的属性,该属性允许您在第二段调用结束时为Twilio指定一个web应用程序URL请求。该请求包含一个名为的参数,该参数将告诉您调用结束的原因,包括没有应答的情况

<Dial action="http://www.example.com/callstatus">
    <Number>+15555555555</Number>
</Dial>

+15555555555

一旦您的web应用程序知道DialCallStatus,如果您想将其转发回您的iOS应用程序,您可以使用iOS的推送通知,或者您可以考虑使用类似的方式,这可能是一种更轻量级的发送通知的方式。

Hi Devin,有没有办法知道实际接听电话的时间?据我所知,你没有收到通知,所以你不能真正判断电话铃响了还是对方捡到了,对吗?您只会收到错误和完成的通知(这意味着呼叫已结束)。谢谢让Twilio明确地告诉您,在通话过程中,一个已接听的电话已被接听,这真的不是一个好办法。如果您知道您正在拨打的号码,您可以使用REST API的Calls资源来尝试定位“ed”呼叫并检查其CallStatus属性。但并不理想。也许如果我对你的情况有更多了解,我可以帮你找到更好的解决方案。我目前正在让我们的销售人员给我们的客户打电话。他们可能会把它们和其他号码联系起来(我使用的是会议),一切都很好。我通过WebSocket不断更新它们,因此几乎是实时的。但是我希望能尽快告诉他们“嘿,这个来电者刚刚接了电话”。我不想轮询你的API,看看什么时候会发生。。。所以,唯一的选择是使用星号并在拨号盘上调用宏,但希望保持在twilio一侧。理想情况下,twilio将以新状态(已连接)调用回调