网站首页 > 开源技术 正文
FreePBX实现SIP/WebRTC和PSTN设备对接完整流程
联系方式:
Siplab@知识星球
微信公众号:asterisk-cn
声明:
版权归作者所有,本文档是siplab为知识星球提供的学习资料,不得公开分享或者传播;否则将承担法律责任!
测试环境:
FreePBX版本SNG7-FPBX-64bit-1805-2
WebRTC 客户端sipML5客户端
语音网关:sangoma vega50模拟网关
火狐浏览器68.0.1 (64 位)
SIP 软电话 eyeBeam软电话
实现目标:
FreePBX创建pjsip分机,WebRTC客户端可以使用pjsip分机账号登陆,同时实现WebRTC内部分机语音沟通,对接网关后,可以使用WebRTC客户端与运营商号码的双向语音呼叫。
相对比与asterisk搭建,FreePBX有着可视化页面,可以方便管理员对分机账号的创建和管理,同时和asterisk的管理难度相比,操作难度减低,方便用户使用WebRTC集成其他企业业务实现IPPPBX的WebRTC业务支持和扩展。
配置完整拓扑图:
配置步骤:
首先需要到官方下载FreePBX,安装配置以后,可以通过界面登录FreePBX系统。然后,再进行以下流程配置。其流程包括:创建证书,创建WebRTC分机,创建SIP分机,使用webrtc客户端登录WebRTC分机,配置网关,配置FreePBX呼入呼出路由。下面,我们会通过一步步配置来告诉大家如何实现WebRTC和网关呼入呼出的对接呼叫。
创建证书:
在WebRTC中,需要证书的支持才能支持登陆,在本次测试环境中为内网环境,没有公网证书,所以需要自己在FreePBX中创建证书。供测试使用,创建证书导航为"管理员>>证书管理"进入页面之后,按下图所指示进入证书创建页面
创建证书模板为
配置完成后记得在左下角点击提交,提交之后在右上角更新配置
证书的默认路径为"/etc/asterisk/keys/"使用远程软件连接到freepbx后台查看你所创建的证书
证书页面:
在配置http守护进程完成之后,现在我们进入证书页面,验证配置是否成功,在火狐浏览器中输入"https://192.168.1.31:8089/httpstatus"出现该页面时,配置完成
PJSIP分机创建:
接下来需要创建PJSIP分机,供sipML5客户端以及eyeBeam软电话注册,进行通讯的测试,最先的就是将sip通道设置为仅仅pjsip,使用auto模式时,pjsip分机登陆可能会走到sip通道,导致登陆失败,设置路径为"设置>>高级设置"找到"拨号规则和操作"这一板块下,修改为下图中的设置。
配置完成后,进入"设置>>Asterisk SIP设置"在通用设置页面下,修改一下参数,开启RTP的功能,同时,在下面的语音编码中,记得添加好opus模块
现在修改PJISP设置,设置如下
PJSIP分机创建及属性修改,在测试中,需要创建3台分机 ,2台为sipML5使用的分机,一台为eyeBeam软电话登陆分机。设置路径为"应用配置>>分机"添加PJSIP分机
普通设置为
现在创建一台eyebeam软电话登陆的PJSIP分机仅仅修改密码就好,其余使用默认设置。
注意:创建PJSIP分机时,笔者在点击更新后,sipML5客户端以及软电话登陆pjsip分机都出现了forbide的错误,这是配置没有完全生效,可以重启asterisk后台,或者直接putty连接重启freepbx。
通话测试
现在进行通话测试,sipML5客户端和软电话的使用在之前文章有提及,不过多赘述,在本次测试中为内网环境,不需要nat以及stun服务器的配置,因此在专家模式中需要进行一些改动。
8888分机上线成功
9999分机上线成功
软电话上线成功
sipML5客户端8888呼叫sipML5客户端9999:
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
sipML5客户端8888呼叫软电话10000:
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
软电话10000呼叫sipML5客户端8888:
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
软电话10000呼叫sipML5客户端9999:
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
sipML5客户端9999呼叫sipML5客户端8888
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
sipML5客户端9999呼叫sipML5客户端10000
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
至此,sipML5客户端以及到软电话的内网通讯全都测试完毕,双向通讯正常。
接下来我们进行更深一步的测试,让freepbx对接sangoma的网关设备,型号为vega50模拟网关,使得内部话机可以与运营商双向呼叫。
FreePBX配置:
与vega网关对接,需要一条中继指向网关,在设置路径为"通信接口连接>>中继"
我们在这添加一条sip(chan_pjsip)中继,默认设置中,将中继名设置为简单易懂的名字
"pjsip配置"中,我们关闭认证和注册功能,在SIP服务器和端口,输入vega网关的IP地址和端口
现在配置入局路由。设置路径为"通信接口连接>>入局线路>>添加呼入路由设置"设置未知目的地为分机 ,同时指导一个分机号码接受运营商的呼叫
现在配置出局路由。设置路径为"通信接口连接>>出局线路>>添加呼出路由设置"在匹配中继顺序中,选择好之前创建的中继。
在Dial Patterns设置中,匹配模式设置为X.为匹配所有
现在进行网关侧配置
在vega网关上,建议新手使用快速配置
配置完成后,进行呼叫测试
使用sipML5客户端8888分机呼叫运营商号码,拨号时异地号码前加0
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
呼入测试,使用手机拨打回PSTN线路号码,检查8888分机是否能接受呼叫
通话建立成功,asterisk后台日志可查看,下图为日志部分截图
注意:1)WebRTC通信对多方环境的依赖程度比较高,在本环境下配置成功不代表适应所以环境
2) 在FreePBX配置时,记得使用快照功能,笔者在实际配置时,由于一些误操作导致IP被PBX加入黑名单,无法远程访问页面,使用快照可还原状态
3) FreePBX部分配置保持后,没有立即生效,需要手动重启PBX,保证配置生效,否则可能会出现2)中的问题
猜你喜欢
- 2024-10-17 123456(123456铁路官网下载)
- 2024-10-17 魔兽世界怀旧服黑科技:双子监控打虫子
- 2024-10-17 巫妖王来袭!九职业巫妖王卡组分享
- 2024-10-17 解决芯片互连卡脖子问题:CMOS片上光电互连速度突破2Tb/s
- 2024-10-17 编程语言排名@2022(编程语言排名verilog)
- 2024-10-17 NAT穿透技术及开源工具(nat4穿透)
- 2024-10-17 网易云信CTO阙杭宁:如何保障十万不同应用的通讯稳定与实时性
- 2024-10-17 融合通信功能配置示例-1-如何快速批量添加SIP分机
- 2024-10-17 PJSIP集成G729 (vs2022版)(集成块sp7623hp代换)
- 2024-10-17 JFrog 披露PJSIP开源多媒体通信库的五个漏洞
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)