- VitalPBX 3.1.0
- Asterisk 15
- sipML5 (WebRTC 客户端)
- Google Chrome 75.0.3770.90(正式版本)(64 位)
测试目标:完成WebRTC的语音通信。
一、证书
第一步就是先生成证书,大多数的浏览器使用的是WebSocke协议来实现浏览器与服务器的全双工通信。
在这次测试中,我们使用来自所搭建的的VitalPBX服务器的自签名证书,为此,我们将转到“ 管理员>>系统设置>>证书 ”这个路径中,Type中选择Self Signed类型。在Description后输入一个描述名。在Hostname输入VitalPBX的IP地址。
如果您拥有有效的FQDN,则可以使用“Let's Encrypt”证书。

每一步的配置完成后需要记得点击右下角的“更新”保存配置。
二、配置Asterisk中的Mini HTTP Server
要与WebSocket客户端通信,需要在Asterisk使用其内置的HTTP守护程序。
首先在VitalPBX“ 设置>> PBX设置>>Mini HTTP Server ” 。通过这条路径到达Mini HTTP Server的配置页面,在这里,我们将分配我们之前创建的证书。

在Certificate选择好之前创建的证书。并将Enable HTTP和TLS Enable功能调成YES,开启功能。
三、防火墙配置
由于Asterisk的HTTP守护程序使用端口8088和8089, 因此需要在Vital的防火墙中允许这2个端口通过。
我们需要转到以下路径:管理员 >>安全>>防火墙中的配置页面。之后点击规则,进入到配置页面。点击添加一条如下图所示的规则。左边选项为Asterisk HTTP Daemon右边选项为接受。

最后在页面右下角中点击保存。
四、RTP配置
为了避免音频问题,我们需要配置一个STUN服务器,它可以协助NAT穿越防火墙。因此,要添加STUN服务器,我们需要转到我们的VitalPBX上的“ 设置>> PBX设置>> RTP设置 ”。

在本次测试中使用的是局域网环境,所以可以跳过此次步骤,直接通讯。在实际情况中,看需求添加STUN服务器。不建议使用公共服务器,延迟过高。
五、SIP属性设置
现在我们在Asterisk上启用WebSockets的配置完成了,现在需要为WebRTC客户端/设备定义配置文件。为此,我们需要转到以下路径:设置>>通信接口设置>>属性。在这里,我们将创建一个SIP配置文件,如下图所示。
在配置中,需要编辑Name与Description,建议配置名一致。之后开启相对应的功能,在Transport中添加WS,WS S模式,在DTLS Certificate中添加之前创建的证书。配置如下图。

六、创建分机
在这次测试中,我们将创建两个SIP分机,用于通信呼叫测试。我们需要转到以下路径:设置>>PBX设置>>分机。
配置如下图,可重复此步骤创建多个分机。

七、 sipML5配置
现在我们已经在VitalPBX上完成了配置,现在将进行配置sipML5客户端的演示。
下载链接为https://github.com/DoubangoTelecom/sipml5。将其解压缩打开其中的index.html文件,进入web页面,如下图:
点击enjoy our live demo,进入配置页面

点击Expert mode进入专家模式,并进行配置。配置如下图。在WebSocket Server URL输入wss://FBX的ip地址:8089/ws

配置完成后点击Save保存,并重新进入到sipML5的客户端。
进行配置,在Public Identity的输入格式为sip:分机名@FBXip地址。点击Login进行登录。

在配置正确的情况下,我们就可以进行语音通讯了。在拨打,接收语音通讯时,记得给与浏览器麦克风和摄像头的权限。
八、注意事项
- 我们可以访问以下链接:https://PBXip地址:8089/httpstatus检查端口以及证书的状态。
- 每在VitalPBX上进行配置时,需要点击保存或者更新确认配置的生效。
九、测试结果
让另一台PC使用sipML5客户端登陆到另一台分机,进行呼叫测试。呼叫3002

呼叫建立后再查看VitalPBX查看后台信息

测试结果:webRTC-软电话/webRTC-WebRTC可以正常实现语音通话,证书配置成功。视频通话失败。此版本使用的是chan_sip, 根据和官方沟通,确认需要后期补丁升级和视频通话的全局设置。后期继续使用PJSIP来进行测试。测试其webRTC视频通话。


FreeSBC/ProSBC 免费边界会话控制器, 下载ISO:https://freesbc.telcobridges.com/
关注微信公众号:asterisk-cn,获得有价值的Asterisk行业分享
Asterisk freepbx 中文官方论坛:http://bbs.freepbx.cn/forum.php
Asterisk freepbx技术文档: www.freepbx.org.cn
融合通信商业解决方案,协同解决方案首选产品:www.hiastar.com
Asterisk/FreePBX中国合作伙伴,官方qq技术分享群(3000千人):589995817
Asterisk freepbx 中文官方论坛:http://bbs.freepbx.cn/forum.php
Asterisk freepbx技术文档: www.freepbx.org.cn
融合通信商业解决方案,协同解决方案首选产品:www.hiastar.com
Asterisk/FreePBX中国合作伙伴,官方qq技术分享群(3000千人):589995817