我想设置在本地计算机上的 ubuntu 16.04 上运行的星号 13 以启用 WebRTC,我正在 Firefox 上使用 https://www.doubango.org/sipml5/ 进行测试
我的 sipml5 客户端已成功连接到星号,但在模拟呼叫时显示“呼叫正在进行”,
http 已启用并绑定到端口 8088
这是 sip.conf :
[web_rtc]
context=default
host=dynamic
secret=abc101
type=friend
transport=udp,ws,wss,tcp
encryption=yes
avpf=yes
force_avp=yes
icesupport=yes
directmedia=no
disallow=all
allow=opus
allow=ulaw
dtlsenable=yes
dtlsverify=fingerprint
dtlscertfile=/etc/asterisk/ast.pem
dtlscafile=/etc/asterisk/ast.pem
dtlssetup=actpass/
rtcp_mux=yes
这是 extension.conf :
[web_rtc]
exten => 100,1,Answer()
exten => n,Playback(hello-world)
exten => n,Hangup()
我已经在Asterisk 13上的Ubuntu 18.04上测试了sipml5,它工作得很好。我建议通过添加以下行向您的 rtp.conf 文件 (/etc/asterisk/rtp.conf) 添加一个 stun 服务器:
stunaddr=stun.l.google.com:19302
然后,在现场演示中,在专家模式部分配置您的 ICE 服务器,添加
[{ url: 'stun:stun.l.google.com:19302'}]
无论如何,我尝试了 sipml5,但在将它与 Asterisk 集成时遇到了一些问题(我在静音或暂停呼叫时遇到了问题),所以我尝试了其他库,最后我决定使用 sip.js (https://sipjs.com) /),我推荐。
希望有帮助。
sipStack = new SIPml.Stack({ realm: 'example.com', impi: 'sip_user', impu: 'sip:[email protected]:port', password: 'super_secret_password', websocket_proxy_url: 'wss://example.com:port/ws', outbound_proxy_url: null, ice_servers: "[{ url: 'stun:stun.l.google.com:19302'}]", enable_rtcweb_breaker: true, enable_early_ims: true, enable_media_stream_cache: true, sip_headers: [ { name: 'User-Agent', value: 'IM-client/OMA1.0 sipML5-v1.2016.03.04' }, { name: 'Organization', value: 'My_company' } ], events_listener: { events: '*', listener: eventsListener } });