Twilio Client JS - 重新注册时出现套接字错误

时间:2015-11-11 13:53:57

标签: javascript twilio

我有一个使用Twilio客户端JS库的Chrome Extension。我将会话长度设置为1小时,以允许扩展接收以及拨打电话。每次注册令牌到期时,我重新注册,一切似乎都没问题。如果我在后台页面查看Chrome开发者工具,我会在控制台中看到:

[Device] Received error: 
Object {code: 31205, message: "JWT Token Expired"}

我陷阱的错误是什么时候重新注册。每次我这样做,就在错误发生之前,我看到了:

WebSocket is already in CLOSING or CLOSED state.

平均重复40次,然后看来我的扩展名重新注册OK。大约每五个周期,我看到一个短暂的爆发:

Object {code: 31204, message: "Cannot register. Token not validated"}

每天大概5-6次见:

Object {message: "Unable to determine account.", code: 401, rt.message: "error"}

我的主要问题是我是否处于竞争状态?我通过处理Twilio.Device.error事件然后调用Twilio.Device.destroy()确定何时重新注册然后等待3秒并重新生成JWT并调用Twilio.Device.setup()

1 个答案:

答案 0 :(得分:0)

我是梅根和Twilio。

听起来这可能是竞争条件。如果没有确切地看到你正在运行什么,我可以采取一些猜测,你可能会尝试修复。

  1. 您的回调错误可能没有正确的顺序。

  2. 如果您还没有,则需要terminate the active connection Twilio.Device.disconnectAll()

  3. 希望这有帮助!