一种用于异构平台间通信的方法及系统的制作方法_2

文档序号:8365841阅读:来源:国知局
构示意图。
【具体实施方式】
[0033]图1示出了本发明的一种用于异构平台间通信的情景,在本技术领域,所谓异构平台指的是分别基于不同的编程语言构建的不同平台。在本发明中,所述异构平台包括客户端和会议服务器13,例如,所述客户端为基于java程序构建的平台,会议服务器13为基于C/C++程序构建的平台。其中所述客户端可以为多个,例如包括客户端11a、客户端11b、客户端Iln等。由于所述客户端和会议服务器13分别是基于不同的编程语言构建的平台,为了更好地实现这两者间的信息交互,在本发明中引入了中间服务器12。例如,客户端Ila将视频会议管理操作消息发送到中间服务器12进行保存,会议服务器13监听到中间服务器12保存所述操作消息后,从中间服务器12获得所述操作消息,然后根据所述操作消息生成应答消息并发送到中间服务器12进行保存,客户端Ila监听到中间服务器12保存所述应答消息后,从中间服务器12获得所述应答消息,最后用户通过客户端Ila获知所述应答消息,从而实现了客户端和会议服务器这两个异构平台间的通信。图1中实线箭头为操作消息流向,虚线箭头为应答消息流向。在下文中,将通过若干实施例详细描述根据本发明实施例的异构平台间通信的方法和系统。
[0034]实施例1
[0035]图2示出了本发明实施例1的一种用于异构平台间通信的方法,具体地,该方法应用于图1中的中间服务器,该中间服务器分别与客户端和会议服务器连接,该方法包括以下步骤:
[0036]S21、从客户端接收操作消息。所述操作消息可以是根据用户操作请求生成的各种封装形式的消息,包含需要处理的会议终端的信息,所述会议终端通常由会议服务器所管理。优选地,所述操作消息是根据用户操作请求封装成的JSON格式消息,这样可以使得异构服务器(例如基于java程序的服务器与基于C/C++程序的服务器)都能对所述操作消息进行解析处理,且JSON格式消息占用的存储空间较小,从而降低开发成本。
[0037]S22、创建用于保存所述操作消息的操作节点。可以预先在会议服务器上对所述操作节点设置监听,当所述操作节点发生变化时,触发会议服务器上的监听程序。这样,所述操作节点一旦创建,会议服务器就可以及时获知。
[0038]S23、向会议服务器发送所述操作节点所保存的操作消息。可以在会议服务器监听到所述操作节点被创建,并主动请求获取所述操作节点的保存内容时,再向会议服务器发送所述操作节点所保存的操作消息。
[0039]S24、从所述会议服务器接收反馈的应答消息。所述反馈的应答消息,可以是会议服务器在接收到所述操作消息后,根据所述操作消息进行相关业务处理后生成的。具体地,由于所述操作消息包含需要处理的会议终端的信息,会议服务器所管理的相关终端会根据所述操作消息的指示进行视频会议信息的改变,据此,会议服务器会封装一个所述相关终端的状态发生改变的消息,即所述应答消息。
[0040]S25、更新用于保存所述应答消息的会议节点。所述会议节点的数量可以为多个,且与会议服务器所管理的会议一一对应。会议服务器所管理的每个会议可以包括两个以上的会议终端,当会议终端根据所述操作消息的指示进行视频会议信息的改变时,就会及时在对应的会议节点上更新所述应答消息。如果当前会议对应的会议节点不存在,则创建会议节点。
[0041]S26、向所述客户端发送更新的会议节点所保存的应答消息。可以预先在客户端上对所述会议节点设置监听,当所述会议节点发生变化时,触发客户端上的监听程序。这样,当所述会议节点发生变化时,客户端就可以及时获知。可以在客户端主动请求获取更新的会议节点所保存的应答消息时,再向所述客户端发送更新的会议节点所保存的应答消息。
[0042]通过操作节点保存从客户端接收的操作消息,并向会议服务器发送所述操作消息,能够保证客户端发出的操作消息与会议服务器接收到的操作消息保持顺序一致,从而降低操作消息丢失率;通过会议节点保存从会议服务器接收反馈的应答消息,并向客户端发送所述应答消息,能够保证会议服务器发出的应答消息与客户端接收到的应答消息保持顺序一致,从而进一步降低应答消息丢失率。总体上,本实施例的用于异构平台间通信的方法使得消息丢失率降低8%,显著提高通信准确性。
[0043]如图2所示,作为优选的实施方式,在步骤S23之后,还可以包括以下步骤:
[0044]S27、将所述操作节点删除。具体地,步骤S27可以设置在步骤S23之后,也可以设置在步骤S23之后的任何一个步骤之后。
[0045]将操作节点删除后,再次从客户端接收操作消息时,直接创建操作节点以保存所述操作消息,然后可以向会议服务器发送所述操作节点所保存的操作消息,这样不仅能够提高开发效率,并且节省存储空间,降低成本。虽然图2中步骤S27位于步骤S23与步骤S24之间,但是图2只是作为示例,事实上步骤S27可以在步骤S23之后的任何位置执行。
[0046]实施例2
[0047]图3示出了本发明实施例2的一种用于异构平台间通信的方法,具体地,该方法应用于图1中的客户端,该客户端与中间服务器连接,该方法包括以下步骤:
[0048]S31、向中间服务器发送操作消息。该步骤与实施例1中的步骤S21对应。
[0049]S32、监听所述中间服务器是否更新会议节点。当中间服务器更新会议节点时,执行步骤S33。可以通过设计监听程序,用于监听所述中间服务器是否更新会议节点,当中间服务器更新会议节点时,执行步骤S33。
[0050]S33、从所述中间服务器接收更新的会议节点所保存的应答消息。该步骤与实施例1中的步骤S26对应。
[0051]通过监听所述中间服务器是否更新会议节点,当中间服务器更新会议节点时,从中间服务器接收更新的会议节点所保存的应答消息,这样不仅能够使得接收的应答消息得到及时处理,显著提高通信实时性,而且能够保证会议服务器发出的应答消息与收到的应答消息保持顺序一致,使得消息丢失率降低8%,显著提高通信准确性。
[0052]如图3所示,作为优选的实施方式,步骤S33之后还可以包括以下步骤:
[0053]S34、将接收的所述应答消息封装成可扩展消息与出席协议消息。其中,可扩展消息与出席协议消息即为XMPP(Extens ible Messageing and Presence Protocol)消息。所述XMPP消息也可以由cometd消息进行替代。
[0054]S35、向有权限的用户推送所述可扩展消息与出席协议消息。可以通过在线查找方式获得有权限的用户,然后将所述可扩展消息与出席协议消息通过即时通讯服务器推送给所述有权限的用户。所述即时通讯服务器可以是ejabberd服务器,它是基于Jabber/XMPP协议的即时通讯服务器。用户可以对所述扩展消息与出席协议消息进行解析以获得所述应答消息。
[0055]通过将接收的所述应答消息封装成可扩展消息与出席协议消息,再向有权限的用户进行推送,这样可以使用户快速地接收到所述应答消息,提高通信实时性。
[0056]进一步地,步骤S31可以包括以下步骤:
[0057]3A、接收操作请求。所述操作请求可以是用户登录客户端后,通过点击操作命令而发出的http请求。
[0058]3B、将所述操作请求封装成JSON格式的操作消息。
[0059]3C、向中间服务器发送所述操作消息。
[0060]将接收自用户的操作请求封装成JSON格式的操作消息,由于只有一个节点数据,因而,中间服务器接收所述操作消息后保存方便,提高开发效率。
[0061]实施例3
[0062]图4示出了本发明实施例3的一种用于异构平台间通信的方法,具体地,该方法应用于图1中的会议服务器,该会议服务器与中间服务器连接,该方法包括以下步骤:
[0063]S41、监听中间服务器是否创建操作节点,当中间服务器创建操作节点时,执行步骤S42。可以通过设计监听程序,用于监听所述中间服务器是否创建操作节点,当中间服务器创建操作节点时,执行步骤S42。
[0064]S42、从所述中间服务器接收所述操作节点所保存的操作消息。该步骤与实施例1中的步骤S23对应。
[0065]S43、根据所述操作消息生成应答消息。所述应答消息是根据所述操作消息进行相关业务处理后生成的。具体地,由于所述操作消息包含需要处理的会议终端的信息,会议服务器所管理的相关终端会根据所述操作消息的指示进行视频会议信息的改变,据此,会议
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1