[发明专利]一种基于TCP WebSocket协议的协同编辑方法有效
申请号: | 201811000802.7 | 申请日: | 2018-08-30 |
公开(公告)号: | CN109299046B | 公开(公告)日: | 2023-08-15 |
发明(设计)人: | 熊才权;梅清;董奕;陈诗雨;屠春雷 | 申请(专利权)人: | 湖北工业大学 |
主分类号: | G06F16/176 | 分类号: | G06F16/176;G06F9/54 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙) 42222 | 代理人: | 张辰 |
地址: | 430068 湖*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 tcp websocket 协议 协同 编辑 方法 | ||
1.一种基于TCPWebSocket协议的协同编辑方法,其特征在于,包括:
步骤1:用户上传文章,并邀请协作编辑的用户;
步骤2:系统将用户提供文章进行分段处理,将段落信息存储至数据库,存储成功后向每个用户展示段落内容;
步骤3:用户点击加锁编辑相关段落,如果该段落正在被其他用户编辑则进行排队等待,待编辑该段的其他用户编辑结束后才允许编辑该段,用户在等待队列中可以排队编辑其他段落;
用户排队等待控制采用的方法包括:建立用户队列、用户进队列、队列顺序控制、用户出队列;
所述建立用户队列,是在提取文档段落信息时就已经为每一个自然段建立起一个空的存储结构,这个存储结构会将文章编号、段落编号以及该段的用户队列一一对应进行初始化;
所述用户进队列,是用户在点击段落对段落进行编辑时,便加入对应段落队列进行等待,若为该队列的第一位则可直接开始编辑,否则等待;
所述队列顺序控制,引入队列顺序控制方法,除了每段为用户分配等待队列之外,单独准备一个链表,该链表用来记录每个段落等待队列中的第一个用户,即记录正在处于编辑状态的用户;
所述用户出队列,是用户在编辑完成点击保存后,分为两部分来处理:第一部分用于处理队列,系统获取文章编号、段落编号以及用户编号,在存储结构中寻找到相应文章的相应段落的用户队列,将该用户编号从队列中移除;第二部分用于处理数据库,将保存更新后的段落内容更新存储到数据库中;
步骤4:用户在编辑完成某段内容后点击保存段落,系统将新的段落内容首先更新数据库的相应段落内容,同时利用WebSocket技术将该段新的内容同步至每个用户的编辑界面;
步骤5:系统将用户所做的操作分别记录下来,将操作步骤和操作内容录入数据库,并将操作信息显示至每一位用户的编辑界面;
步骤6:待所有用户完成编辑后,由一名用户对文档进行最后的编辑整改;
步骤7:导出最终编辑内容形成word文档,结束协同编辑;
其中,所述步骤3中,使每一个自然段都含有一个用户等待队列,仅允许每一个队列的第一个用户对本段进行编辑,用户点击编辑文章中的某个自然段,则加入该段对应的用户队列,若为该队列第一个用户则可直接开始编辑,否则等待,在等待过程中,可以对其他段落排队编辑;
所述步骤3中,若前一位用户已经结束编辑该段,轮到该段下一位用户编辑,然而这一位用户正在编辑其他段落,系统会提示该位用户进行编辑,该位用户有两种选择,一种为结束保存自己正在编辑的段落前往编辑提示段落,另一种为稍候编辑,如果用户选择稍候编辑,则系统会寻找该位用户后的第一位没有编辑其他段落的用户,将两用户进行位置交换,让没有编辑其他段落的用户优先编辑该段;
所述步骤3中加锁方式分为界面与数据库两部分,界面部分,在用户点击编辑该段时,界面将该段编辑状态置为可编辑状态,同时利用WebSocket同步该段加锁状态,提示后面想编辑该段的用户,该段已经有多少人正在排队等候,数据库部分,在用户加锁某段后,数据库将相应段落加上标记,代表已经有人正在编辑该段。
2.根据权利要求1所述的基于TCPWebSocket协议的协同编辑方法,其特征在于,所述用户进队列具体流程包括:
步骤(1):用户点击编辑某个自然段;
步骤(2):系统获取文章编号、段落编号、用户编号;
步骤(3):判断存储结构中是否有此文章编号,若有则转步骤(5),没有则转步骤(4);
步骤(4):没有此文章号代表该篇文章还没被编辑过,则需要创建用户队列,将用户编号插入用户队列,并将文章号、段落号与用户队列一一对应起来,具体步骤如下:步骤(4-1):创建用户队列,并将用户编号插入;
步骤(4-2):将段落号和该段用户队列对应;
步骤(4-3):将文章号与该段落号及用户队列对应;
步骤(5):判断存储结构中是否有用户点击的相关段落编号,若有则转步骤(7),没有则转步骤(6);
步骤(6):没有此段落号代表该段落还没有被编辑过,则需要创建用户队列,将用户编号插入用户队列,并将段落号和该段用户队列对应,具体步骤如下:步骤(6-1):创建用户队列,并将用户编号插入;
步骤(6-2):将段落号和该段用户队列对应;
步骤(7):往对应用户队列插入用户编号。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖北工业大学,未经湖北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811000802.7/1.html,转载请声明来源钻瓜专利网。