Twilio问题与“包装”中的任务有关

时间:2019-12-05 16:27:31

标签: twilio

我正在使用Twilio TaskRouter,Studio和Functions测试一种新的电话系统设计。我已经说完了,我可以完成呼叫,但是任务位于“包装”中,在我实际删除该任务之前,不允许队列中的新呼叫进入与该任务关联的工作程序。我到处都在寻找如何完成任务的方法(摆脱包装),但是在任何地方都找不到任何好的文档。

我有一个用于TaskRouter的“事件回调”的URL,可以准确地捕获该调用何时移至此EventType“ task.wrapup”,但是不知道该怎么做才能将其移至此步骤之外。这样就释放了任务和工作程序。

1 个答案:

答案 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