一种基于SIP协议的会议列表订阅和通知方法与流程

文档序号:13453399
一种基于SIP协议的会议列表订阅和通知方法与流程
本发明涉及视频会议领域,特别涉及一种基于SIP协议的会议列表订阅和通知方法。

背景技术:
基于SIP协议(SessionInitiationProtocol,会话初始协议)的会议技术已成为视频会议系统的主流技术标准。相对于H.323而言,SIP协议结构简单清晰,能够以较低的成本,构建复杂的视讯话音系统。SIP协议已成为为下一代网络(NGN:NextGenerationNetwork)的核心控制协议。与此同时,SIP协议及其应用的标准化工作也在积极的进行之中,这其中就包括由IETFSIPPING工作组领导的集中式多媒体会议的标准化工作和XCON工作组领导的会场控制和CPCP(ConferencePolicyControlProtocol)的标准化工作。随着这些标准的制订,基于SIP协议的会议系统将会有更广阔的应用场景。用户登陆会议系统后,需要获知其参与的会议列表信息。现有的会议状态订阅规范“RFC4575-ASessionInitiationProtocol(SIP)EventPackageforConferenceState”中定义了会议状态信息的订阅和通知机制。但该规范的通知内容主体为某个会议的状态信息,这些信息无法完整地向用户呈现一个拥有复杂配置的会议。而且用户进行会议状态订阅的前提条件是获知其可订阅的会议有哪些后,才能订阅这些会的状态信息。因此,用户在不知道自己参与的会议有哪些的情况下,无法通过会议状态订阅获取会议信息。而且,用户更多时候并不希望了解某个会议的详细状态信息,仅获知其参与的会议概要信息(比如:会议主题,会议开始时间,参会人员等)即可。RFC4574定义的会议的状态信息内容较为庞大,如果用户参会的会议较多,那么推送会议状态的更新信息将会占用大量的服务器资源。如何提高有用信息传递的效率,将是本发明重点考虑的问题。

技术实现要素:
本发明要解决的技术问题,在于提供一种基于SIP协议的会议列表订阅和通知方法,在保证会议列表信息的完整性和可读性的前提下,提高有用信息传递的效率,节约了大量的服务器资源。本发明是这样实现的:一种基于SIP协议的会议列表订阅和通知方法,包括步骤S1、首先由用户通过WEB浏览器登陆视频会议系统,进行会议列表订阅请求;步骤S2、会议列表订阅请求经过代理服务器转发到视频会议系统的订阅服务器;步骤S3、视频会议系统的订阅服务器将用户的会议列表通知经过代理服务器转发给用户;其中,所述会议列表是以XML文档的conference-list事件包进行通知的,该事件包仅包含会议的配置信息,并允许用户订阅会议列表信息,且通知者和订阅者都必须支持application/conference-list+xml数据格式;所述会议列表的订阅和通知的信令流程具体是:(1)、WEB客户端向代理服务器发送承载SIPSUBSCRIBE的websocket报文;(2)、代理服务器将SIPSUBSCRIBE从websocket报文中提取出来,并转发给视频会议系统的订阅服务器;(3)、视频会议系统的订阅服务器收到SIPSUBSCRIBE后,通过代理服务器下发用户的会议列表通知。进一步的,所述XML文档的根元素为<conference-list>,所述根元素<conference-list>携带version属性,所述根元素<conference-list>的子元素通过添加state属性后被分为允许部分通知和不允许部分通知两类;其中,Conference-list事件包属于自定义的,通过version属性使信息的订阅者可以对通知的完整性进行判断;并且通过state属性可以简化通知内容,减少信息交互成本。所述方法还包括步骤S4、当视频会议系统的会议列表信息发生改变,订阅服务器主动将用户的会议列表的变更信息通知经过代理服务器转发给用户,其中变更信息仅包括从上次通知以来,发生变化的信息。本发明具有如下优点:(1)用户只需进行一次订阅,便可获知其参与的所有会议信息,由于会议列表信息仅包含会议配置,而配置信息具有更新频率低的特点,在保证了会议信息的完整性和可读性的同时,可极大缩小服务器发送通知的长度和频率。向用户推送完整的会议列表后,服务器后续推送的通知内容只包含距上次通知后会议配置的变化信息,可减少服务器更新会议列表所耗费资源。(2)conference-list事件包中定义了丰富的会议配置项,用户可以轻松通过客户端完成各种定制化的会议配置,且本发明中conference-list事件包由XML编写,XML是可扩展标记语言,这使其具有良好的扩展性和灵活性,开发人员可以根据自己的业务需要,基于现有的XML规范,通过新增标签的方式,快速增加新的会议配置项。(3)视频会议系统的订阅服务器自动将该用户的会议列表通知经过代理服务器转发给用户,因此用户在不知道自己参与的会议有哪些的情况下,仍能获得与自己有关的会议信息。附图说明下面参照附图结合实施例对本发明作进一步的说明。图1为本发明视频会议系统框架图。图2为本发明会场控制信令流程图。图3为本发明方法中用户注册和会议列表订阅过程的信令交互流程图。图4为本发明方法中会议的创建、修改和删除过程的信令交互流程图。图5为本发明方法中主持人邀请和删除成员的信令交互流程图。具体实施方式如图1所示,本发明的基于SIP协议的会议列表订阅和通知方法,包括:步骤S1、首先由用户通过WEB浏览器登陆视频会议系统,进行会议列表订阅请求;步骤S2、会议列表订阅请求经过代理服务器转发到视频会议系统的订阅服务器;步骤S3、视频会议系统的订阅服务器将用户的会议列表通知经过代理服务器转发给用户;步骤S4、当视频会议系统的会议列表信息发生改变,订阅服务器主动将用户的会议列表的变更信息通知经过代理服务器转发给用户,其中变更信息仅包括从上次通知以来,发生变化的信息。如图2所示,本发明所述会议列表的订阅和通知的信令流程具体是:(1)、WEB客户端向代理服务器发送承载SIPSUBSCRIBE的websocket报文;(2)、代理服务器将SIPSUBSCRIBE从websocket报文中提取出来,并转发给视频会议系统的订阅服务器;(3)、视频会议系统的订阅服务器收到SIPSUBSCRIBE后,通过代理服务器下发用户的会议列表通知。其中,本发明用户注册和会议列表订阅过程的信令交互流程如图3所示,会议的创建、修改和删除过程的信令交互流程如图4所示;主持人邀请和删除成员的信令交互流程则如图5所示。其中,如下表1所示,所述会议列表是以XML文档的conference-list事件包进行通知的,该事件包仅包含会议的配置信息,并允许用户订阅会议列表信息,且通知者和订阅者都必须支持application/conference-list+xml数据格式,所述XML文档的根元素为<conference-list>;所述根元素<conference-list>携带version属性,属性值是递增的,可用于标记元素包含信息是完整的(full)、部分的(partial)或已被删除的(deleted)所述根元素<conference-list>的子元素通过添加state属性后被分为允许部分通知和不允许部分通知两类,其中部分通知机制是指通知中仅包含从上次通知以来,发生变化的信息。如果某个元素包含大量频繁变化的数据,则该元素添加state属性后,可以进行部分通知;下表中支持部分通知的元素有:<conference-list>、<conference-info>、<users>和<user>。表1中还通过元素键值区分多个相同的子元素,如<conference-info>键值:entity,一般赋值为会议URI;<user>键值:entity,一般赋值为成员URI。表1:conference-listXML结构概览再看表2,该表2给出了<conference-list>的XMLSchema具体的定义方式.表2下述表3给出了会议列表订阅,创建、修改和删除会议通知的范例。表3虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
...
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1