实现即时通信多人画板的方法、客户端、服务器及系统的制作方法

文档序号:7771763阅读:178来源:国知局
实现即时通信多人画板的方法、客户端、服务器及系统的制作方法
【专利摘要】本发明公开了一种实现即时通信多人画板的方法、客户端、服务器及系统。所述方法包括:客户端在即时通信窗口中显示绘图画板,获取所述绘图画板上的绘图信息后序列化成数据流,并将所述数据流和本客户端ID上传到即时通信服务器;所述即时通信服务器将接收到的各群组成员客户端上传的数据流和对应的客户端ID放入数据队列中,并按照先进先出的顺序将其分发给群组中的其他成员客户端;收到所述即时通信服务器分发的数据流和对应的客户端ID的客户端,将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示;本发明使得用户在群中能共享同一绘图画板,并将IM用户在画板上的动作和结果及时显示。
【专利说明】实现即时通信多人画板的方法、客户端、服务器及系统

【技术领域】
[0001]本发明涉及互联网即时通信【技术领域】,特别涉及一种实现即时通信多人画板的方法、客户端、服务器及系统。

【背景技术】
[0002]随着互联网系统的高速发展,即时通信(IM, Instant Messenger)已成为必不可少的互联网应用。更由于带宽的不断扩容,IM已由原来的只支持文本交流聊天,发展到支持音频会话、视频会话、文件共享等高端应用。
[0003]但这些完成的都是单一应用,不能让参与会话群中的多人基于同一场景交流,SP无法满足用户在文本或者音视频交流的同时,共享同一画板并即时显示多人在画板上的绘图动作和绘图结果。


【发明内容】

[0004]本发明提供的一种实现即时通信多人画板的方法、客户端、服务器及系统,使得頂用户在群组中能共享同一绘图画板,并将頂用户在画板上的动作和结果及时显示。
[0005]本发明提供一种实现即时通信多人画板的方法,所述方法包括:
[0006]客户端在即时通信窗口中显示绘图画板,获取所述绘图画板上的绘图信息,将获取的绘图信息序列化成数据流,并将所述数据流和本客户端ID上传到即时通信服务器;
[0007]所述即时通信服务器将接收到的各群组成员客户端上传的数据流和对应的客户端ID放入数据队列中,并按照先进先出的顺序将所述数据队列中的数据流和对应的客户端ID分发给群组中的其他成员客户端;
[0008]收到所述即时通信服务器分发的数据流和对应的客户端ID的客户端,将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0009]其中,所述绘图信息包括:光标与所述绘图画板的相对位置信息、光标当前使用的绘图工具以及在所述绘图画板上绘制的图形信息。
[0010]优选的,所述方法进一步包括:所述即时通信服务器将接收到的所述各数据流和对应客户端ID进行备份。
[0011]优选的,所述方法进一步包括:当有新的客户端成为群组的成员客户端时,所述即时通信服务器将所述备份的各数据流和对应的客户端ID同步到该新的客户端;该新的客户端将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0012]本发明还提供一种实现即时通信多人画板的客户端,该客户端包括:
[0013]绘图画板模块,用于在客户端的即时通信窗口中显示绘图画板,并获取所述绘图画板上的绘图信息,将获取的绘图信息序列化成数据流;
[0014]收发模块,用于将所述绘图画板序列化后的数据流和本客户端ID对应上传到即时通信服务器,还用于将接收到的所述即时通信服务器分发的数据流和对应的客户端ID转发给所述绘图画板模块;
[0015]所述绘图画板模块,还用于将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0016]其中,所述绘图信息包括:光标与所述绘图画板的相对位置信息、光标当前使用的绘图工具以及在所述绘图画板上绘制的图形信息。
[0017]本发明提供一种实现即时通信多人画板的服务器,该服务器包括:
[0018]接收模块,用于接收各群组成员客户端上传的数据流和对应的客户端ID,并放入存储模块的数据队列中;
[0019]所述存储模块,用于保存数据;
[0020]分发模块,用于按照先进先出的顺序将所述存储模块的数据队列中的数据流和对应的客户端ID分发给群组中的其他成员客户端。
[0021]优选的,所述服务器进一步包括:备份模块,用于将所述接收模块接收到的所述各群组成员客户端上传的数据流和对应的客户端ID进行备份。
[0022]优选的,所述服务器进一步包括:新增模块,用于当有新的客户端成为群组的成员客户端时,所述备份模块将备份的所述各群组成员客户端上传的数据流和对应的客户端ID同步到该新的客户端;所述新增模块还用于使该新的客户端将收到的所述各群组成员客户端上传的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0023]本发明还提供一种实现即时通信多人画板的系统,该系统包括:如上所述的实现即时通信多人画板的客户端及如上所述的实现即时通信多人画板的服务器。
[0024]本发明实施例的有益效果是:客户端将绘图信息显示在本地的画图画板的同时,将所述绘图信息序列化后上传到即时通信服务器,再由所述即时通信服务器分发给群组里的其他成员客户端,其他成员客户端将收到的数据进行反序列化后在本地显示,由于頂网络延迟小,各客户端在绘图画板上的动作和结果能够及时显示在群组里其他客户端的绘图画板上,达到群组成员共享同一绘图画板的效果。

