一种会话建立协议组网方式及实现群组消息的方法 【技术领域】
本发明涉及通信领域,尤其涉及一种会话建立协议(SIP Session InitiationProtocol)组网方式及通过该会话建立协议扩展实现群组消息的方法。
技术背景
无线蜂窝网正向3G迈进,3G的研究表明,蜂窝技术的发展是全IP的,在全IP网上利用3GPP定义的IP多媒体子系统(IMS IP Multimedia Sub-system)的构架开发多媒体业务将是快速、经济、易于大规模布署和移植的。“一次开发,全网通用”将由梦想成为现实,利用IMS开发新的多媒体业务将不但是所有开发人员的首选,而且是必选。
短消息业务是无线蜂窝网络的一个奇迹。短消息已经成为全世界成千上万人生活中不可分割的一部分。IMS提供的潜在的大量新业务,其中一些业务的用户标识和目前短消息使用的标识是不同的。为每一种此类新业务开发一种配套的消息业务是不经济。同样,我们也希望消息业务是一种“一次开发,全网通用”的业务。本发明正是提供这样一种通用消息系统的实现方法,而且消息将不只限于短消息,还可以是EMS、MMS乃至未来的消息类型。
与本发明相关的现有技术一:GPRS/UMTS
UMTS IMS的网络体系结构如图1所示:该网络分为四层,无线接入层将移动终端接入网络,网关接入层承载信令和数据,并能和其它种类的网络交换数据。网络控制层处理呼叫。新业务在业务管理层开发和布署。
IMS是一种很先进地技术,有很好的可扩展性。IMS的采用SIP信令,标准SIP本身就具有消息功能,但标准SIP的功能不适用于对所有的应用都提供强大和完善的消息支持,并和应用服务器上开发的新业务融洽配合。
与本发明相关的现有技术之二:传统的短消息中心技术
传统的短消息实现机制为通过短消息中心转发。以3GPP R99网络为例,网络结构图如图2所示,其中以椭圆圈上的部分是短消息中心。
但由于短消息中心是2G时代就发展的技术,因此有如下缺点:
和IMS的应用服务器没有接口,和新业务融合比较困难;
如果一种新业务使用不同的用户标识,要该新业务通过消息中心的方式提供消息业务相当重新建立一个消息中心,不经济;
用户给多人发消息,实际上需要用户的终端发送多次,浪费了网络资源。
与本发明相关的现有技术三:互联网上的即时消息技术
即时消息,如ICQ,QQ,MSN Messenger等,实现了在互联网上即时通信,成千上万的人喜欢这种工具,但不同的即时消息系统之间不能互通过。
SIP是公认的互通解决方案的方向,但目前还不成熟,特别是对群组消息功能较弱。
【发明内容】
本发明的目的是针对现有技术中的上述缺点,提出一种新的SIP组网方式及利用SIP群组消息扩展完成群组呼叫的方法:
为此,本发明采用如下方案:
一种会话建立协议(SIP Session Initiation Protocol)组网方式,其特征在于包括支持SIP群组消息扩展的终端、SIP Proxy、群组消息服务器和应用服务器,所述的终端,SIP Proxy,群组消息服务器及应用服务器之间通过扩展SIP消息通讯,所述的SIP Proxy按照标准流程处理上述SIP通讯。
所述的群组消息服务器包括SIP协议栈模块、SIP扩展解析适配模块、群组管理模块、消息处理控制模块和消息存储模块;
所述的SIP协议栈模块与SIP Proxy交互SIP扩展消息,将其解析为标准的SIP消息;
所述的SIP扩展适配模块与SIP协议栈模块及呼叫控制模块相连接,组装或解释SIP扩展消息的SIP扩展;
所述的消息处理控制模块根据SIP标准信息及扩展信息,和群组管理模块交互,产生标准及扩展的SIP消息,控制群组呼叫的建立,修改和释放;
所述的消息存储模块存储相关信息;
所述的群组管理模块提取数据库中的静态群组信息,根据消息处理控制模块传来的用户当前信息,管理和维护群组及群组用户的动态信息,并提供动态信息供消息处理控制模块使用。
所述的SIP Proxy符合3GPP标准,建立有IFC规则,所述的群组消息服务器根据该规则,转发消息到群组消息服务器。
所述的组网方式,还包括消息存储服务器,与SIP Proxy相连。
一种通过SIP群组消息扩展实现群组消息的方法,适用于支持SIP群组消息扩展的网络,其特征在于包括以下步骤:
a、主叫在终端上将被叫设定为群组成员,并发送Message消息经SIP Proxy给群组消息服务器,所述的Message消息SIP群组消息扩展中包括有群组成员信息及消息的内容;
b、SIP Proxy向群组消息服务器转发该Message消息;
c、群组消息服务器解析该消息中的群组成员信息,对主叫及群组成员进行鉴权;
d、群组消息服务器经SIP Proxy向被叫发Message类型的消息,SIP消息接收者由群组消息服务器替换成被叫;
e、群组成员收到该消息后给群组消息服务器回200OK消息;
f、群组消息服务器给主叫回200OK消息。
所述的步骤a中,所述的群组成员信息包括群组标识、群组成员列表、成员状态、成员类型、成员优先级中的一种或者多种的组合。
所述的步骤a中,设定群组成员的步骤,可以是预定义,也可以是在主叫发起呼叫时设定。
所述的步骤c,包括检测主叫与群组成员的权限和状态。
所述的方法,当主叫与被叫具有不同的归属群组消息服务器时,则主叫的归属群组消息服务器对被叫发起Message消息,经被叫的归属群组消息服务器查验用户状态等动态信息后转发给被叫。
所述的步骤d中,如果是网络预定义的群组,还包括群组消息服务器把群组地址解析为群组成员的实际地址。
所述的方法,当主叫与被叫具有不同的归属群组消息服务器时,则被叫的归属群组消息服务器先检查被叫的权限及状态,如果该被叫没有权限或者不在线,则不予转发。
所述的方法,当被叫不在线时,可以直接丢弃消息,也可以将消息存储在消息存储服务器中。
本发明是一种通用的SIP群组消息方案,具有如下有益效果:
本发明方案通用,接口标准,在所有SIP的网络中都可布署,其中的SIP Proxy也可选择顺从3GPP标准,方便和其它功能对接;IP网络可以包括固定IP网络及无线IP网络,固定IP网络包括拨号接入,ADSL等;无线IP网络包括GPRS,WCDMA,及CDMA,2000等。
本发明支持点到多点的发送,不必象现在所谓的短消息群组发送一样,实际是需要发消息的终端逐个发送群组成员。本方案中,群组消息发送给应用服务器或群组消息服务器,由它们分发,这消除了发消息的用户对资源的浪费,
本发明易于和新业务结合,不用所有所有的新业务单独建专用的消息模块;
本发明由于使用SIP,和Internet上的即时消息互通较容易;
本发明便于利用SIP消息的强大功能,支持SIP能支持的消息内容,也容易扩展。
【附图说明】
图1是现有技术中UMTS IMS网络体系结构示意图;
图2是现有技术中,短消息实现机制的网络结构示意图;
图3是本发明SIP组网示意图;
图4是本发明群组消息服务器的结构示意图;
图5是本发明利用SIP群组消息扩展实现群组呼叫的流程示意图。
【具体实施方式】
下面结合说明书附图来说明本发明的具体实施方式。
本发明的核心思想是扩展SIP,因此,使用到的应用服务器和终端都必须支持SIP群组消息扩展。所有应用服务器和终端之间通过支持群组消息扩展的SIP消息通讯,完成群组短消息的收发。
本发明的组网图方式如图3所示,群组消息服务器和消息存储服务器是功能实体,物理可以合在一起,甚至也可由支持SIP群组消息扩展协议的业务应用服务器实现。
图3中应用服务器是IMS中提供业务的功能实体,依据不同业务有不同的应用服务器。SIP终端、应用服务器、群组消息服务器和消息存储服务器都必须支持SIP群组消息扩展。
原则上,应用服务器通过支持SIP群组消息扩展协议,将实现群组短消息。也可以独立建立一个群组消息服务器,供其它独立的应用服务器使用。
网络中的和群组消息服务器直接相连的SIP Proxy可以选择顺从3GPP,并建立适当的IFC规则将SIP消息转发到群组消息服务器。
如图4所示,是本发明群组消息服务器的结构示意图,从图中可以看出,其主要包括SIP协议栈模块、SIP扩展解析适配模块、群组管理模块、消息处理控制模块和消息存储模块;
所述的SIP协议栈模块与SIP Proxy交互SIP扩展消息,将其解析为标准的SIP消息;
所述的SIP扩展适配模块与SIP协议栈模块及呼叫控制模块相连接,组装或解释SIP扩展消息的SIP扩展;
所述的消息处理控制模块根据SIP标准信息及扩展信息,和群组管理模块交互,产生标准及扩展的SIP消息,控制群组呼叫的建立,修改和释放;
所述的存储模块存储相关信息;
所述的群组管理模块提取数据库中的静态群组信息,根据消息处理控制模块传来的用户当前信息,管理和维护群组及群组用户的动态信息,并提供动态信息供消息处理控制模块使用。
具体业务的应用服务器可以配合完成数据查询和权限功能。
针对用户的不同需求,有的消息只要用户不在线,发送不成功丢弃即可;有的消息需要在用户不在线的情况下保存在网络中,因此为这一目的可以选择设置消息存储服务器。
图3是本发明组网方式的示意图,其是示意性的,只标出了相关的功能实体。其中的终端是支持任意同时支持SIP及SIP群组消息扩展,可以是手机,PDA或电脑。
在实际应用中,一种业务可能有多个群组消息服务器。不同的用户可能归属不同的群组消息服务器。用户发消息,首先到处自己的归属服务器,再由归属服务器转发消息到消息接收者的归属服务器处理。消息接收者的归属服务器主要查询消息接收者的动态信息,如是否在线等,如果满足条件才给用户发群组消息。
SIP群组消息也可以单独作为一种业务推出。这时,群组消息服务器也是一种应用服务器。
业务的应用服务器也可以不处理群组消息。这时,它认为自己用户的群组消息业务的归属服务器是独立的群组消息服务器,任何用户发的群组消息都由应用服务器转发到独立的群组消息服务器处理。
本发明中,要支持群组消息,用户SIP群组消息扩展须提供以下要素:
1.群组标识:标识一个群组的标识。如果是网络预定义群组,发消息的用户可以直接使用网络预定义的群组标识。如果是用户自定义的群组,不使用群组标识。
2.群组成员列表:SIP群组消息扩展中需要有群组成员的地址列表。地址可以是SIP URL或ENUM地址。
3.成员状态:标识群组成员的状态。如在线,拒绝,离线,免打扰等。
4.成员类型:标识是群组成员还是个人用户成员。对网络预定义群组,因为使用群组标识,因此是群组成员;对用户自定义群组,成员都是以个人用户身份出现的。
5.成员优先级:表示成员使用消息的优先级。支持优先高的用户的群组消息优先发送。
本发明中,SIP扩展可以在SIP的头域(Header Field)中实现,也可以在SIP的消息体中实现。
一种在消息体中实现的扩展可如下表示:
扩展分为Group参数和GroupMember List参数。
Group参数可表示为:
Group=″group″″:″(group_name″;″addr-spec)*(″,″group_name″;″addr-spec)
表示用字符串group开头表示后面的是Group参数。后面跟群组名和群组地址。
GroupMemberList参数可表示为:
PTTmember参数其语法入下:
PTTmember=″PTTmember″″:″member-addr[*(″;″member-params)]*[″,″member-addr[*(″;″member-params)]]
member-parans=member-addr|member-status|member-priority|member-type|
member-status=″status=″″deactive″|″inviting″|″connected″|″rejected″|″busy″|″hold″|″leaved″|″deleted″|″error″|extension-attribute
member-type=″mtype=″″group-user″|″single-user″|″owner″
member-addr=name-addr|addr-spec
member-priority=″mpriority=″1DIGIT;0-3
表示用PTTMember开始标识GroupMemberList参数。后者又分为member-addr和member-param参数。Member-addr表示成员地址,member-param又可细分为状态(member-status)、类型(member-type)、优先级(member-priority)等。
如图5所示,是本发明的群组消息发送流程:
对自定义群组,本发明采用如下的流程发送群组消息,如图5所示(假设群组中只有A、B、C三个用户):
1.主叫在终端上设定群组的其它成员,在本例中为B和C。主叫给群组消息服务器发Message消息,该消息的SIP群组消息扩展中含有用户B和C的信息,并表明此次呼叫是给用户B和C发群组消息,Message消息的内容还含有消息的内容。消息先到达和群组消息直接相连的SIP Proxy。
2.SIP Proxy向群组消息服务器转发Message消息。
3.群组消息服务器检查A、B和C的权限和及查询状态。假设一切满足可以发送群组消息的条件。
4.对有权限及状态在线的用户,群组消息服务器经SIP Proxy给用户B和用户C发MESSAGE消息,消息中可包含群组消息扩展,向群组提供群组相关信息。
5.用户B和C收到Message消息后给群组消息服务器回200OK消息。消息经CSCF到群组消息服务器。
6.群组消息服务器给用户A回200OK消息。
对预定义群组的群组消息发送,采用相同的流程。但主叫的Message消息中不是用户列表,而是群组名。再由群组消息服务器解析群组中的所有被叫。
当接收群组消息的用户和发送群组消息的用户有不同的归属群组消息服务器时,也就是说接收者的数据不在发送者的群组消息服务器中时,则发送者的群组消息服务器对接收者的状态不作检查,只是转发Message消息经接收者的服务器给接收者。消息接收者的服务器在转发Message消息前首先检查接收者的状态。可以由主叫的归属服务器检查用户权限,也可由被叫的归属服务器检查用户的权限。如果用户没有权限或用户不在线,则不予发送或转发。
对接收者不在线的情况,系统可以丢弃消息,也可以将消息存储在消息存储服务器中,等用户在一定时间内再次上线再发给用户。如果用户超出一定时间都没有上线,则消息存储服务器不再保存消息。
上述流程中的群组消息服务器可以是支持SIP群组消息扩展的应用服务器。
以上所述,仅为本发明较佳的具体实施方式之一,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。