多人协同文档编辑方法及系统

文档序号:1505364 发布日期:2020-02-07 浏览:5次 >En<

阅读说明:本技术 多人协同文档编辑方法及系统 (Multi-person collaborative document editing method and system ) 是由 周祥 于 2019-10-22 设计创作,主要内容包括:本发明公开一种多人协同文档编辑方法,应用于服务器端,所述方法包括:接收第一客户端所发送的同步请求,同步请求中包括对文档进行编辑的编辑操作信息和第二客户端确定信息;解析同步请求以确定所述编辑操作信息和第二客户端确定信息;根据第二客户端确定信息确定待同步的第二客户端;将编辑操作信息发送至所述待同步的第二客户端,以实现待同步的第二客户端上的文档的同步编辑。通过服务器端接收客户端所发送的用于进行编辑操作同步的同步请求,并将编辑操作同步到具有协同权限的其它客户端,各个客户端处的工作人员能够及时根据彼此的编辑内容相应的调整或者修改自己的编辑内容,极大的保证了编辑内容的实效性,提升了工作效率。(The invention discloses a multi-person collaborative document editing method, which is applied to a server side and comprises the following steps: receiving a synchronization request sent by a first client, wherein the synchronization request comprises editing operation information for editing a document and second client determination information; analyzing the synchronous request to determine the editing operation information and the second client determining information; determining a second client to be synchronized according to the second client determination information; and sending the editing operation information to the second client to be synchronized so as to realize the synchronous editing of the document on the second client to be synchronized. The server receives the synchronous request sent by the client for synchronizing the editing operation, and synchronizes the editing operation to other clients with cooperative authority, and the staff at each client can adjust or modify own editing content in time according to the editing content, so that the effectiveness of the editing content is greatly ensured, and the working efficiency is improved.)

多人协同文档编辑方法及系统

技术领域

本发明涉及计算机技术领域,尤其涉及一种多人协同文档编辑方法及系统。

背景技术

在现有的工作项目中,当需要多人协同对同一文档进行编辑时,往往只能各自完成各自的部分,之后再将各自编辑完成的部分组合到一起形成最终的文件,然后再分发给各个工作人员进行整体文件的审阅或者处理。显然这种编辑效率是低下的,在进行不同工作人员进行编辑期间不能够得知其他工作人员所编辑的内容,各自独立工作,导致不能及时的兼顾全局对编辑工作进行调整,只能最后再做统一调整,并且可能存在多人重复编辑相同内容的情况,从而导致了重复劳动的产生。

发明内容

本发明实施例提供一种多人协同文档编辑方法及系统,用于至少解决上述技术问题之一。

第一方面,本发明实施例提供一种多人协同文档编辑方法,应用于服务器端,所述方法包括:

接收第一客户端所发送的同步请求,所述同步请求中包括对文档进行编辑的编辑操作信息和第二客户端确定信息;

解析所述同步请求以确定所述编辑操作信息和第二客户端确定信息;

根据所述第二客户端确定信息确定待同步的第二客户端;

将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑。

第二方面,本发明实施例提供一种多人协同文档编辑系统,应用于服务器端,所述系统包括:

请求接收模块,用于接收第一客户端所发送的同步请求,所述同步请求中包括对文档进行编辑的编辑操作信息和第二客户端确定信息;

请求解析模块,用于解析所述同步请求以确定所述编辑操作信息和第二客户端确定信息;

信息确定模块,用于根据所述第二客户端确定信息确定待同步的第二客户端;

信息同步模块,用于将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑。

第三方面,本发明实施例提供一种存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项多人协同文档编辑方法。

第四方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明上述任一项多人协同文档编辑方法。

第五方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项多人协同文档编辑方法。

本发明实施例的有益效果在于:通过服务器端接收客户端所发送的用于进行编辑操作同步的同步请求,并将编辑操作同步到具有协同权限的其它客户端,从而使得在相互协同的多个客户端之间能够及时的将各自客户端处所产生的编辑操作同步到其它客户端,各个客户端处的工作人员能够及时根据彼此的编辑内容相应的调整或者修改自己的编辑内容,极大的保证了编辑内容的实效性,提升了工作效率。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的多人协同文档编辑方法的一实施例的流程图;

图2为本发明的多人协同文档编辑系统的一实施例的架构图;

图3为本发明的多人协同文档编辑系统的一实施例的原理框图;

图4为本发明的电子设备的一实施例的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

如图1所示,本发明的实施例提供一种多人协同文档编辑方法,应用于服务器端,所述客户端可以为一个服务器或者多个服务器或者一个服务器集群或者多个服务器集群,服务端用于实现多个客户端之间的协同文档编辑,客户端可以是智能手机、笔记本电脑、台式电脑等计算机设备,该方法包括:

S10、接收第一客户端所发送的同步请求,所述同步请求中包括对文档进行编辑的编辑操作信息和第二客户端确定信息。

示例性地,工作人员在第一客户端上进行文档编辑处理,这时第一客户端自动检测到工作人员的编辑操作,并将该编辑操作数据化之后生成编辑操作信息;进一步地,获取用于确定与第一客户端协同工作的其它客户端的第二客户端确定信息;之后基于编辑操作信息和第二客户端确定信息生成同步请求并发送至服务器端。

S20、解析所述同步请求以确定所述编辑操作信息和第二客户端确定信息。

示例性地,服务器端对同步请求进行解析,从中获得对应于工作人员在第一客户端进行文档编辑处理的编辑操作信息和第二客户端确定信息。

S30、根据所述第二客户端确定信息确定待同步的第二客户端。

示例性地,服务器端根据本地所存储的相关信息查询是否存在对应于所述第二客户端确定信息客户端,如果是则确定该客户端为第二客户端。

示例性地,服务器端包括多个服务器;其中,所述接收第一客户端所发送的同步请求包括:所述多个服务器中的与所述第一客户端相关联的第一服务器接收所述第一客户端所发送的同步请求;

所述根据所述第二客户端确定信息确定待同步的第二客户端包括:所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定待同步的第二客户端。

S40、将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑。

示例性地,所述多个服务器中的每一个服务器中均存储有协同文档编辑组信息,所述协同文档编辑组信息包括多个协同文档编辑组名称信息和对应于每个系统文档编辑组名称信息的多个用户身份信息。

本实施例中,通过服务器端接收客户端所发送的用于进行编辑操作同步的同步请求,并将编辑操作同步到具有协同权限的其它客户端,从而使得在相互协同的多个客户端之间能够及时的将各自客户端处所产生的编辑操作同步到其它客户端,各个客户端处的工作人员能够及时根据彼此的编辑内容相应的调整或者修改自己的编辑内容,极大的保证了编辑内容的实效性,提升了工作效率。

在一些实施例中,所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定待同步的第二客户端包括:

所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定与所述第二客户端确定信息相关联的第二服务器;

所述第二服务器根据所述第二客户端确定信息确定所述待同步的第二客户端;

所述将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑包括:

所述第二服务器将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑。

在一些实施例中,所述第二客户端确定信息为使用所述第二客户端的当前用户的用户身份信息;

所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定与所述第二客户端确定信息相关联的第二服务器包括:

所述第一服务器根据所述当前用户的用户身份信息查询所述多个服务器中的其它服务器,以确定存储有对应于所述当前用户的用户身份信息的关联协同文档编辑组名称信息;

确定所述关联协同文档编辑组名称信息所在服务器为第二服务器。

在一些实施例中,所述第二客户端确定信息为使用所述第一客户端的当前用户身份信息所对应的当前协同文档编辑组名称信息;

所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定与所述第二客户端确定信息相关联的第二服务器包括:

所述第一服务器根据所述当前用户的用户身份信息查询所述多个服务器中的其它服务器,以确定存储有所述当前协同文档编辑组名称信息的关联服务器;

确定所述关联服务器为所述第二服务器。

示例性地,本发明实施例中涉及的数据同步方案为:用户在客户端的文档的操作(包括增删改),转换成一种特殊格式的数据。利用MQTT同步到各个集群服务器,服务器拿到该种数据之后,将数据下发到对应的客户端(保持长链接)。

示例性地,本发明实施例中涉及的文本技术方案为:客户端得到数据之后,会先缓存这种操作数据。每隔一定时间段左右,将缓存的数据合并,转换成对文档的修改。这样的好处是,传输的数据量小,性能好,且对文档的操作顺序精准。

如图2所示为本申请的多人协同文档编辑系统的一实施例的架构图,其中包括设备1、2和3,服务器A、B、C,并且服务器A通过MQTT与服务器B和C通信连接;示例性地,用户可以在设备1上进行编辑操作,从而设备1向服务器A发送操作数据;一方面,服务器A将操作数据通过MQTT推送至服务器B和C,进一步地服务器B和C将所接收到的操作数据发送至在当前协同任务中与服务器B和C连接的其它设备;另一方面,服务器A将操作数据直接同步至于其通信连接的其它设备(设备2和设备3)。

示例性地,在图2所示的架构之下执行以下方法步骤:

1,每个客户端的文本应用,会在用户编辑(增/删/改)之后,会将该操作数据化,并缓存,定时上传服务器。

2,服务器

