我已经成功设置了Twilio的JS WebRTC客户端和PHP端来拨打电话。但是,我似乎无法弄清楚如何在通话过程中发送新的TwiML代码。
以下是我要做的事情:一旦通话结束,我想在浏览器中点击按钮时播放预先录制的消息。实现这一目标的最佳方法是什么?我无法弄清楚如何在通话进行后发送新内容。谢谢!
答案 0 :(得分:2)
Twilio开发者传道者在这里。
要向正在进行的通话发送更多TwiML,您需要使用REST API更新正在进行的通话。
为此,您需要呼叫SID。您可以在接听电话时通过参数连接原始webhook或服务器,或通过parameters
attribute on the Twilio.Connection
object。
获得Call SID后,您可以通过调用REST API使用新的TwiML更新调用,如下所示:
require_once('/path/to/twilio-php/Services/Twilio.php'); // Loads the library
// Your Account Sid and Auth Token from twilio.com/user/account
$sid = "{{ account_sid }}";
$token = "{{ auth_token }}";
$client = new Services_Twilio($sid, $token);
$call = $client->account->calls->get("{{ call_sid }}");
$call->update(array(
"Url" => "{{ new_url_with_twiml }}"
));
有关如何更新航班中的电话的更多信息:https://www.twilio.com/docs/api/rest/change-call-state