所有的人都在使用手机,没有软电话。我想创建一个流程,客户打电话进来,所有可用的代理都会有电话响起。第一个接电话的代理,其他所有的拨号都会被断开。稍后,在通话过程中,代理将需要添加一个或多个其他代理参与通话。据我所知,响应客户电话的应该是线路上的Twiml。
<Dial><Conference>My Conf</Conference></Dial>
但我应该在这上面添加什么,这样它就能再呼叫三个代理,并在第一个代理接听后挂断其他代理的电话?像这样(这个不行)。
<Response>
<Dial><Conference>My Conf</Conference></Dial>
<Dial callerId="+1888XXXXXXX">
<Number>111-987-6543</Number>
<Number>222-987-6543</Number>
<Number>333-987-6543</Number>
</Dial>
</Response>
上面的方法在生产中不会有很好的效果。当一个代理在通话时,未来的电话仍然会发送给所有代理,而该代理在通话中的语音邮件会被接听。
看看Twilio 任务路由器 的方法来正确地将呼叫分配给代理。Task Router有一个SDK,你可以用它来让代理上线。代理商被分配到任务队列中,从而实现正确的路由。如果一个代理正在通话中,Task Router将不会尝试为他们分配另一个呼叫。
你也可以用Task Router处理会议事件。