在 twilio 中将呼叫者置于保持状态,然后代理可以呼叫某人以验证某些内容。然后,在验证后,代理将返回保留呼叫者。
谢谢
Twilio开发者布道者在这里。
我想你会在这里找到你正在寻找的大部分信息。但总而言之,使用 REST API,您可以让用户保持/关闭并执行更多操作。
使用 CallSid,您可以通过 Rest API 对调用执行任何操作。查看 Twilio 更改调用状态以获取更多信息。
您可以等待代理按 Hold(或您选择的任何按钮,具体取决于您使用的体验 - VOIP 或 PSTN(,然后可以使用 REST API 更新该呼叫,例如使用谓词将其发送到队列。
然后,您可以使用 CallSid 检索呼叫以更新它并将其发送回代理。
下面是如何将正在运行的调用重定向到将返回消息的其他 URL 的示例。 您可以将该 URL 更改为服务器上的任何内容。
var accountSid = '{{ account_sif }}';
var authToken = "{{ auth_token }}";
var client = require('twilio')(accountSid, authToken);
client.calls({{ call_sid }}).update({
url: "https://demo.twilio.com/docs/voice.xml",
method: "POST"
}, function(err, call) {
console.log(call.to);
});
希望这有帮助
我所做的。
我在客户端有一个保持按钮。一个来电者进来了,我接听了电话。呼叫者想要交谈以验证某些内容,但代理什么都不知道。所以特工告诉来电者,他将被搁置。所以我点击了按钮按住。所以我所做的,我得到callid并将其发送到php服务器端。
客户端
jQuery.ajax({
url: "<?php echo base_url();>agent/call_controls/redirect_to_hold",
type: 'POST',
data:{'CallSid':child_callsid},
dataType: 'json',
success:function(data)
{
console.log(data);
}
});
PHP 服务器端
$client = new Services_Twilio($account_sid, $auth_token);
$call = $client->account->calls->get($_POST["CallSid"]);
$call->update(array(
"Url" => HTTP_BASE_URL."agent/call_controls/forward_hold",
"Method" => "POST"
));
然后我将其重定向到保留网址。
$response = new Services_Twilio_Twiml;
$response->say("You are put on hold");
$response->play("https://api.twilio.com/cowbell.mp3", array('loop' => 100));
print $response;
呼叫者现在处于保持状态。我怎么能再次找回他作为搁置他的代理人。
谢谢