【专利附图】

【附图说明】
[0025]图1为本发明一实施例的一种实现即时通信多人画板的方法的流程图;
[0026]图2为本发明一实施例的一种实现即时通信多人画板的客户端的结构图;
[0027]图3为本发明一实施例的一种实现即时通信多人画板的服务器的结构图;
[0028]图4为本发明一实施例的一种实现即时通信多人画板的另一服务器的结构图;
[0029]图5 (a) (b)分别为本发明一实施例的一种实现即时通信多人画板的系统的结构图。

【具体实施方式】
[0030]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0031]参见图1,本发明提供一种实现即时通信多人画板的方法,所述方法包括:
[0032]S110、客户端在即时通信窗口中显示绘图画板,获取所述绘图画板上的绘图信息,将获取的绘图信息序列化成数据流,并将所述数据流和本客户端ID上传到即时通信服务器;
[0033]S120、所述即时通信服务器将接收到的各群组成员客户端上传的数据流和对应的客户端ID放入数据队列中,并按照先进先出的顺序将所述数据队列中的数据流和对应的客户端ID分发给群组中的其他成员客户端;
[0034]S130、收到所述即时通信服务器分发的数据流和对应的客户端ID的客户端,将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0035]具体的,在客户端实现一个绘图画板控件,所述绘图画板控件的功能与系统自带的画图程序类似,包括绘图工具栏、颜色工具栏以及标准工具栏等,所述绘图工具栏上有各种绘图工具供用户选择,用户可以使用鼠标或者手写板进行绘图,群组里的各成员客户端均增加一个所述的绘图画板控件,用户在所述绘图画板控件中进行绘图。
[0036]其中,所述绘图信息包括:a)光标与所述绘图画板的相对位置信息;b)光标当前使用的绘图工具,如画笔、画刷、橡皮擦、矩形、椭圆、文本等;c)在所述绘图画板上绘制的图形信息,如图形类别、颜色、文本信息、字体名称以及颜色大小等,且所述绘图信息大都是位置大小等矢量数据,数据量很小,带宽占用小,对机器的配置要求不高。
[0037]优选的,所述方法进一步包括:所述即时通信服务器将接收到的所述各数据流和对应客户端ID进行备份。
[0038]优选的,所述方法进一步包括:当有新的客户端成为群组的成员客户端时,所述即时通信服务器将所述备份的各数据流和对应的客户端ID同步到该新的客户端;该新的客户端将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0039]根据以上分析,群组中的成员客户端只需要和所述即时通信服务器保持数据双向传输,而不需要和其他群组成员建立点到点的连接,当有新的客户端成为群组的成员客户端时,只需在新增的客户端与所述即时通信服务器之间增加一条连接即可,而不影响其他群组成员客户端。
[0040]如图2所示,本发明还提供一种实现即时通信多人画板的客户端200,该客户端200包括:
[0041]绘图画板模块210,用于在客户端200的即时通信窗口中显示绘图画板,并获取所述绘图画板上的绘图信息,将获取的绘图信息序列化成数据流;
[0042]收发模块220,用于将所述绘图画板序列化后的数据流和本客户端ID对应上传到即时通信服务器,还用于将接收到的所述即时通信服务器分发的数据流和对应的客户端ID转发给所述绘图画板模块210 ;
[0043]所述绘图画板模块210,还用于将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0044]其中,所述绘图信息包括:光标与所述绘图画板的相对位置信息、光标当前使用的绘图工具以及在所述绘图画板上绘制的图形信息。
[0045]如图3所示,本发明提供一种实现即时通信多人画板的服务器300,该服务器300包括:
[0046]接收模块310,用于接收各群组成员客户端上传的数据流和对应的客户端ID,并放入存储模块320的数据队列中;
[0047]所述存储模块320,用于保存数据;
[0048]分发模块330,用于按照先进先出的顺序将所述存储模块320的数据队列中的数据流和对应的客户端ID分发给群组中的其他成员客户端。
[0049]图4为一种实现即时通信多人画板的另一服务器400的结构图,其中,所述接收模块410功能与图3中的所述接收模块310功能相同,所述存储模块420功能与图3中的所述存储模块320功能相同,所述分发模块430功能与图3中的所述存储模块330功能相同;
[0050]备份模块440,用于将所述接收模块接收到的所述各群组成员客户端上传的数据流和对应的客户端ID进行备份。
[0051]新增模块450,用于当有新的客户端成为群组的成员客户端时,所述备份模块将备份的所述各群组成员客户端上传的数据流和对应的客户端ID同步到该新的客户端;所述新增模块还用于使该新的客户端将收到的所述各群组成员客户端上传的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
[0052]如图5 Ca)所示,本发明还提供一种实现即时通信多人画板的系统500,包括:多个实现即时通信多人画板的客户端510及所述实现即时通信多人画板的服务器520 ;如图5 (b)所示,本发明还提供一种实现即时通信多人画板的系统500,包括:如上所述的多个实现即时通信多人画板的客户端510及如上所述的实现即时通信多人画板的服务器530。其中,所述多个实现即时通信多人画板的客户端510与所述实现即时通信多人画板的客户端200功能相同,所述实现即时通信多人画板的服务器520与所述实现即时通信多人画板的服务器300功能相同;所述实现即时通信多人画板的服务器530与所述实现即时通信多人画板的服务器400功能相同。
[0053]本发明实施例的有益效果是:
[0054]I)利用M网络延迟小的优点,各客户端将本地的绘图信息经即时通信服务器中转后分发给群组里的其他成员客户端,使得所述绘图信息在其他成员客户端的本地也能及时显示,达到群组成员共享同一绘图画板的效果;
[0055]2)所述绘图信息大都是位置大小等矢量数据,数据量很小,带宽占用小,对机器的配置要求不高,不影响即时通信系统其他功能的正常使用;
[0056]3)群组中的成员客户端只需要和所述即时通信服务器保持数据双向传输,而不需要和其他群组成员建立点到点的连接,使得拓扑结构简单易实现,增强整个系统的可扩展性;
[0057]4)所述绘图信息经即时通信服务器中转时,可以实现数据的全量备份,使得数据不易丢失,方便数据的再利用。
[0058]以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
【权利要求】
1.一种实现即时通信多人画板的方法,其特征在于,所述方法包括: 客户端在即时通信窗口中显示绘图画板,获取所述绘图画板上的绘图信息,将获取的绘图信息序列化成数据流,并将所述数据流和本客户端ID上传到即时通信服务器; 所述即时通信服务器将接收到的各群组成员客户端上传的数据流和对应的客户端ID放入数据队列中,并按照先进先出的顺序将所述数据队列中的数据流和对应的客户端ID分发给群组中的其他成员客户端; 收到所述即时通信服务器分发的数据流和对应的客户端ID的客户端,将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
2.如权利要求1所述的方法,其特征在于,所述绘图信息包括: 光标与所述绘图画板的相对位置信息、光标当前使用的绘图工具以及在所述绘图画板上绘制的图形信息。
3.如权利要求1所述的方法,其特征在于,所述方法进一步包括: 所述即时通信服务器将接收到的所述各数据流和对应客户端ID进行备份。
4.如权利要求3所述的方法,其特征在于,所述方法进一步包括: 当有新的客户端成为群组的成员客户端时,所述即时通信服务器将所述备份的各数据流和对应的客户端ID同步到该新的客户端; 该新的客户端将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
5.一种实现即时通信多人画板的客户端,其特征在于,该客户端包括: 绘图画板模块,用于在客户端的即时通信窗口中显示绘图画板,并获取所述绘图画板上的绘图信息,将获取的绘图信息序列化成数据流; 收发模块,用于将所述绘图画板序列化后的数据流和本客户端ID对应上传到即时通信服务器,还用于将接收到的所述即时通信服务器分发的数据流和对应的客户端ID转发给所述绘图画板模块; 所述绘图画板模块,还用于将收到的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
6.如权利要求5所述的客户端,其特征在于,所述绘图信息包括: 光标与所述绘图画板的相对位置信息、光标当前使用的绘图工具以及在所述绘图画板上绘制的图形信息。
7.一种实现即时通信多人画板的服务器,其特征在于,该服务器包括: 接收模块,用于接收各群组成员客户端上传的数据流和对应的客户端ID,并放入存储模块的数据队列中; 所述存储模块,用于保存数据; 分发模块,用于按照先进先出的顺序将所述存储模块的数据队列中的数据流和对应的客户端ID分发给群组中的其他成员客户端。
8.如权利要求7所述的服务器,其特征在于,所述服务器进一步包括: 备份模块,用于将所述接收模块接收到的所述各群组成员客户端上传的数据流和对应的客户端ID进行备份。
9.如权利要求8所述的服务器,其特征在于,所述服务器进一步包括: 新增模块,用于当有新的客户端成为群组的成员客户端时,所述备份模块将备份的所述各群组成员客户端上传的数据流和对应的客户端ID同步到该新的客户端;所述新增模块还用于使该新的客户端将收到的所述各群组成员客户端上传的数据流和对应的客户端ID进行反序列化后得到绘图信息,并将所述绘图信息在本地的绘图画板上显示。
10.一种实现即时通信多人画板的系统,其特征在于,该系统包括: 如权利要求5或6任一项所述的实现即时通信多人画板的客户端及如权利要求7-9任一项所述的实现即时通信多人画板的服务器。
【文档编号】H04L29/08GK104518941SQ201310445267
【公开日】2015年4月15日 申请日期:2013年9月26日 优先权日:2013年9月26日
【发明者】王秀富, 魏刚 申请人:北京新媒传信科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1