我正在使用twiliotaskrouter13.min.js初始化使用的工作器
this.workerClient = new Twilio.TaskRouter.Worker(
token,
this.twilioConfig.debugging,
this.twilioConfig.workerActivities.offline,
this.twilioConfig.workerActivities.offline,
true
);
预期的行为是,当websocket掉落时,代理会自动移至“脱机”状态
添加连接和断开活动,并关闭现有的>会话
var worker = new Twilio.TaskRouter.Worker(WORKER_TOKEN,false,“ WAxxx”,“ WAyyy”,true);
https://www.twilio.com/docs/taskrouter/js-sdk/worker#taskrouterworker
但是,这似乎不是当前的行为,我与几名工作人员进行了测试,当websocket断开连接后,工作人员看起来仍然保持当前状态。
有人知道我们是否缺少什么吗?也许是其他配置还是某个地方超时?
答案 0 :(得分:0)
我前一段时间遇到了相同的问题,向支持小组发送了一条消息,并得到了以下答案:
当您尝试将worker更新为Offline时,如worker.js所做的那样, 如果工人有保留,它将失败。
我唯一想做的就是添加一个自定义的“卸载”事件 应用程序的客户端代码的处理程序,以便它将拒绝任何 在使工作人员脱机之前等待保留。
该文档缺少有关disconnecActivitySid
的工作方式的一些详细信息。我最终在页面上添加了一个unload
事件监听器,还修改了Webhook,以在工作人员连续错过10个预订时将工作人员的活动更新为 Away 。
任务分配回调可以返回拒绝该任务的指令和不可用的活动,以便工作人员停止接收新任务。例如{ instruction: 'reject', activity_sid: '<away_activity_sid' }
。