CN115002135B - 多端协同方法、装置、系统及计算机可读存储介质 - Google Patents
多端协同方法、装置、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN115002135B CN115002135B CN202210587580.3A CN202210587580A CN115002135B CN 115002135 B CN115002135 B CN 115002135B CN 202210587580 A CN202210587580 A CN 202210587580A CN 115002135 B CN115002135 B CN 115002135B
- Authority
- CN
- China
- Prior art keywords
- data
- terminal
- cooperative
- terminals
- similarity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000004044 response Effects 0.000 claims abstract description 60
- 230000001360 synchronised effect Effects 0.000 claims abstract description 8
- 238000004590 computer program Methods 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 abstract description 5
- 230000008569 process Effects 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000002699 waste material Substances 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
- G06F16/986—Document structures and storage, e.g. HTML extensions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1423—Digital output to display device ; Cooperation and interconnection of the display device with other functional units controlling a plurality of local displays, e.g. CRT and flat panel display
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请属于通信领域,提出了一种多端协同方法、装置、系统及计算机可读存储介质。该方法包括:检测协同的任一终端在发送协同数据后的预定时长内是否接收到应答数据;当任一终端在发送所述协同数据后的预定时长内未接收到应答数据,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本;确定协同的多个终端的所述DOM结构的描述文本的相似度;当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作。从而能够有效的避免已被接收到协同的数据但应答数据未被有效接收时需要重复发送数据的问题,有利于提高网络资源的利用率。
Description
技术领域
本申请属于通信领域,尤其涉及多端协同方法、装置、系统及计算机可读存储介质。
背景技术
多端协同也可称为多屏协同,是一种分布式技术,可以实现多个终端的资源共享,多个终端协同操作。在实现多端协同时,需要维护多个终端的画面内容一致。当某一终端因为网络问题无法获取到最新画面内容时,会影响该终端与其它终端的画面内容的一致性,需要及时进行画面一致性的调整。
目前在进行数据同步操作时,通常会根据丢包率来判断网络状况是否正常。但是,数据传输过程包括第一端发送数据、第二端接收数据、第二端发送接收应答和第一端接收到接收应答等环节。通过丢包率无法判断上述哪一个阶段出现了网络异常。若数据已经被接收方接收,此时发送方与接收方的画面能够同步一致。如果接收方发出的应答数据包丢失,导致发送方不知道接收方已经完整接收数据,发送方认为数据丢失而未能画面同步,会再次发送同样的数据,容易造成了网络资源的浪费。
发明内容
有鉴于此,本申请实施例提供了一种多端协同方法、装置、系统及计算机可读存储介质,以解决现有技术中在接收方发送的应答数据丢失时,为了实现可靠的协同,会再次发送同样的数据,容易造成网络资源的浪费的问题。
本申请实施例的第一方面提供了一种多端协同方法,所述方法包括:
检测协同的任一终端在发送协同数据后的预定时长内是否接收到应答数据;
当任一终端在发送所述协同数据后的预定时长内未接收到应答数据,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本;
确定协同的多个终端的所述DOM结构的描述文本的相似度;
当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作。
结合第一方面,在第一方面的第一种可能实现方式中,在触发对协同的多个终端进行全量数据的同步操作之前,所述方法还包括:
检测所述全量数据的同步操作的触发频率;
当所述触发频率大于预定的频率阈值时,则终止协同和/或生成网络欠佳的提示信息。
结合第一方面,在第一方面的第二种可能实现方式中,触发对协同的多个终端进行全量数据的同步操作,包括:
当任一终端接收到全量数据时,获取所接收到的全量数据中的每条数据的数据标识;
将接收到的所述全量数据中的第一数据标识,与未接收到应答数据的协同数据的第二数据标识进行比较,根据比较结果确定所述全量数据的处理。
结合第一方面的第二种可能实现方式,在第一方面的第三种可能实现方式中,所述全量数据的标识根据时间的先后依次增加,根据所述比较结果确定所述全量数据的处理,包括:
当所述全量数据的第一数据标识小于所述第二数据标识时,删除所述第一数据标识对应的协同数据;
当所述全量数据的第一数据标识大于或等于所述第二数据标识时,留存所述第一数据标识的协同数据。
结合第一方面,在第一方面的第四种可能实现方式中,检测协同的任一终端在发送协同数据后的预定时长内是否接收到应答数据,包括:
检测任一终端发送协同数据后是否超过预设的第一时长;
如果发送所述协同数据后超过所述第一时长,则在所述第一时长结束后预定的第二时长内,检测是否接收到所述协同数据的应答数据。
结合第一方面,在第一方面的第五种可能实现方式中,在当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作之前,所述方法还包括:
获取当前协同的数据的大小;
根据当前协同的数据的大小,确定所述相似度阈值。
结合第一方面的第五种可能实现方式,在第一方面的第六种可能实现方式中,根据当前协同的数据的大小,确定所述相似度阈值,包括:
确定当前协同的数据在DOM结构中对应的描述文本;
根据当前协同的数据在DOM结构中对应的描述文本,相对于协同页面的DOM结构的描述文本的比例值,确定所述相似度阈值。
本申请实施例的第二方面提供了一种多端协同装置,所述装置包括:
应答检测单元,用于检测协同的任一终端在发送协同数据后的预定时长内是否接收到应答数据;
描述文本获取单元,用于当任一终端在发送所述协同数据后的预定时长内未接收到应答数据,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本;
相似度确定单元,用于确定协同的多个终端的所述DOM结构的描述文本的相似度;
同步单元,用于当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作。
本申请实施例的第三方面提供了多端协同系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项所述方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:本申请通过应答数据的接收状态,当所述接收状态为预定时长内未接收到应答数据时,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本,基于多个终端的所述描述文本的相似度来确定数据是否需要启动全量同步。当所述DOM结构的描述文本的相似度小于预先确定的相似度阈值,则触发对协同的终端进行全量数据的同步操作,从而能够有效的避免已被接收到协同的数据但应答数据未被有效接收时需要重复发送数据的问题,有利于提高网络资源的利用率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种多端协同的实施场景示意图;
图2是本申请实施例提供的一种多端协同方法的实现流程示意图;
图3是本申请实施例提供的一种应答数据监测方法的实现流程示意图;
图4是本申请实施例提供的一种DOM结构示意图;
图5是本申请实施例提供的一种多端协同装置的示意图;
图6是本申请实施例提供的多端协同系统的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
图1为本申请实施例所述的多端协同方法的实现场景示意图。如图1所示,的多端协同场景示意图中,协同系统中,实现协同的终端包括第一终端、第二终端和第三终端。实际的协同场景中对于协同的终端的数量不作限定。比如,协同的终端也可以为两个终端,或者三个以上的终端。所述第一终端、第二终端和第三终端的具体形式不限,可以为智能手机、平板电脑、笔记本电脑、台式电脑等。在协同过程中,第一终端、第二终端和第三终端均可以对当前协同的页面内容进行操作处理。当任一终端,比如第一终端接收到用户的协同操作时,第一终端将该协同操作的协同数据,包括操作指令和操作数据同步至协同系统的第二终端和第三终端。第二终端和第三终端在接收协同数据后,执行协同数据中的操作指令,加载协同数据中的操作数据。
在网络状态良好的情况下,多个协同终端的协同数据能够可靠的传送至其它终端,各个终端所呈现的画面基本一致。当网络出现异常时,可能会导致协同过程中丢失部分协同数据。当协同过程中丢失部分数据时,可能会包括不同的终端所呈现的画面不一致。比如,第二终端接收到的协同数据由于缺少所丢失的协同数据,从而导致第二终端在该协同数据之后的协同操作的基础不同,从而不能实现准确有效的多端协同。
另外,在协同过程中,为了保证数据传输的可靠性,会设置自动重传机制。即在网络出现异常时,如果第一终端向第二终端发送协同数据,第二终端在成功接收到协同数据后,会向第一终端发送应答数据。第一终端接收到应答数据后,第一终端认第二终端已成功接收到该协同数据。如果第一终端未接收到第二终端的应答数据,可能是协同数据未被第二终端接收,此时,第二终端不会向第一终端发送应答数据。也有可能是第二终端成功接收到协同数据,但第二终端向第一终端发送应答数据时,第一终端未能成功接收到该应答数据。在这种情况下,第一终端会重复发送已被第二终端成功接收的协同数据,导致网络资源的浪费。
为了解决上述问题,本申请实施例提出了一种多端协同方法,如图2所示,该方法包括:
在S201中,检测协同的任一终端在发送协同数据后的预定时长内是否接收到应答数据。
在本申请实施例中,由于协同的终端均可以发送协同数据,因此,可以对协同的多个终端均进行应答数据接收状态的检测,即每个终端在发送协同数据后,检测该终端在预定时长内是否接收到对端发送的应答数据,确保对端已可靠的接收到所发送的协同数据。
在本申请实施例中,所述预定时长可以为发送协同数据开始计时的预定时长,也可以为发送协同数据后的第一时长后开始计算的预定时长。比如,检测应答数据的实现流程可以如图3所示,包括:
在S301中,判断协同数据发送后是否超过预设的第一时长。
其中,第一时长包括协同终端发送协同数据开始,到对端接收到协同数据结束的时长。可以根据协同数据的一般传输速度确定所述第一时长。
如果协同数据发送未超过第一时长,则判断下一条协同数据。
如果协同数据发送后未超过第一时长,则表示协同数据可能还没有被协同的对端所接收,可以暂时不进行应答数据的检测。从而减少应答数据检测资源的消耗。
在S302中,如果协同数据发送超过第一时长,则在所述第一时长结束后预设的第二时长内,检测是否接收到所述协同数据的应答数据。
如果协同数据发送后的时长超过一第时长,则表示正常通信状态下,发送了协同数据的第一终端可以接收到对端,即第二终端发送的应答数据。可以设定应答数据检测的第二时长。该第二时长表示网络状态可能有可接受的延迟范围内能接收到应答数据的时长。
如果在所述第二时长内能够接收到所述应答数据,则返回S301,继续检测下一条协同数据的发送状态。
如果未接收到所述应答数据,则执行S303,标记协同数据可能丢失,启动数据丢失校验。
其中,协同数据可能丢失,包括两种情况。第一种情况,即第二终端未接收到协同数据。第二种情况,第二终端接收到协同数据且发送了应答数据,但由于网络故障,第一终端未接收到第二终端所发送的应答数据。
为了明确第二终端是否已成功接收到所述协同数据,可以启动数据丢失校验,即S202和S203的校验步骤。
在S202中,当任一终端在发送所述协同数据后的预定时长内未接收到应答数据,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本。
其中,所述DOM结构的描述文本,是用于描述所述DOM结构的文本。用于描述所述DOM结构中包括的内容。
在协同数据发送后,第一终端如果未在预定时长内接收到应答数据,则触发协同数据一致性校验。本申请可通过DOM结构的描述文本对所述协同数据进行一致性校验。
其中,可基于协同页面的脚本内容,提取所述协同页面所对应的DOM结构的描述文本。比如图4所示的一种协同页面所对应的DOM结构的示意图中,包括文档、根元素、元素、属性、文本等内容。可基于从上到下、从左到右的顺序,依次记录DOM结构中的内容,生成描述文本。
或者,在可能的实现方式中,也可以按照DOM结构中的节点的类型,生成包括不同类型的描述文本。比如,图4所示的DOM结构中,生成包括文档类型、根元素类型、元素类型、属性类型和文本类型的描述文本。
为了确定DOM结构的一致性,可以截取同一时刻,在不同的终端的协同页面的DOM结构。
在S203中,确定协同的多个终端的所述DOM结构的描述文本的相似度。
在对各个终端的一致性校验时,可基于所述协同页面的DOM结构的描述文本的相似度。
在进行相似度的比较时,可以比较描述文本的内容的相似度。考虑到相同的协同页面,可能DOM结构中的元素或文本的顺序会有所不同,因此,可以根据不同元素的内容的相似度,减少由于DOM结构中的元素等节点的顺序对相似度的影响。
比如,对于图4所示的DOM结构,可以比较描述文本中的元素类型、文本类型、属性类型等类型所包括的描述文本的相似度。
在S204中,当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作。
考虑到协同终端在协同过程中,会有数据传输的延迟。比如,第一终端发送协同数据至第二终端时,如果第二终端还未成功接收到所述协同数据,则第一终端和第二终端中的协同页面的内容可能会存在差异。因此,为了保证校验的准确度,可以根据当前发送的协同数据,设定相似度阈值。如果发送的协同数据越多,相似度阈值可以相应的设置为越低的数值。比如,可以根据当前正在协同的数据对应的描述文本,相对于整个DOM树的描述文本的比值,作为该相似度阈值。
通过两个终端的DOM结构的描述文本的相似度,可以确定两个终端的协同页面的相似度。在多端协同场景中,协同的终端包括三个或三个以上时,可以根据各个终端正在协同的数据在DOM结构中的描述文本相对于协同页面的DOM结构的描述文本的比例值,确定每个终端的比例阈值。将校验两个终端的一致性时,可以选择两个终端的比例值中最高的比例值,作为两个终端的相似度阈值。根据该相似度阈值,对两个终端的协同页面的一致性进行校验。
当多个终端中的任意两个终端的DOM结构的描述文本的相似度,小于两个终端的相似度阈值时,则可以在这两个终端进行全量数据的协同,或者也可以使全部终端启动全量数据的协同。
其中,全量数据包括协同过程中发送的协同数据,以及接收到的其它终端的协同数据。各个终端可以对自己所发送的协同数据进行编号,比如可以从小到大依次进行编号,每个终端发送的协同数据均有自己的编号。比如,第一终端发送的协同数据可以包括A001、A002、A003等。第二终端发送的协同数据可以包括B001、B002、B003等。
所述全量数据,可以是每个终端将所发送的全部协同数据,或者自上一次全量数据协同完成后所发送的全部协同数据。将每个终端所发送的协同数据取并集,即可得到所有终端的全量数据。
任一终端发送协同数据时,均会将所发送的协同数据存入缓存中。当触发全量数据的更新时,则将所缓存的协同数据发送至协同对端。任一终端在发送协同数据的同时,还发送当前检测到未检测到应答数据的协同数据的第二数据标识。即步骤S202中未接收到应答数据的协同数据的数据标识。
当第一终端发送的全量数据时,还发送当前未收到应答数据的协同数据的第一数据标识。第二终端在接收到全量数据和第二数据标识时,可将所接收到的第一终端所发送的全量数据的第二数据标识与所接收到的第一终端发送的第一数据标识进行比较。如果第一数据标识小于第二数据标识,则表示该数据为旧数据,可以不做留存处理,比如删除该第一数据标识对应的协同数据。如果第一数据标识大于或等于第二数据标识,则可以留存数据待用。
另外,在本申请实施例中,还可能监测协同终端触发全量同步的频率。当全量同步的频率升高时,则说明当前协同系统中的网络质量下降。如果系统不断的触发全量数据的同步,则说明当前系统的网络无法实现可靠的同步,可以生成网络异常的提醒,和/或终止协同。
本申请实施例通过应答数据的接收状态,当所述接收状态为预定时长内未接收到应答数据时,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本,基于多个终端的所述描述文本的相似度来确定数据是否需要启动全量同步。当所述DOM结构的描述文本的相似度小于预先确定的相似度阈值,则触发对协同的终端进行全量数据的同步操作,从而能够有效的避免已接收到协同的数据但应答数据未被有效接收时需要重复发送数据的问题,有利于提高网络资源的利用率。
另外,本申请进一步基于应答数据触发全量数据的同步,使得全量数据同步后的终端的协同数据一致,能够有效的避免因协同数据不同而导致协同画面不一致的缺陷,有利于提升多端协同的一致性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图5为本申请实施例提供的一种多端协同装置的示意图,如图5所示,该装置包括:
应答检测单元501,用于检测协同的任一终端在发送协同数据后的预定时长内是否接收到应答数据;
描述文本获取单元502,用于当任一终端在发送所述协同数据后的预定时长内未接收到应答数据,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本;
相似度确定单元503,用于确定协同的多个终端的所述DOM结构的描述文本的相似度;
同步单元504,用于当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作。
图5所示的多端协同装置与图2所示的多端协同方法对应。
图6是本申请一实施例提供的多端协同系统的示意图。如图6所示,该实施例的多端协同系统6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62,例如多端协同程序。所述处理器60执行所述计算机程序62时实现上述各个多端协同方法实施例中的步骤。或者,所述处理器60执行所述计算机程序62时实现上述各装置实施例中各模块/单元的功能。
示例性的,所述计算机程序62可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器61中,并由所述处理器60执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述多端协同系统6中的执行过程。
所述多端协同系统可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图6仅仅是多端协同系统6的示例,并不构成对多端协同系统6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述多端协同系统还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述多端协同系统6的内部存储单元,例如多端协同系统6的硬盘或内存。所述存储器61也可以是所述多端协同系统6的外部存储设备,例如所述多端协同系统6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述多端协同系统6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述多端协同系统所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (9)
1.一种多端协同方法,其特征在于,所述方法包括:
检测任一终端发送协同数据后是否超过预设的第一时长,如果发送所述协同数据后超过所述第一时长,则在所述第一时长结束后预定的第二时长内,检测是否接收到所述协同数据的应答数据,所述应答数据为第一终端向第二终端发送协同数据后,第二终端在成功接收到协同数据后向第一终端发送的应答数据;
当任一终端在发送所述协同数据后的预定时长内未接收到应答数据,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本;
确定协同的多个终端的所述DOM结构的描述文本的相似度;
当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作。
2.根据权利要求1所述的方法,其特征在于,在触发对协同的多个终端进行全量数据的同步操作之前,所述方法还包括:
检测所述全量数据的同步操作的触发频率;
当所述触发频率大于预定的频率阈值时,则终止协同和/或生成网络欠佳的提示信息。
3.根据权利要求1所述的方法,其特征在于,触发对协同的多个终端进行全量数据的同步操作,包括:
当任一终端接收到全量数据时,获取所接收到的全量数据中的每条数据的数据标识;
将接收到的所述全量数据中的第一数据标识,与未接收到应答数据的协同数据的第二数据标识进行比较,根据比较结果确定所述全量数据的处理。
4.根据权利要求3所述的方法,其特征在于,所述全量数据的标识根据时间的先后依次增加,根据所述比较结果确定所述全量数据的处理,包括:
当所述全量数据的第一数据标识小于所述第二数据标识时,删除所述第一数据标识对应的协同数据;
当所述全量数据的第一数据标识大于或等于所述第二数据标识时,留存所述第一数据标识的协同数据。
5.根据权利要求1所述的方法,其特征在于,在当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作之前,所述方法还包括:
获取当前协同的数据的大小;
根据当前协同的数据的大小,确定所述相似度阈值。
6.根据权利要求5所述的方法,其特征在于,根据当前协同的数据的大小,确定所述相似度阈值,包括:
确定当前协同的数据在DOM结构中对应的描述文本;
根据当前协同的数据在DOM结构中对应的描述文本,相对于协同页面的DOM结构的描述文本的比例值,确定所述相似度阈值。
7.一种多端协同装置,其特征在于,所述装置包括:
应答检测单元,用于检测任一终端发送协同数据后是否超过预设的第一时长,如果发送所述协同数据后超过所述第一时长,则在所述第一时长结束后预定的第二时长内,检测是否接收到所述协同数据的应答数据,所述应答数据为第一终端向第二终端发送协同数据后,第二终端在成功接收到协同数据后向第一终端发送的应答数据;
描述文本获取单元,用于当任一终端在发送所述协同数据后的预定时长内未接收到应答数据,则获取参与协同的多个终端关于协同页面的DOM结构的描述文本;
相似度确定单元,用于确定协同的多个终端的所述DOM结构的描述文本的相似度;
同步单元,用于当所述相似度小于预先确定的相似度阈值时,则触发对协同的终端进行全量数据的同步操作。
8.一种多端协同系统,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述方法的步骤。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210587580.3A CN115002135B (zh) | 2022-05-27 | 2022-05-27 | 多端协同方法、装置、系统及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210587580.3A CN115002135B (zh) | 2022-05-27 | 2022-05-27 | 多端协同方法、装置、系统及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115002135A CN115002135A (zh) | 2022-09-02 |
CN115002135B true CN115002135B (zh) | 2024-03-22 |
Family
ID=83028319
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210587580.3A Active CN115002135B (zh) | 2022-05-27 | 2022-05-27 | 多端协同方法、装置、系统及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115002135B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8395652B1 (en) * | 2006-06-28 | 2013-03-12 | Insors Integrated Communications | Data network collaboration systems having a shared file |
US8458283B1 (en) * | 2006-06-28 | 2013-06-04 | Insors Integrated Communications | Methods and program products for efficient communication of shared file modifications during a collaboration event |
US9413739B1 (en) * | 2014-06-25 | 2016-08-09 | Google Inc. | System and method for identification and consolidation of related concurrent document sessions |
CN108595652A (zh) * | 2018-04-27 | 2018-09-28 | 平安科技(深圳)有限公司 | 加载dom节点数据的方法、装置、计算机设备及存储介质 |
CN109657208A (zh) * | 2017-10-10 | 2019-04-19 | 株式会社理光 | 网页相似度计算方法、装置、设备、计算机可读存储介质 |
US11119985B1 (en) * | 2021-03-19 | 2021-09-14 | Atlassian Pty Ltd. | Apparatuses, methods, and computer program products for the programmatic documentation of extrinsic event based data objects in a collaborative documentation service |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7818679B2 (en) * | 2004-04-20 | 2010-10-19 | Microsoft Corporation | Method, system, and apparatus for enabling near real time collaboration on an electronic document through a plurality of computer systems |
US9298834B2 (en) * | 2009-05-26 | 2016-03-29 | Adobe Systems Incorporated | User presence data for web-based document collaboration |
US20110258538A1 (en) * | 2010-03-31 | 2011-10-20 | Heng Liu | Capturing DOM Modifications Mediated by Decoupled Change Mechanism |
US11308037B2 (en) * | 2012-10-30 | 2022-04-19 | Google Llc | Automatic collaboration |
US9785637B2 (en) * | 2014-03-18 | 2017-10-10 | Google Inc. | System and method for computing, applying, and displaying document deltas |
-
2022
- 2022-05-27 CN CN202210587580.3A patent/CN115002135B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8395652B1 (en) * | 2006-06-28 | 2013-03-12 | Insors Integrated Communications | Data network collaboration systems having a shared file |
US8458283B1 (en) * | 2006-06-28 | 2013-06-04 | Insors Integrated Communications | Methods and program products for efficient communication of shared file modifications during a collaboration event |
US9413739B1 (en) * | 2014-06-25 | 2016-08-09 | Google Inc. | System and method for identification and consolidation of related concurrent document sessions |
CN109657208A (zh) * | 2017-10-10 | 2019-04-19 | 株式会社理光 | 网页相似度计算方法、装置、设备、计算机可读存储介质 |
CN108595652A (zh) * | 2018-04-27 | 2018-09-28 | 平安科技(深圳)有限公司 | 加载dom节点数据的方法、装置、计算机设备及存储介质 |
US11119985B1 (en) * | 2021-03-19 | 2021-09-14 | Atlassian Pty Ltd. | Apparatuses, methods, and computer program products for the programmatic documentation of extrinsic event based data objects in a collaborative documentation service |
Non-Patent Citations (2)
Title |
---|
文档协同处理系统的设计与实现;高瑜蔚;侯霞;;北京信息科技大学学报(自然科学版)(第01期);全文 * |
高瑜蔚 ; 侯霞 ; .文档协同处理系统的设计与实现.北京信息科技大学学报(自然科学版).2013,(第01期),全文. * |
Also Published As
Publication number | Publication date |
---|---|
CN115002135A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11830001B2 (en) | Blockchain consensus method, accounting node and node | |
CN115004673B (zh) | 消息推送方法、装置、电子设备及计算机可读介质 | |
CN111400777B (zh) | 一种网络存储系统、用户认证方法、装置及设备 | |
CN110113381A (zh) | 一种区块链中订阅主题的方法及装置 | |
CN110019873B (zh) | 人脸数据处理方法、装置及设备 | |
US11341842B2 (en) | Metering data management system and computer readable recording medium | |
CN104660635A (zh) | 消息同步方法、装置及系统 | |
CN103220352A (zh) | 终端、服务器、文件存储系统和文件存储方法 | |
EP4030314A1 (en) | Blockchain-based data processing method, apparatus and device, and readable storage medium | |
CN114675983A (zh) | 业务数据处理方法、装置、存储介质以及电子设备 | |
CN114328132A (zh) | 外部数据源的状态监控方法、装置、设备和介质 | |
CN109788251B (zh) | 视频处理方法、装置及存储介质 | |
CN114416883A (zh) | 区块链轻节点数据同步方法、装置、设备及可读存储介质 | |
CN108038127B (zh) | 一种数据同步的方法、装置、终端设备及存储介质 | |
CN115002135B (zh) | 多端协同方法、装置、系统及计算机可读存储介质 | |
CN115633044B (zh) | 报文的处理方法、装置、电子设备及存储介质 | |
CN110990360A (zh) | 基于网络存储设备的文件同步方法及相关组件 | |
CN113221042B (zh) | 网页操作过程记录方法、装置、电子设备及计算机可读介质 | |
CN107800754B (zh) | 数据传输任务处理、数据传输任务监控方法和装置 | |
CN113760519B (zh) | 分布式事务处理方法、装置、系统和电子设备 | |
CN116263926A (zh) | 基于区块链的对账方法、装置和系统 | |
CN111552907A (zh) | 消息处理方法、装置、设备和存储介质 | |
CN113168357A (zh) | 从参与文档协作会话的各用户收集重复诊断数据 | |
CN111371900B (zh) | 一种监测同步链路健康状态的方法及系统 | |
CN111327511A (zh) | 即时通讯方法、系统、终端设备与存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |