一种开放式的多媒体会议服务系统及实现方法

文档序号:7740504阅读:234来源:国知局
专利名称:一种开放式的多媒体会议服务系统及实现方法
技术领域
本发明涉及多媒体通信的应用技术,尤其涉及一种开放式的多媒体会议服务系统 及实现方法。
背景技术
多媒体会议的产品在最近几年里迅猛发展,已经成为通信行业中的重要组成部 分,并获得了广泛的应用。目前国内外市场上的多媒体会议系统主要包括基于综合业务 数字网(ISDN)的会议系统、基于专线的多媒体会议(MCU)系统以及基于因特网的软会议系 统。就整体的应用状况和市场前景而言,目前基于ISDN网络的多媒体会议正慢慢退出市 场,而基于专线的MCU多媒体会议系统虽然性能优越,但其昂贵的价格也让以效益为中心 的企业望而却步,故,存在着用户群体单一、成本高的缺点。基于因特网的多媒体会议从技 术层面上看,主要采用由国际电信联盟(ITU)提出的H. 323协议簇或由互联网工程任务组 (IETF)提出的会话初始协议(SIP,Session initial Protocal)作为多媒体通信的信令控 制协议。由于H. 323协议出现较早,并且采用的是传统的电话信令模式,便于与现有的电话 网互通,很容易被电信运营商所接受。SIP协议自1999年由IETF提出以来,得到了学术界、设备商、运营商等多方的普遍 关注。对于下一代网络(NGN)在IP网络上实现语音IP(VOIP)和多媒体通信来讲,SIP在全 面满足NGN特性要求的应用上具有独特的优势;同时SIP也得到了包括第三代合作伙伴计 划(3GPP)和3GPP2移动标准以及国际第四代移动通信技术(4G)和有线电缆Packet Cable 等几乎所有国际标准组织的推崇和支持,国内外知名的电信设备厂商,如西门子、北电、阿 尔卡特、华为、中兴等,目前已经纷纷开发生产出支持SIP协议的软交换、SIP代理服务器等 设备;众多的终端设备厂商也推出了自己的SIP视频话机、SIP PC软终端和SIP IP话机。 但到目前为止,基于SIP的多媒体会议服务在市场上却难觅踪迹。而NGN和3G的最大特点 就是对多媒体的良好支持和应用,可以确信NGN和3G的到来将推动基于SIP的多媒体会议 服务达到新的发展高潮。虽然经过了多年的发展,但面向普通大众的多媒体会议应用却始 终没有出现。归根结底,传统电信网的封闭架构和低带宽的现况不适合多媒体业务的快速 开发与部署,并且也不能满足大量多媒体用户的带宽需求。另外,传统的会议系统采用“专 线”方式,造价高昂,只有大中型企事业单位才能用得起,因此难以向普通大众用户推广。传统的智能网实现了呼叫控制和业务提供的分离,充分的利用了现有的网络资 源,只需增加智能设备和软件,就能快速、方便地提供新的增值业务,并且投入少、产出快、 可以集中快速的生成增值业务提供给用户,从而能够为运营商带来可观的收入。虽然智能 网应用模块化的设计思想,将实现业务的基本功能分成若干个独立于业务的构造块,通过 这些业务独立块在业务生成环境中生成新业务,达到了一定程度的开放,能够让电信运营 商或增值业务运营商快速开发多样化的增值业务。但是,以智能网方式提供增值业务主要 是通过在业务控制点上加载业务逻辑来控制业务交换点实现的,而业务控制点与业务交换 点之间的交互是通过专用的电信协议,如ISUP、INAP, CAP等实现的,这些复杂的电信协议使得第三方应用开发商难以参与电信新业务的开发,在一定程度上限制了增值业务的发 展。就这些方面而言,传统智能网也不能满足目前电信市场对业务个性化、开发快速便捷的需求。

