基于OSGi的统一通信平台服务集成框架的制作方法

文档序号:7864646阅读:213来源:国知局
专利名称:基于OSGi的统一通信平台服务集成框架的制作方法
技术领域
本发明属于通信技术领域,涉及一种基于OSGi的统一通信平台服务集成框架。
背景技术
统一通信以融合的IP(Internet Protocol,网络互连协议)网络为基础,以创新的IP通信与应用为关联机制,不仅将电话、传真、即时通信、VoIP(Voice over InternetProtocol,网络电话)等各种沟通方式进行融合,更重要的是提供一个桌面门户和平台,将其他企业应用有机集成到平台中,实现企业信息的互通和共享,打破“信息孤岛”,这是企业用户的迫切需求。现有的集成方式中,通信平台需要针对每一种外部应用,花费大量的精力进行私有协议的建立、定义消息格式和建立通信链路等开发,降低了集成效率。

发明内容
本发明的目的是提供一种基于OSGi (Open Service Gateway initiative)的统一通信平台服务集成框架,解决了通信平台与外部应用无法高效率的集成的问题,实现了平台对第三方应用的动态集成与卸载。本发明的技术方案是基于OSGi的统一通信平台服务集成框架,包括三个层面( I)客户终端服务层,作为客户终端的接入入口,并提供插件接口,用于实现客户端与第三方集成业务在接入层的交互工作;(2)内部交互层,为客户终端服务层和应用容器创建消息通道,用于简化平台的管理,均衡平台的负载;(3)应用容器,对外为第三方集成服务提供统一的接口,对内管理消息的传输以及和第三方集成业务系统的交互。其中,客户终端服务层提供的插件接口的实现过程为a.注册第三方集成业务的命名空间;b.解析客户终端发送到服务器的请求并封装;C.建立JMS (Java Message Service, Java消息服务)连接,建立消息队列应用的连接;d.将封装的报文消息传递给内部交互层。其中,内部交互层采用消息队列集群技术,建立起客户终端服务层与应用容器的连接,客户终端服务层封装的报文消息在此处加入到消息队列中,应用容器从消息队列中取出消息,达到通信的目的。其中,应用容器是基于OSGi服务的,包括JMS构件、接口服务构件、服务控制构件、线程池服务构件和第三方集成业务构件。其中,JMS构件用于应用容器中消息的接收和发送。其中,接口服务构件用于为应用容器内部构件及第三方业务系统提供接口服务,包括JMS消息传输服务、消息分发服务、业务的拉取/推送服务、线程池服务和第三方业务系统的统一接口服务。其中,服务控制构件主要用于插接时注册服务、移除时删除服务、根据注册时的命名空间分发不同的业务以及对第三方业务统一接口的实现。其中,线程池服务构件用于为消息的路由提供线程池服务。其中,第三方集成业务构件用于处理应用容器和第三方集成业务系统的交互。本发明的有益效果是I.本发明通过统一通信平台和应用集成分离以及采用消息队列机制,降低了统一通信平台因为和应用反复交互导致的负载,并且在负载进一步增大时,可以通过分布式部署多个应用容器实现扩展。 2.本发明针对不同的应用系统集成,开发可以动态部署到集成框架的集成业务构件,并且集成业务构件只需要关心具体应用业务逻辑,通信、可靠性、线程池等都由集成框架提供,这节省了开发时间,减小了编码工作量,降低了开发成本,此外集成业务构件可以动态安装或者卸载,也可以多版本共用,实现了系统的动态性和灵活性。


