2017-10-18 68 views
1

我有以下代码,它使用JS API创建JS Twilio客户端以及JS Twilio Worker。TaskRouter JS - 出队预留并连接到Twilio客户端

function setup(workerToken, capabilityToken) { 
    Twilio.Device.setup(capabilityToken, {debug: true, closeProtection: true}); 
    const worker = new Twilio.TaskRouter.Worker(workerToken); 

    Twilio.Device.incoming(function (conn) { 
    conn.accept(); 
    }); 

    worker.on('reservation.created', (reservation) => {  
    reservation.dequeue(); 
    }); 
} 

根据文档(https://www.twilio.com/docs/api/taskrouter/worker-js#reservation-dequeue)我应该能够只出队的保留和contact_uri上Twilio的应接工人。我成功地能够连接到另一个电话号码,但我想知道如何连接到我的Twilio客户端,因为我的身份是“cool.beans”。

回答

0

Twilio开发人员在这里传播。

为了让工作人员出列并呼叫客户端JS,您需要将工作人员的contact_uri设置为Twilio客户端标识。在你的情况下,示例标识是“cool.beans”,因此contact_uri应该是client:cool.beans

让我知道这是否有帮助。

+0

我看到你提到'contact_uri',并在下一行提到'contact_url',我应该设置哪个值?我在TaskRouter.js文档中注意到,此文档在reservation.dequeue旁边() dequeueTo :(可选)Worker的联系人URI。电话号码或客户端ID。如果工作人员的属性不包含“contact_uri”属性,则为必需。当我设置这个值时,它不起作用,并且我还为TaskRouter仪表板 – Kyle

+0

道歉的工作人员设置了“contact_uri”,它是'contact_uri'。当你使用'dequeueTo'时,你如何格式化客户名称? – philnash

+0

所以我实际上将Worker的'attributes'设置为{“languages”:[“en”,“es”],“contact_uri”:“client:cool.beans”}。此外,我想知道为什么'dequeueTo'方法具有“可选”参数,但该函数不接受一个对象,因此您可以将它称为“dequeue({dequeueTo:”client:cool.beans“}) – Kyle

相关问题