2.1)先将数据发送到保持连接的客户端。

2.2)将数据推送给MQTT,同步数据给其他服务器。

3,其他服务器推送到与之连接的客户端。

4,客户端拿到操作数据,对富文本进行修改,展示给用户。

服务器负责接收客户端操作数据,和相互之间的同步数据,然后推送到需要推送的客户端。

客户端负责将用户行为操作数据推送给客户端,并且同时与服务器保持连接,接收服务器推送的其他操作数据,然后转换操作数据,刷新客户端的富文本应用。MQTT负责服务器之间的同步行为。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

如图3所示,本发明的实施例还提供一种多人协同文档编辑系统300,应用于服务器端,所述系统包括:

请求接收模块310,用于接收第一客户端所发送的同步请求,所述同步请求中包括对文档进行编辑的编辑操作信息和第二客户端确定信息;

请求解析模块320,用于解析所述同步请求以确定所述编辑操作信息和第二客户端确定信息;

信息确定模块330,用于根据所述第二客户端确定信息确定待同步的第二客户端;

信息同步模块340,用于将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑。

在一些实施例中,所述服务器端包括多个服务器;其中,所述接收第一客户端所发送的同步请求包括:所述多个服务器中的与所述第一客户端相关联的第一服务器接收所述第一客户端所发送的同步请求;

所述根据所述第二客户端确定信息确定待同步的第二客户端包括:所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定待同步的第二客户端。

在一些实施例中,所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定待同步的第二客户端包括:

所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定与所述第二客户端确定信息相关联的第二服务器;

所述第二服务器根据所述第二客户端确定信息确定所述待同步的第二客户端;

所述将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑包括:

所述第二服务器将所述编辑操作信息发送至所述待同步的第二客户端,以实现所述待同步的第二客户端上的文档的同步编辑。

在一些实施例中,所述多个服务器中的每一个服务器中均存储有协同文档编辑组信息,所述协同文档编辑组信息包括多个协同文档编辑组名称信息和对应于每个系统文档编辑组名称信息的多个用户身份信息。

在一些实施例中,所述第二客户端确定信息为使用所述第二客户端的当前用户的用户身份信息;

所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定与所述第二客户端确定信息相关联的第二服务器包括:

所述第一服务器根据所述当前用户的用户身份信息查询所述多个服务器中的其它服务器,以确定存储有对应于所述当前用户的用户身份信息的关联协同文档编辑组名称信息;

确定所述关联协同文档编辑组名称信息所在服务器为第二服务器。

在一些实施例中,所述第二客户端确定信息为使用所述第一客户端的当前用户身份信息所对应的当前协同文档编辑组名称信息;

所述第一服务器根据所述第二客户端确定信息查询所述多个服务器中的其它服务器,以确定与所述第二客户端确定信息相关联的第二服务器包括:

所述第一服务器根据所述当前用户的用户身份信息查询所述多个服务器中的其它服务器,以确定存储有所述当前协同文档编辑组名称信息的关联服务器;

确定所述关联服务器为所述第二服务器。

在一些实施例中,本发明实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项多人协同文档编辑方法。

在一些实施例中,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项多人协同文档编辑方法。

在一些实施例中,本发明实施例还提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行多人协同文档编辑方法。

在一些实施例中,本发明实施例还提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现多人协同文档编辑方法。

上述本发明实施例的多人协同文档编辑系统可用于执行本发明实施例的多人协同文档编辑方法,并相应的达到上述本发明实施例的实现多人协同文档编辑方法所达到的技术效果,这里不再赘述。本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。

图4是本申请另一实施例提供的执行多人协同文档编辑方法的电子设备的硬件结构示意图,如图4所示,该设备包括:一个或多个处理器410以及存储器420,图4中以一个处理器410为例。

执行多人协同文档编辑方法的设备还可以包括:输入装置430和输出装置440。

处理器410、存储器420、输入装置430和输出装置440可以通过总线或者其他方式连接,图4中以通过总线连接为例。

存储器420作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的多人协同文档编辑方法对应的程序指令/模块。处理器410通过运行存储在存储器420中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例多人协同文档编辑方法。

存储器420可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据多人协同文档编辑装置的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器420可选包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至多人协同文档编辑装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置430可接收输入的数字或字符信息,以及产生与多人协同文档编辑装置的用户设置以及功能控制有关的信号。输出装置440可包括显示屏等显示设备。

所述一个或者多个模块存储在所述存储器420中,当被所述一个或者多个处理器410执行时,执行上述任意方法实施例中的多人协同文档编辑方法。

上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。

本申请实施例的电子设备以多种形式存在,包括但不限于:

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种家庭地址编码的方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!