HowTo文档
如何在 XSwitch 中实现互联互通
XSwitch 是一个“连接一切”的实时音视频通信平台,支持 PSTN 电话、SIP、28181、WebRTC及声网间的音视频互联互通,支持与 ChatGPT 与各种 AI 平台对话,支持与腾讯会议等第三方会议系统实现视频会议互联互通等。
实现场景
通过将各种设备呼入到XSwitch 会议,实现互联互通效果。具体场景包括:
- 手机(PSTN)呼入 XSwitch
- 软电话(SIP)呼入 XSwitch
- Polycom视频设备(SIP)呼入 XSwitch
- 网页端(WebRTC)呼入 XSwitch
- 海康摄像头(28181)呼入 XSwitch
- 声网 SDK demo 呼入 XSwitch
- 腾讯会议呼入 XSwitch
- ChatGPT 呼入 XSwitch
配置 XSwitch 分机
默认已安装XSwitch 系统,在分机页面创建SIP账号,该账号主要给Polycom视频设备、软电话、网页端及海康摄像头使用。新建分机时必要参数说明如下:
- 名称:分机的名称。
- 号码:分机号,是一个“标志符字符串”,即只能是数字和字母的组合,区分大小写,除“
-._
”外不支持其它字符,如不能有空格或中文等。 - 密码:分机的密码,在注册和呼叫时会用到。
- 呼叫源:如果该分机发起呼叫,XSwitch 就会认为它来自该呼叫源,进而通过呼叫源查找路由。
- 所属用户:选择一个已有的用户。
进入【用户】⇨【分机】,新建四个分机,分机账号如下:
- 名称:软电话,号码:1001,密码 xxx,呼叫源默认,所属用户 admin。
- 名称:Polycom,号码:1002,密码 xxx,呼叫源默认,所属用户 admin。
- 名称:网页WebRTC,号码:1003,密码 xxx,呼叫源默认,所属用户 admin,分机类型改为“WebRTC”。
- 名称:海康摄像头,号码:34020000001320000005(根据协议统一编码规则,应创建 20 位十进制数字字符号码),密码xxx,呼叫源默认,所属用户 admin,分机类型改为“海康摄像头”。
配置 XSwitch 会议
系统默认提供3000、3500、3800三个会议室。
如果使用新的会议号码,新建会议过程,进入【会议】⇨【会议室】,或进入【会议】⇨【预约】点击新建输入名称和号码即可。
配置会议与会者
进入【会议】⇨【会议室】⇨【与会者】,点击“添加与会者”,输入上一步骤中创建的分机名称和号码以及外部号码,点击保存即可。添加与会者是为了方便通过会议控制页面直接将对应设备拉入到会议中。
- 与会者名称:手机,与会者号码:15666060000
- 与会者名称:软电话,与会者号码:1001
- 与会者名称:Polycom,与会者号码:1002
- 与会者名称:网页WebRTC,与会者号码:1003
- 与会者名称:海康摄像头,与会者号码:34020000001320000005
- 与会者名称:腾讯会议,与会者号码:102649622(腾讯会议号码)
- 与会者名称:ChatGPT,与会者号码:1000478(自定义的chatgpt号码)
声网加入会议
如果想要声网通道也加入会议,需要配置声网参数。如下:
进入【会议】⇨【会议室】(或进入【会议】⇨【预约】),点击“编辑”,在“声网”选项中,填写对应的声网参数,点击保存即可。
- 启用声网
- 填写声网AppID
- 填写声网Token
- 填写声网频道名
开启相关模块
如果测试声网的接入,请确保 mod_agora 模块已经加载
load mod_agora
手机呼入会议
前提是运营商线路号码已对接到系统中。
方法一:手机直接呼入
进入【呼叫】⇨【路由】,新建呼入路由,输入被叫号码前缀、目的类型指定会议室,选择会议室,如下:
- 被叫号码前缀:6753997(线路号码)
- 目的类型:指定会议室
- 会议室:选择3000会议
手机直接呼入6753997即可。
方法二:会议控制页面拉取入会
在 XSwitch 系统路由页面,创建路由,输入被叫号码前缀、目的类型网关,选择网关线路,如下:
- 被叫号码前缀:1
- 目的类型:网关
- 网关:选择出局的网关线路
稍后在会议控制页面直接呼叫指定手机号码入会即可。
软电话和Polycom 配置并呼入
软电话和 Polycom 的配置、注册成功后直接呼入会议号码(比如3000)即可。
WebRTC 配置并呼入
直接访问WebRTC demo(https://demo.xswitch.cn/demo2/),输入分机号码(比如1003)和密码,输入domain 以及 Websocket URL 点击“Log in”登录,登录成功后,在外呼框输入会议号码(比如3000)点击“call”即可。
海康摄像头配置并呼入
配置海康摄像头参见:如何在 XSwitch 中对接 GB28181 协议的摄像头。
海康摄像头注册成功后,进入【会议】⇨【会议室】,点击右侧“控制”,进入会议控制页面,选中海康摄像头号码,点击“呼叫”即可,如下:
声网 SDK 配置呼入
访问https://xswitch.cn/agora/basicVideoCall/index.html,输入声网APPID以及对应的channel通道(该值和路由中设置的保持一致),点击“Join”即可,如下 :
腾讯会议配置并呼入
需要提前购买腾讯会议商业版 + 会议室连接器:https://meeting.tencent.com/cloud-mra.html
修改SIP配置
XSwitch 在sip profiles
中增加sdp-session-description-add-as
为true
。
方式一 从 XSwich 呼叫腾讯会议
XSwitch 系统设置路由直接呼叫腾讯会议室连接器接入地址,然后将其加入到 XSwitch 会议中。
第 1 步 在 XSwitch 系统路由页面,创建路由,输入被叫号码(比如tengxun)、目的类型系统,文本中填写腾讯会议会议号及腾讯会议IP地址,如下:
- 被叫号码:102649622(腾讯会议号码)
- 目的类型:腾讯会议连接器
- 连接器地址:填写腾讯会议连接器IP地址,比如1.13.136.2
第 2 步 在会议控制页面,呼叫腾讯会议号码即可(第一步设置的被叫号码)。
特别注意 接入腾讯会议IP地址参见:
https://cloud.tencent.com/document/product/1095/89867
下面是2023-05-04的情况
接入点 | IP 地址 |
---|---|
北京 | 42.187.185.2 |
上海 | 1.13.136.2 |
重庆 | 139.186.243.2 |
广州 | 106.55.205.2 |
中国香港 | 129.226.105.2 |
德国法兰克福 | 43.157.73.2 |
方式二 腾讯会议直接呼入XSwitch
第 1 步 进入腾讯会议
第 2 步 邀请 -> 会议室 -> 会议室呼叫地址,填入SIP地址,仅支持IP地址不支持域名,如:
sip:3000@140.143.134.19:10180
特别注意 腾讯会议仅支持TCP。
ChatGPT 配置并呼入
配置AI机器人
进入【高级】⇨【AI】⇨【AI机器人】,新建AI机器人,选择使用的模型等信息,如下:
路由
在系统路由页面,创建路由,输入被叫号码(比如10000478)、目的类型AI机器人,选择上述创建的机器人,主题文本中输入chatgpt服务(该服务测试版本暂不支持,可自行写一个),如下:
- 被叫号码:10000478
- 目的类型:AI机器人
- 主题文本:cn.xswitch.chatgpt
拉取入会
在会议控制页面,呼叫10000478即可。