我正在使用Twilio TaskRouter,Studio和Functions测试一种新的电话系统设计。我已经说完了,我可以完成呼叫,但是任务位于“包装”中,在我实际删除该任务之前,不允许队列中的新呼叫进入与该任务关联的工作程序。我到处都在寻找如何完成任务的方法(摆脱包装),但是在任何地方都找不到任何好的文档。
我有一个用于TaskRouter的“事件回调”的URL,可以准确地捕获该调用何时移至此EventType“ task.wrapup”,但是不知道该怎么做才能将其移至此步骤之外。这样就释放了任务和工作程序。
答案 0 :(得分:1)
因此,通过进一步的挖掘,我找到了解决方案。对于来这里遇到问题的任何人,这就是答案。
exports.handler = function(context, event, callback) {
let twiml = new Twilio.twiml.VoiceResponse();
let client = context.getTwilioClient();
switch(event.EventType) {
case 'task.wrapup':
let workspaceId = 'WSxxxxxxxxxxxxxxxxxxxxxxxxx';
console.log(event.TaskSid);
client.taskrouter.workspaces(workspaceId)
.tasks(event.TaskSid)
.update({
assignmentStatus: 'completed',
reason: 'Call completed'
})
.then(task => {
callback(null, twiml);
})
.catch(err => {
console.log(err);
callback(null, twiml);
});
break;
default:
callback(null, twiml);
break;
}
};
希望这对其他人有帮助:D