当通话状态为排队状态(正在振铃或已发起)时,如何挂断电话?下面的代码对调用没有任何影响,调用会继续响铃,直到听筒接听。有时,当座席意识到他们调用了错误的号码时,他们需要一种方法在响铃过程中挂断调用。
PHP 代码
$client->calls($callRecord->call_sid)->update([
'status' => 'canceled'
]);
$client->calls($callRecord->call_sid)->update([
'status' => 'completed'
]);
$client->calls($callRecord->call_sid)->update([
'url' => 'mywebsite.com/tw-hangup'
]);
最佳答案
请参阅以下 Twilio 文档:
语音 API:调用(最后一段最相关) https://www.twilio.com/docs/voice/api/call
当您将正在进行的调用重定向到另一个电话号码时,Twilio 会为该新电话号码创建一个全新的调用实例。原始调用是父调用,调用的任何其他号码都会建立子调用。父调用和子调用将具有唯一标识的调用 SID。
请注意,当前正在执行 a 的任何父调用都被 Twilio 视为正在进行中。即使您已将初始调用重定向至新号码,父调用仍处于事件状态,因此您必须使用 Status=completed 来结束它。
无法通过 REST API 取消未应答的子调用,但可以修改父调用以指向新的 TwiML。此操作将结束子通话。
关于Twilio 通过 REST API 挂断调用不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51681064/