图I是本发明基于OSGi的统一通信平台服务集成框架的结构示意图;图2是本发明中应用容器的构件关系图;图3是本发明中主动查询流程图;图4是本发明中应用推送流程图。
具体实施例方式下面结合附图和具体实施方式
对本发明进行详细说明。基于OSGi的统一通信平台服务集成框架,参见附图1,基于OSGi的统一通信平台服务集成框架,包括三个层面( I)客户终端服务层,作为客户终端的接入入口,并提供插件接口,用于实现客户端与第三方集成业务在接入层的交互工作;本发明米用的是开源的基于XMPP (extensible Messaging andPresenceProtocol,可扩展通讯和表示协议)协议的实时协作服务器作为客户终端服务层。以办公自动化为例,服务器插件实现集成办公自动化业务的主要过程如下a.注册办公自动化业务的命名空间;b.与内部交互层建立JMS连接,建立与消息队列应用的连接;c.对客户终端的消息和内部交互层的JMS消息进行监听,监听到与本业务的命名空间相匹配的消息后,解析收到的消息后并封装。将来自客户终端的消息封装成JMS消息格式,将来自内部交互层的消息封装成平台与客户终端交互的XMPP通信格式;d.将来自消息队列集群的消息发送给客户终端,将来自客户终端的消息发布给内部交互层。(2)内部交互层,为客户终端层和应用同期创建消息通道,用于简化平台的管理,均衡平台的负载;内部交互层采用消息队列集群技术,建立起客户终端服务层与对外接口层的连接,客户终端服务层封装的报文消息 在此处加入到消息队列中,对外接口层从消息队列中取出消息,达到通信的目的。本发明采用阿帕奇的开源项目Active MQ作为客户终端服务层与应用容器之间消息传输的总线。(3)应用容器,对外为第三方业务系统提供统一的接口,对内管理消息的传输以及和第三方集成业务系统的交互。应用容器是基于OSGi服务的,包括JMS构件、接口服务构件、服务控制构件、线程池服务构件和第三方集成业务构件,如图2所示。应用容器的所有服务接口都封装在接口服务构件中,图2中,①为JMS消息服务接口 定义了向内部交互层发布消息的方法,由JMS构件实现,服务控制构件调用;②为消息分发服务接口 定义了应用容器收到消息后进行分发处理的方法,由服务控制构件实现,JMS构件调用为业务的拉取/推送服务接口 定义了主动查询、推送消息方法,由集成业务构件实现,服务控制构件调用;④为线程池服务接口 定义了线程池服务的所有方法,由线程池构件实现,服务控制构件调用为第三方业务统一服务接口 定义了第三方业务系统对平台推送消息服务的方法,由服务控制构件实现,第三方业务系统调用。JMS构件用于应用容器中消息的接收和发送;所有注册到应用容器中的集成业务构件消息的接收和发送都通过该构件来实现。JMS构件职能的具体说明如下a.与内部交互层建立JMS的连接、建立与消息队列应用的连接,并对消息队列应用的连接进行监听,若断线则立即重连;b.对JMS消息进行监听,若接收到JMS消息,则调用消息分发服务接口 ;c.服务控制构件是对消息分发服务接口的实现,在服务控制构件中调用线程池服务接口,获取一个线程,并在该线程中完成业务的分发,并调用业务的拉取/推送接口 ;d.第三方集成业务构件实现拉取/推送接口后,将处理结果返还给JMS构件,并由JMS构件将结果发布到内部交互层的消息队列集群中,最后结束该线程。服务控制构件主要用于插接时注册服务、移除时删除服务、根据注册时的命名空间分发不同的业务以及对第三方业务统一接口的实现。服务控制构件职能的具体说明如下a.绑定对外提供的统一接口的地址;b.若是主动查询请求的消息,则先解析出消息中的命名空间,若注册的服务中有匹配的命名空间,则根据命名空间将查询请求消息分发至相应的集成业务构件去处理;c.若是推送服务请求,则在解析出命名空间并匹配成功后,从线程池中启动一个线程,在该线程内,完成业务的分发、业务的处理以及向内部交互层发送相应的消息。线程池服务构件用于为消息的路由提供线程池服务,避免平台资源的浪费,提高平台系统的工作效率,利用线程池来控制线程的数量。第三方集成业务构件用于处理应用容器和第三方集成业务系统的交互。具体处理方式如下a.若是主动查询请求消息,则将查询请求进行解析,并通过解析结果和相应的第三方业务系统进行交互,在第三方业务系统中进行业务的查询,并将查询结果返回给JMS构件。b.若是推送请求消息,则将第三方业务系统中推送过来的消息封装成平台中报文消息的传输格式,然后将查询结果返回给JMS构件。如图3所示,主动查询的流程如下①接入服务器中的办公自动化业务插件把查询请求发布到消息队列中后,应用容器中的JMS构件将监听到该请求,并接收查询请求;②JMS构件通过消息分发服务接口,将此查询请求消息发送至服务控制构件中处理;③在服务控制构件中获取一个线程,然后匹配办公自动化业务的命名空间,若匹配成功,则分发到办公自动化的业务构件中;
④办公自动化业务构件向办公自动化系统进行待办项目或通知个数的查询,并将查询结果返还给JMS构件。该构件将查询结果发布到消息队列中,并结束该线程。最后由客户终端服务层的插件从消息队列中监听并提取到该查询结果,并将查询结果返还给客户终端。如图4所示,应用推送的流程如下①推送时,办公自动化业务系统调用应用容器的提供的第三方业务统一服务接口将待办项或通知的个数消息发送到平台的应用容器中;②服务控制构件获取该消息并根据命名空间进行匹配,匹配成功后,启动一个线程,在此线程内,将消息分发到办公自动化业务构件中;③办公自动化业务构件通过接口服务提供的JMS消息服务接口调用JMS构件中的发送JMS消息方法,将消息封装成JMS消息,并将消息发布到消息队列中,并结束该线程。最后客户终端服务层的插件从消息队列中监听并获取到消息后,将消息推送给客户终端。本发明基于OSGi的统一通信服务平台集成框架可以同时接收大量的客户终端发出的查询请求和第三方集成业务发出的业务提醒,并且进行同时处理,大大提高了集成效率,由于OSGi服务框架中同时接入了不同的集成业务构件,并且可任意扩展集成业务构件,因此降低了通信平台的开发成本。内部交互层采用了消息队列集群技术,防止信息堵塞的发生,在负载较大的情况下起到均衡负载,同时在集成的第三方应用较多时可以分布式的部署多个应用容器以起到均衡负载的效果。
权利要求
1.基于OSGi的统一通信平台服务集成框架,其特征在于,包括三个层面 (1)客户终端服务层,作为客户终端的接入入口,并提供插件接口,用于实现客户端与第三方集成业务在接入层的交互工作; (2)内部交互层,为客户终端服务层和应用容器创建消息通道,用于简化平台的管理,均衡平台的负载; (3)应用容器,对外为第三方集成服务提供统一的接口,对内管理消息的传输以及和第三方集成业务系统的交互。
2.根据权利要求I所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述客户终端服务层提供的插件接口的实现过程为 a.注册第三方集成业务的命名空间; b.解析客户终端发送到服务器的请求并封装; c.建立JMS(JavaMessage Service, Java消息服务)连接,建立消息队列应用的连接; d.将封装的报文消息传递给内部交互层。
3.根据权利要求I或2所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述内部交互层采用消息队列集群技术,建立起客户终端服务层与应用容器的连接,客户终端服务层封装的报文消息在此处加入到消息队列中,应用容器从消息队列中取出消息,达到通信的目的。
4.根据权利要求3所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述应用容器是基于OSGi服务的,包括JMS构件、接口服务构件、服务控制构件、线程池服务构件和第三方集成业务构件。
5.根据权利要求4所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述JMS构件用于应用容器中消息的接收和发送。
6.根据权利要求4所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述接口服务构件用于为应用容器内部构件及第三方业务系统提供接口服务,包括JMS消息传输服务、消息分发服务、业务的拉取/推送服务、线程池服务和第三方业务系统的统一接口服务。
7.根据权利要求4所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述服务控制构件主要用于插接时注册服务、移除时删除服务、根据注册时的命名空间分发不同的业务以及对第三方业务统一接口的实现。
8.根据权利要求4所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述线程池服务构件用于为消息的路由提供线程池服务。
9.根据权利要求4所述的基于OSGi的统一通信平台服务集成框架,其特征在于,所述第三方集成业务构件用于处理应用容器和第三方集成业务系统的交互。
全文摘要
本发明公开了一种基于OSGi的统一通信平台服务集成框架,包括三个层面客户终端服务层,作为客户终端的接入入口,并提供插件接口,用于实现客户端与第三方集成业务在接入层的交互工作;内部交互层,为客户终端层和应用容器创建消息通道,用于简化平台的管理,均衡平台的负载;应用容器,对外为第三方集成服务提供统一的接口,对内管理消息的传输以及和第三方集成业务系统的交互。本发明基于OSGi的统一通信服务平台集成框架可以同时接收大量的客户终端发出的查询请求和第三方集成业务发出的业务提醒,并且进行同时处理,大大提高了集成效率。
文档编号H04L29/08GK102946425SQ20121043530
公开日2013年2月27日 申请日期2012年11月5日 优先权日2012年11月5日
发明者薛涛, 王鹏 申请人:西安工程大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1