当座席连接到等待队列的客户时如何获得回调?
Posted
技术标签:
【中文标题】当座席连接到等待队列的客户时如何获得回调?【英文标题】:How to get a callback when the agent is connected to the customer waiting the queue? 【发布时间】:2022-01-15 05:05:06 【问题描述】:我有一个简单的设置,其中有 1 个队列和一些在 php 的帮助下由我管理的代理。
当客户打电话时,电话会像这样排队:
$response = new VoiceResponse();
$response->enqueue('support', ['waitUrl' => 'wait-music.xml','action' => 'queue-action.php']);
$call = $client->account->calls->create($agent_number, $queue_number, [
"url" => 'queue.php',
]);
echo $response;
queue-action.php,在这种情况下,只有在调用结束时才被调用。另外,我开始呼叫代理以将他连接到队列。
queue-action.php 内容:
$response = new VoiceResponse();
$dial = $response->dial('',[
'action' => 'dial-callback.php',
]);
$dial->queue('support');
这里的dial-callback.php也是通话结束后触发的。
我的目标是在通话连接在一起时接收回拨,这样我就可以将某个通话标记为进行中并为其分配座席,以便稍后知道该座席正忙于线路。
感觉我需要在 $dial 上使用 statusCallbackEvent 和 statusCallback 属性,但它仅适用于 <Dial><Number>
、<Dial><Sip>
和 <Dial><Client>
。
换句话说,我想在数据库中记录所有排队的呼叫,并根据呼叫状态更新相应地更新它们的状态(启动/响铃/应答/完成)并分配与代理的关系。
是否有可能使用回调以某种方式完成它,而不使用 TaskRouter?
谢谢
【问题讨论】:
【参考方案1】:我现在可以使用它,不知道我在文档中是如何错过它的,但关键是要使用
$dial->queue('support', ['url' => 'queue-connect.php']);
url parameter on Queue 以防万一将来有人读到这篇文章。
【讨论】:
以上是关于当座席连接到等待队列的客户时如何获得回调?的主要内容,如果未能解决你的问题,请参考以下文章