发明内容
有鉴于此,本发明的主要目的在于提供一种开放式的多媒体会议服务系统及实现 方法,为普通用户提供多种灵活的多媒体会议接入方式,通过降低现有多媒体会议服务系 统的造价和使用成本,以推广和普及多媒体会议服务。为达到上述目的,本发明的技术方案是这样实现的—种开放式的多媒体会议服务系统,该系统包括多媒体会议服务总线和多媒体会 议业务逻辑组件,所述多媒体会议业务逻辑组件进一步包括服务总线消息适配器、业务管 理子系统、业务支撑子系统及会话初始化协议SIP消息适配器;其中,多媒体会议服务总线,用于接收来自网络的多媒体会议服务请求消息,并返回响 应消息;多媒体会议业务逻辑组件,用于接受定制的多媒体会议服务请求,并为用户提供 多媒体会议业务服务;服务总线消息适配器,用于解析来自多媒体会议服务总线上的简单对象访问协议 SOAP消息,将其转换为内部控制命令;业务管理子系统,用于根据多媒体会议的场景以及根据用户的调用命令调用多媒 体会议子业务逻辑以实现多媒体会议的各项功能;业务支撑子系统,用于为所述业务管理子系统提供信令服务、数据支持以及会话 状态的控制和实现;SIP消息适配器,利用套接字通信方式将部署在外部的SIP协议栈收到的消息适 配到多媒体会议系统的内部功能组件,完成SIP消息的解析和发送。其中,所述业务管理子系统进一步包括多媒体会议服务管理模块、多媒体会议子 业务模块多媒体会议业务模块、SIP信令控制器;其中,多媒体会议服务管理模块,根据多媒体会议的场景,目前主要分为两个实体,即会 议和参与者实体,每个实体维护自己的状态、资源,以及根据用户的调用命令通过子业务层 提供的功能加以实现;多媒体会议子业务模块多媒体会议业务模块,根据多媒体会议所需要的不同能 力,定义并实现不同的会议子业务逻辑,以及通过逻辑实体层接收来自用户的命令,并使用 SIP信令控制层的功能完成自身的业务逻辑;SIP信令控制器,用于为上层提供SIP的链接资源,为业务执行提供信令通道,并 处理信令级别的消息处理。所述多媒体会议服务管理模块进一步包括根据会议场景而设的两个逻辑实体代 表一个会议从创建到销毁整个过程的会议逻辑实体和代表指定会议的一个参与者的参与 者逻辑实体;所述两个逻辑实体均通过业务逻辑单元SBB实现,通过维护自身的实体状态 和资源,并通过子业务逻辑层实现各自的业务逻辑;所述会议逻辑实体,通过单个用户代理 UA的SIP连接同媒体服务器通信,所述参与者逻辑实体通过一条背靠背用户代理B2BUA的SIP连接同时管理用户和媒体服务器。所述多媒体会议业务模块进一步包括用以创建会议SBB、修改会议SBB、放音SBB、 更换主席SBB、结束会议SBB的会议SBB,以及用以邀请成员和成员申请退出会议、申请加入 会议和申请退出会议的参与者SBB。所述业务支撑子系统进一步包括业务代码模块、数据库管理模块和会话管理状态 机;其中, 业务代码模块,通过使用Java XML beans工具,对媒体服务器控制语言MSML进行 组装,并将其承载在SIP INFO消息体中的MSML信令解析出来;数据库管理模块,通过JAVA持久性应用程序编程接口 JPA与数据库相连,通过使 用连接池和内存缓冲提供高效的数据库访问接口;会话管理状态机,完成用户代理UA和背靠背用户代理B2BUA状态机,以及利用SIP 信令控制层确定消息流程。一种开放式的多媒体会议服务系统实现方法,该方法包括创建会议业务过程,具 体包括A、服务总线消息适配器收到来自服务总线的创建会议消息,通过内部消息创建一 个会议SBB ;B、会议SBB通过SIP信令控制器创建SIP连接;C、SIP信令控制器返回创建结 果;D、如果SIP连接创建成功,会议SBB创建会议SBB提供创建会议业务;E、创建会议SBB 使用MSML解析器创建MSML脚本;F、MSML解析器返回用于创建会议的MSML脚本;G、创建会 议SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的MSML脚本;H、媒体服务器 通过SIP信令控制器通知创建会议SBB创建本次会议的结果;I、创建会议SBB上报给会议 SBB创建本次会议的结果;J、如果创建成功,会议SBB将新的会议信息写入数据库;K、数据 库返回写入结果;L、会议SBB通过服务总线消息适配器上报创建结果。该方法还包括邀请与会者业务,具体包括M、服务总线消息适配器收到来自服务总线的邀请与会者消息,通过内部消息创建 参与者SBB ;N、参与者SBB使用SIP信令控制器创建一条B2BUA的SIP连接;0、SIP信令控 制器返回创建结果;P、参与者SBB创建邀请与会者SBB提供邀请用户加入业务;Q、邀请与 会者SBB创建设置媒体SBB提供设置用户媒体的业务;S、设置媒体SBB使用MSML解析器创 建MSML脚本;T、MSML解析器返回用于设置媒体的MSML脚本;U、设置媒体SBB通过SIP信 令控制器发送SIP消息,其中携带创建会议的MSML脚本;V、媒体服务器通过SIP信令控制 器通知设置媒体SBB媒体设置结果;W、设置媒体SBB将媒体设置的结果上报到邀请与会者 SBB ;X、邀请与会者SBB将邀请结果上报到参与者SBB ;Y、如果邀请成功,参与者SBB将新的 参与者信息写入数据库;Z、数据库返回写入结果,并将参与者SBB通过服务总线消息适配 器上报邀请与会者结果。该方法还包括断开与会者业务,具体包括I、服务总线消息适配器收到来自服务总线的邀请与会者消息,通过内部消息创建 参与者SBB ;II、参与者SBB通过SIP信令控制器释放SIP连接;III、SIP信令控制器返回释放结果;IV、如果释放成功,参与者SBB将数据库中的 参与者信息更新;V、数据库返回更新结果;VI、参与者SBB通过服务总线消息适配器上报断 开与会者结果。
该方法还包括与用户的语音交互IVR业务,具体包括步骤1、参与者SBB创建IVR SBB提供IVR服务;步骤2、IVR SBB创建DTMF SBB 提供DTMF业务;步骤3、DTMF SBB使用MSML解析器创建MSML ;步骤4、MSML解析器返回用 于DTMF的MSML ;步骤5、DTMF SBB通过SIP协议控制层发送SIP消息,通知媒体服务器准 备接受DTMF ;步骤6、媒体服务器成功执行DTMF,并通过SIP信令控制器通知DTMF SBB ;步 骤7、DTMF SBB通知IVR SBB开始执行DTMF ;步骤8、IVR SBB创建放音SBB提供放音业务; 步骤9、放音SBB使用MSML解析器创建MSML ;步骤10、MSML解析器返回用于放音的MSML ; 步骤11、放音SBB通过SIP协议控制层发送SIP消息,通知媒体服务器准备接受放音;步骤 12、媒体服务器成功执行放音,并通过SIP信令控制器通知放音SBB ;步骤13、放音SBB通知 IVR SBB放音开始执行;步骤14、媒体服务器拨放指示音结束后通知放音SBB ;步骤15、放 音SBB上报IVR SBB播音结束信息;步骤16、当用户拨完会议ID后,媒体服务器通知DTMF SBB用户所播的号;步骤17,DTMF SBB上报IVR SBB有关DTMF的信息;步骤18、IVR SBB上 报用户所拨号码。该方法进一步包括结束会议业务,具体包括a、服务总线消息适配器收到来自服务总线的结束会议消息,通过内部消息通知会 议SBB ;b、会议SBB创建结束会议SBB提供结束会议业务;C、结束会议SBB使用MSML解析 器创建MSML脚本;d、MSML解析器返回用于结束会议的MSML脚本;e、结束会议SBB通过SIP 信令控制器发送SIP消息,其中携带创建会议的MSML脚本;f、媒体服务器通过SIP信令控 制器通知结束会议SBB创建结果;g、结束会议SBB上报给会议SBB结束会议的结果;h、如果 结束成功,会议SBB将数据库中的会议信息更新;i、数据库返回更新结果;j、会议SBB通过 SIP信令控制器释放SIP连接;k、SIP信令控制器返回释放结果;1、会议SBB通过服务总线 消息适配器上报创建结果。本发明所提供的开放式的多媒体会议服务系统及实现方法,具有以下优点本发明的多媒体会议服务系统,基于开放电信网络的思想,采用统一、标准的Web Service编程接口,通过向第三方开放提供WSDL文件,通过使用该接口进行多媒体会议的 创建和会议信息的相关操作,能够以非常简单的方式调用多媒体会议服务,以实现对多媒 体会议的控制,从而实现为普通用户提供多媒体会议服务,达到降低现有多媒体会议服务 系统的造价和使用成本,以推广和普及多媒体会议服务的目的。


