将传入呼叫放入队列,并使用twilio呼叫代理

将传入呼叫放入队列,并使用twilio呼叫代理,twilio,Twilio,您好,我正在使用Twilio,我想让来电者排队。然后按顺序给所有代理打电话,如果代理拿起电话,我想把他和排队的来电者联系起来 这是我目前所拥有的,但当我打电话时,我听到了代理的语音邮件。没有等待的音乐 <?xml version="1.0" encoding="UTF-8"?> <Response> <Say>Please wait while we connect you to the next available agent.<

您好,我正在使用Twilio,我想让来电者排队。然后按顺序给所有代理打电话,如果代理拿起电话,我想把他和排队的来电者联系起来

这是我目前所拥有的,但当我打电话时,我听到了代理的语音邮件。没有等待的音乐

<?xml version="1.0" encoding="UTF-8"?>
    <Response>
        <Say>Please wait while we connect you to the next available agent.</Say>
        <Enqueue>support</Enqueue>
        <Dial timeout="15" url="/call-queue">+100000000</Dial>
        <Dial timeout="15" url="/call-queue">+100000001</Dial>
        <Dial timeout="15" url="/call-queue">+100000002</Dial>
    </Response>
example.com/call-queue-only返回

<Dial><Queue>support</Queue></Dial>
支持

这里是Twilio开发者福音传道者

这不是你想要的方法。用
跟随
只会让呼叫者排队,在呼叫者再次离开队列之前,不应进入下一个

由于您有多个代理,您可能需要研究以实现这一点。使用TaskRouter,您可以对传入呼叫进行排队,然后您定义的工作流将尝试拨打您的代理。您的代理还可以选择接受传入呼叫或将其发送回队列。TaskRouter呼叫路由也对已被呼叫且未尝试路由到它们的代理敏感


查看上的文档了解更多信息。

您好!这是有道理的。。在没有taskrouter的情况下,还有其他方法可以实现这一点吗?问题是,它需要在twilio中输入数据,我会以友好的方式进行。喜欢如果你打1号电话,你会有一个可能的代理人名单,2号。另一份可能的代理人名单,但我会有很多。。。在taskrouter上进行配置将非常痛苦。再次感谢!是的,您可以使用常规的
和发送给您的代理的。您需要编写的代码量与在TaskRouter中配置工作流所需的代码量之间存在权衡。我明白了。但是有没有办法按顺序创建client.calls.create?我不想同时给所有探员打电话。如果呼叫未被应答,只需移动到下一个。是的,您需要设置接收,在呼叫结束后,呼叫状态作为请求正文中的
CallStatus
参数发送,从而触发接收。您可以检查该状态,然后触发一个新的调用。嘿@philnash我仍在努力解决这个问题:我正在支持将调用方放入队列,我正在执行twilio.calls.create({url:domain/call queue},…)来调用代理(域/呼叫队列只返回支持,但呼叫者得到了代理的邮箱。代理甚至没有收到呼叫,因为错过了呼叫。不确定我做错了什么。(原始问题更新,因为此处难以阅读)再次感谢!
<?xml version="1.0" encoding="UTF-8"?>
<Response>
    <Say>Please wait while we connect you with the next agent.</Say>
    <Enqueue>support</Enqueue>
</Response>
twilio.calls
    .create({
        url: "example.com/call-queue",
        from: myTwilioNumber,
        to: agentNumber
    })
    .then(call => console.log("twilio call sid", call.sid))
    .catch(error => console.log("twilio call error", error));
<Dial><Queue>support</Queue></Dial>