Javascript Twilio Device.connect()结果为;msg中的错误JSON";

Javascript Twilio Device.connect()结果为;msg中的错误JSON";,javascript,twilio,twilio-api,Javascript,Twilio,Twilio Api,我们的React应用程序向API发送GET请求,请求Twilio令牌。OutAPI然后从Twilio请求令牌。然后在响应中将令牌发送回React应用程序。React应用程序然后执行Twilio.Device.setup(令牌,{debug:true}),这似乎成功地完成了 Twilio.Device.instance对象似乎具有从服务器检索到的令牌,该令牌与服务器响应的内容以及服务器打印到日志的内容相匹配 然后我们调用Twilio.Device.connect(),这将导致控制台出现错误消息:

我们的React应用程序向API发送GET请求,请求Twilio令牌。OutAPI然后从Twilio请求令牌。然后在响应中将令牌发送回React应用程序。React应用程序然后执行
Twilio.Device.setup(令牌,{debug:true})
,这似乎成功地完成了

Twilio.Device.instance
对象似乎具有从服务器检索到的令牌,该令牌与服务器响应的内容以及服务器打印到日志的内容相匹配

然后我们调用
Twilio.Device.connect()
,这将导致控制台出现错误消息:


{“payload”:{“callsid”:“error”:{“code”:31100,“message”:“msg中的错误JSON”},type:“hangup”,“version”:“}”

打开开发人员控制台,我看到这一切都发生在web套接字连接中,在该消息出现之前发送的有效负载(并且在响应之前立即可靠地发送,因此我相信这是触发错误的原因)是以下形式的有效负载:

{
    "type":"invite",
    "version":"1.4",
    "payload":{
        "sdp":"v=0\r\no=- 436124720934282410 2 IN ... A BUNCH OF DATA WITH CARRIAGE RETURNS ... f-d0582b8dc5e6\r\n",
        "callsid":"TJSceeec256-b343-4d13-bf26-febd73fcd484",
        "twilio":{}
}}  
因此,
payload.sdp
属性肯定不是Json,但它看起来根本不像是Json,所以它不是什么打字错误

请求的整个主体都是正确格式的JSON,呈现和漂亮的打印


那么,使用Twilio 1.4 JavaScript SDK启动传出呼叫需要做什么?大约一个月前,从事这项工作的开发人员成功地拨打了电话,因此这是绝对可能的,但我不确定发生了什么变化

我也犯了同样的错误。改变

Twilio.Device.connect();


帮助我使呼出电话正常工作。

我也遇到了同样的错误。改变

Twilio.Device.connect();


帮助我打外线。

@PandemoniumSyndicate和Lucas——这不是预期的行为!这是在1.4.30中引入的。我们已经回滚到1.4.29,因此如果您使用CDN,这应该会自动解决。如果您使用的是npm,您可以暂时锁定到1.4.29。服务器端补丁完成后,我们将重新固定1.4到1.4.30。从今天早上开始,1.4.30将重新固定在我们的CDN上,现在应该可以安全地在NPM上使用。@rrowland是否可以通过NPM之类的版本包使用这里提到的客户机记录器库?AllI可以找到的是您的节点npm包。谢谢@PandemoniumSyndicate和Lucas——这不是预期的行为!这是在1.4.30中引入的。我们已经回滚到1.4.29,因此如果您使用CDN,这应该会自动解决。如果您使用的是npm,您可以暂时锁定到1.4.29。服务器端补丁完成后,我们将重新固定1.4到1.4.30。从今天早上开始,1.4.30将重新固定在我们的CDN上,现在应该可以安全地在NPM上使用。@rrowland是否可以通过NPM之类的版本包使用这里提到的客户机记录器库?AllI可以找到的是您的节点npm包。谢谢