我对Asterisk(在本例中为13.2版本)和WebRTC有一个奇怪的问题。
所以,我有最新的Asterisk 13.2,最新的Crome(与Firefox相同的问题)和sip.js(也尝试使用sipml5)和本地网络 - 没有nat或防火墙。
问题:如果立即回复电话 - 一切正常。但如果答案有一些延迟(比方说,10秒) - 两个方向都没有音频。
在RTP调试中,我看到如果有一些延迟 - 目标IP地址不正确。从客户端配置中删除冰服务器后 - 两个地址都是正确的,但仍然没有音频。
以下是使用音频调用的调试:
rtp http://pastebin.com/EzfByCG5
sip http://pastebin.com/1Y08yF5s
没有音频通话(延迟10秒后应答):
rtp http://pastebin.com/TNnFkz6M
sip http://pastebin.com/zG7pjcZD
同样在FreeSwitch中,无论何时接听电话,一切正常。
答案 0 :(得分:1)
从Asterisk 12开始,您需要安装pjproject库,否则您的WebRTC调用中很可能没有音频,也不会发出任何警告!
答案 1 :(得分:0)
第一个问题:您是否确保所有防火墙配置都无条件地允许来自所选STUN / ICE服务器的RTP流?
我自己的经验是,WebRTC的音频问题几乎总是与STUN / ICE&防火墙。
您是否按照教程进行了设置?如果是这样,哪一个?
答案 2 :(得分:-1)
查看日志...
对等音频RTP位于端口192.168.88.187:50026 sip_route_dump:路由/路径跳:sip:889@df7jal23ls0d.invalid; transport = ws [Feb 13 06:15:59]错误[1055] [C-00000031]:netsock2.c:303 ast_sockaddr_resolve:getaddrinfo(“ df7jal23ls0d.invalid”,“(null)”,...):名称或服务未知 [Feb 13 06:15:59]警告[1055] [C-00000031]:chan_sip.c:16158 __set_address_from_contact:联系人中的主机名无效(无法在DNS中解析):'df7jal23ls0d.invalid'
毫无疑问,我会使用Freeswitch:-)