-1

我想在本地机器上设置在 ubuntu 16.04 上工作的星号 13 以启用 WebRTC,我正在使用https://www.doubango.org/sipml5/在 firefox 上进行测试

我让 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()
4

1 回答 1

0

我在 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/) ,我推荐。

希望能帮助到你。

  • 我编辑以添加我在 JS 脚本中使用的 sipml5 客户端堆栈配置:

sipStack = new SIPml.Stack({ realm: 'example.com', impi: 'sip_user', impu: 'sip:sip_user@example.com: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 } });

于 2019-06-20T11:43:29.820 回答