Install the Certificate into FreeSWITCH
Replace sipjs.com with the domain name that you used to generate the certificate.
- cd /etc/letsencrypt/live/sipjs.com
- echo '' >> /usr/local/freeswitch/certs/wss.pem && cat cert.pem >> /usr/local/freeswitch/certs/wss.pem && cat privkey.pem >> /usr/local/freeswitch/certs/wss.pem && cat chain.pem >> /usr/local/freeswitch/certs/wss.pem
- Restart FreeSWITCH
其他还有配置在本文档的 《Freeswitch/wss》的章节。
echo '' >> /usr/local/freeswitch/certs/wss.pem &&
cat cert.pem >> /usr/local/freeswitch/certs/wss.pem &&
cat privkey.pem >> /usr/local/freeswitch/certs/wss.pem &&
cat chain.pem >> /usr/local/freeswitch/certs/wss.pem
240(139)上放了我申请的 gt.hhxx.com 的数字证书。
https://blog.csdn.net/ererfei/article/details/78330973
因为webRTC需要https,所以对应的FreeSWITCH提供WebSocket服务也要wss
conf/var.xml中有两个开关,要设置true
<X-PRE-PROCESS cmd="set" data="internal_ssl_enable=true"/>
<X-PRE-PROCESS cmd="set" data="external_ssl_enable=true"/>
conf/sip_profiles/internal.xml 中确保wss配置打开(SIP 服务的端口是 5060 ,默认ws端口是5066,而wss的默认端口是7443):
<!-- for sip over websocket support -->
<param name="ws-binding" value=":5066"/>
<!-- for sip over secure websocket support -->
<!-- You need wss.pem in $${certs_dir} for wss or one will be created for you -->
<param name="wss-binding" value=":7443"/>
配置完成之后,重启freeswitch生效。
https://my.oschina.net/andywang1988/blog/1928391
这里有个关于 apply-candidate-acl
现在有几个疑点:
1 chrome只允许https的网站使用摄像头和mic,所以我们的web需要用https(也要申请一张数字证书, 最好是用子域名申请而不是用ip申请)
2 freeswitch端需要用wss协议,也需要一张数字证书; (备注:如果freeswitch和web server放在同一台机,可能可以公用一张数字证书;)
3 防火墙需要允许一些端口,比如7443, 5060, 5066等等 还有一些动态的udp端口;
4 要确保演示用的主机上安装了摄像头和mic,并且允许chrome使用摄像头和mic;
5 如果内网不能上外网而导致dns无法解析, 可以通过增加host文件的方式指定域名/ip映射关系。
来源:oschina
链接:https://my.oschina.net/u/104197/blog/2877016