Feature Sync功能主要是让电话对讲机和服务器的状态保持同步,实现方式主要分为2种,一种是通过Subscribe/Notify机制来同步,一种是通过Invite呼叫FeatureCode来实现。
1.2.适用型号
电话对讲机所有型号
1.3.目标受众
此文档是针对解决电话对讲机问题的日常维护人员
2.设置方法
首先需要在电话对讲机上开启feature sync功能,默认没有开启,是本地执行功能。
网页配置项:
网页配置项:
配置文件:
<SIPCONFIGMODULE>
--SIPLineList--:
SIP1feature sync:0
Broadsoft,Metaswitch,都是基于Subscribe/Notify机制实现的。开启feature sync后,电话对讲机在注册时会向服务器发送带有Event:as-feature-event的SUBSCRIBE订阅消息,如果服务器支持,会回复电话对讲机200OK,紧着下发Notify刷新当前状态。如下图:
Fortinet也是通过设置FeatureCode来实现的功能同步,虽然也是基于Subscribe/Notify机制实现的,但是与feature sync配置无关。
3CX,Yeastar,和其它大部分SIP对讲服务器(测试过华为,中兴的IMS服务器)都是通过Invite呼叫FeatureCode来实现的。这种方式对终端电话对讲机来说实现简单。
Broadsoft
DND
①在服务器中打开/关闭DND,服务器会向电话对讲机发送带有DND状态(true/false)的sipnotify消息,电话对讲机收到后回复200OK并相应打开/关闭DND,抓包信息如图:
②在电话对讲机中打开/关闭DND,电话对讲机会先向服务器发送带有DND状态(true/false)的SUBSCRIBE订阅消息,服务器收到后回复200OK,开启/关闭DND后再次向电话对讲机发送带有DND状态(true/false)的SIPNotify确认消息,电话对讲机收到后回复200OK。抓包信息如图:
无条件前转
电话对讲机与Broadsoft服务器可以同步开启/关闭无条件前转功能,以及无条件前转号码。
①在服务器中打开/关闭无条件前转,设置前转号码,服务器会向电话对讲机发送带有无条件前转状态(true/false)与无条件前转号码的sipnotify消息,电话对讲机收到后回复200OK并相应打开/关闭无条件前转功能,同步无条件前转号码。
②在电话对讲机中打开/关闭无条件前转,电话对讲机会先向服务器发送带有无条件前转状态(true/false)的SUBSCRIBE订阅消息,服务器收到后回复200OK,开启/关闭无条件前转后再次向电话对讲机发送带有无条件前转状态(true/false)的SIPNotify确认消息,电话对讲机收到后回复200OK。抓包信息如图:
遇忙前转
电话对讲机与Broadsoft服务器可以同步遇忙前转功能,以及遇忙前转号码。
①在服务器中打开/关闭遇忙前转,设置前转号码,服务器会向电话对讲机发送带有遇忙前转状态(true/false)与遇忙前转号码的sipnotify消息,电话对讲机收到后回复200OK并相应打开/关闭遇忙前转功能,同步遇忙前转号码。
②在电话对讲机中打开/关闭无条件前转,电话对讲机会先向服务器发送带有遇忙前转状态(true/false)的SUBSCRIBE订阅消息,服务器收到后回复200OK,开启/关闭遇忙前转后再次向电话对讲机发送带有遇忙前转状态(true/false)的SIPNotify确认消息,电话对讲机收到后回复200OK。抓包信息如图:
无应答前转
电话对讲机与Broadsoft服务器可以同步开启/关闭无应答前转功能,以及无应答前转号码。
①在服务器中打开/关闭无应答前转,设置前转号码,服务器会向电话对讲机发送带有无应答前转状态(true/false)与无应答前转号码的sipnotify消息,电话对讲机收到后回复200OK并相应打开/关闭无应答前转功能,同步无应答前转号码。抓包信息如图:
②在电话对讲机中打开/关闭无应答前转,电话对讲机会先向服务器发送带有无应答前转状态(true/false)的SUBSCRIBE订阅消息,服务器收到后回复200OK,开启/关闭无应答前转后再次向电话对讲机发送带有无应答前转状态(true/false)的SIPNotify确认消息,电话对讲机收到后回复200OK。抓包信息如图:
Metaswitch
DND
①服务器开启/关闭DND(抓包流程同Broadsoft)
②电话对讲机开启/关闭DND(抓包流程同Broadsoft)
无条件前转(抓包流程同Broadsoft)
①服务器开启关闭无条件前转
②电话对讲机开启关闭无条件前转
无应答前转(抓包流程同Broadsoft)
①服务器
②电话对讲机
遇忙前转(抓包流程同Broadsoft)
①服务器
②电话对讲机
Fortinet
Fortinet服务器通过FeatureCode与电话对讲机状态同步。
服务器改变状态时,会向电话对讲机发notify消息带上DND状态
电话对讲机改变状态时,会向服务器发subscribe消息,带上dnd状态
前转设置同理。
3CX、Yeastar
3CX、Yeastar这种服务器开启feature sync之后,只能是电话对讲机将状态同步给服务器,服务器无法下发状态给电话对讲机。虽然有一定的不足,但是好在实现简单,可以满足正常的使用场景需求。
开启feature sync后,还需要设置对应功能的FeatureCode,如下图:
在电话对讲机上开启/关闭DND,电话对讲机向服务器发送invite消息,通知服务器同步状态。
注意:
由于3CX服务器后来新增实现了uaCSTA功能。当在服务器侧开启DND时,服务器可以通过uaCSTA的Info消息,将状态通知给电话对讲机端。但是我们目前并没有用这个消息来刷新电话对讲机的状态。