我在SIP手机上使用SIP.js库,在Chrome上工作。在Chrome 57之后,我的手机无法正常工作。我可以拨打电话号码,但语音不可用或接听电话,但电话没有响应。我在浏览器控制台上收到此错误:
DOMException:无法设置远程商品sdp:会话错误代码:
ERROR_CONTENT。
会话错误说明:rtcpMuxPolicy是'要求',
但媒体描述不包含' a = rtcp-mux' ..
我使用Chrome M57
和SIP.js
0.73。我将SIP.js
更新为0.77,但问题出在那里。
我看看google group和github。问题出在Chrome
上。我们使用asterisk
。我能为这个问题做些什么?
答案 0 :(得分:1)
Google Chrome 57引入了新的WebRTC要求(RTCP多路复用)。以前它是可选的。您可以安装较旧版本的Chrome或更新Asterisk,此新功能已满足要求(https://issues.asterisk.org/jira/browse/ASTERISK-26732)。
了解详情:https://nimblea.pe/monkey-business/2017/01/19/webrtc-asterisk-and-chrome-57/
答案 1 :(得分:-1)
将sip版本更新为0.7.7+后,需要在 UA.prototype.loadConfig中将 rtcpMuxPolicy 参数设置为“negotiate” 强>:
UA.prototype.loadConfig = function(configuration) {
var parameter, value, checked_value, hostportParams, registrarServer,
settings = {
...
rtcpMuxPolicy: 'negotiate',
...
};
};
这可以解决您的问题。
rtcpMuxPolicy
覆盖使用的默认Multiplexing RTP(rtp-mux)模式的字符串 用于对等连接。将此设置为“协商”可能允许 不支持rtp-mux与SIP.js一起使用的端点如果不 指定后,使用浏览器的默认策略。
版本:0.7.7 +
rtcpMuxPolicy:“negotiate”