尝试为另一个应用程序设置新设备时不释放Twilio.Device实例

时间:2013-02-19 18:15:09

标签: javascript twilio

我们正在使用javascript客户端开发会议应用程序。

我们有一个场景,其中用户正在连接其中一个应用程序,一段时间后需要连接到另一个子帐户下的另一个Twilio应用程序

第二次我们必须使用

连接到另一个Twilio应用程序
    Twilio.Device.setup(token, { rtc: true,debug:true });

我们得到类似

的日志
**[Device] Found existing Device; using new token but ignoring options**  
[Device] Unable to receive incoming calls  
[Device] Registered listener for event type "error"  
[Device] Registered listener for event type "connect"  
[Device] Registered listener for event type "disconnect"  
[Device] Registered listener for event type "ready"  
[Device] Registered listener for event type "offline"  
[Device] Invoke listeners for event type "ready"


**[Application-Ready-EvtHandler] Twilio.Device is now ready for connections : ready
[Application-Ready-EvtHandler] Twilio.Device is now ready for connections : ready (Raised Second Time for old Device)**

似乎之前的设备尚未发布

(触发就绪事件的次数==我们必须使用Twilio.Device.Setup的次数)

在连接到第一个后,我无法连接到后续的Twilio应用程序。

随后打电话    的 Twilio.Device.connect({ agent: currentUserName, debug: true });
引发异常i,e,“Actionscript中的错误。使用try / catch块查找错误。”

如何使用twilio.js库切换到后续的Twilio应用程序?

编辑: 附:请注意,这只是IE和firefox中的一个问题,它不支持web-rtc标准。在chrome中如上所述调用事件处理程序,但它可以工作!

我做错了吗?

1 个答案:

答案 0 :(得分:0)

Jash,我是来自Twilio的Megan。

您在日志中看到的所有内容都是预期的行为。

如果您想在设备之间切换,则需要明确调用.destroy() as mentioned in the docs。这将终止活动和挂起连接,从而触发脱机事件处理程序。在您再次致电Twilio.Device.setup()之前,设备将无法拨打或接收新的连接。