一种超文本协同编辑方法、装置和设备制造方法及图纸

技术编号:34457353 阅读:13 留言:0更新日期:2022-08-06 17:06
本发明专利技术公开了一种超文本协同编辑方法、装置和设备,方法包括:接收浏览器端发送的实例创建事件消息,记录并返回当前协同用户的用户信息,以使浏览器端将协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;接收浏览器端发送的内容变更事件消息,记录并返回当前协同用户在文本中的输入位置信息以及目标文本的内容变更信息,以使所述浏览器端在各协同用户的目标文本编辑页面中进行实时显示。本发明专利技术能够实现浏览器端上的多用户同时在线协同编辑同一目标文本,从而无需再借助独立的协同协同编辑文档工具来实现,提高用户办公体验。验。验。

【技术实现步骤摘要】
一种超文本协同编辑方法、装置和设备


[0001]本专利技术属于超文本协同编辑
,具体涉及一种超文本协同编辑方法、装置和设备。

技术介绍

[0002]在信息技术高速发展的时代,办公工具的信息化建设对于促进信息交流、知识共享和提升工作效率等方面具有重要作用。其中,多用户之间的协同编辑工具在日常工作中被广泛应用,因此,提升协同编辑工具的性能对于提升工作效率显得尤为重要。
[0003]协同编辑是指支持多人在不同终端对同一文档进行共同编辑的功能。目前也有一些关于协同编辑功能的工具,其处理机制几乎一致,即通过客户端和服务端之间进行通信连接,并支持多个用户在页面对同一文档进行编辑。但现有的大部分工具采用的是抢占式编辑策略,这种方式处理过程较为简单,但却不能较好的实现用户操作意图的一致性,即页面会出现很多与用户操作意图不相符的问题,导致用户协同编辑体验较差;此外,目前多人进行协同编辑文档主要是借助于协同编辑文档工具(例如腾讯文档、钉钉文档、谷歌文档等)实现,而无法直接在常规网页和浏览器中直接进行多人协同编辑,且文档内容的更新及查阅均依赖于用户主动访问协同编辑文档工具来实现,协同进度不够直观,用户体验较差。

技术实现思路

[0004]本专利技术的目的是提供一种超文本协同编辑方法、装置和设备,用于解决现有技术中存在的至少一个技术问题。
[0005]为了实现上述目的,本专利技术采用以下技术方案:
[0006]第一方面,本专利技术提供一种超文本协同编辑方法,包括:
[0007]接收浏览器端发送的实例创建事件消息,根据所述实例创建事件消息,将获取到的当前协同用户信息返回至所述浏览器端,以使所述浏览器端将当前协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;
[0008]接收所述浏览器端发送的内容变更事件消息,根据所述内容变更事件消息,将获取到的用户当前输入位置信息和文本内容变更信息返回至所述浏览器端,以使所述浏览器端将用户当前输入位置信息和文本内容变更信息在各协同用户的目标文本编辑页面中进行实时显示;
[0009]其中,所述浏览器端嵌设有slate

react超文本编辑器,用于供各协同用户对目标文本进行协同编辑;所述浏览器端设有第一socket端,所述第一socket端基于Websocket协议进行消息传输。
[0010]第二方面,本专利技术提供一种超文本协同编辑装置,包括:
[0011]第一信息获取模块,用于接收浏览器端发送的实例创建事件消息,根据所述实例创建事件消息,将获取到的当前协同用户信息返回至所述浏览器端,以使所述浏览器端将当前协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;
[0012]第二信息获取模块,用于接收所述浏览器端发送的内容变更事件消息,根据所述内容变更事件消息,将获取到的用户当前输入位置信息和文本内容变更信息返回至所述浏览器端,以使所述浏览器端将用户当前输入位置信息和文本内容变更信息在各协同用户的目标文本编辑页面中进行实时显示;
[0013]其中,所述浏览器端嵌设有slate

react超文本编辑器,用于供各协同用户对目标文本进行协同编辑;所述浏览器端设有第一socket端,所述第一socket端基于Websocket协议进行消息传输。
[0014]第三方面,本专利技术提供一种超文本协同编辑方法,包括:
[0015]监听协同实例创建事件,并在监听到创建事件发生时将实例创建事件消息发送至服务器,以使所述服务器根据所述实例创建事件消息获取当前协同用户信息;
[0016]接收所述当前协同用户信息,并将所述当前协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;
[0017]监听内容变更事件,并在监听到变更事件发生时将内容变更事件消息发送至所述服务器,以使所述服务器根据所述内容变更事件消息获取用户当前输入位置信息和文本内容变更信息;
[0018]接收所述用户当前输入位置信息和所述文本内容变更信息,并将所述用户当前输入位置信息和所述文本内容变更信息在各协同用户的目标文本编辑页面中进行实时显示;
[0019]其中,各协同用户基于slate

