CN111428453B - Processing method, device and system in annotation synchronization process - Google Patents

Processing method, device and system in annotation synchronization process Download PDF

Info

Publication number
CN111428453B
CN111428453B CN201911417894.3A CN201911417894A CN111428453B CN 111428453 B CN111428453 B CN 111428453B CN 201911417894 A CN201911417894 A CN 201911417894A CN 111428453 B CN111428453 B CN 111428453B
Authority
CN
China
Prior art keywords
annotation
processing instruction
client
processing
reference data
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
Application number
CN201911417894.3A
Other languages
Chinese (zh)
Other versions
CN111428453A (en
Inventor
于磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Hikvision Digital Technology Co Ltd
Original Assignee
Hangzhou Hikvision Digital Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Hikvision Digital Technology Co Ltd filed Critical Hangzhou Hikvision Digital Technology Co Ltd
Priority to CN201911417894.3A priority Critical patent/CN111428453B/en
Publication of CN111428453A publication Critical patent/CN111428453A/en
Application granted granted Critical
Publication of CN111428453B publication Critical patent/CN111428453B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems

Abstract

The embodiment of the invention provides a processing method, a device and a system in an annotation synchronization process, comprising the following steps: the method comprises the steps of obtaining a processing instruction of a first client side aiming at a first annotation, and sending an instruction indicating that processing of the first client side aiming at the first annotation is invalid to the first client side under the condition that at least one piece of annotation cannot be matched with annotation synchronous reference data in the first annotation, wherein the annotation synchronous reference data is updated according to the valid processing instruction, and when the at least one piece of annotation cannot be matched with the annotation synchronous reference data in the first annotation, sending the instruction indicating that the processing of the client side aiming at the first annotation is invalid to the client side, so that the processing basis of the client side when the processing instruction aiming at the at least one piece of annotation in the first annotation is received and local processing conflicts can be given, and the number of errors generated when the client side processes the annotation according to the received processing instruction is reduced.

Description

Processing method, device and system in annotation synchronization process
Technical Field
The present invention relates to the field of sharing technologies, and in particular, to a processing method, apparatus, and system in an annotation synchronization process.
Background
With the development of internet technology, video call technology is mature, in video conference, simple video pictures cannot meet the increasingly complex demands of users, and in order to better express ideas of video parties in the video conference process, annotation sharing technology is generated.
The video interfaces of the two video parties show a sharing area, and in the sharing area, the two video parties can use tools such as drawing to perform processing such as annotation adding, annotation deleting, annotation moving and the like on the sharing area, wherein the annotations can be line segments, patterns and the like.
For example, when the user a adds an annotation in the shared area, an annotation identical to the annotation added by the user a is also generated in the shared area of the user B, and similarly, when the user B erases the annotation in the shared area, the corresponding annotation in the shared area of the user a is also erased.
In the prior art, in order to implement the annotation sharing technology, when one end of a video conference operates an annotation in a sharing area, a client can send an operation instruction corresponding to the operation to the client at the other end, and when the client at the other end receives the operation instruction, the client processes the annotation in the displayed sharing area according to the operation instruction, so that the content displayed in the sharing area by the clients at both sides of the video is consistent.
The inventors have found that in the process of implementing the present invention, at least the following problems exist in the prior art:
when the client C locally erases or moves a comment, if the client D also locally erases or moves the comment, the client C receives a processing instruction for erasing or moving the comment by the client D, and after the client C performs local processing on the comment, the client C needs to continue to perform processing according to the received processing instruction, however, because the comment has been erased or changed in the current client C, the current client C makes an error when processing the comment according to the received processing instruction.
Disclosure of Invention
The embodiment of the invention aims to provide a processing method in the annotation synchronization process, so that the number of errors generated when a client processes annotations according to received processing is reduced in the process of realizing annotation synchronization. The specific technical scheme is as follows:
in a first aspect, an embodiment of the present invention provides a processing method in an annotation synchronization process, including:
acquiring a processing instruction of a first client for a first annotation;
and sending an instruction indicating that the first client side is invalid for processing the first annotation to the first client side under the condition that at least one annotation in the first annotation cannot be matched with the annotation synchronous reference data, wherein the annotation synchronous reference data is updated according to the obtained valid processing instruction.
In a second aspect, an embodiment of the present invention provides a processing method in an annotation synchronization process, including:
performing local processing on the first annotation;
sending the processing instruction aiming at the first annotation;
acquiring an instruction indicating that the processing aiming at the first annotation is invalid, wherein the instruction indicates that at least one annotation in the first annotation cannot be matched with annotation synchronous reference data, and the annotation synchronous reference data is updated according to an effective processing instruction;
and restoring the first annotation.
In a third aspect, an embodiment of the present invention further provides a processing device in an annotation synchronization process, where the device includes:
the first instruction acquisition module is used for acquiring a processing instruction of the first client aiming at the first annotation;
the first instruction sending module is used for sending an instruction indicating that the first client side is invalid for processing the first annotation to the first client side under the condition that at least one annotation cannot be matched with the annotation synchronous reference data in the first annotation, wherein the annotation synchronous reference data is updated according to the obtained valid processing instruction.
In a fourth aspect, an embodiment of the present invention further provides a processing device in an annotation synchronization process, where the device includes:
The processing execution module is used for executing local processing on the first annotation;
the second instruction sending module is used for sending the processing instruction aiming at the first annotation;
the second instruction acquisition module is used for acquiring an instruction indicating that the processing aiming at the first annotation is invalid processing, wherein the instruction indicates that at least one annotation in the first annotation cannot be matched with annotation synchronous reference data, and the annotation synchronous reference data is updated according to the valid processing instruction;
and the annotation reduction module is used for reducing the first annotation.
The embodiment of the invention also provides a processing system in the annotation synchronization process, which comprises a first client and processing equipment, wherein:
in a fifth aspect, the first client is configured to perform local processing on a first annotation, and send the processing instruction for the first annotation to the processing device;
the processing device is configured to obtain a processing instruction of the first client for a first annotation, and send, to the first client, an instruction indicating that processing of the first client for the first annotation is invalid, where at least one annotation cannot be matched with annotation synchronization reference data in the first annotation, where the annotation synchronization reference data is updated according to the obtained valid processing instruction;
The first client is further configured to obtain an instruction sent by a processing device to indicate that the process for the first annotation is an invalidation process, and restore the first annotation.
The embodiment of the invention also provides electronic equipment, which comprises a processor, a communication interface, a memory and a communication bus, wherein the processor and the communication interface, and the memory are communicated with each other through the communication bus;
a memory for storing a computer program;
and the processor is used for realizing the steps of the processing method in any annotation synchronization process when executing the program stored in the memory.
The present invention also provides a computer readable storage medium having a computer program stored therein, which when executed by a processor, implements the steps of the processing method in any of the annotation synchronization processes described above.
The embodiment of the invention also provides a computer program product containing instructions, which when run on a computer, cause the computer to execute the processing method in any of the annotation synchronization processes.
According to the processing method, the device and the system in the annotation synchronization process, in the scheme, the processing instruction of the first client side for the first annotation is obtained, and under the condition that at least one piece of annotation cannot be matched with the annotation synchronization reference data in the first annotation, an instruction indicating that the processing of the first client side for the first annotation is invalid processing is sent to the first client side, the annotation synchronization reference data is data updated according to the obtained valid processing instruction, and because the annotation synchronization reference data is updated according to the valid processing instruction, when at least one piece of annotation cannot be matched with the annotation synchronization reference data in the first annotation, the first client side indicates that at least one piece of annotation is effectively processed in other equipment except the first client side before the processing instruction sent by the first client side is obtained, the first client side also receives the valid processing instruction of at least one piece of annotation in other equipment, and when the first annotation is sent to the first client side, the instruction is sent to the first client side, the first annotation is sent to the first client side, and the first annotation is sent to the first client side.
Of course, it is not necessary for any one product or method of practicing the invention to achieve all of the advantages set forth above at the same time.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below.
FIG. 1a is a schematic diagram of a processing system in an annotation synchronization process according to one embodiment of the invention;
FIG. 1b is a schematic diagram of a processing system in another annotation synchronization process according to one embodiment of the invention;
FIG. 1c is a schematic diagram of a processing system in a further annotation synchronization process according to one embodiment of the invention;
FIG. 2a is an interaction diagram of a processing system in an annotation synchronization process according to one embodiment of the invention;
FIG. 2b is an interaction diagram of a processing system during another annotation synchronization provided by one embodiment of the invention;
FIG. 3a is an interaction diagram of a processing system for annotation A in an annotation synchronization process according to an embodiment of the present invention;
FIG. 3b is an interaction diagram of a processing system for annotation A in another annotation synchronization process according to one embodiment of the invention;
FIG. 4a is an interaction diagram of a processing system for annotation B in an annotation synchronization process according to an embodiment of the present invention;
FIG. 4B is an interaction diagram of a processing system for annotation B in another annotation synchronization process according to one embodiment of the invention;
FIG. 5a is an interaction diagram of a processing system in a further annotation synchronization process according to one embodiment of the invention;
FIG. 5b is an interaction diagram of a processing system during a fourth annotation synchronization according to one embodiment of the invention;
FIG. 6 is a flowchart of a processing method in an annotation synchronization process according to an embodiment of the present invention;
FIG. 7 is a flowchart of a processing method in another annotation synchronization process according to one embodiment of the invention;
FIG. 8 is a method for updating annotation synchronization reference data according to an embodiment of the present invention;
FIG. 9 is a diagram showing another method for updating annotation synchronization reference data according to an embodiment of the present invention;
FIG. 10 is a diagram illustrating another method for updating annotation synchronization reference data according to an embodiment of the present invention;
FIG. 11 is a diagram illustrating a fourth method for updating annotation synchronization reference data according to an embodiment of the present invention;
FIG. 12 is a schematic diagram of a processing device in an annotation synchronization process according to an embodiment of the present invention;
FIG. 13 is a schematic diagram illustrating a processing device in another annotation synchronization process according to an embodiment of the invention;
Fig. 14 is a schematic structural diagram of an electronic device according to an embodiment of the present application.
Detailed Description
In order to provide an implementation scheme for reducing the number of errors generated when a client processes an annotation according to a received processing instruction in the annotation synchronization process, the embodiment of the application provides a processing method, a device and a system in the annotation synchronization process, and the embodiment of the application is described below with reference to the accompanying drawings of the specification. And embodiments of the application and features of the embodiments may be combined with each other without conflict.
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application.
For clarity of explanation of embodiments of the present application, first, embodiments of the present application will be described in its entirety.
As shown in fig. 1a, a schematic diagram of a processing system in an annotation synchronization process according to an embodiment of the present application includes a processing device 101 and a first client 102, where the processing device 101 includes annotation synchronization reference data, and the annotation synchronization reference data may be updated according to an effective processing instruction obtained by the processing device 101.
In one embodiment, as shown in fig. 1b, the processing device 101 may be a reference client 1011, where the first client 102 is only endorsed synchronously with the reference client 1011, and the first client 102 and the reference client 1011 each have a shared area, and the shared area contains the endorsement.
In one embodiment, as shown in fig. 1c, the processing device 101 may be a server 1012, where the processing system in the annotation synchronization process further includes a second client 103, where the second client 103 may be any one of multiple clients that perform annotation synchronization with the first client 101, and the first client 102 and the second client 103 exhibit a shared area, where the shared area includes annotations.
Based on the processing system in the annotation synchronization process shown in fig. 1b, in one embodiment, for the annotation adding operation, an interaction diagram of the processing system in the annotation synchronization process is shown in fig. 2a, which includes the following steps:
step 2a01: the first client executes a local adding operation and adds a new annotation.
Step 2a02: the first client sends an annotation adding instruction to the reference client.
Step 2a03: and the reference client updates the annotation synchronous reference data according to the annotation adding instruction and adds a new annotation which is the same as that in the first client.
Optionally, the first client 102 receives a local adding operation, adds a new annotation in the displayed shared area, and the first client 102 sends an annotation adding instruction to the reference client 1011, and the reference client 1011 updates the annotation synchronization reference data according to the annotation adding instruction and generates a new annotation in the displayed shared area, so that the shared area displayed by the first client 102 is consistent with the content of the shared area displayed by the reference client 1011.
Based on the processing system in the annotation synchronization process shown in fig. 1c, in one embodiment, for the annotation adding operation, an interaction diagram of the processing system in the annotation synchronization process is shown in fig. 2b, which includes the following steps:
step 2b01: the first client executes a local adding operation and adds a new annotation.
Step 2b02: the first client sends an annotation adding instruction to the server.
Step 2b03: and the server updates the annotation synchronization reference data according to the annotation adding instruction.
Step 2b04: and the server sends the annotation adding instruction to the second client.
Step 2b05: and the second client adds the new annotation which is the same as the first client according to the received annotation adding instruction.
Optionally, the first client 102 performs a local adding operation, a new annotation is added in the displayed shared area, the first client 102 sends a processing instruction of the annotation adding operation to the server 1012, the server 1012 updates the annotation synchronization reference data according to the processing instruction of the annotation adding operation, and forwards the processing instruction of the annotation adding operation to the second client 103, and after receiving the processing instruction of the annotation adding operation, the second client 103 generates a new annotation in the displayed shared area according to the processing instruction of the annotation adding operation, so that the content of the shared area displayed by the first client 102 is consistent with the content of the shared area displayed by the second client 103.
In one embodiment, the first client and the further client process different existing annotations, e.g. annotation deletion or annotation movement, e.g. the first client performs local processing for annotation a and the further client performs local processing for annotation B.
In one embodiment, as shown in fig. 3a, in the basis of the processing system in the annotation synchronization process shown in fig. 1b, an interaction diagram of the processing system in the annotation synchronization process for the annotation a in the annotation synchronization process provided by the embodiment of the invention includes the following steps:
step 3a01: and the first client executes local processing on the annotation A according to the processing instruction for executing the local processing on the annotation A.
Step 3a02: the first client sends processing instructions for annotation a to the reference client.
Step 3a03: and under the condition that the annotation data matched with each annotation in the annotation A exists in the annotation synchronization reference data, updating the annotation synchronization reference data according to the processing instruction of the first client for the annotation A, and executing the processing instruction of the first client for the annotation A on the annotation A.
Optionally, the first client 102 performs local processing on the annotation a, and sends a processing instruction for the annotation a to the reference client 1011, and the reference client 1011 receives the processing instruction for the annotation a, and in the case that there is annotation data matching each of the annotations in the annotation a in the annotation synchronization reference data, updates the annotation synchronization reference data according to the processing instruction for the annotation a by the first client 102, and performs the processing instruction for the annotation a by the first client 102.
In one embodiment, as shown in fig. 3b, in the basis of the processing system in the annotation synchronization process shown in fig. 1c, an interaction diagram of the processing system in the annotation synchronization process for the annotation a in the annotation synchronization process provided by the embodiment of the invention includes the following steps:
step 3b01: and the first client executes local processing on the annotation A according to the processing instruction for executing the local processing on the annotation A.
Step 3b02: the first client sends processing instructions for annotation a to the server.
Step 3b03: and when the annotation data matched with each annotation in the annotation A exists in the annotation synchronization reference data, the server updates the annotation synchronization reference data according to the processing instruction of the first client for the annotation A.
Step 3b04: the server sends an instruction to the first client indicating that the process for annotation a is a valid process.
Step 3b05: and the server sends a processing instruction of the first client side for the annotation A to the second client side.
Step 3b06: the second client executes the processing instruction of the first client for the annotation A on the annotation A.
Corresponding to fig. 3a, as shown in fig. 4a, an interaction diagram of a processing system for annotation B in an annotation synchronization process provided by an embodiment of the present invention includes the following steps:
Step 4a01: when there is annotation data matching each annotation in the annotation B in the annotation synchronization reference data, the reference client executes local processing on the annotation B according to a processing instruction for executing local processing on the annotation B, and updates the annotation synchronization reference data according to the processing instruction for the annotation B.
Step 4a02: the reference server sends a processing instruction for annotation B to the first client.
Step 4a03: the first client executes the processing instruction of the reference client for the annotation B on the annotation B.
Optionally, the reference client 1011 receives a processing instruction for performing local processing on the annotation B, performs local processing on the annotation B when there is annotation data matching each of the annotations B in the annotation synchronization reference data, and sends a processing instruction for the annotation B to the first client 102, and the first client 102 receives the processing instruction for the annotation B sent by the reference client 1011 and performs processing for the annotation B by the reference client 1011.
Corresponding to fig. 3B, as shown in fig. 4B, an interaction diagram of a processing system for annotation B in an annotation synchronization process provided by an embodiment of the present invention includes the following steps:
Step 4b01: and the second client executes local processing on the annotation B according to the processing instruction for executing the local processing on the annotation B.
Step 4b02: the second client sends processing instructions for annotation B to the server.
Step 4b03: and the server updates the annotation synchronization reference data according to the processing instruction of the second client for the annotation B under the condition that the annotation data matched with each annotation in the annotation B exists in the annotation synchronization reference data.
Step 4b04: the server sends an instruction to the second client indicating that the process for annotation B is a valid process.
Step 4b05: and the server sends a processing instruction of the second client side for the annotation B to the first client side.
Step 4b06: the first client executes the processing instruction of the second client for the annotation B on the annotation B.
Alternatively, the processing instruction for executing the local processing on the annotation a may be an erasure processing instruction, where after the first client executes the local processing on the annotation a, there are three cases:
first case: the erasing processing instruction only erases the middle part of the annotation A, and two ends of the annotation A are reserved, namely the erasing processing instruction erases the annotation A, and the annotation A1 and the annotation A2 are obtained.
At this time, the first client 102 sends deletion information of the annotation a, including the identification of the annotation a, and generation information of the annotation A1 and the annotation A2, including the identification and location information of the annotation A1 and the annotation A2, to the server 1012. The server 1012 deletes the data of the annotation a from the annotation synchronization reference data according to the received information, and adds the data of the annotation A1 and the annotation A2, and further, the server 1012 forwards the deletion information of the annotation a and the generation information of the annotation A1 and the annotation A2 to the second client 103, so that the second client 103 deletes the annotation a in the displayed sharing area, and generates the annotation A1 and the annotation A2.
Second case: the erasure processing instruction erases only one end of the annotation A, and the other end of the annotation A is reserved, namely the erasure processing instruction erases the annotation A and obtains the annotation A3.
At this time, the first client 102 transmits deletion information of the annotation a, which includes the identification of the annotation a, and generation information of the annotation A3, which includes the identification and location information of the annotation A1 and the annotation A2, to the server 1012. The server 1012 deletes the data of the annotation a from the annotation synchronization reference data according to the received information, and adds the data of the annotation A3, and further, the server 1012 forwards the deletion information of the annotation a and the generation information of the annotation A3 to the second client 103, so that the second client 103 deletes the annotation a in the displayed sharing area, and generates the annotation A3.
Third case: the erasure processing instruction erases the annotation A entirely, i.e. the erasure processing instruction deletes the annotation A.
At this time, the first client 102 transmits deletion information of the annotation a to the server 1012, wherein the deletion information includes an identification of the annotation a. The server 1012 deletes the data of the annotation a from the annotation synchronization reference data according to the received information, and further, the server 1012 forwards the deletion information of the annotation a to the second client 103, so that the second client 103 deletes the annotation a in the displayed sharing area.
Similarly, the processing situation after the second client performs the processing on the annotation B is similar to the processing situation after the first client performs the processing on the annotation a, which is not described herein again.
In one embodiment, the first client and the other client perform local processing on the same annotation at the same time, where the local processing on the same annotation at the same time may include local processing of erasing/moving the same annotation, or local processing of erasing/moving a piece of annotation by the other client, where after the processing instruction of erasing/moving the piece of annotation is not sent to the first client, the first client performs local processing of erasing/moving the piece of annotation.
In one embodiment, as shown in fig. 5a, in the basis of the processing system in the annotation synchronization process shown in fig. 1b, an interaction diagram of the processing system in the annotation synchronization process provided by the embodiment of the invention includes the following steps:
step 5a01: when the annotation data matched with each annotation in the second annotation exists in the annotation synchronization reference data, the reference client executes local processing on the second annotation according to the processing instruction of executing local processing on the second annotation, and updates the annotation synchronization reference data according to the processing instruction of the reference client on the second annotation.
Step 5a02: and the first client executes local processing on the first annotation according to the processing instruction for executing the local processing on the first annotation.
Step 5a03: the first client sends processing instructions for the first annotation to the reference client.
Step 5a04: the reference client determines that at least one annotation in the first annotation cannot be matched with the annotation synchronization reference data.
Step 5a05: the reference client sends an instruction to the first client indicating that the processing of the first client for the first annotation is an invalidation processing.
Optionally, before receiving the processing instruction for the first annotation sent by the first client 102, the reference client 1011 performs local processing for a second annotation, where the second annotation includes at least one annotation in the first annotation, and after receiving the processing instruction for the first annotation sent by the first client 102, the reference client 1011 determines that at least one annotation in the first annotation cannot match with the annotation synchronization reference data, sends an instruction to the first client 102 indicating that the processing of the first client 101 for the first annotation is invalid.
In one embodiment, as shown in fig. 5b, in the basis of the processing system in the annotation synchronization process shown in fig. 1c, an interaction diagram of the processing system in the annotation synchronization process according to another embodiment of the present invention includes the following steps:
Step 5b01: and the second client executes the local processing on the second annotation according to the processing instruction for executing the local processing on the second annotation.
Step 5b02: the second client sends processing instructions for the second annotation to the server.
Step 5b03: and the server updates the annotation synchronization reference data according to the processing instruction of the second client for the second annotation under the condition that the annotation data matched with each annotation in the second annotation exists in the annotation synchronization reference data.
Step 5b04: and the first client executes local processing on the first annotation according to the processing instruction for executing the local processing on the first annotation.
Step 5b05: the first client sends processing instructions for the first annotation to the server.
Step 5b06: the server determines that at least one annotation in the first annotation cannot be matched with the annotation synchronization reference data.
Step b507: the server sends an instruction to the first client indicating that the processing of the first client for the first annotation is invalid processing to the first client.
The first annotation and the second annotation are both annotations C, the local processing of the second client for the annotations C is an erasure processing instruction, and the annotations C1 and C2 are obtained, and the local processing of the first client for the annotations C is also an erasure processing instruction, and the annotations C3 are obtained. The second client 103 sends deletion information of the annotation C and generation information of the annotation C1 and the annotation C2 to the server 1012, wherein the deletion information of the annotation C includes an identifier of the annotation C, the generation information of the annotation C1 and the annotation C2 includes identifiers and position information of the annotation C1 and the annotation C2, the server 1012 deletes the annotation data same as the identifier of the annotation C in the annotation synchronization reference data according to the received information, and adds the data of the annotation C1 and the annotation C2, at this time, the server 1012 receives the deletion information of the first client 102 for the annotation C and the generation information of the annotation C3 again, the generation information of the annotation C3 includes the identifier and the position information of the annotation C3, at this time, the annotation data same as the identifier of the annotation C does not exist in the annotation synchronization reference data of the server 1012, the server 1012 determines that the erasure processing of the first client 102 for the annotation C is invalid, and the server 1012 sends an instruction indicating that the processing for the annotation C is invalid processing to the first client 102.
Optionally, the server 1012 may further send deletion information of the annotation C and generation information of the annotation C1 and the annotation C2 to the first client 102, where the first client 102 may store the received information in the cache before receiving no instruction indicating that the process for the annotation C is an invalidation process, and after receiving the instruction indicating that the process for the annotation C is an invalidation process, the first client 102 restores the annotation C, deletes the annotation C according to the deletion information of the annotation C and the generation information of the annotation C1 and the annotation C2 in the cache, and generates the annotation C1 and the annotation C2.
In one embodiment of the present invention, a processing method in an annotation synchronization process is provided, as shown in fig. 6, and the method includes the following steps:
s601: and acquiring a processing instruction of the first client for the first annotation.
S602: and sending an instruction indicating that the first client side is invalid for processing the first annotation to the first client side under the condition that at least one annotation in the first annotation cannot be matched with the annotation synchronous reference data, wherein the annotation synchronous reference data is updated according to the obtained valid processing instruction.
In the processing method in the annotation synchronization process shown in fig. 6, since the annotation synchronization reference data is updated according to the valid processing instruction, when at least one piece of annotation cannot be matched with the annotation synchronization reference data in the first annotation, it is indicated that before the processing instruction sent by the first client for the first annotation is acquired, at least one piece of annotation in the first annotation is effectively processed in other devices except the first client, the first client also receives the valid processing instruction of at least one piece of annotation in the other devices in the first annotation, and sends an instruction indicating that the processing of the client for the first annotation is invalid to the first client, so that the local processing of the client for the first annotation is informed of invalidation, and therefore the processing basis of the client when the processing instruction for the first annotation is received and conflicts with the local processing can be given, and the number of errors occurring when the client processes the received processing instruction for the first annotation according to the received processing instruction is reduced.
Accordingly, in one embodiment of the present invention, there is also provided a processing method in an annotation synchronization process, as shown in fig. 7, the method including the steps of:
s701: local processing is performed on the first annotation.
S702: and sending a processing instruction for the first annotation.
S703: and acquiring an instruction indicating that the processing aiming at the first annotation is invalid, wherein the instruction indicates that at least one annotation in the first annotation cannot be matched with annotation synchronous reference data, and the annotation synchronous reference data is updated according to the valid processing instruction.
S704: the first annotation is restored.
In the processing method in the annotation synchronization process shown in fig. 7, because the annotation synchronization reference data is updated according to the effective processing instruction, when at least one annotation cannot be matched with the annotation synchronization reference data in the first annotation, it is indicated that at least one annotation in the first annotation is effectively processed in other devices except the first client, and the obtained instruction indicating that the processing of the at least one annotation is invalid can be used as a processing basis when the processing instruction of the at least one annotation in the first annotation is received and the local processing conflicts, and based on the processing basis, the number of errors occurring when the client processes the annotation according to the received processing instruction is reduced.
The processing method in the annotation synchronization process shown in fig. 6 may be applied to a server, or may be applied to another client performing annotation synchronization with the first client, such as the reference client shown in fig. 1 b.
The processing method in the annotation synchronization process shown in fig. 7 described above may be applied to the first client.
In the embodiment of the present invention, the processing instruction for the first annotation may be generated by the first client after obtaining the local processing for the first annotation in the displayed shared area, where the first client may send the processing instruction for the first annotation to the processing device before completing the processing for the first annotation according to the local processing for the first annotation, or may send the processing instruction for the first annotation to the processing device after completing the processing for the first annotation according to the local processing for the first annotation according to the generated result after processing.
The first annotation may be only one annotation, or may be multiple annotations, and the case where the first annotation is multiple annotations may be the case when multiple annotations are processed simultaneously. The local process may be an erase process for annotation, a move process, etc., and optionally the erase process is an area erase process.
Alternatively, the area erasing process includes three types: intermediate erase, end point erase, and bulk erase.
Wherein, the liquid crystal display device comprises a liquid crystal display device,
the middle erasure is that the erasure process passes through the middle of a certain annotation, then the annotation is actually split into two sections, at the moment, the annotation is deleted, two new annotations are newly established according to the position information of each pixel point of the annotation, and a unique identifier is allocated to each newly established annotation;
the endpoint erasure is that the erasure process passes one of two ends of a certain annotation, then the annotation actually only remains a part, the annotation deleting process is executed, meanwhile, a new annotation process is newly established according to the position information of each pixel point of the annotation, and a unique identifier is allocated to the newly established annotation;
the whole erasing is that the whole annotation is actually erased by the whole piece in the removing process, and the original annotation deleting process is executed.
In one embodiment, the client may send processing instructions for the first annotation to the server after performing local processing on the first annotation.
Optionally, the processing instruction includes a move processing instruction or an erase processing instruction.
The endorsements in the shared area displayed by each client are stored in the form of an endorsement set, wherein the endorsement data of each endorsement in the endorsement set corresponds to one endorsement in the shared area, and the endorsement data of one endorsement can comprise a set of pixel points in the area covered by the endorsement, such as information including positions, pixel values and the like of the pixel points.
When the processing instruction is a movement processing instruction, the movement processing instruction at least includes an identification of the moved annotation, position information before movement, and position information after movement.
For example, when the annotation D identified as 10xx2 is moved, the position information before the movement of the annotation D is the position set 1, and the position information after the movement is the position set 2, the movement processing instruction for the annotation D may include the identification 10xx2, the position set 1, and the position set 2 of the annotation D.
The position set 1 may be the position coordinates of the pixel points in the coverage area before the movement of the annotation D, and the corresponding position set 2 may be the position coordinates of the pixel points in the coverage area after the movement of the annotation D.
Optionally, when the processing instruction is an erasure processing instruction, the erasure processing instruction at least includes an identification of the erased annotation.
Optionally, when the electronic whiteboard of the device sharing the annotation with the first client does not support moving the annotation, and only drawing and erasing the annotation are supported, the erasing processing instruction includes an identifier of the erased annotation.
Illustratively, when annotation D is erased in its entirety, the erase processing instructions for annotation D include the identification 10xx2.
For example, when one end of the annotation D is erased, a portion of the other end of the annotation D is reserved, as a new annotation D1, the identifier of the annotation D1 is 10xx3, the location information is a location set 3, and the erasing instruction for the annotation D may include the identifier 10xx2, the identifier 10xx3, and the location set 3.
When the annotation D is only erased in the middle of the annotation, two annotations D2 and D3 are obtained after erasing, wherein the identification of the annotation D2 is 10xx4, the position information is a position set 4, the identification of the annotation D3 is 10xx5, the position information is a position set 5, and the erasing processing instruction for the annotation D can comprise the identification 10xx2, the identification 10xx4 and the position set 4, and the identification 10xx5 and the position set 5.
Optionally, when the electronic whiteboard of the device sharing the annotation with the first client supports erasing and moving the annotation, the erasing processing instruction at least includes identification and location information of the erased annotation.
For example, when annotation D is erased in its entirety, the erase processing instructions for annotation D may include identification 10xx2 and location set 1.
Optionally, when the processing instruction is an erasure processing instruction, the erasure processing instruction may further include an identifier of the remaining annotation after erasure and location information of the remaining annotation after erasure.
For example, when one end of the annotation D is erased, a portion of the other end of the annotation D is reserved, as a new annotation D1, the identifier 10xx3 of the annotation D1, the location information is the location set 3, and the erasing instruction for the annotation D may include the identifier 10xx2 and the location set 1, and the identifier 10xx3 and the location set 3.
When the annotation D is only erased in the middle of the annotation, two annotations D2 and D3 are obtained after erasing, wherein the identification of the annotation D2 is 10xx4, the position information is a position set 4, the identification of the annotation D3 is 10xx5, the position information is a position set 5, and the erasing instruction for the annotation D may include the identification 10xx2 and the position set 1, the identification 10xx4 and the position set 4, and the identification 10xx5 and the position set 5.
In one embodiment, the server or the reference client sends a processing instruction for the first annotation when receiving the first client, and can determine whether there is annotation data matching each annotation in the first annotation in the annotation synchronization reference data.
The annotation synchronization reference data are reference data for displaying and processing annotations by each client for sharing the annotations, and the annotation synchronization reference data can be updated according to the obtained effective processing instructions.
In short, when the local processing is not received, each client adjusts the displayed annotation based on the annotation synchronization reference data so as to enable the displayed annotation to be matched with the annotation data in the annotation synchronization reference data, after the local processing for the annotation is received, whether the local processing for the annotation is effective or not needs to be determined based on the annotation synchronization reference data, when the local processing for the annotation is effective, a changed result is reserved, the annotation synchronization reference data is updated, and when the local processing for the annotation is ineffective, the annotation is restored.
Optionally, when the processing instruction is a mobile processing instruction, for any annotation corresponding to the acquired mobile processing instruction, matching the annotation with the annotation synchronization reference data includes: the annotation synchronization reference data has annotation data with the same annotation identifier as the annotation identifier and the same annotation position information as the position information before the annotation movement.
Optionally, when the processing instruction is an erasure processing instruction, for processing any annotation in the acquired processing instruction, the matching of the annotation with the annotation synchronization reference data includes: the annotation data with the same annotation identification as the annotation identification exists in the annotation synchronization reference data.
In one embodiment, when there is no annotation data in the annotation synchronization reference that matches each annotation in the first annotation, that is, when there is at least one annotation in the first annotation that cannot match the annotation synchronization reference, an instruction indicating that the process for the first annotation is an invalidation process is sent to the first client.
And the first client restores the first annotation after acquiring an instruction indicating that the processing for the first annotation is invalid.
The first client terminal erases the first annotation locally to generate a new annotation, and when the first client terminal receives an instruction indicating that the processing of the first annotation is invalid, the first client terminal deletes the newly generated annotation and restores the first annotation.
The annotation synchronization reference data can determine whether the processing instruction for the first annotation is invalid or not, and restore the first annotation after the invalidation, so that the number of errors generated when the client processes the annotation according to the received processing instruction can be reduced.
In one embodiment, when there is no annotation data matching each annotation in the first annotation, that is, when there is at least one annotation in the first annotation that cannot match the annotation synchronization reference data, it is indicated that there is at least one annotation in the first annotation that is changed by another client, and before the server or the reference client performs step S601, at least the method for updating the annotation synchronization reference data as shown in fig. 8 is further performed, including:
s801: and acquiring a processing instruction of the second client for the second annotation.
In this step, the processing instruction of the first client to perform local processing on the first batch may be the same as the processing type of the processing instruction of the second client to perform local processing on the second batch, for example, both are mobile processing instructions, or both are erasing processing instructions, or may be different, for example, the processing instruction of the first client to perform local processing on the first batch is mobile processing instructions, and the processing instruction of the second client to perform local processing on the second batch is erasing processing instructions.
Optionally, the second annotation comprises at least one annotation of the first annotations, and illustratively, the first annotation comprises an annotation a, an annotation B, and an annotation C, and the second annotation comprises an annotation a, an annotation D, and an annotation E.
S802: and updating the annotation synchronization reference data according to the processing instruction of the second client for the second annotation under the condition that the processing instruction of the second client for the second annotation is a valid processing instruction.
In this step, the server or the reference client (in this embodiment, the second client may be the reference client) may determine whether there is annotation data matching each annotation in the second annotation in the annotation synchronization reference data, and if so, determine that the processing instruction of the second client for the second annotation is an effective processing instruction, and at this time, update the annotation synchronization reference data according to the processing instruction of the second client for the second annotation.
Alternatively, the annotation synchronization reference data in the server or the reference client may be updated in real time, and each time a valid processing instruction is acquired, the annotation synchronization reference data may be updated based on the valid processing instruction.
Optionally, when the processing instruction is a mobile processing instruction, for each annotation in the second annotation, the annotation position information of the annotation data with the same annotation synchronization reference data and the annotation identifier is updated to the position information after the annotation is moved.
Optionally, when the processing instruction is an erasure processing instruction, deleting, for each annotation in the second annotations, annotation data identical to the annotation identifier in the annotation synchronization reference data.
Further, in the case that the erasure processing instruction further includes an identifier of the post-erasure remaining annotation and location information of the post-erasure remaining annotation, the server may further add annotation data, in which the annotation identifier is the identifier of the remaining annotation and the location information is the location information of the post-erasure remaining annotation, to the annotation synchronization reference data.
S803: and sending the processing instruction of the second client for the second annotation to the first client under the condition that the processing instruction of the second client for the second annotation is a valid processing instruction.
In this step, the sequence between steps S803 and S802 may be arbitrary, and may be executed simultaneously, or may be executed in tandem. In view of uncertainty in the network transmission process, there may be a case where S801 is performed before S601, S802 and S803 are performed after S601 and before S602, and the present application is not limited herein.
According to the method for updating the annotation synchronous reference data shown in fig. 8, the annotation synchronous reference data can be updated according to the effective processing instruction, so that the annotation synchronous reference data can be updated in real time, and further, the second client side and the first client side can keep consistent by sending the processing instruction of the second annotation to the first client side.
According to the method for updating the annotation synchronous reference data shown in fig. 8, which is provided by the embodiment of the invention, the annotation synchronous reference data can be synchronously updated according to the effective processing instruction, so that the accuracy and fairness of the annotation synchronous reference data are ensured, and the annotation of each client is further kept the same.
In one embodiment, when annotation data matching each of the first annotations exists in the annotation synchronization reference data, it is indicated that the first annotations are not modified by other clients. Therefore, it may be determined that the processing instruction of the first client for the first annotation is a valid processing instruction, and in one embodiment of the present invention, on the basis of the processing method in the annotation synchronization process shown in fig. 6, another method for updating the annotation synchronization reference data shown in fig. 9 is further provided, including:
s901: and updating the annotation synchronization reference data according to the processing instruction of the first client for the first annotation.
In this step, when the annotation data matching each annotation in the first annotation exists in the annotation synchronization reference data, the first client may update the annotation synchronization reference data according to the processing instruction of the first client for the first annotation when the processing instruction of the first client for the first annotation is an effective processing instruction.
The annotation synchronization reference data synchronization method is similar to step S802, and will not be described here again.
S902: and sending a processing instruction of the first client side aiming at the first annotation to the target client side.
In this step, the target client is at least one client connected to the server, except the first client, and may also be a client sharing the displayed shared area with the first client, for example, the second client.
S903: an instruction is sent to the first client indicating that the process for the first annotation is a valid process.
In this step, the sequence of steps S901, S902 and S903 may be arbitrary, and may be executed simultaneously or in tandem. After receiving the instruction that the processing of the first annotation sent by the server is effective processing, the first client can determine that the local processing of the first annotation is effective.
According to the method for updating the annotation synchronous reference data shown in fig. 9, the annotation synchronous reference data can be updated according to the effective processing instruction, so that the annotation synchronous reference data can be updated in real time.
In one embodiment, after the first client executes the processing locally and sends the local processing instruction to the reference client or the server, when a response returned by the reference client or the server is not acquired yet, the processing instruction for the second annotation is received from the second client, and the processing instruction for the second annotation may be put into the cache, after the response returned by the reference client or the server is acquired, the processing instruction in the cache area is executed again, for example, after receiving an instruction indicating that the processing for the at least one annotation is invalid, the at least one annotation is restored, and the second annotation is processed according to the processing instruction for the second annotation in the cache.
In one embodiment, the case that at least one annotation in the first annotation cannot be matched with the annotation synchronization reference data is: and in the first annotation, all annotations cannot be matched with the annotation synchronous reference data. In still another embodiment of the present invention, another method for updating annotation synchronization reference data as shown in fig. 10 is provided, including:
s1001: and sending an instruction indicating that the processing of the first client for the partial annotation is invalid to the first client under the condition that the first annotation exists and only partial annotation cannot be matched with the annotation synchronous reference data.
S1002: the first client updates the annotation synchronous reference data according to the processing instruction of the first client for the annotation matched with the annotation synchronous reference data in the first annotation aiming at the processing instruction of the first client for the annotation matched with the annotation synchronous reference data in the first annotation.
S1003: and sending a processing instruction of the first client for the annotation matched with the annotation synchronous reference data in the first annotation to the target client.
According to the method for updating the annotation synchronous reference data shown in fig. 10, which is provided by the embodiment of the invention, the annotation synchronous reference data can be updated based on the annotation matched with the annotation synchronous reference data in the first annotation, and the processing instruction of the annotation is sent to the target client, so that the updating of the annotation synchronous reference data and the processing instruction of the target client can be executed only when all the annotations in the first annotation are matched with the annotation synchronous reference data, and the efficiency of the annotation processing is improved.
Accordingly, in one embodiment of the present invention, another method for updating annotation synchronization reference data as shown in fig. 11 is provided, including:
s1101: an instruction indicating that the process for the partial annotation is an invalid process and the process for the annotations other than the partial annotation in the first annotation is an valid process is acquired, the instruction indicating that the partial annotation exists in the first annotation and that only the partial annotation cannot be matched with the annotation synchronization reference data.
S1102: and (5) reducing part of annotation.
According to the method for updating the annotation synchronization reference data shown in FIG. 11, when the first annotation is stored and only part of the annotations cannot be matched with the annotation synchronization reference data, the part of the annotations are restored without restoring the first annotation, and therefore the annotation processing efficiency is improved.
In the above steps, among the plurality of annotations included in the first annotation, only a part of the annotations cannot be matched with the annotation synchronization reference data, and another part of the annotations can be matched with the annotation synchronization reference data.
The first annotation comprises an annotation a, an annotation B and an annotation C, the second annotation comprises an annotation a, an annotation D and an annotation E, and the annotation synchronization reference data is updated according to a processing instruction of the second annotation, so that the first annotation comprises an annotation a which cannot be matched with the annotation synchronization reference data, and the annotation B and the annotation C can be matched with the annotation synchronization reference data.
At this time, the server or the reference client transmits an instruction indicating that the process of annotating a is an invalidation process only to the first client.
And when the first client receives an instruction which is sent by the server or the reference client and indicates that the processing of the annotation A is invalid, the annotation A in the first annotation is restored.
Alternatively, the annotation synchronization reference data may be updated only according to a processing instruction of the annotation matching the annotation synchronization reference data in the first annotation.
In the above example, the annotation B and the annotation C of the first annotation may be matched with the annotation synchronization reference data, and then the annotation synchronization reference data may be updated according to the processing instructions of the annotation B and the annotation C.
Alternatively, only the processing instruction of the annotation matched with the annotation synchronization reference data in the first annotation may be sent to the target client.
In the example above, only the processing instructions of annotation B and annotation C are sent to the target client.
Optionally, an instruction indicating that the processing of the annotation B and the annotation C is valid processing may also be sent to the first client.
The first client may receive an instruction indicating that the processing of annotation B and annotation C is a valid processing, and determine the validity of the local processing of annotation B and annotation C.
Based on the same inventive concept, according to an embodiment of the present invention, a processing method in an annotation synchronization process shown in fig. 6 is provided, and an embodiment of the present invention further provides a processing device in an annotation synchronization process, as shown in fig. 12, where the device includes:
a first instruction obtaining module 1201, configured to obtain a processing instruction of a first client for a first annotation;
The first instruction sending module 1202 is configured to send, to the first client, an instruction indicating that the first client is invalid for processing the first annotation when at least one annotation cannot be matched with the annotation synchronization reference data in the first annotation, where the annotation synchronization reference data is updated according to the obtained valid processing instruction.
Further, the first instruction obtaining module 1201 is further configured to obtain, before obtaining a processing instruction of the first client for the first annotation, a processing instruction of the second client for a second annotation, where the second annotation includes at least one annotation in the first annotation;
the apparatus further comprises:
and the reference data updating module is used for updating the annotation synchronous reference data according to the processing instruction of the second client for the second annotation when the annotation data matched with each annotation in the second annotation exists in the annotation synchronous reference data.
Further, the reference data updating module is further configured to update, when annotation data matching each annotation in the first annotation exists in the annotation synchronization reference data, the first client uses an effective processing instruction for the processing instruction of the first annotation, and update the annotation synchronization reference data according to the processing instruction of the first client for the first annotation;
The first instruction sending module 1202 is further configured to send, to the target client, a processing instruction of the first client for the first annotation.
Further, the processing instruction of the first client for the first annotation includes: the first client side processes the moving processing instruction or the erasing processing instruction of the first annotation.
Further, the processing instruction of the second client for the second annotation includes: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
The further mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the acquired mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data;
the erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation and the annotation synchronous reference data comprises the following steps: the annotation data with the same annotation identifier as the annotation identifier exists in the annotation synchronous reference data;
The reference data updating module is specifically configured to update, for each annotation corresponding to the acquired mobile processing instruction, annotation position information of annotation data in the annotation synchronization reference data, which is the same as the annotation identifier, to position information of the annotation after the annotation is moved, when the acquired mobile processing instruction is an effective processing instruction; or deleting the annotation data with the same annotation identification in the annotation synchronous reference data for each annotation aimed at in the acquired erasure processing instruction under the condition that the acquired erasure processing instruction is a valid processing instruction.
Further, the situation that at least one annotation cannot be matched with the annotation synchronization reference data exists in the first annotation is that:
all annotations in the first annotation cannot be matched with the annotation synchronous reference data;
the first instruction sending module 1202 is further configured to send an instruction indicating that the processing of the first client for the partial annotation is invalid processing to the first client, and send a processing instruction of the first client for the annotation matching the annotation synchronization reference data in the first annotation to the target client, when the first annotation is stored in the first annotation and only a part of the annotations cannot be matched with the annotation synchronization reference data;
And the reference data updating module is further used for updating the annotation synchronous reference data according to the processing instruction of the first client side for the annotation matched with the annotation synchronous reference data in the first annotation when the processing instruction of the first client side for the annotation matched with the annotation synchronous reference data in the first annotation is an effective processing instruction.
Based on the same inventive concept, according to the processing method in the annotation synchronization process shown in fig. 7 provided by the embodiment of the present invention, the embodiment of the present invention further provides a processing device in the annotation synchronization process, as shown in fig. 13, where the device includes:
an execution module 1301 configured to execute local processing on the first annotation;
a second instruction sending module 1302, configured to send a processing instruction for the first annotation;
the second instruction obtaining module 1303 is configured to obtain an instruction indicating that the process for the first annotation is invalid, where the instruction indicates that at least one annotation in the first annotation cannot be matched with the annotation synchronization reference data, where the annotation synchronization reference data is updated according to the valid process instruction;
the annotation reduction module 1304 is configured to reduce the first annotation.
Further, the apparatus is applied to the first client;
The annotation synchronization reference data are updated data according to the second client-side processing instruction for the second annotation under the condition that the second client-side processing instruction for the second annotation is an effective processing instruction, and the second annotation comprises at least one annotation in the first annotation;
the second instruction obtaining module 1303 is further configured to obtain a processing instruction of the second client for the second annotation;
the execution module 1301 is further configured to execute, after the annotation restore module 1304 restores the first annotation, a processing instruction of the second client for the second annotation on the second annotation.
Further, the processing instructions for the first annotation include: a move process instruction or an erase process instruction for the first annotation.
Further, the processing instruction of the second client for the second annotation includes: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
Further, the mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data;
The erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation and the annotation synchronous reference data comprises the following steps: the annotation data with the same annotation identification as the annotation identification exists in the annotation synchronization reference data.
Further, the situation that at least one annotation cannot be matched with the annotation synchronization reference data exists in the first annotation is that: all annotations in the first annotation cannot be matched with the annotation synchronous reference data;
the second instruction obtaining module 1303 is further configured to obtain an instruction indicating that a process for a part of the annotations in the first annotation is an invalid process and a process for an annotation other than the part of the annotations in the first annotation is an valid process, where the instruction indicates that only a part of the annotations exist in the first annotation and cannot be matched with the annotation synchronization reference data;
the annotation reduction module 1304 is further configured to reduce a portion of the annotation.
Based on the same inventive concept, according to the processing method in the annotation synchronization process provided by the embodiment of the present invention, the embodiment of the present invention further provides a processing system in the annotation synchronization process, as shown in fig. 1, including a first client 102 and a processing device 101, where:
A first client 102, configured to perform local processing on the first annotation, and send a processing instruction for the first annotation to a processing device;
the processing device 101 is configured to obtain a processing instruction of the first client for the first annotation, and send, to the first client, an instruction indicating that processing of the first client for the first annotation is invalid, where at least one annotation cannot be matched with annotation synchronization reference data in the first annotation, where the annotation synchronization reference data is updated according to the obtained valid processing instruction;
the first client 102 is further configured to obtain an instruction sent by the processing device to indicate that the processing for the first annotation is invalid, and restore the first annotation.
Further, the processing device 101 is a server, and the system further includes a second client 103;
a second client 103, configured to send a processing instruction for a second annotation to the server, where the second annotation includes at least one annotation of the first annotations;
the server 1012 is further configured to obtain a processing instruction of the second client 103 for the second annotation before obtaining a processing instruction of the first client 102 for the first annotation; and in the case that annotation data matched with each annotation in the second annotation exists in the annotation synchronization reference data, the second client 103 is a valid processing instruction aiming at the processing instruction of the second annotation, and the annotation synchronization reference data is updated according to the processing instruction of the second client 103 aiming at the second annotation; sending a processing instruction of the second client for the second annotation to the first client 102;
The first client 102 is further configured to obtain a processing instruction of the second client for the second annotation; and after the first annotation is restored, executing a processing instruction of the second client side for the second annotation on the second annotation.
Further, the processing instruction for the first annotation includes: a move process instruction or an erase process instruction for the first annotation.
Further, the processing instruction of the second client for the second annotation includes: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
Further, the mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the acquired mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data;
the erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation with the annotation synchronous reference data comprises the following steps: the annotation data with the same annotation identifier as the annotation identifier exists in the annotation synchronous reference data;
The processing device 101 is further configured to update, for each annotation corresponding to the acquired mobile processing instruction, annotation location information of annotation data in the annotation synchronization reference data that is the same as the annotation identifier to location information after the annotation is moved, where the acquired mobile processing instruction is a valid processing instruction; or deleting the annotation data with the same annotation identification in the annotation synchronous reference data for each annotation aimed at in the acquired erasure processing instruction under the condition that the acquired erasure processing instruction is a valid processing instruction.
Further, the situation that at least one annotation cannot be matched with the annotation synchronization reference data exists in the first annotation is that:
all annotations in the first annotation cannot be matched with the annotation synchronous reference data;
the server 1012 is further configured to send, to the first client 102, an instruction indicating that the processing of the first client 102 for the partial annotation is invalid processing and the processing of the first client 102 for the annotation matching the annotation synchronization reference data is valid processing, update the annotation synchronization reference data according to the processing instruction of the first client 102 for the annotation matching the annotation synchronization reference data in the first annotation, and send, to the target client, the processing instruction of the first client 102 for the annotation matching the annotation synchronization reference data in the first annotation, when the first annotation is stored and only the partial annotation cannot match the annotation synchronization reference data;
The first client 102 is further configured to obtain an instruction sent by the server 1012 to indicate that the process for the partial annotation is an invalid process, and that the process for the annotation other than the partial annotation in the first annotation is an valid process, and restore the partial annotation.
The embodiment of the present invention also provides an electronic device, as shown in fig. 14, including a processor 1401, a communication interface 1402, a memory 1403, and a communication bus 1404, where the processor 1401, the communication interface 1402, and the memory 1403 perform communication with each other through the communication bus 1404,
a memory 1403 for storing a computer program;
the processor 1401 is configured to implement the processing method in the annotation synchronization process shown in fig. 6 and/or fig. 7 when executing the program stored in the memory 1403.
The communication bus mentioned above for the server or client may be a peripheral component interconnect standard (Peripheral Component Interconnect, PCI) bus or an extended industry standard architecture (Extended Industry Standard Architecture, EISA) bus, etc. The communication bus may be classified as an address bus, a data bus, a control bus, or the like. For ease of illustration, the figures are shown with only one bold line, but not with only one bus or one type of bus.
The communication interface is used for communication between the server or the client and other devices.
The Memory may include random access Memory (Random Access Memory, RAM) or may include Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the aforementioned processor.
The processor may be a general-purpose processor, including a central processing unit (Central Processing Unit, CPU), a network processor (Network Processor, NP), etc.; but also digital signal processors (Digital Signal Processing, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), field programmable gate arrays (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components.
In yet another embodiment of the present invention, a computer readable storage medium is provided, in which a computer program is stored, which when executed by a processor, implements the steps of the processing method in any of the annotation synchronization processes described above.
In yet another embodiment of the present invention, a computer program product containing instructions that, when run on a computer, cause the computer to perform the processing method of any of the annotation synchronization processes described in the previous embodiments is also provided.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present invention, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid State Disk (SSD)), etc.
It is noted that relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
In this specification, each embodiment is described in a related manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for an apparatus, system, electronic device, computer readable storage medium, computer program product, the description is relatively simple as it is substantially similar to the method embodiments, where relevant see also part of the description of the method embodiments.
The foregoing description is only of the preferred embodiments of the present invention and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention are included in the protection scope of the present invention.

Claims (21)

1. A method of processing in an annotation synchronization process, comprising:
acquiring a processing instruction of a first client for a first annotation;
transmitting an instruction indicating that the first client side is invalid for processing the first annotation to the first client side under the condition that at least one annotation cannot be matched with annotation synchronous reference data in the first annotation, wherein the annotation synchronous reference data is updated according to the acquired valid processing instruction; the annotation data is recorded in the annotation synchronous reference data, and the annotation data of one annotation comprises: the aggregation of pixel points in the region covered by the annotation;
before the processing instruction of the first client for the first annotation is acquired, the method further includes:
acquiring a processing instruction of a second client side aiming at a second annotation, wherein the second annotation comprises at least one annotation in the first annotation;
If at least one annotation cannot be matched with the annotation synchronization reference data in the first annotation, before sending an instruction indicating that the first client side is invalid for processing the first annotation to the first client side, the method further comprises:
and under the condition that annotation data matched with each annotation in the second annotation exists in the annotation synchronous reference data, the processing instruction of the second client side for the second annotation is an effective processing instruction, and the annotation synchronous reference data is updated according to the processing instruction of the second client side for the second annotation.
2. The method according to claim 1, wherein the method further comprises:
under the condition that annotation data matched with each annotation in the first annotation exists in the annotation synchronous reference data, the processing instruction of the first client side for the first annotation is an effective processing instruction, and the annotation synchronous reference data is updated according to the processing instruction of the first client side for the first annotation;
and sending a processing instruction of the first client for the first annotation to a target client.
3. The method of claim 1, wherein the processing instructions for the first annotation by the first client comprise: the first client side processes the moving processing instruction or the erasing processing instruction of the first annotation.
4. The method of claim 1, wherein the processing instructions for the second annotation by the second client comprise: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
5. The method according to claim 3 or 4, wherein,
the mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the acquired mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data; in the case where the acquired movement processing instruction is a valid processing instruction, updating the annotation synchronization reference data according to the acquired valid movement processing instruction includes: for each annotation aimed at in the acquired mobile processing instruction, updating the annotation position information of the annotation data which is the same as the annotation identification in the annotation synchronous reference data into the position information after the annotation is moved;
The erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation with the annotation synchronous reference data comprises the following steps: the annotation data with the same annotation identifier as the annotation identifier exists in the annotation synchronous reference data; in the case that the obtained erasure processing instruction is a valid processing instruction, updating the annotation synchronization reference data according to the obtained valid erasure processing instruction includes: and deleting the annotation data which are the same as the annotation identification in the annotation synchronous reference data for each annotation aimed at in the obtained erasure processing instruction.
6. The method according to any one of claims 1-4, wherein the case that at least one annotation in the first annotation cannot match the annotation synchronization reference data is: all annotations in the first annotation cannot be matched with the annotation synchronous reference data;
the method further comprises the steps of:
when only a part of the first annotation cannot be matched with the annotation synchronous reference data, sending an instruction indicating that the processing of the first client side for the part of the annotation is invalid to the first client side;
The first client updates the annotation synchronous reference data according to the processing instruction of the first client for the annotation matched with the annotation synchronous reference data in the first annotation, wherein the processing instruction of the first client for the annotation matched with the annotation synchronous reference data in the first annotation is an effective processing instruction;
and sending a processing instruction of the first client for the annotation matched with the annotation synchronous reference data in the first annotation to a target client.
7. A method of processing in an annotation synchronization process, comprising:
performing local processing on the first annotation;
sending a processing instruction for the first annotation;
acquiring an instruction indicating that the processing aiming at the first annotation is invalid, wherein the instruction indicates that at least one annotation in the first annotation cannot be matched with annotation synchronous reference data, and the annotation synchronous reference data is updated according to an effective processing instruction; the annotation data is recorded in the annotation synchronous reference data, and the annotation data of one annotation comprises: the aggregation of pixel points in the region covered by the annotation;
restoring the first annotation;
The method is applied to a first client;
the annotation synchronization reference data are updated data according to the processing instruction of the second client for the second annotation when the processing instruction of the second client for the second annotation is an effective processing instruction, and the second annotation comprises at least one annotation in the first annotation; the method further comprises the steps of:
acquiring a processing instruction of the second client for the second annotation;
after the restoring the first annotation, further comprising:
executing the processing instruction of the second client side aiming at the second annotation on the second annotation.
8. The method of claim 7, wherein the processing instructions for the first annotation comprise: a move process instruction or an erase process instruction for the first annotation.
9. The method of claim 7, wherein the processing instructions for the second annotation by the second client comprise: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
10. The method according to claim 8 or 9, wherein,
the mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data;
The erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation with the annotation synchronous reference data comprises the following steps: and the annotation data with the same annotation identifier as the annotation identifier exists in the annotation synchronization reference data.
11. A method according to any of claims 7-9, wherein the case where there is at least one annotation in the first annotation that cannot match the annotation synchronization reference is: all annotations in the first annotation cannot be matched with the annotation synchronous reference data;
the method further comprises the steps of:
acquiring an instruction indicating that the processing of a part of the first annotation is invalid and the processing of the annotations except the part of the first annotation is valid, wherein the instruction indicates that only the part of the first annotation cannot be matched with the annotation synchronous reference data;
the partial annotation is reduced.
12. A processing apparatus in an annotation synchronization process, comprising:
the first instruction acquisition module is used for acquiring a processing instruction of the first client aiming at the first annotation;
The first instruction sending module is used for sending an instruction indicating that the first client side is invalid for processing the first annotation to the first client side under the condition that at least one annotation cannot be matched with the annotation synchronous reference data in the first annotation, wherein the annotation synchronous reference data is updated according to the obtained valid processing instruction; the annotation data is recorded in the annotation synchronous reference data, and the annotation data of one annotation comprises: the aggregation of pixel points in the region covered by the annotation;
the first instruction obtaining module is further configured to obtain, before the obtaining a processing instruction of the first client for a first annotation, a processing instruction of a second client for a second annotation, where the second annotation includes at least one annotation in the first annotation;
the apparatus further comprises:
the reference data updating module is configured to send, when at least one annotation that cannot be matched with the annotation synchronization reference data exists in the first annotation, an instruction indicating that the processing of the first client with respect to the first annotation is invalid processing to the first client, and when annotation data that is matched with each annotation in the second annotation exists in the annotation synchronization reference data, the processing instruction of the second client with respect to the second annotation is an effective processing instruction, and update the annotation synchronization reference data according to the processing instruction of the second client with respect to the second annotation.
13. The apparatus of claim 12, wherein the device comprises a plurality of sensors,
the first instruction obtaining module is further configured to obtain, before the obtaining a processing instruction of the first client for a first annotation, a processing instruction of a second client for a second annotation, where the second annotation includes at least one annotation in the first annotation;
the apparatus further comprises:
the reference data updating module is used for updating the annotation synchronous reference data according to the processing instruction of the second client side for the second annotation when the annotation data matched with each annotation in the second annotation exists in the annotation synchronous reference data;
the processing instruction of the first client side aiming at the first annotation comprises the following steps: the first client side processes the moving processing instruction or the erasing processing instruction of the first annotation;
the processing instruction of the second client for the second annotation comprises: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
14. The apparatus of claim 13, wherein the device comprises a plurality of sensors,
the mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the acquired mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data;
The erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation with the annotation synchronous reference data comprises the following steps: the annotation data with the same annotation identifier as the annotation identifier exists in the annotation synchronous reference data;
the reference data updating module is specifically configured to update, for each annotation corresponding to the acquired mobile processing instruction, annotation position information of annotation data in the annotation synchronization reference data, which is the same as the annotation identifier, to position information of the annotation after the annotation is moved, when the acquired mobile processing instruction is an effective processing instruction; or deleting the annotation data with the same annotation identification in the annotation synchronous reference data for each annotation aimed at in the acquired erasure processing instruction under the condition that the acquired erasure processing instruction is a valid processing instruction.
15. A processing apparatus in an annotation synchronization process, comprising:
the execution module is used for executing local processing on the first annotation;
the second instruction sending module is used for sending a processing instruction aiming at the first annotation;
The second instruction acquisition module is used for acquiring an instruction indicating that the processing aiming at the first annotation is invalid processing, wherein the instruction indicates that at least one annotation in the first annotation cannot be matched with annotation synchronous reference data, and the annotation synchronous reference data is updated according to the valid processing instruction; the annotation data is recorded in the annotation synchronous reference data, and the annotation data of one annotation comprises: the aggregation of pixel points in the region covered by the annotation;
the annotation reduction module is used for reducing the first annotation;
the device is applied to a first client;
the annotation synchronization reference data are updated data according to the processing instruction of the second client for the second annotation when the processing instruction of the second client for the second annotation is an effective processing instruction, and the second annotation comprises at least one annotation in the first annotation;
the second instruction obtaining module is further configured to obtain a processing instruction of the second client for the second annotation;
the execution module is further configured to execute, after the first annotation is restored, a processing instruction of the second client for the second annotation on the second annotation.
16. The apparatus of claim 15, wherein the apparatus is applied to a first client;
the annotation synchronization reference data are updated data according to the processing instruction of the second client for the second annotation when the processing instruction of the second client for the second annotation is an effective processing instruction, and the second annotation comprises at least one annotation in the first annotation;
the second instruction acquisition module is further configured to acquire a processing instruction of the second client for the second annotation;
the execution module is further configured to execute, after the annotation reduction module executes the first annotation reduction, a processing instruction of the second client for the second annotation on the second annotation;
the processing instruction for the first annotation comprises: a move process instruction or an erase process instruction for the first annotation;
the processing instruction of the second client for the second annotation comprises: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
17. The apparatus of claim 16, wherein the device comprises a plurality of sensors,
the mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data;
The erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation with the annotation synchronous reference data comprises the following steps: and the annotation data with the same annotation identifier as the annotation identifier exists in the annotation synchronization reference data.
18. A processing system in an annotation synchronization process, the system comprising a first client and a processing device, wherein:
the first client is used for executing local processing on a first annotation and sending a processing instruction for the first annotation to the processing equipment;
the processing device is configured to obtain a processing instruction of the first client for the first annotation, and send, to the first client, an instruction indicating that processing of the first client for the first annotation is invalid, where at least one annotation in the first annotation cannot be matched with annotation synchronization reference data, and the annotation synchronization reference data is updated according to the obtained valid processing instruction; the annotation data is recorded in the annotation synchronous reference data, and the annotation data of one annotation comprises: the aggregation of pixel points in the region covered by the annotation;
The first client is further configured to obtain an instruction sent by a processing device to indicate that the process for the first annotation is an invalidation process, and restore the first annotation;
the processing equipment is a server, and the system further comprises a second client;
the second client is configured to send a processing instruction for a second annotation to the server, where the second annotation includes at least one annotation in the first annotation;
the server is further configured to obtain a processing instruction of the second client for a second annotation before obtaining a processing instruction of the first client for the first annotation; under the condition that annotation data matched with each annotation in the second annotation exists in the annotation synchronous reference data, the processing instruction of the second client side for the second annotation is an effective processing instruction, and the annotation synchronous reference data is updated according to the processing instruction of the second client side for the second annotation; sending a processing instruction of the second client side aiming at the second annotation to the first client side;
the first client is further configured to obtain a processing instruction of the second client for the second annotation; and after the first annotation is restored, executing a processing instruction of the second client side for the second annotation on the second annotation.
19. The annotation synchronization processing system of claim 18, wherein the annotation processing module comprises a processor,
the processing instructions for the first annotation include: a move process instruction or an erase process instruction for the first annotation.
20. The annotation synchronization processing system of claim 18, wherein the annotation processing module comprises a processor,
the processing instruction of the second client for the second annotation comprises: the second client side processes the moving processing instruction or the erasing processing instruction aiming at the second annotation.
21. The processing system in the annotation synchronization process of claim 19 or 20,
the mobile processing instruction at least comprises an identification of the moved annotation, position information before movement and position information after movement; for any annotation in the acquired mobile processing instruction, the matching of the annotation with the annotation synchronization reference data comprises: the annotation data with the same annotation identification as the annotation identification and the same annotation position information as the position information before the annotation movement exists in the annotation synchronous reference data;
the erasure processing instruction at least comprises an identification of the erased annotation; for any annotation aimed at in the obtained erasing processing instruction, the matching of the annotation with the annotation synchronous reference data comprises the following steps: the annotation data with the same annotation identifier as the annotation identifier exists in the annotation synchronous reference data;
The processing device is further configured to update, for each annotation corresponding to the acquired mobile processing instruction, annotation location information of annotation data in the annotation synchronization reference data that is the same as the annotation identifier to location information after the annotation is moved, where the acquired mobile processing instruction is an effective processing instruction; or deleting the annotation data with the same annotation identification in the annotation synchronous reference data for each annotation aimed at in the acquired erasure processing instruction under the condition that the acquired erasure processing instruction is a valid processing instruction.
CN201911417894.3A 2019-12-31 2019-12-31 Processing method, device and system in annotation synchronization process Active CN111428453B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911417894.3A CN111428453B (en) 2019-12-31 2019-12-31 Processing method, device and system in annotation synchronization process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911417894.3A CN111428453B (en) 2019-12-31 2019-12-31 Processing method, device and system in annotation synchronization process

Publications (2)

Publication Number Publication Date
CN111428453A CN111428453A (en) 2020-07-17
CN111428453B true CN111428453B (en) 2023-09-05

Family

ID=71547009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911417894.3A Active CN111428453B (en) 2019-12-31 2019-12-31 Processing method, device and system in annotation synchronization process

Country Status (1)

Country Link
CN (1) CN111428453B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114444451A (en) * 2021-12-14 2022-05-06 北京鸿合爱学教育科技有限公司 Remote annotation method and device

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101655845A (en) * 2008-08-21 2010-02-24 北京亿企通信息技术有限公司 Method for processing documents in multi-person collaboration working environment
CN101924747A (en) * 2009-06-17 2010-12-22 华为终端有限公司 Method and device for processing data collision, network side server and terminal
CN102436441A (en) * 2010-10-26 2012-05-02 微软公司 Synchronizing online document edits
WO2013017038A1 (en) * 2011-08-04 2013-02-07 无锡永中软件有限公司 Document collaboration method
CN103238150A (en) * 2010-11-02 2013-08-07 谷歌公司 Realtime synchronized document editing by multiple users for blogging
CN103914439A (en) * 2013-01-04 2014-07-09 中国移动通信集团公司 Method, device and system for online document edition
CN104113571A (en) * 2013-04-18 2014-10-22 北京恒华伟业科技股份有限公司 Data collision processing method and device
KR20170070555A (en) * 2015-12-14 2017-06-22 한국전자통신연구원 System and method for avoiding edit conflict of realtime concurrent collaborative document in video conference based on web service environment
KR20170088672A (en) * 2016-01-25 2017-08-02 송현준 Based on the online picture editing simultaneous systems
CN107491429A (en) * 2017-08-18 2017-12-19 杭州安恒信息技术有限公司 A kind of method for solving to edit document content conflict simultaneously
CN108595401A (en) * 2018-04-24 2018-09-28 广州视源电子科技股份有限公司 Annotate synchronization system, method, apparatus, equipment and storage medium
CN108769782A (en) * 2018-06-20 2018-11-06 广州华欣电子科技有限公司 A kind of more equipment room screen contents synchronize the method and system of annotation
CN108876275A (en) * 2017-05-16 2018-11-23 群晖科技股份有限公司 Collaboration working method and the system for using this method
WO2019080873A1 (en) * 2017-10-27 2019-05-02 腾讯科技(深圳)有限公司 Method for generating annotations and related apparatus
CN109918601A (en) * 2019-02-03 2019-06-21 广州视源电子科技股份有限公司 Edit methods, device, computer equipment and the storage medium of online document
CN110019279A (en) * 2019-04-11 2019-07-16 北京字节跳动网络技术有限公司 Collaboration update method, device, equipment and the storage medium of online document

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4520450B2 (en) * 2006-12-05 2010-08-04 富士通株式会社 Annotation management program, annotation management apparatus, annotation management method, and annotation display program

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101655845A (en) * 2008-08-21 2010-02-24 北京亿企通信息技术有限公司 Method for processing documents in multi-person collaboration working environment
CN101924747A (en) * 2009-06-17 2010-12-22 华为终端有限公司 Method and device for processing data collision, network side server and terminal
CN102436441A (en) * 2010-10-26 2012-05-02 微软公司 Synchronizing online document edits
CN103238150A (en) * 2010-11-02 2013-08-07 谷歌公司 Realtime synchronized document editing by multiple users for blogging
WO2013017038A1 (en) * 2011-08-04 2013-02-07 无锡永中软件有限公司 Document collaboration method
CN103914439A (en) * 2013-01-04 2014-07-09 中国移动通信集团公司 Method, device and system for online document edition
CN104113571A (en) * 2013-04-18 2014-10-22 北京恒华伟业科技股份有限公司 Data collision processing method and device
KR20170070555A (en) * 2015-12-14 2017-06-22 한국전자통신연구원 System and method for avoiding edit conflict of realtime concurrent collaborative document in video conference based on web service environment
KR20170088672A (en) * 2016-01-25 2017-08-02 송현준 Based on the online picture editing simultaneous systems
CN108876275A (en) * 2017-05-16 2018-11-23 群晖科技股份有限公司 Collaboration working method and the system for using this method
CN107491429A (en) * 2017-08-18 2017-12-19 杭州安恒信息技术有限公司 A kind of method for solving to edit document content conflict simultaneously
WO2019080873A1 (en) * 2017-10-27 2019-05-02 腾讯科技(深圳)有限公司 Method for generating annotations and related apparatus
CN109726367A (en) * 2017-10-27 2019-05-07 腾讯科技(北京)有限公司 A kind of method and relevant apparatus of annotation displaying
CN108595401A (en) * 2018-04-24 2018-09-28 广州视源电子科技股份有限公司 Annotate synchronization system, method, apparatus, equipment and storage medium
CN108769782A (en) * 2018-06-20 2018-11-06 广州华欣电子科技有限公司 A kind of more equipment room screen contents synchronize the method and system of annotation
CN109918601A (en) * 2019-02-03 2019-06-21 广州视源电子科技股份有限公司 Edit methods, device, computer equipment and the storage medium of online document
CN110019279A (en) * 2019-04-11 2019-07-16 北京字节跳动网络技术有限公司 Collaboration update method, device, equipment and the storage medium of online document

Also Published As

Publication number Publication date
CN111428453A (en) 2020-07-17

Similar Documents

Publication Publication Date Title
US20220253458A1 (en) Method and device for synchronizing node data
CN107831974B (en) Information sharing method and device and storage medium
KR101750429B1 (en) Document editing system and method for collaborative editing
CN108881227B (en) Operation control method and device of remote whiteboard system and remote whiteboard system
CN108011949B (en) Method and apparatus for acquiring data
JP2016508638A (en) Method and system using recursive event listeners in nodes of hierarchical data structures
CN112445579A (en) Zero-terminal data processing system and file copying method and device thereof
CN110389859B (en) Method, apparatus and computer program product for copying data blocks
US11455117B2 (en) Data reading method, apparatus, and system, avoiding version rollback issues in distributed system
CN113094430B (en) Data processing method, device, equipment and storage medium
CN111752960B (en) Data processing method and device
US20130007184A1 (en) Message oriented middleware with integrated rules engine
CN111818145A (en) File transmission method, device, system, equipment and storage medium
CN111428453B (en) Processing method, device and system in annotation synchronization process
CN106599323A (en) Method and apparatus for realizing distributed pipeline in distributed file system
CN113127430B (en) Mirror image information processing method, mirror image information processing device, computer readable medium and electronic equipment
WO2018049880A1 (en) Data migration method and device
CN109614383B (en) Data copying method and device, electronic equipment and storage medium
CN111367606A (en) Application page display method, device, terminal and medium
CN109656936A (en) Method of data synchronization, device, computer equipment and storage medium
CN110795389B (en) Storage snapshot based copying method, user equipment, storage medium and device
CN111858158A (en) Data processing method and device and electronic equipment
CN111061468B (en) Mapping method and device
CN108804195B (en) Page display method and device, server and client
CN113297003A (en) Method, electronic device and computer program product for managing backup data

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