【问题标题】:Redirecting a twilio task to a new TwiML after task/reservation timeout任务/预留超时后将 twilio 任务重定向到新的 TwiML
【发布时间】:2017-07-29 07:07:18
【问题描述】:

目前使用 Twilio TaskRouter 构建电话呼叫中心来路由呼叫。

我的目标是:

  1. 当某项任务在一段时间内未决时(即:没有工作人员可用于预订),将其重定向到语音信箱
  2. 当任务被保留但工作人员没有响应时,将其重定向到语音邮件

我当前的实现是:

  1. 指定任务超时和预留超时
  2. 当触发任务超时/预约超时回调时,查询Redirect Instruction预约接口重定向到录音语音邮件的TwiML。

但问题是:

  1. 当任务处于pending 状态时,没有创建预留,因此我无法访问预留以执行重定向
  2. 当预订超时时,尝试执行重定向会收到来自 Twilio 的 execption,指出预订不再可用于重定向

【问题讨论】:

    标签: twilio twilio-api


    【解决方案1】:

    这里是 Twilio 开发者宣传员。

    正如你最后所说,这里有两个问题。您要么尝试移动不存在的预订,要么重定向不可重定向的预订。

    我认为您可以改用工作流程来实现您的目标。

    首先,考虑事情的任务方面。你给一个任务一个超时。当它确实超时时,任务的正常行为是移动到它在工作流中匹配的下一个队列。

    我建议设置一个最终队列,其中包含一个永久可用的工作对象(但不是真人)。当您为该队列中的任务预留分配回调时,您可以使用 redirect assignment 将调用发送到返回 <Record> 的某个 TwiML 以获取消息。您的 TwiML 应用程序还可以调用 REST API 来接受预订。

    这适用于从未从初始队列分配给工作人员的任务。对于预订超时方面,请考虑这一点。

    当预订超时时,任务会重新回到原来的队列中进行分配。该任务保持在我们上面为其定义的相同的原始超时下,因此当任务本身超时时最终将移动到我们的语音邮件队列。这对呼叫者具有相同的效果,因为他们永远不知道何时分配了预订,因为他们只会在他们所在的队列中体验等待音乐。

    这有意义吗?

    【讨论】:

    • 您好 philnash,感谢您提供此解决方案。只是一个问题:如何创建一个“永久可用的工人”?创建预留后,工作人员要么变为“预留”(如果预留未被自动接受),要么变为“忙碌”(如果预留被自动接受)。我应该如何将其恢复到可用状态,以便“他”处理新的预订?谢谢
    • 您可以尝试使用multitasking worker,它一次可以接受多个预订。另外,您可以设置the status of a worker back to an available status with the REST API
    • 嘿@philnash,这就是我所做的。我检查了 Event 端点,并在创建预留后立即将 Worker 状态更新为 Idle。这是正确的方法吗?谢谢,马可
    • 我想不通。我评论了另一个帖子,请帮助! :) - stackoverflow.com/questions/46044542/…
    • @philnash 我只想指出,当任务超时时,AFAIK - 它会被取消。您想要的是预订超时,在这种情况下,它将按照您的建议进入工作流程中的下一个队列。预留超时是通过工作流 UI 设置的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    • 1970-01-01
    相关资源
    最近更新 更多