2017-10-18 69 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

相關問題