本申请涉及通信技术领域,特别涉及一种集群语音组播组呼的监听方法和装置。
背景技术:
目前,基于3gpp集群应用层标准(missioncriticalpushtotalkoverlte,mcptt)的宽带集群解决方案已经进入了崭新的时代。与传统的专网业务相比,mcptt标准方案有了极大地改进,增加了一些列新技术,如会话初始协议(sessioninitiationprotocol,sip)预建立,组播组呼等。当终端和服务器之间支持sip预建立时,终端登录成功后,终端基于sip协议,跟服务器将会话通路建立起来(主要为终端和服务器之间的参数协商,如语音编解码方式),长久保存。当服务器存在组呼语音会话时,则可以使用已建立的预建立通道,快速建立会话,降低会话建立时延。预建立成功后,如果终端支持组播,则当服务器有组呼会话存在时,服务器只需要往组播通道发送会话建立组呼组播监听来电(mapgrouptobearer,map)消息,终端收到后自行决定是否监听,终端和服务器之间会话耦合性低,各个终端无需跟服务器之间建立一对一的单播链路,终端只需要从固定的组播通道接收数据。因此,组播技术不仅能提升会话时延,还能极大提升了服务器的容量。
图1给出了mcptt组播监听的网络拓扑图。如图1所示,在整个mcptt网络中,服务器侧将整个网络划分为多个位置区域(sa),每个sa即为一个组播区域,每个sa对应一个信令临时移动组标识(ip,port)(tmgi(ip,port))。终端在注册成功后,服务器会通过announcement消息,将信令tmgi和sa的全网对应关系下发给终端,终端当移动到不同sa时,自动选择该监听那个信令tmgi。
申请人在实现本发明的过程中发现:现有的mcptt标准方案存在组播模式下终端监听卡顿的问题,具体原因分析如下:
对于语音业务,在sip会话建立的时候,终端和服务器之间有一个非常重要的信息需要协商一致:语音编解码方式。在协商语音编解码方式时,终端有主动权,服务器则是被动处理,因此,不能保证所有终端均使用同样的编码格式。而在组播监听场景下,服务器侧给所有监听终端往组播通道发送的会话信令和用户面数据都是相同的,同一份数据,服务器对组播监听终端是无差异处理的。这样,如果终端在sip预建立时与服务器之间协商的语音编解码方式,与组播通道下发的数据编解码不一致,则会导致监听卡顿。
当前,语音编解码常见的方式有:amr-wb,amr-nb,pcma,pcmu等编解码格式。在一个庞大的网络中,存在各种厂商的集群终端,同一厂商也包含多款终端,不同的终端支持的编解码方式存在差异的情况很普遍。因此,上述终端在sip预建立时协商的语音编解码方式与组播通道下发的数据编解码不一致的概率也较大,进而监听卡顿的问题也普遍存在。
技术实现要素:
本申请提供了一种集群语音组播组呼的监听方法和装置,能够有效解决监听卡顿的问题。
一种集群语音组播组呼的监听方法,其特征在于,包括:
当终端登录成功后,向服务器发起sip预建立;
当所述终端接收到所述服务器发送的组呼组播监听来电map消息时,所述终端判断所述map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,如果相同,则根据所述map消息进行语音监听;否则,触发所述服务器为所述终端补建语音单播,并监听相应的单播语音。
较佳地,所述map消息指示的语音编码格式的确定包括:
所述终端从所述map消息中解析出语音编码格式的索引信息;
所述终端查询本地保存的服务器支持的语音编码格式与索引信息的对应关系,得到解析出的所述索引信息对应的语音编码格式。
较佳地,所述对应关系由所述服务器在所述终端发起sip注册后通知给所述终端。
较佳地,所述对应关系由所述服务器下发给所述终端的通告announcement消息携带。
一种集群语音组播组呼的监听装置,设于终端中,包括:处理器,所述处理器用于:
当终端登录成功后,向服务器发起sip预建立;
当所述终端接收到所述服务器发送的组呼组播监听来电map消息时,判断所述map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,如果相同,则根据所述map消息进行语音监听;否则,触发所述服务器为所述终端补建语音单播,并监听相应的单播语音。
较佳地,所述处理器进一步用于:
从所述map消息中解析出语音编码格式的索引信息;
查询本地保存的服务器支持的语音编码格式与索引信息的对应关系,得到解析出的所述索引信息对应的语音编码格式。
较佳地,所述对应关系由所述服务器在所述终端发起sip注册后通知给所述终端。
较佳地,所述对应关系由所述服务器下发给所述终端的通告announcement消息携带。
本申请还公开了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行如前所述的集群语音组播组呼的监听方法的步骤。
本申请还公开了一种电子设备,包括如前所述的非易失性计算机可读存储介质、以及可访问所述非易失性计算机可读存储介质的所述处理器。
由上述技术方案可见,本申请提供的集群语音组播组呼的监听方法和装置,在终端接收到所述服务器发送的map消息时,需要判断所述map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,如果相同,则触发所述服务器为所述终端补建语音单播,并监听相应的单播语音。如此,通过在对sip预建立时协商的语音编解码方式与组播通道下发的数据编解码不一致时,由终端触发服务器侧为补建语音单播,进行单播监听,从而可以解决上数据编解码不一致时所致的监听卡顿问题。
附图说明
图1为mcptt组播监听的网络拓扑图;
图2为本发明实施例的方法流程示意图;
图3为基于announcement消息实现本发明实施例的方法流程示意图。
具体实施方式
为使本申请的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本申请作进一步详细说明。
针对上述监听卡顿的问题,如果服务器跟终端的语音监听均采用单播技术,即不使用预建立,则可解决该问题。但是,也会存在如下问题:(1)不采用sip预建立,会极大减小服务器的容量;(2)不采用sip预建立,会增加监听会话的建立时延;(3)据统计,在一个大规模系统中,只有少数终端编解码存在差异,不宜均采用sip非预建立方式。
基于上述分析,为了充分利用sip预建立的优势,又能避免终端监听卡顿的问题,本申请中将考虑由终端对sip预建立时协商的语音编解码方式与组播通道下发的数据编解码进行一致性判断,在判断出不一致时触发服务器侧按照sip预建立时协商的语音编解码方式为其补建单播,这样,ue在补建的单播信道上进行业务监听即可避免上述不一致所致的卡顿问题。
图2为本发明实施例的流程示意图,如图2所示,该实施例实现的集群语音组播组呼的监听方法主要包括:
步骤201、当终端登录成功后,向服务器发起sip预建立。
本步骤中,sip预建立的具体过程同现有系统,该过程中需要协商语音编码格式,在此不再赘述。
步骤202、当所述终端接收到所述服务器发送的组呼组播监听来电map消息时,所述终端判断所述map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,如果相同,则根据所述map消息进行语音监听;否则,触发所述服务器为所述终端补建语音单播,并监听相应的单播语音。
本步骤中,当终端接收到所述服务器发送的map消息时,不再仅是简单地根据该消息进行语音监听,而是需要先判断map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,只有在相同时,都有可以直接进行监听,在两者不相同时,则说明直接基于组播通道进行监听会出现由于语音编码格式与协商时的不相同而导致语音卡顿问题,为了避免该问题,需要触发服务器为其补建语音单播,通过监听单播语音,确保语音监听的流畅。如此,一方面可以解决语音卡顿问题,另一方面还可以最大程度地发挥sip预建立优势。
较佳地,map消息可以通过携带语音编码格式的索引,来指示语音编码格式,基于此,具体可以采用下述方法来确定map消息指示的语音编码格式:
所述终端从所述map消息中解析出语音编码格式的索引信息;
所述终端查询本地保存的服务器支持的语音编码格式与索引信息的对应关系,得到解析出的所述索引信息对应的语音编码格式。
较佳地,所述对应关系可以由所述服务器在所述终端发起sip注册后通知给所述终端。例如,较佳地,可以利用sip注册成功后服务器下发给终端的通告announcement消息,来携带所述对应关系。但不限于此,在实际应用中,所述对应关系也可以预先设置于终端中。
从上述实施例可以看出,该实施例可以有效解决终端监听卡顿的问题,并且能够有效利用sip预建立的优势。下面给出基于announcement消息实现上述方法实施例的具体过程,如图3所示,包括以下步骤:
1、用户登录成功。
2、ue向服务器发起sip注册(注:只有sip注册成功后才能做组呼业务)。
3、服务器向ue下发announcement通告。ue解析出携带的信令tmgi列表,根据从modern查询到的小区位置信息,对信令tmgi进行监听。同时,解析出服务器侧的编码格式和map消息中索引index的对应关系info,并保存。
4、ue向服务器发起sip预建立,协商的语音编解码方式为t1,为后续会话提前准备通道。
5、服务器收到主讲ue发起的组呼会话建立,服务器往组播通道给监听终端发送组呼组播来电消息map消息。
6、ue解析map消息。map消息中包含了来电的群组,会话类型,优先级,以及语音编码格式索引index等群组会话建立信息。
7、根据index从info中找到本次组呼监听的语音编解码格式t2。
8、将t2与预建立协商的t1进行对比;如果相等,则执行步骤11;否则,执行步骤9。
9、通过sipmessage消息上报服务器,语音不可用。
10、服务器给ue补建语音单播,ue监听单播语音,执行步骤12。
11、解析map中的语音组播ip和端口,对齐进行监听。
12、本次会话结束。如果有新会话来电,则执行步骤5。
与上述方法实施例相对应,本申请还提供了一种集群语音组播组呼的监听装置,该装置设于终端中,包括:处理器,所述处理器用于:
当终端登录成功后,向服务器发起sip预建立;
当所述终端接收到所述服务器发送的组呼组播监听来电map消息时,判断所述map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,如果相同,则根据所述map消息进行语音监听;否则,触发所述服务器为所述终端补建语音单播,并监听相应的单播语音。
较佳地,所述处理器进一步用于:
从所述map消息中解析出语音编码格式的索引信息;
查询本地保存的服务器支持的语音编码格式与索引信息的对应关系,得到解析出的所述索引信息对应的语音编码格式。
较佳地,所述对应关系由所述服务器在所述终端发起sip注册后通知给所述终端。
较佳地,所述对应关系由所述服务器下发给所述终端的通告announcement消息携带。
此外,本申请还提供了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行如前所述的集群语音组播组呼的监听方法的步骤。
此外,本申请还提供了一种电子设备,包括如上所述的非易失性计算机可读存储介质、以及可访问所述非易失性计算机可读存储介质的所述处理器。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
1.一种集群语音组播组呼的监听方法,其特征在于,包括:
当终端登录成功后,向服务器发起sip预建立;
当所述终端接收到所述服务器发送的组呼组播监听来电map消息时,所述终端判断所述map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,如果相同,则根据所述map消息进行语音监听;否则,触发所述服务器为所述终端补建语音单播,并监听相应的单播语音。
2.如权利要求1所述的方法,其特征在于:所述map消息指示的语音编码格式的确定包括:
所述终端从所述map消息中解析出语音编码格式的索引信息;
所述终端查询本地保存的服务器支持的语音编码格式与索引信息的对应关系,得到解析出的所述索引信息对应的语音编码格式。
3.如权利要求2所述的方法,其特征在于:所述对应关系由所述服务器在所述终端发起sip注册后通知给所述终端。
4.如权利要求3所述的方法,其特征在于:所述对应关系由所述服务器下发给所述终端的通告announcement消息携带。
5.一种集群语音组播组呼的监听装置,设于终端中,其特征在于,包括:处理器,所述处理器用于:
当终端登录成功后,向服务器发起sip预建立;
当所述终端接收到所述服务器发送的组呼组播监听来电map消息时,判断所述map消息指示的语音编码格式是否与所述sip预建立时协商的语音编码格式相同,如果相同,则根据所述map消息进行语音监听;否则,触发所述服务器为所述终端补建语音单播,并监听相应的单播语音。
6.如权利要求5所述的装置,其特征在于,所述处理器进一步用于:
从所述map消息中解析出语音编码格式的索引信息;
查询本地保存的服务器支持的语音编码格式与索引信息的对应关系,得到解析出的所述索引信息对应的语音编码格式。
7.如权利要求6所述的装置,其特征在于:所述对应关系由所述服务器在所述终端发起sip注册后通知给所述终端。
8.如权利要求7所述的方法,其特征在于:所述对应关系由所述服务器下发给所述终端的通告announcement消息携带。
9.一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储指令,其特征在于,所述指令在由处理器执行时使得所述处理器执行如权利要求1至4中任一项所述的集群语音组播组呼的监听方法的步骤。
10.一种电子设备,其特征在于,包括如权利要求9所述的非易失性计算机可读存储介质、以及可访问所述非易失性计算机可读存储介质的所述处理器。
技术总结