图IA为本发明开放式多媒体会议服务系统架构示意图;图IB为本发明开放式多媒体会议服务系统的数据管理模块功能示意图;图2A为会议逻辑实体SBB树示意图;图2B为参与者逻辑实体SBB树示意图;图3为本发明多媒体会议服务系统的创建会议业务过程示意图;图4为本发明多媒体会议服务系统的结束会议业务过程示意图;图5为本发明多媒体会议服务系统的邀请与会者业务过程示意图;图6为本发明多媒体会议服务系统的断开与会者业务过程示意图;图7为本发明多媒体会议服务系统的用户主动呼入业务过程示意图8为本发明多媒体会议服务系统的IVR业务过程示意图;图9为本发明多媒体会议服务系统的设置用户媒体业务过程示意图;图10为本发明多媒体会议服务系统的SIP信令控制器的信令处理功能示意图;图11为本发明多媒体会议服务中的建立单UA连接的SIP信令流程示意图。
具体实施例方式下面结合附图及本发明的实施例对本发明的方法作进一步详细的说明。当前,面向服务的体系架构(SOA,Service-Oriented Architecture)正引领软件 行业的新一轮发展潮流,并在未来给软件和网络带来革命性的变化,重用已有的组件或服 务是SOA技术的核心思想,作为一种构建分布式软件系统的基础体系架构,使得快速开发 随需应变的松散耦合和开放式的网络应用需求成为可行的选择。本发明针对电信界迫切需 要改变目前网络封闭的情况,把通信网络底层的能力开放给越来越多的开发者,从而给电 信业务带来新的价值链的这一需求,开放式的多媒体会议服务研究,正受到人们的高度关 注。通过开放的业务接口鼓励第三方业务提供者参与业务的提供,这种新的服务提供方式 将给CP/SP带来更丰富的业务以及应用。开放式多媒体会议服务系统基于开放电信网络的思想,采用统一、标准的网页服 务(Web Service)编程接口,可以通过提供Web服务描述语言(WSDL)文件向第三方开放, 而这种开放接口的方式采用的是IT领域通用的Web技术。所以从业务开发的开发性上来 说,这种方式更具有广泛性。通过使用所述开放接口所提供的功能进行会议创建和会议信 息的获取等相关操作,可以不用关心底层网络是使用哪种技术实现的会议服务,也不用考 虑客户端与会议服务器之间使用的是哪种协议,并且能够灵活部署和扩展。因此,可以彻底 屏蔽底层通信网络的复杂性,使内容提供商/服务提供商(CP/SP)可以在不了解专门电信 知识情况下,以非常简单的方式调用多媒体会议服务,实现对会议的控制。图IA为本发明实施例开放式多媒体会议服务系统架构示意图,如图IA所示,该 多媒体会议服务系统包括多媒体会议服务总线10、多媒体会议业务逻辑组件20两大部分。 其中,所述多媒体会议业务逻辑组件20可分为服务总线消息适配器201、业务管理子系统 202、业务支撑子系统203和SIP消息适配器204。进一步地,所述业务管理子系统202还包 括多媒体会议服务管理模块2021、多媒体会议业务模块2022、SIP信令控制器2023三个部 件;所述业务支撑子系统203包括业务代码模块2031、数据库管理模块2032、会话管理状态 机2033三个部件。其中,多媒体会议服务总线10,用于接收来自网络的多媒体会议服务请求消息,并返回 响应消息。多媒体会议业务逻辑组件20,用于接受定制的多媒体会议服务请求,并为用户提 供多媒体会议业务服务。其中,服务总线消息适配器201,用于解析来自多媒体会议服务总线上的简单对象 访问协议(SOAP,Simple Object Access Protocol)消息,将其转换为内部控制命令如创 建会议、终止会议等等.业务管理子系统202,用于根据多媒体会议的场景以及根据用户的调用命令调用 多媒体会议子业务逻辑以实现多媒体会议的各项功能;其中,所述业务管理子系统202进一步包括多媒体会议服务管理模块2021、多媒体会议业务模块2022、SIP信令控制器2023 三个部件。其中,所述多媒体会议服务管理模块2021,根据多媒体会议的场景,目前主要分为两个 实体,即会议和参与者实体,每个实体维护自己的状态、资源,以及根据用户的调用命令通 过子业务层提供的功能加以实现;多媒体会议业务模块2022,根据多媒体会议所需要的不同能力,定义并实现不同 的会议子业务逻辑,如创建会议,会议公告等等。以及通过逻辑实体层接收来自用户的命 令,并使用SIP信令控制层的功能完成自身的业务逻辑;SIP信令控制器2023,用于为上层提供SIP的链接资源,为业务执行提供信令通 道,并处理信令级别的消息处理。业务支撑子系统203,用于为所述业务管理子系统提供信令服务、数据支持以及会 话状态的控制和实现。其中,所述业务代码模块2031,通过使用Java XML beans工具,对媒体服务器控制语言 (MSML,Media Server Markup Language)进行组装,并将其承载在SIPINF0消息体中的MSML 信令解析出来;这里,所述XMLBeans是一个XML-Java绑定工具,利用它可以很方便地解析 XML文档;所述MSML是一种类似于XML的标记语言,首先有一些关于MSML语法的SCHEMA文 件,然后使用XMLBEANS基于这些文件,产生MSML的PARSER类,利用这个PARSER类我们可 以解析和构造MSML脚本。数据库管理模块2032,通过JAVA持久性应用程序编程接口(JPA, Javapersisntence API)与数据库相连,通过使用连接池和内存缓冲提供高效的数据库访 问接口。数据库管理模块2032的基本结构如图IB所示,包括SIP注册子模块、会议能力组 件、SIP注册鉴权及注册信息缓存管理子模块、动态信息缓存管理子模块、数据持久化子模 块以及数据库。其中,数据持久化子模块包含实体操作层、数据实体层和事务管理层。SIP注册鉴权和注册信息管理子模块将为SIP注册模块提供数据库接口,使得后 者能够完成注册鉴权以及持久化和SIP协议相关数据的操作。当用户通过SIP终端向SIP 服务器注册时,系统必须从数据库中取出用户密码和用户通过终端输入的密码作对比,如 果密码相符,认为用户是合法用户,准许注册;否则,认为非法用户,不许注册。另外,在会议 的运行过程之中,会动态的生成许多信息。比如会议的实际开始时间、实际结束时间、会议 的服务提供商、服务类型、会议状态等等,这些信息是计费的关键数据,必须予以保存。运行 时动态信息管理模块为会议能力组件提供相关接口,在会议的进行过程中,随时和后者进 行交互,及时持久化动态信息。在完成上述SIP注册鉴权的功能的同时,还提供接口以保存 SIP注册过程中产生的信息。开设缓存,利用LRU(LeastRecently Used)算法,可以将访问 较为频繁的数据存在缓存中,将最近没有访问的数据对换入数据库,可以减小对数据的访 问,减小磁盘I/O。运行时动态信息管理子模块,在会议的运行过程之中,不少动态信息会生成。比如 会议的实际开始时间、结束时间、会议的服务提供商等等,这些信息是计费的基础,必须予 以保存。但是如果直接将动态信息保存到预约会议表里是不合适的,所以新建了两张专门 用来保存会议和用户动态信息的表。此模块的主要功能就是提供接口供会议能力组件使 用。在会议的进行过程中,随时和会议能力组件进行交互,及时持久化动态信息。提供缓存,
11使得数据存取更为迅速。会话管理状态机2033,完成用户代理(UA,User Agent)和背靠背用户代理 (B2BUA, back-to-back user agent)状态机,以及利用SIP信令控制层确定消息流程。SIP消息适配器204,利用套接字(Socket)通信方式将部署在外部的SIP协议栈 收到的消息适配到多媒体会议系统的内部功能组件,完成SIP消息的解析和发送。所述内 部功能组件,包括但不限于中央处理器等微控制器。底层SIP协议栈基于C++语言实现,而 上层组件基于JAVA实现,因此通过SIP消息适配器,将底层Sip协议栈适配到SIP信令控 制层,使得SIP信令控制层能够成功调用底层协议栈来接收和发送SIP信令。在所述多媒体会议服务管理模块2021中,根据基本会议场景,还设计有两个逻辑 实体分别为会议逻辑实体和参与者逻辑实体。其中,会议逻辑实体代表一个会议从创建到 销毁的整个过程,而参与者逻辑实体则代表指定会议的一个参与者。每个逻辑实体都通过 业务逻辑单元(SBB,Service Building Block)实现。两个逻辑实体均维护自身的实体状 态和资源,并通过子业务逻辑层实现不同的业务逻辑,每个逻辑实体还需要管理自己的连 接资源,每个实体所需要的连接资源类型不同。对于会议逻辑实体,它只需通过SIP连接同 媒体服务器通信,所以它需要的是单UA的SIP连接。而参与者实体需要同时管理用户和媒 体服务器,它需要一条背靠背用户代理(B2BUA,Back to Back User Agent)的SIP连接。 所述B2BUA是指由B2BUA担当SIP协议呼叫两个端点的一个用户代理,B2BUA负责处理呼 叫两端间的所有SIP信令,从呼叫确立到终止。每个呼叫从开始到结束被全程跟踪,并允许 B2BUA的操作者来提供值附加特征到这个呼叫。对SIP客户而言,所述B2BUA在一边担当用 户代理服务器,同时在背靠背的另一边担当用户代理客户机。在所述多媒体会议业务模块2022中,由于目前的多媒体会议的主要业务都是基 于粗粒度服务的划分,它并不能有效的利用已有的业务逻辑。经过对整个多媒体业务进行 分析,目前提供以下几个子业务创建会议、会议公告、更换主席、删除会议;邀请成员和成 员申请退出会议(通过网页发起)、申请加入会议和申请退出会议(由SIP终端发起);播 音和录音、双音多频(DTMF)探测、设置媒体类型等。所述多媒体会议的应用逻辑就是在SBB 中实现,业务中要用到系统数据通过profile方式配置。每个业务对象SBB提供了相互隔 离、单独部署和生命周期同步,以及持续性和容错管理的机制。另外,通过从外部协议资源 扫描事件状态,然后将这些事件递交到各个处理单元,由于采用了服务单元消息机制,更多 的减少了各个事务在处理上的等待延迟。其中,每个SBB组件能识别它所接受的事件的类 型,并包含了事件处理器方法,即处理这类事件的应用代码。在多媒体会议服务中,很多子 业务都是可以复用的,例如播音逻辑既可以用于会议公告和通知与会者的业务中,又可以 在用户使用SIP终端呼入时,提供交互式语音应答(IVR)服务。我们将这些会议的子业务 以子SBB的形式实现在以会议和参与者实体为根的SBB树中。如图2A、图2B分别为会议逻辑实体SBB树和为参与者逻辑实体SBB树示意图。根 据面向对象的设计思想,每个子业务都需要维护自身的状态和接口以实现高内聚、松耦合。 每个子业务SBB都专注于实现自身的业务逻辑,对于调用它们的父SBB来说,它们提供事务 (transaction)语义,即成功并提供相应信息,否则失败,对父SBB的状态并无影响。在SBB 树中,父SBB使用同步方式调用子SBB提供的功能。我们使用观察者(Observer)设计模式 将父SBB注册到子SBB上,这样,子SBB就无需知道自己正在为谁提供服务。这样,我们实现这样一条原则使用者应该知道被使用者的全部信息,而被使用者不知道任何使用者的 fn息ο下面分别以创建会议业务、结束会议业务、邀请与会者业务、断开与会者业务、用 户呼入业务、IVR业务和设置用户媒体业务的过程为例,说明本发明基于组件的开放式多媒 体会议服务系统的实现方法图3为本发明多媒体会议服务系统的创建会议业务过程示意图,如图3所示,该过 程包括步骤301、服务总线消息适配器收到来自服务总线的创建会议消息,通过内部消息 创建一个会议SBB ;步骤302、会议SBB通过SIP信令控制器创建SIP连接;步骤303、SIP信令控制器返回创建结果;步骤304、如果SIP连接创建成功,会议SBB创建会议SBB提供创建会议业务;步骤305、创建会议SBB使用MSML解析器创建MSML脚本;步骤306、MSML解析器返回用于创建会议的MSML脚本;步骤307、创建会议SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的 MSML脚本;步骤308、媒体服务器通过SIP信令控制器通知创建会议SBB创建本次会议的结 果; 步骤309、创建会议SBB上报给会议SBB创建本次会议的结果;步骤310、如果创建成功,会议SBB将新的会议信息写入数据库;步骤311、数据库返回写入结果;步骤312、会议SBB通过服务总线消息适配器上报创建结果。图4为本发明多媒体会议服务系统的结束会议业务过程示意图,如图4所示,该过 程包括步骤401、服务总线消息适配器收到来自服务总线的结束会议消息,通过内部消息 通知会议SBB ;步骤402、会议SBB创建结束会议SBB提供结束会议业务;步骤403、结束会议SBB使用MSML解析器创建MSML脚本;步骤404、MSML解析器返回用于结束会议的MSML脚本;步骤405、结束会议SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的 MSML脚本;步骤406、媒体服务器通过SIP信令控制器通知结束会议SBB创建结果;步骤407、结束会议SBB上报给会议SBB结束会议的结果;步骤408、如果结束成功,会议SBB将数据库中的会议信息更新;步骤409、数据库返回更新结果;步骤410、会议SBB通过SIP信令控制器释放SIP连接;步骤411、SIP信令控制器返回释放结果;步骤412、会议SBB通过服务总线消息适配器上报创建结果。图5为本发明多媒体会议服务系统的邀请与会者业务过程示意图,如图5所示,该过程包括步骤501、服务总线消息适配器收到来自服务总线的邀请与会者消息,通过内部消 息创建参与者SBB ;步骤502、参与者SBB使用SIP信令控制器创建一条B2BUA的SIP连接;步骤503、SIP信令控制器返回创建结果;步骤504、参与者SBB创建邀请与会者SBB提供邀请用户加入业务;步骤505、邀请与会者SBB创建设置媒体SBB提供设置用户媒体的业务;步骤506、设置媒体SBB使用MSML解析器创建MSML脚本;步骤507、MSML解析器返回用于设置媒体的MSML脚本;步骤508、设置媒体SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的 MSML脚本;步骤509、媒体服务器通过SIP信令控制器通知设置媒体SBB媒体设置结果;步骤510、设置媒体SBB将媒体设置的结果上报到邀请与会者SBB ;步骤511、邀请与会者SBB将邀请结果上报到参与者SBB ;步骤512、如果邀请成功,参与者SBB将新的参与者信息写入数据库;步骤513、数据库返回写入结果;步骤514、参与者SBB通过服务总线消息适配器上报邀请与会者结果。图6为本发明多媒体会议服务系统的断开与会者业务过程示意图,如图6所示,该 过程包括步骤601、服务总线消息适配器收到来自服务总线的邀请与会者消息,通过内部消 息创建参与者SBB ;步骤602、参与者SBB通过SIP信令控制器释放SIP连接;步骤603、SIP信令控制器返回释放结果;步骤604、如果释放成功,参与者SBB将数据库中的参与者信息更新;步骤605、数据库返回更新结果;步骤606、参与者SBB通过服务总线消息适配器上报断开与会者结果。图7为本发明多媒体会议服务系统的用户主动呼入业务过程示意图,如图7所示, 该过程包括步骤701、用户使用SIP终端主动呼入;步骤702、SIP信令控制器为用户建立完SIP连接后,使用申请加入消息创建参与 者 SBB ;步骤703、参与者SBB创建申请加入SBB提供用户主动申请加入会议的服务;步骤704、申请加入SBB首先通过IVR获取用户ID ;步骤705、IVR返回用户ID ;步骤706、申请加入SBB再通过IVR获取用户密码;步骤707、IVR返回用户密码;步骤708、申请加入SBB通过数据库查询实际用户密码;步骤709、数据库返回实际用户密码;步骤710、如果用户输入密码与实际密码相符,则通过IVR获取用户所要加入的会议ID ;步骤711、IVR返回会议ID;步骤712、参与者SBB询问数据库该会议是否存在;步骤713、数据库返回检查结果;步骤714、申请加入SBB创建放音SBB,向用户播放加入会议成功的提示音;步骤715、放音返回SBB放音结果;步骤716、申请加入SBB向参与者SBB返回用户申请加入会议的结果;步骤717、参与者SBB通过服务总线消息适配器上报用户申请加入消息;步骤718、服务总线消息适配器向参与者SBB返回结果;步骤719、参与者SBB将新的参与者信息写入数据库;步骤720、数据库返回写入结果。图8为本发明多媒体会议服务系统的IVR业务过程示意图,如图8所示,该过程包 括步骤801、参与者SBB创建IVR SBB提供IVR服务;步骤802、IVR SBB 创建 DTMF SBB 提供 DTMF 业务;步骤803、DTMF SBB使用MSML解析器创建MSML ;步骤804、MSML解析器返回用于DTMF的MSML ;步骤805、DTMF SBB通过SIP协议控制层发送SIP消息,通知媒体服务器准备接受 DTMF ;步骤806、媒体服务器成功执行DTMF,并通过SIP信令控制器通知DTMFSBB ;步骤807、DTMF SBB 通知 IVR SBB 开始执行 DTMF ;步骤808、IVR SBB创建放音SBB提供放音业务;步骤809、放音SBB使用MSML解析器创建MSML ;步骤810、MSML解析器返回用于放音的MSML ;步骤811、放音SBB通过SIP协议控制层发送SIP消息,通知媒体服务器准备接受 放音;步骤812、媒体服务器成功执行放音,并通过SIP信令控制器通知放音SBB ;步骤813、放音SBB通知IVR SBB放音开始执行;步骤814、媒体服务器拨放指示音结束后通知放音SBB ;步骤815、放音SBB上报IVR SBB播音结束信息;步骤816、当用户拨完会议ID后,媒体服务器通知DTMF SBB用户所播的号;步骤817、DTMF SBB 上报 IVR SBB 有关 DTMF 的信息;步骤818、IVR SBB上报用户所拨号码。图9为本发明多媒体会议服务系统的设置用户媒体业务过程示意图,如图9所示, 该过程包括步骤901、服务总线消息适配器收到来自服务总线的设置与会者媒体消息,通过内 部消息通知参与者SBB ;步骤902、参与者SBB创建设置媒体SBB提供设置用户媒体的业务;步骤903、设置媒体SBB使用MSML解析器创建MSML脚本;
15
步骤904、MSML解析器返回用于设置媒体的MSML脚本;步骤905、设置媒体SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的 MSML脚本;步骤906、媒体服务器通过SIP信令控制器通知设置媒体SBB媒体设置结果;步骤907、设置媒体SBB将媒体设置的结果上报到参与者SBB ;步骤908、参与者SBB通过服务总线消息适配器上报设置与会者媒体的结果。另外,在本发明方法中,还可增加用户注册业务,即在SIP中,SIP客户通过注册服 务过程来标识、绑定用户当前的位置,获得消息的路由,该注册具有认证功能,主要用于判 断用户是否具有合法性。下面对本发明的多媒体会议服务SIP信令控制器2023进行说明。SIP信令,即SIP 协议是一种用于建立多媒体会话的应用层协议,因此,多媒体会议类的业务非常适合采用 SIP协议来实现。SIP协议不但支持单播和多播通信,而且还支持名称映射和重定向业务, 并且还支持用户的移动性。由于SIP是基于文本的协议,因此也方便扩展以实现多种呼叫 控制业务。图10为本发明多媒体会议服务系统的SIP信令控制器的信令处理功能示意图,如 图10所示,该信令处理功能包括1、用于处理SIP消息(除注册)的SBB树,处理注册消息的SBB树;2、用于传输定义在资源适配层中的SIP消息的SIP ACI (SIP活动上下文接口)即 消息通道;3、用于封装SIP协议栈的SIP资源适配层(RA) (SIP消息适配器);4、用于SIP消息的编解码、事务维护的SIP协议栈;5、用于通过查询数据库、判断用户身份及终端类型等的鉴权功能;6、会话管理,包含预先已定义的呼叫状态机模板;用于SBB通过调用会话管理的 消息处理接口,得到一个方法(函数)集合,用它们来完成下一步操作,即统一的消息处理 流程;7、Null ACI (空活动上下文接口),即会议消息通道,用于传输和会议逻辑间的用 户自定义事件。其中,连接SBB用于处理来自上层的呼叫请求以及上报呼叫完成等相关事件。在 会议层有请求时,它创建并驱动会话SBB来完成这一请求。在外界有呼入邀请等会初始化 一个新会话的SIP消息,会由某一个会话SBB接收并处理,它会创建连接SBB最后向业务层 上报。宏观上,每个会话都有它的生命周期状态,这些状态可以决定是否接收上层的一 些其他请求,向会议逻辑应该上报哪些消息。主要的状态分为如下四种即建立连接状态 (Connecting)、断开连接状态(Disconnecting)、修改状态(MODIFY)和空闲状态(IDLE)。上层的主动创建呼叫消息和外界呼入的SIP邀请消息会激活一个生命周期流程, 在每个大状态下,如Connecting即建立连接状态,还会有多个SIP消息的交互,根据SIP消 息交互的结果,会转移到下一个状态或停留在本状态。只有在IDLE或MODIFY状态可以传输 独立于呼叫的消息,它们往往承载着会议中的核心控制逻辑,如INFO承载着MSML消息体。在每个大状态下还会有一系列子状态,每个子状态会接收相关的事件。而其消息
16处理逻辑对应这不同的呼叫流程,如,呼入和主动外呼是不同的。且有些信令控制流程是需 要多于一个会话配合完成的,单个会话对应的信令处理逻辑和多个交互处理又是不同的。 为了对应这种区别,为每种信令处理逻辑中的每个会话设定了它自己的角色。负责处理初 始消息的会话SBB需要为和它协同同坐的会话SBB设定它们的角色。之后所有SBB便按照 既定的处理逻辑,对收到的消息进行动作反应。而这些动作既包括自己的,也包括与之协同 的会话SBB的。对应地,集中式会议的SIP通信中,还需要通过会话状态机来维护会话的状态,主 要包括以下几种SIP呼叫能力的支持将外界UA的呼入连接到媒体服务器,主动呼叫某个 UA并将它与媒体服务器进行连接,直接与单个实体建立无真实媒体通道的SIP连接,以及 这些连接的取消与断开;此外还有一些非SIP呼叫能力INF0、注册等。其中,直接呼叫单个 SIP实体以及非呼叫能力,都是被限制在单个会话内的,无需两个会话交互。下面对本发明多媒体会议服务中的SIP信令流程做一简介,主要包括建立单UA 连接的SIP信令流程、建立3PCC SIP连接的信令流程、用户主动呼入的SIP信令流程、断开 单UA连接的SIP信令流程、B2BUA连接的断开SIP信令流程、用户主动断开连接的SIP信 令流程。图11为本发明多媒体会议服务中的建立单UA连接的SIP信令流程示意图,如图 11所示,该流程包括步骤1101、上层会议逻辑发送创建连接消息创建一个与媒体服务器(MS)的直接 连接;步骤1102、连接SBB创建了一个子SBB,它是会话SBB的一个实例,标示为会话 SBB(I);步骤1103、连接 SBB 调用会话 SBB(I) WsendMessage(INVITE)函数来发送 INVITE 请求;步骤1104、会话SBB(I)调用资源适配层中行为实体的接口,发送真正的INVITE SIP消息,带一个假的默认会话描述协议(SDP,Session DescriptionProtocol);步骤1105、资源适配层发送SIP消息给媒体服务器MS ;步骤1106、资源适配层接收MS返回的200响应;步骤1107、资源适配层使得会话SBB(I)响应接收INVITE的200的事件,通过 onlnviteResponse函数会以参数形式传进事件对象;步骤1108、会话SBB(I)调用会话管理器处理消息;步骤1109、会话管理器会查询会话状态机返回事件处理函数;步骤1110、会话SBB(I)调用资源适配层的sendAckMessage方法发送真正的SIP 确认(ACK)消息;步骤1111、资源适配层发送SIP消息ACK,带最终SDP ;步骤1112、会话SBB(I)调用连接SBB的callComplete ()函数,说明呼叫已建立;步骤1113、连接SBB向上层会议逻辑发送createConnRspMessage消息,通知连接 已经成功建立。另外,建立3PCC SIP连接的信令流程、用户主动呼入的SIP信令流程、断开单UA 连接的SIP信令流程、B2BUA连接的断开SIP信令流程、用户主动断开连接的SIP信令流程
17等与上述建立单UA连接的SIP信令流程类似。本发明的多媒体会议服务系统的优势在于,该系统具备开放式的特点,能够屏蔽 底层网络的差异性,不但兼容现有网络,还可移植到下一代网络之上,而且能够随着下一代 网络技术的发展,同时随着承载网、接入网等网络环境的成熟,能够方便业务提供商快速开 发新业务并部署。基于组件的业务平台正是具备开放性这一显著特点,Jain-Slee体系中 的资源适配层能为业务开发者提供统一业务编程接口,开发者不需要了解底层网络的具体 细节,也不需要熟悉具体的网络环境或者协议,只要具备Java程序能力,按照Jain-Slee接 口规范就可以开发出新业务。由于本发明中实现视频会议采用的是SIP协议,尽管SIP协议并没有提供任何业 务能力,但由于SIP协议是基于文本格式的,支持方便地扩展,能够灵活的控制信令流程, 因此抽象出SIP协议能力并部署到开放式的业务平台中,有利于下一代网络多媒体环境新 业务的开发和部署。其具有开放式的业务环境和基于SIP的协议保证了新业务的开展不再 限制于某一个固定的网络环境。以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
权利要求
一种开放式的多媒体会议服务系统,其特征在于,该系统包括多媒体会议服务总线和多媒体会议业务逻辑组件,所述多媒体会议业务逻辑组件进一步包括服务总线消息适配器、业务管理子系统、业务支撑子系统及会话初始化协议SIP消息适配器;其中,多媒体会议服务总线,用于接收来自网络的多媒体会议服务请求消息,并返回响应消息;多媒体会议业务逻辑组件,用于接受定制的多媒体会议服务请求,并为用户提供多媒体会议业务服务;服务总线消息适配器,用于解析来自多媒体会议服务总线上的简单对象访问协议SOAP消息,将其转换为内部控制命令;业务管理子系统,用于根据多媒体会议的场景以及根据用户的调用命令调用多媒体会议子业务逻辑以实现多媒体会议的各项功能;业务支撑子系统,用于为所述业务管理子系统提供信令服务、数据支持以及会话状态的控制和实现;SIP消息适配器,利用套接字通信方式将部署在外部的SIP协议栈收到的消息适配到多媒体会议系统的内部功能组件,完成SIP消息的解析和发送。
2.根据权利要求1所述多媒体会议服务系统,其特征在于,所述业务管理子系统进一 步包括多媒体会议服务管理模块、多媒体会议业务模块、SIP信令控制器;其中,多媒体会议服务管理模块,根据多媒体会议的场景,目前主要分为两个实体,即会议和 参与者实体,每个实体维护自己的状态、资源,以及根据用户的调用命令通过子业务层提供 的功能加以实现;多媒体会议业务模块,根据多媒体会议所需要的不同能力,定义并实现不同的会议子 业务逻辑,以及通过逻辑实体层接收来自用户的命令,并使用SIP信令控制层的功能完成 自身的业务逻辑;SIP信令控制器,用于为上层提供SIP的链接资源,为业务执行提供信令通道,并处理 信令级别的消息处理。
3.根据权利要求2所述多媒体会议服务系统,其特征在于,所述多媒体会议服务管理 模块进一步包括根据会议场景而设的两个逻辑实体代表一个会议从创建到销毁整个过程 的会议逻辑实体和代表指定会议的一个参与者的参与者逻辑实体;所述两个逻辑实体均通 过业务逻辑单元SBB实现,通过维护自身的实体状态和资源,并通过子业务逻辑层实现各 自的业务逻辑;所述会议逻辑实体,通过单个用户代理UA的SIP连接同媒体服务器通信, 所述参与者逻辑实体通过一条背靠背用户代理B2BUA的SIP连接同时管理用户和媒体服务ο
4.根据权利要求2所述多媒体会议服务系统,其特征在于,所述多媒体会议业务模块 进一步包括用以创建会议SBB、修改会议SBB、放音SBB、更换主席SBB、结束会议SBB的会议 SBB,以及用以邀请成员和成员申请退出会议、申请加入会议和申请退出会议的参与者SBB。
5.根据权利要求1所述多媒体会议服务系统,其特征在于,所述业务支撑子系统进一 步包括业务代码模块、数据库管理模块和会话管理状态机;其中,业务代码模块,通过使用Java XML beans工具,对媒体服务器控制语言MSML进行组 装,并将其承载在SIP INFO消息体中的MSML信令解析出来;数据库管理模块,通过JAVA持久性应用程序编程接口 JPA与数据库相连,通过使用连 接池和内存缓冲提供高效的数据库访问接口;会话管理状态机,完成用户代理UA和背靠背用户代理B2BUA状态机,以及利用SIP信 令控制层确定消息流程。
6.一种开放式的多媒体会议服务系统实现方法,其特征在于,该方法包括创建会议业 务过程,具体包括A、服务总线消息适配器收到来自服务总线的创建会议消息,通过内部消息创建一个会 议 SBB ;B、会议SBB通过SIP信令控制器创建SIP连接;C、SIP信令控制器返回创建结果;D、如果SIP连接创建成功,会议SBB创建会议SBB提供创建会议业务;E、创建会议SBB使用MSML解析器创建MSML脚本;F、MSML解析器返回用于创建会议的MSML脚本;G、创建会议SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的MSML脚本;H、媒体服务器通过SIP信令控制器通知创建会议SBB创建本次会议的结果;I、创建会议SBB上报给会议SBB创建本次会议的结果; J、如果创建成功,会议SBB将新的会议信息写入数据库; K、数据库返回写入结果;L、会议SBB通过服务总线消息适配器上报创建结果。
7.根据权利要求6所述的多媒体会议服务系统实现方法,其特征在于,该方法还包括 邀请与会者业务,具体包括M、服务总线消息适配器收到来自服务总线的邀请与会者消息,通过内部消息创建参与 者 SBB;N、参与者SBB使用SIP信令控制器创建一条B2BUA的SIP连接;0、SIP信令控制器返回创建结果;P、参与者SBB创建邀请与会者SBB提供邀请用户加入业务; Q、邀请与会者SBB创建设置媒体SBB提供设置用户媒体的业务; S、设置媒体SBB使用MSML解析器创建MSML脚本; T、MSML解析器返回用于设置媒体的MSML脚本;U、设置媒体SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的MSML脚本;V、媒体服务器通过SIP信令控制器通知设置媒体SBB媒体设置结果;W、设置媒体SBB将媒体设置的结果上报到邀请与会者SBB ;X、邀请与会者SBB将邀请结果上报到参与者SBB ;Y、如果邀请成功,参与者SBB将新的参与者信息写入数据库;Z、数据库返回写入结果,并将参与者SBB通过服务总线消息适配器上报邀请与会者结果。
8.根据权利要求6所述的多媒体会议服务系统实现方法,其特征在于,该方法还包括 断开与会者业务,具体包括.1、服务总线消息适配器收到来自服务总线的邀请与会者消息,通过内部消息创建参与者 SBB ;II、参与者SBB通过SIP信令控制器释放SIP连接;III、SIP信令控制器返回释放结果;IV、如果释放成功,参与者SBB将数据库中的参与者信息更新;V、数据库返回更新结果;VI、参与者SBB通过服务总线消息适配器上报断开与会者结果。
9.根据权利要求6所述的多媒体会议服务系统实现方法,其特征在于,该方法还包括 与用户的语音交互IVR业务,具体包括步骤1、参与者SBB创建IVR SBB提供IVR服务; 步骤2、IVR SBB创建DTMF SBB提供DTMF业务; 步骤3、DTMF SBB使用MSML解析器创建MSML ; 步骤4、MSML解析器返回用于DTMF的MSML ;步骤5、DTMF SBB通过SIP协议控制层发送SIP消息,通知媒体服务器准备接受DTMF ;步骤6、媒体服务器成功执行DTMF,并通过SIP信令控制器通知DTMFSBB ;步骤7、DTMF SBB通知IVR SBB开始执行DTMF ;步骤8、IVR SBB创建放音SBB提供放音业务;步骤9、放音SBB使用MSML解析器创建MSML ;步骤10、MSML解析器返回用于放音的MSML ;步骤11、放音SBB通过SIP协议控制层发送SIP消息,通知媒体服务器准备接受放音; 步骤12、媒体服务器成功执行放音,并通过SIP信令控制器通知放音SBB ; 步骤13、放音SBB通知IVR SBB放音开始执行; 步骤14、媒体服务器拨放指示音结束后通知放音SBB ; 步骤15、放音SBB上报IVR SBB播音结束信息;步骤16、当用户拨完会议ID后,媒体服务器通知DTMF SBB用户所播的号; 步骤17、DTMF SBB上报IVR SBB有关DTMF的信息; 步骤18、IVR SBB上报用户所拨号码。
10.根据权利要求6所述的多媒体会议服务系统实现方法,其特征在于,该方法进一步 包括结束会议业务,具体包括a、服务总线消息适配器收到来自服务总线的结束会议消息,通过内部消息通知会议SBB ;b、会议SBB创建结束会议SBB提供结束会议业务; C、结束会议SBB使用MSML解析器创建MSML脚本;d、MSML解析器返回用于结束会议的MSML脚本;e、结束会议SBB通过SIP信令控制器发送SIP消息,其中携带创建会议的MSML脚本;f、媒体服务器通过SIP信令控制器通知结束会议SBB创建结果;g、结束会议SBB上报给会议SBB结束会议的结果;h、如果结束成功,会议SBB将数据库中的会议信息更新;i、数据库返回更新结果;j、会议SBB通过SIP信令控制器释放SIP连接; k、SIP信令控制器返回释放结果; i、会议SBB通过服务总线消息适配器上报创建结果。
全文摘要
本发明公开了一种开放式的多媒体会议服务系统及实现方法,通过多媒体会议服务总线和多媒体会议业务逻辑组件及其所包括的服务总线消息适配器、业务管理子系统、业务支撑子系统及会话初始化协议(SIP)消息适配器,利用SIP协议,并通过利用会议逻辑实体和参与者逻辑实体开展包括创建会议业务、结束会议业务、邀请与会者业务、断开与会者业务、用户呼入业务、IVR业务和设置用户媒体业务等多媒体会议服务业务。利用本发明多媒体会议服务系统及方法,实现为普通用户提供多种灵活的多媒体会议接入方式,并能够降低现有多媒体会议服务系统的造价和使用成本来推广和普及多媒体会议服务。
文档编号H04L12/18GK101902455SQ20101003371
公开日2010年12月1日 申请日期2010年1月12日 优先权日2010年1月12日
发明者刘传昌, 张士诚, 程渤, 章洋, 胡潇潇, 陈俊亮 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1