react超文本编辑器对目标文本进行协同编辑;所述服务器设有第二socket端,所述第二socket端基于Websocket协议进行消息传输。
[0020]在一种可能的设计中,在监听协同实例创建事件之前,所述方法还包括:
[0021]接收用户的加入协同请求,根据所述加入协同请求调用New Collaboration插件函数创建协同实例,并调用handle Join Edit插件函数将用户加入到目标文本的协同编辑中。
[0022]在一种可能的设计中,在监听内容变更事件之前,所述方法还包括:
[0023]获取用户的协同编辑操作,根据所述协同编辑操作调用handle Push Current Selection插件函数将用户输入的文本信息发送至第一socket端;
[0024]调用handle Send Operations插件函数对用户输入位置进行定位,并将用户输入位置放置在待发送列表中,同时,调用get Edit Content插件函数获取用户输入内容,以使所述第一socket端将用户输入内容和待发送列表中的用户输入位置发送至所述服务器。
[0025]在一种可能的设计中,所述文本内容变更信息在目标文本编辑页面中的显示方法包括:
[0026]将slate

react超文本编辑器的children数组设置为value,并将文本内容变更信息传递给所述children数组;
[0027]根据所述children数组生成渲染组件,其中,所述渲染组件包括Element组件和Text组件;
[0028]将所述Element组件和Text组件渲染到目标文本编辑页面进行实时显示。
[0029]在一种可能的设计中,当所述目标文本为视频文件时,所述方法还包括:
[0030]利用python和celery技术来分布式引用ffmpeg工具,以对视频文件进行转码,并将转码后的视频文件发送至服务器。
[0031]第四方面,本专利技术提供一种超文本协同装置,包括:
[0032]第一监听模块,用于监听协同实例创建事件,并在监听到创建事件发生时将实例创建事件消息发送至服务器,以使所述服务器根据所述实例创建事件消息获取当前协同用户信息;
[0033]第一显示模块,用于接收所述当前协同用户信息,并将所述当前协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;
[0034]第二监听模块,用于监听内容变更事件,并在监听到变更事件发生时将内容变更事件消息发送至所述服务器,以使所述服务器根据所述内容变更事件消息获取用户当前输入位置信息和文本内容变更信息;
[0035]第二显示模块,用于接收所述用户当前输入位置信息和所述文本本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种超文本协同编辑方法,其特征在于,包括:接收浏览器端发送的实例创建事件消息,根据所述实例创建事件消息,将获取到的当前协同用户信息返回至所述浏览器端,以使所述浏览器端将当前协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;接收所述浏览器端发送的内容变更事件消息,根据所述内容变更事件消息,将获取到的用户当前输入位置信息和文本内容变更信息返回至所述浏览器端,以使所述浏览器端将用户当前输入位置信息和文本内容变更信息在各协同用户的目标文本编辑页面中进行实时显示;其中,所述浏览器端嵌设有slate

react超文本编辑器,用于供各协同用户对目标文本进行协同编辑;所述浏览器端设有第一socket端,所述第一socket端基于Websocket协议进行消息传输。2.一种超文本协同编辑装置,其特征在于,包括:第一信息获取模块,用于接收浏览器端发送的实例创建事件消息,根据所述实例创建事件消息,将获取到的当前协同用户信息返回至所述浏览器端,以使所述浏览器端将当前协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;第二信息获取模块,用于接收所述浏览器端发送的内容变更事件消息,根据所述内容变更事件消息,将获取到的用户当前输入位置信息和文本内容变更信息返回至所述浏览器端,以使所述浏览器端将用户当前输入位置信息和文本内容变更信息在各协同用户的目标文本编辑页面中进行实时显示;其中,所述浏览器端嵌设有slate

react超文本编辑器,用于供各协同用户对目标文本进行协同编辑;所述浏览器端设有第一socket端,所述第一socket端基于Websocket协议进行消息传输。3.一种超文本协同编辑方法,其特征在于,包括:监听协同实例创建事件,并在监听到创建事件发生时将实例创建事件消息发送至服务器,以使所述服务器根据所述实例创建事件消息获取当前协同用户信息;接收所述当前协同用户信息,并将所述当前协同用户信息在各协同用户的目标文本编辑页面中进行实时显示;监听内容变更事件,并在监听到变更事件发生时将内容变更事件消息发送至所述服务器,以使所述服务器根据所述内容变更事件消息获取用户当前输入位置信息和文本内容变更信息;接收所述用户当前输入位置信息和所述文本内容变更信息,并将所述用户当前输入位置信息和所述文本内容变更信息在各协同用户的目标文本编辑页面中进行实时显示;其中,各协同用户基于slate

react超文本编辑器对目标文本进行协同编辑;所述服务器设有第二socket端,所述第二socket端基于Websocket协议进行消息传输。4.根据权利要求3所述的超文本协同编辑方法,其特征在于,在监听协同实例创建事件之前,所述方法还包括:接收用户的加入协同请求,根据所述加入协同请求调用New Collaboration插件函数创建协...

【专利技术属性】
技术研发人员:陈芋宇
申请(专利权)人:成都咕咕知识管家科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1