Javascript Twilio Device.connect()结果为;msg中的错误JSON";
我们的React应用程序向API发送GET请求,请求Twilio令牌。OutAPI然后从Twilio请求令牌。然后在响应中将令牌发送回React应用程序。React应用程序然后执行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(),这将导致控制台出现错误消息:
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包。谢谢