CN112187943A - Data synchronization method and device and system using same - Google Patents

Data synchronization method and device and system using same Download PDF

Info

Publication number
CN112187943A
CN112187943A CN202011064576.6A CN202011064576A CN112187943A CN 112187943 A CN112187943 A CN 112187943A CN 202011064576 A CN202011064576 A CN 202011064576A CN 112187943 A CN112187943 A CN 112187943A
Authority
CN
China
Prior art keywords
synchronization
packet
action
type
terminal device
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.)
Granted
Application number
CN202011064576.6A
Other languages
Chinese (zh)
Other versions
CN112187943B (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.)
Beijing Zitiao Network Technology Co Ltd
Original Assignee
Beijing Zitiao Network 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 Beijing Zitiao Network Technology Co Ltd filed Critical Beijing Zitiao Network Technology Co Ltd
Priority to CN202011064576.6A priority Critical patent/CN112187943B/en
Publication of CN112187943A publication Critical patent/CN112187943A/en
Application granted granted Critical
Publication of CN112187943B publication Critical patent/CN112187943B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/155Conference systems involving storage of or access to video conference sessions

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A data synchronization method and an apparatus and system using the same are provided. The data synchronization method comprises the following steps: receiving the operation of a user for the terminal equipment; generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and sending the generated synchronous data packet to a server to be forwarded to other terminal equipment needing synchronization. The data synchronization method solves the problem of data synchronization among the devices in a meeting room scene, can ensure the expandability of data communication among the devices, and ensures that the server side does not sense the added data types when the data types are added, thereby being convenient for adding various data needing synchronization.

Description

Data synchronization method and device and system using same
Technical Field
The present disclosure relates to the field of data synchronization. More particularly, the present disclosure relates to a data synchronization method, apparatus, and system.
Background
With the development of technology, video conference systems are increasingly used by enterprises, governments, social units, and the like to organize conferences for various purposes. In addition, with the popularization of high-speed wireless communication technologies (e.g., 4G, 5G) and smart devices with high-quality cameras, video conference system Applications (APP) based on a plurality of terminal devices have also been rapidly developed.
A cloud video conference Room is a physical, spatial entity that has two devices, one is Room and the other is Controller. Room is used to present and accept video conference content and Controller is used to issue commands such as join a conference, leave a conference, etc. There is a lack of an efficient way of information delivery, notification, and retrieval between Room and Controller.
Disclosure of Invention
According to an embodiment of the present disclosure, there is provided a data synchronization method including: receiving the operation of a user for the terminal equipment; generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and sending the generated synchronous data packet to a server to be forwarded to other terminal equipment needing synchronization.
According to an embodiment of the present disclosure, there is provided a data synchronization method including: receiving a synchronous data packet sent by a terminal device, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; analyzing and processing the synchronous data packet; and pushing the processed synchronous data packet to other terminal equipment needing synchronization.
According to an embodiment of the present disclosure, there is provided a data synchronization method including: receiving a synchronous data packet pushed by a server, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; data synchronization or an association control operation is performed based on the received synchronization packet.
According to an embodiment of the present disclosure, there is provided a data synchronization system including: a terminal device, a server and another terminal device. Wherein the terminal device is configured to: receiving the operation of a user for the terminal equipment; generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and sending the generated synchronization data packet to a server to be forwarded to another terminal device needing synchronization. The server is configured to: receiving a synchronous data packet sent by a terminal device, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; analyzing and processing the synchronous data packet; and pushing the processed synchronous data packet to another terminal device needing synchronization. The other terminal device is configured to: receiving a synchronous data packet pushed by a server, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; data synchronization or an association control operation is performed based on the received synchronization packet.
According to an embodiment of the present disclosure, there is provided a terminal device including: an operation receiving unit configured to receive an operation of a user for a terminal device; a packet generation unit configured to generate a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and the data packet sending unit is configured to send the generated synchronous data packet to the server so as to forward the synchronous data packet to other terminal equipment needing synchronization.
According to an embodiment of the present disclosure, there is provided a server including: a packet receiving unit configured to receive a synchronization packet transmitted by a terminal device, wherein the synchronization packet includes information indicating a type of a synchronization action and a value of the synchronization action; the analysis and processing unit is configured to analyze and process the synchronous data packet; and the data packet pushing unit is configured to push the processed synchronous data packet to other terminal equipment needing synchronization.
According to an embodiment of the present disclosure, there is provided a terminal device including: a data packet receiving unit configured to receive a synchronization data packet pushed by a server, wherein the synchronization data packet includes information indicating a type of a synchronization action and a value of the synchronization action; and an execution unit configured to perform data synchronization or perform an association control operation based on the received synchronization packet.
According to an embodiment of the present disclosure, there is provided a computer-readable storage medium having stored thereon a computer program which, when executed by a processor, implements a data synchronization method according to an embodiment of the present disclosure.
According to an embodiment of the present disclosure, there is provided an electronic apparatus including: a processor; a memory storing a computer program that, when executed by the processor, implements a data synchronization method according to an embodiment of the present disclosure.
According to the data synchronization method, the data synchronization system, the terminal device and the server, the problem of data synchronization among devices in a conference room scene is solved, the expandability of data communication among the devices can be ensured, the server side cannot sense the increased data types when the data types are increased, and therefore the client side can conveniently add various data needing synchronization.
Additional aspects and/or advantages of the present general inventive concept will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the general inventive concept.
Drawings
The above and other objects and features of the embodiments of the present disclosure will become more apparent from the following description taken in conjunction with the accompanying drawings which illustrate, by way of example, the embodiments, wherein:
FIG. 1 shows a schematic diagram of a data synchronization system according to an embodiment of the present disclosure;
FIG. 2 shows a schematic diagram of a data synchronization flow of the data synchronization system 100, according to an embodiment of the present disclosure;
FIG. 3 shows a schematic diagram of a synchronous packet push process according to an embodiment of the present disclosure;
FIG. 4 shows a schematic diagram of a data synchronization flow of the data synchronization system 100, according to another embodiment of the present disclosure;
FIG. 5 shows a flow diagram of a data synchronization method according to an embodiment of the present disclosure;
FIG. 6 shows a flow diagram of a data synchronization method according to another embodiment of the present disclosure;
FIG. 7 shows a flow diagram of a data synchronization method according to yet another embodiment of the present disclosure;
fig. 8 shows a block diagram of a terminal device according to an embodiment of the present disclosure;
FIG. 9 shows a block diagram of a server according to an embodiment of the present disclosure;
fig. 10 shows a block diagram of a terminal device according to another embodiment of the present disclosure; and
FIG. 11 illustrates a schematic structural diagram of an electronic device 1100 suitable for use in implementing embodiments of the present disclosure.
Detailed Description
Reference will now be made in detail to the embodiments of the present disclosure, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below in order to explain the present disclosure by referring to the figures.
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
It should be understood that the various steps recited in the method embodiments of the present disclosure may be performed in a different order, and/or performed in parallel. Moreover, method embodiments may include additional steps and/or omit performing the illustrated steps. The scope of the present disclosure is not limited in this respect.
The term "include" and variations thereof as used herein are open-ended, i.e., "including but not limited to". The term "based on" is "based, at least in part, on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Relevant definitions for other terms will be given in the following description.
It is noted that references to "a", "an", and "the" modifications in this disclosure are intended to be illustrative rather than limiting, and that those skilled in the art will recognize that "one or more" may be used unless the context clearly dictates otherwise.
It should be noted that the terms "first", "second", and the like in the present disclosure are only used for distinguishing different devices, modules or units, and are not used for limiting the order or interdependence relationship of the functions performed by the devices, modules or units.
In the prior art, the Room and the Controller synchronize data with each other through bluetooth communication, for example, the Controller modifies the volume and directly informs the modified value to the Room through bluetooth; the Controller requests the acquisition directly from the Room for the list of microphone sources to acquire. However, this has the following problems: (1) no server side stores related data, and if one device is not started, the other device cannot acquire the data; (2) the Bluetooth data synchronization distance is limited, the limit distance is about 8-10 meters generally, and when the distance is exceeded, data synchronization is unstable, and the distance between devices in a large conference room may exceed 10 meters; (3) communication protocols of different operating systems are incompatible, and devices of Window and Android versions are available in the later period, so that maintenance cost is increased; (4) the bluetooth one-to-one connection cannot solve the situation that one Room pairs a plurality of controllers.
In the following description, a data synchronization method, apparatus, and system according to embodiments of the present disclosure are described in terms of a client device (e.g., a smartphone, a PC, a tablet, a notebook, a PDA, etc.) installed with an application for a video conference and a server connected with the client device through various communication technologies. It should be understood that the data synchronization method of the embodiments of the present disclosure is not limited to the client device and the server described above. In addition, in the following description, a data synchronization method, apparatus, and system according to an embodiment of the present disclosure are explained based on a specific development platform and a communication protocol. Those skilled in the art will appreciate that the data synchronization methods, apparatus, and systems according to embodiments of the present disclosure may be applied to other development platforms and communication protocols without departing from the concepts of the present disclosure. Some terms referred to in the embodiments of the present disclosure will be explained below.
Websocket is a protocol for full duplex communication over a single TCP connection. The WebSocket communication protocol was specified by IETF as standard RFC 6455 in 2011 and supplemented by RFC7936, and the WebSocket API was also specified as standard by W3C. WebSocket enables data exchange between the client and the server to be simpler, and allows the server to actively push data to the client. In the WebSocket API, the browser and the server only need to complete one handshake, and persistent connection can be directly established between the browser and the server, and bidirectional data synchronization is carried out.
Rust: software Development Kits (SDKs) representing various Applications (APPs) implemented using the Rust language, such as Lark-SDKs and View-SDKs.
The terminal equipment: represents an electronic device in which a Client (Client) is installed.
Client (Client): the client for calling the SDK of the application generally refers to applications of a PC, an iOS, and an Android, such as a flybook and a flybook conference.
Server side (Server): a background server representing a video conferencing service.
Uplink and downlink: the message link in which the message producer is the client APP and the receiver is the server is called an uplink data path, for example, an HTTP request; the message link in which the message producer is the server side and the recipient is the client side APP is called a downlink data path, and is usually a long connection.
Frontier: the long connection service is based on a WebSocket protocol, and a uniform packaging protocol is used for routing and forwarding. Through frontier, a full-duplex data path can be established between the client and the server, and the server is allowed to actively push messages to the client.
The above term explanation is only used to explain the technical solution of the present disclosure schematically, and is not used to limit the applied scenario of the technical solution.
Fig. 1 shows a schematic diagram of a data synchronization system according to an embodiment of the present disclosure.
Referring to fig. 1, the data synchronization system includes two terminal devices 110, 130 and one server 120. Each terminal device may be at least one of a personal computer, a mobile phone, a tablet, a television, etc. capable of implementing the method of the present disclosure. The terminal devices 110 and 130 have installed thereon clients that can invoke the software development kit, the clients including applications installed on the terminal devices. A client according to an embodiment of the present disclosure may include at least one of a social app, a video conference app, an instant messaging app, an online education app. It should be understood that the number of terminal devices is not limited to 2, but that there may be more terminal devices.
The terminal devices 110, 130 and the server 120 may interact data via, for example, the following interaction data protocol. The interactive data protocol first defines a message Cell, then defines an enum Action in the message Cell, and defines fields required reagent 32 key, required bytes val, and required Action. For example, in the enum Action, a setting type (set) of synchronous Action may be defined as 1, and a request type (request) of synchronous Action may be defined as 2; a synchronization action of trigger type (trigger) is defined as 3 and an action of unknown type (unknown) is defined as 0. The following will describe in detail the type of synchronization action.
Here, Cell represents the smallest unit of information to be synchronized and/or stored (i.e., a synchronization packet), and consists of the elements required agent 32 key, required bytes val, and required Action. In an embodiment of the present application, the Cell may be implemented using a data packet based on the websocket and the Rust protocol.
For example, in the required agent 32 key, the key represents the name of the Cell and may be referred to as the Cell's key. In required bytes val, val represents the content of this Cell and may be referred to as the Cell's value. Because the type of val is bytes, the server 120 does not care what is specifically inside the val, and different data contents are synchronized between clients, that is, the clients themselves agree on the value inside the val. The server does not need to correspondingly modify the content of the data packet and online the corresponding modification, because the server only needs to correspondingly store and forward the data packet according to the field of the data packet regardless of the content of the data packet, higher expansibility is achieved, and the server does not sense the added data type when the data type is added, so that the client is convenient to add various kinds of data which need to be synchronized. In a required Action, the Action indicates the behavior of the Cell, i.e., a synchronization Action. According to an embodiment of the present disclosure, a synchronization action may include 3 types, respectively set, request, and trigger.
the trigger is initiated by one terminal device, and the server does not store the trigger, and mainly transmits the trigger to other terminal devices. the main function of trigger is to notify and trigger one-time data synchronization, and no specific value storage and recording is involved. The request is initiated by one terminal device, the server side stores the synchronous data, and pushes the set to other terminal devices. The main role of the request is to store the synchronized data and inform other clients. And after receiving the Cell with the action being the request, the server pushes the set to other terminal equipment, wherein the set contains the value of the synchronous data. set denotes synchronizing the data once, updating the corresponding value. That is, the terminal device may initiate at least one of trigger and request, and the server may push at least one of trigger and set.
The direction of the arrow in fig. 1, from the terminal device to the server, represents that the terminal device sends a short connection request to the server; and from the server to the terminal equipment, the data is pushed to the terminal equipment by the websocket on behalf of the server. Wherein the data interacted with are all Cell by Cell.
The request body of the short-link request can be represented by DataMapPacketRequest, the returned content of the short-link request can be represented by DataMapPacketResponse, and the content pushed by the long-link can be represented by PushDataMapPacket. For example, DataMapPacketRequest may be defined as 1, and PushDataMapPacket may be defined as 1.
Fig. 2 shows a schematic diagram of a data synchronization flow of the data synchronization system 100 according to an embodiment of the present disclosure.
Referring to fig. 2, the data synchronization system 100 includes a terminal device 110, a server 120, and another terminal device 130. Each of the terminal device 110 and the other terminal device 130 may be at least one of a personal computer, a mobile phone, a tablet, a television, and the like capable of implementing the method of the present disclosure. The terminal device 110 and the further terminal device 130 have installed thereon clients that can invoke the software development kit, the clients including applications installed on the terminal devices. A client according to an embodiment of the present disclosure may include at least one of a social app, a video conference app, an instant messaging app, an online education app. Here, the terminal device 110 may be a master device controller (e.g., a tablet computer), and the terminal device 130 may be a controlled device room (e.g., a smart television).
Here, the terminal device 110, the server 120, and the terminal device 130 have established a connection relationship through the initialized interactive communication, that is, the terminal devices 110 and 130 have mutually learned that the other is a device that currently needs to be synchronized. Next, the data synchronization process performed in the data synchronization system 100 will be described in detail.
In step S201, the terminal device 110 receives an operation of the terminal device 110 by the user.
Here, the operation of the user with respect to the terminal device 110 may be, for example, but not limited to, turning a camera, modifying volume, modifying screen parameters, accessing new hardware, and the like.
In step S202, the terminal device 110 generates a synchronization packet based on the received operation. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action. The information of the type of the synchronization action may be used to indicate a processing manner for the synchronization packet to the server and other terminal devices, for example, whether a value of the synchronization action for the synchronization packet needs to be stored, how to forward the synchronization packet, whether an association response needs to be made for the synchronization packet, and the like. The value of the synchronization action is used to indicate an action to be synchronized with other terminal devices determined according to the operation of the user with respect to the terminal device 110.
In the embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet generated by the terminal device 110 includes information of a trigger type (trigger) and information of a request type (request). Here, the trigger type information indicates a value of a synchronization action that does not require the server to store the synchronization packet, and the request type information indicates a value of a synchronization action that requires the server to store the synchronization packet. The value of the synchronization action of the synchronization packet generated by the terminal device 110 is used to indicate the synchronization action agreed in advance by the terminal device 110 and the other terminal device 130.
For example, when the user operates the camera to rotate with respect to the terminal device, the synchronization packet may include information indicating that the type of the synchronization action is a trigger type, and the value of the synchronization action may be null data. When the user modifies the volume or modifies the screen parameter for the operation of the terminal device, the synchronization packet may include information indicating that the type of the synchronization action is the request type and a value to modify the volume or a value to modify the screen parameter. When the user is accessing new hardware for the operation of the terminal device, the synchronization packet may include information indicating that the type of the synchronization action is a set type and a stored value such as a value to modify the volume or a value to modify a screen parameter, etc.
Since some types of values of the synchronization action are stored in the server, when one of the terminal devices 110 and 130 establishes a synchronization connection with the other again after a network disconnection or a logout, the terminal devices 110 and 130 may acquire the previously stored values of the synchronization action from the server and may maintain the same synchronization state as before the network disconnection or the logout using the values of the synchronization action. Alternatively, when a new terminal device joins the synchronous connection with the terminal devices 110 and 130 (for example, a new control device controller joins the synchronous connection with the controlled device room), the newly joined terminal device may also acquire the current states of the terminal devices 110 and 130 from the server, so that the synchronization efficiency may be effectively improved.
According to an embodiment of the present disclosure, the action corresponding to the trigger type may be, for example, an action of a camera for controlling rotating from entered by a user on a controller, which action typically does not require receiving feedback information about the action from the from, and thus does not require storing the value of the action on the server side. The information associated with the request type may correspond to a scenario in which: for example, if the current device state of the rom needs to be fed back to the controller when the rom accesses the new hardware, a value corresponding to the synchronization action of accessing the new hardware may be stored in the server, so that the current state of the rom may be acquired by the value of the synchronization action stored in the server when the controller is connected again after being disconnected.
In step S203, the terminal device 110 transmits the generated synchronization packet to the server 120 to be forwarded to another terminal device 130 that needs synchronization. For example, when a new piece of hardware is accessed from room, the access of the new piece of hardware needs to be synchronized to the controller. In this case, another terminal device 130 that needs to be synchronized is the controller. When the user controls the camera to rotate, the controller needs to make the room sense the rotation of the camera. In this case, the other terminal device 130 that needs to be synchronized is room.
Specifically, the terminal device 110 may transmit the synchronization packet by any transmission method, which is not limited by the present disclosure.
In step S204, the server 120 receives the synchronization packet transmitted by the terminal device 110.
In an embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet received by the server 120 includes at least one of information of a trigger type and information of a request type.
In step S205, the server 120 parses and processes the synchronization packet. The server 120 may parse out whether the type of the synchronization action indicated by the information indicating the type of the synchronization action of the synchronization packet is a trigger type or a request type. When the type of the analyzed synchronization action is the trigger type, the synchronization packet may not be processed. When it is analyzed that the type of the synchronization action is the request type, the type of the synchronization action may be updated to the set type, where the type of the synchronization action is indicated by information indicating the type of the synchronization action in the synchronization packet.
In the embodiment of the present disclosure, when the information indicating the type of the synchronization action is the request type information, the server 120 further stores the value of the synchronization action of the synchronization packet.
In step S206, the server 120 pushes the processed synchronization packet to another terminal device 130 that needs synchronization.
In particular, the server 120 may push the synchronization data packets through the push process shown in fig. 3. The gateway is responsible for receiving the request of the business service, packaging the request, constructing a pushing task, simultaneously sequentially storing the message according to a certain dimensionality, and finally calling the backbone to send the message out. There may be multiple gateways (gateways) for push, for example, gateway 1, gateway 2, etc., and when pushing the synchronous data packet, at least one of the gateways may be selected for push, a long connection is maintained between the long connection service (e.g., frontier)140 and the client 150, and after receiving a request of the service-side service, a message is sent to the client through the websocket protocol. A push pipe is understood to be a push message link according to a certain dimension, and messages in each dimension are independent and do not affect each other. In a video conference room scenario, the push dimension is the conference room ID.
In step S207, the other terminal device 130 receives the synchronization packet pushed by the server.
In an embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet received by the another terminal device 130 includes at least one of information of a trigger type and information of a setting type. Here, the information of the setting type is used to set a synchronization action, for example, to set a volume, a screen parameter, and the like.
In step S208, the other terminal device 130 performs data synchronization based on the received synchronization packet.
For example, when a camera is rotated or the progress of an echo test needs to be synchronized, the terminal device 110 (e.g., controller or rom) sends a synchronization packet indicating that the type of the synchronization action is trigger (val of a cell is a rotation displacement amount of the camera or the progress of the echo test) to another terminal device 130 (e.g., rom or controller) via the server 120, and then another terminal device 130 (e.g., rom or controller) senses the rotation of the camera or the change of the progress of the echo test, so that the problem of data synchronization between devices in a conference room scene is solved, the expandability of data communication between the devices is ensured, the server does not sense the increase of the data type when the data type is increased, and the addition of various types of data needing to be synchronized is facilitated.
For example, when the terminal device 110 accesses new hardware or modifies the volume, modifies the screen parameter on the hardware, the terminal device 110 (e.g., from or controller) transmits a synchronization packet indicating that the information of the type of the synchronization action is a request (val of cell is the accessed new hardware, or modifies the volume, modifies the screen parameter, and changes in the hardware, etc.) to the server 120, and then the server 120 updates the information of the type of the synchronization packet indicating the synchronization action from the request to set and pushes the updated synchronization packet to another terminal device 130 (e.g., controller or from). That is, for example, the room accesses a new piece of hardware, and needs to be synchronized to the controller; or the user operates the volume on the hardware connected with the room, and the volume needs to be informed to the controller through the room, so that the problem of data synchronization between the devices in a conference room scene is solved, and the server only needs to perform corresponding storage and forwarding according to the fields in the data packet regardless of the content of the data packet, thereby ensuring the expandability of data communication between the devices, and the server does not sense the increased data types when the data types are increased, so that various types of data needing to be synchronized are conveniently added.
Fig. 4 shows a schematic diagram of a data synchronization flow of the data synchronization system 100 according to another embodiment of the present disclosure.
Referring to fig. 4, the data synchronization system 100 includes a terminal device 110, a server 120, and another terminal device 130. Each of the terminal device 110 and the other terminal device 130 may be at least one of a personal computer, a mobile phone, a tablet, a television, and the like capable of implementing the method of the present disclosure. The terminal device 110 and the further terminal device 130 have installed thereon clients that can invoke the software development kit, the clients including applications installed on the terminal devices. A client according to an embodiment of the present disclosure may include at least one of a social app, a video conference app, an instant messaging app, an online education app.
In step S401, the terminal device 110 receives an operation of the terminal device by the user.
Here, the operation of the user with respect to the terminal device may be, for example, but not limited to, modifying a volume, modifying a screen parameter, and the like.
In step S402, the terminal device 110 generates a synchronization packet based on the received operation. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action. In the embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet generated by the terminal device 110 is information of a trigger type (trigger). Here, the trigger type information indicates a value of a synchronization action that does not require the server to store the synchronization packet. The value of the synchronization action of the synchronization packet generated by the terminal device 110 is used to indicate the synchronization action agreed in advance by the terminal device 110 and the other terminal device 130.
In step S403, the terminal device 110 sends the generated synchronization packet to the server 120 to be forwarded to another terminal device 130 that needs synchronization.
In step S404, the server 120 receives the synchronization packet transmitted by the terminal device 110.
In an embodiment of the present disclosure, the server 120 may parse out that the type of the synchronization action indicated by the information indicating the type of the synchronization action of the synchronization packet is the trigger type.
In step S405, the server 120 pushes the synchronization packet to another terminal device 130 that needs synchronization.
In particular, the server 120 may push the synchronization data packets through the push process shown in fig. 3.
In step S406, the other terminal device 130 receives the synchronization packet pushed by the server.
In the embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet received by the other terminal device 130 indicates that the type of the synchronization action is the trigger type.
In step S407, the other terminal device 130 performs an association control operation based on the received synchronization packet.
In the embodiment of the present disclosure, the association control operation is an operation associated with an operation of the user with respect to the terminal device 110.
In step S408, the other terminal device 130 generates an association synchronization packet based on the association control operation. Here, the associated synchronization packet may include information indicating the type of the associated synchronization action and a value of the associated synchronization action.
In step S409, the other terminal device 130 transmits the generated associated synchronization packet to the server to forward to the terminal device 110 that needs synchronization.
In an embodiment of the present disclosure, the information indicating the type of the associated synchronization action of the associated synchronization packet indicates that the type of the synchronization action is a request type. Here, the information of the request type indicates a value of a synchronization action requiring the server to store the synchronization packet.
In step S410, the server 120 receives the associated synchronization packet transmitted by the other terminal device 130. In an embodiment of the present disclosure, the information associated with the type of the synchronization action indicates that the type of the synchronization action is a request type.
In step S411, the server 120 parses and processes the associated sync packet. The server 120 may parse out that the type of the synchronization action indicated by the information indicating the type of the synchronization action of the synchronization packet is the trigger type, and may update the type of the synchronization action indicated by the information indicating the type of the synchronization action of the synchronization packet to the set type.
In an embodiment of the present disclosure, the server 120 also stores a value of the associated synchronization action of the associated synchronization packet.
In step S412, the server 120 pushes the processed associated synchronization packet to the terminal device 110.
In step S413, the terminal device 110 receives the association synchronization packet, and updates the state stored by the terminal device 110 with respect to the other terminal device 130 according to the association synchronization packet.
For example, when the terminal device 110 (e.g., controller) modifies the volume, modifies the screen parameter, the terminal device 110 (e.g., controller) transmits a synchronization packet indicating that the type of the synchronization action is trigger (val of cell is modified volume, modifies the screen parameter, etc.) to another terminal device 130 (e.g., room) via the server 120, and then the another terminal device 130 (e.g., room) may perceive the above-described modification of the terminal device 110 (e.g., controller) according to the synchronization packet of trigger and modify the volume, modifies the screen parameter on hardware according to the value of val. Then, the terminal device 130 generates and transmits an associated synchronization packet (val of cell is actual modified volume, modified screen parameter, and variation amount, etc. on the room) indicating that the information of the type of the synchronization action is request to the server 120. The server 120 updates the information indicating the type of the synchronization action of the synchronization packet from the request to the set and pushes the updated synchronization packet to the terminal device 110 (e.g., controller), so that the terminal device 110 can know the actual volume and screen parameters on the terminal device 130 from the updated synchronization packet. The typical scene is that a user requests to modify the volume on a controller, then the room really initiates the modification of the volume, and the modified volume value is displayed on the controller and/or the room, so that the data synchronization problem among the devices in the scene of the conference room is solved, the expandability of data communication among the devices is ensured, the service end does not sense the added data type when the data type is increased, and various types of data needing synchronization are conveniently added.
A data synchronization process of a terminal device and a server included in the data synchronization system according to an embodiment of the present disclosure will be described below with reference to fig. 5 to 7.
Fig. 5 shows a flow diagram of a data synchronization method according to an embodiment of the present disclosure. The method is performed by a terminal device. In particular, the method may be performed by a client installed on a terminal device, the client comprising an application installed on the terminal device, by invoking a software development kit. The terminal device includes at least one of a personal computer, a mobile phone, a tablet, a television, and the like, which are capable of implementing the method of the present disclosure, and the application includes at least one of a social app, a video conference app, an instant messenger app, and an online education app.
Referring to fig. 5, in step S501, an operation of a user with respect to a terminal device is received. Here, the operation of the user with respect to the terminal device may be, for example, but not limited to, turning a camera, modifying volume, modifying screen parameters, accessing new hardware, and the like.
In step S502, a synchronization packet is generated based on the received operation. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action.
In an embodiment of the present disclosure, the information indicating the type of the synchronization action of the generated synchronization packet may include information of a trigger type. Here, the trigger type information indicates a value of a synchronization action that does not require the server to store the synchronization packet. In an embodiment of the present disclosure, the information indicating the type of the synchronization action of the generated synchronization packet includes information of a request type. Here, the information of the request type indicates a value of a synchronization action requiring the server to store the synchronization packet. In an embodiment of the present disclosure, the value of the synchronization action of the synchronization packet is used to indicate a synchronization action pre-agreed by the terminal device and the other terminal device. Here, the pre-agreed synchronization action includes at least one of turning a camera, modifying a volume, modifying a screen parameter, and accessing new hardware.
In step S503, the generated synchronization packet is sent to the server to be forwarded to other terminal devices requiring synchronization. Here, the other terminal devices that need to be synchronized are terminal devices that have established a connection with the terminal device and the server and can transceive data through a protocol, such as the terminal devices 110 and 130 described with reference to fig. 2 and 4. It should be understood that the number of other terminal devices that need to be synchronized is not limited to 1.
In the embodiment of the present disclosure, when the information indicating the type of the synchronization action of the generated synchronization packet indicates that the type of the synchronization action is the trigger type, after step S503, an associated synchronization packet sent by the other terminal device via the server may also be received, and the state stored by the terminal device with respect to the other terminal device may be updated according to the associated synchronization packet. The synchronization packet has been described in detail in the description of fig. 2 and 4, and is not described again here.
Fig. 6 illustrates a flow diagram of a data synchronization method according to another embodiment of the present disclosure. The method is performed by a server.
Referring to fig. 6, in step S601, a synchronization packet transmitted by a terminal device is received. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action.
In an embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet includes information of a trigger type and information of a request type. Here, the trigger type information indicates a value of a synchronization action that does not require the server to store the synchronization packet, and the request type information indicates a value of a synchronization action that requires the server to store the synchronization packet.
In step S602, the synchronization packet is parsed and processed.
In the embodiment of the present disclosure, whether the type of the synchronization action indicated by the information indicating the type of the synchronization action of the synchronization packet is a trigger type or a request type may be analyzed. When the type of the analyzed synchronization action is the trigger type, the synchronization packet may not be processed. When it is analyzed that the type of the synchronization action is the request type, the type of the synchronization action indicated by the information indicating the type of the synchronization action of the synchronization packet may be updated to the set type.
In the embodiment of the present disclosure, when the information indicating the type of the synchronization action is the request type information, the value of the synchronization action of the synchronization packet is also stored.
In step S603, the processed synchronization packet is pushed to another terminal device that needs synchronization.
In the embodiment of the present disclosure, when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is the trigger type, after pushing the synchronization packet to the other terminal device that needs to be synchronized, an associated synchronization packet that includes information indicating the type of the associated synchronization action associated with the synchronization action and a value of the associated synchronization action and is sent by the other terminal device may also be received, and the associated synchronization packet is pushed to the terminal device. The information of the associated synchronization packet indicating the type of the associated synchronization action indicates that the type of the synchronization action is a request type. In embodiments of the present disclosure, values of associated synchronization actions of associated synchronization packets may also be stored. In the embodiment of the present disclosure, the information indicating the type of the association synchronization action of the pushed association synchronization packet may be further updated to indicate a setting type.
In the embodiment of the present disclosure, in response to determining that a new terminal device joins synchronization with the terminal device and the other terminal devices or rejoins synchronization after disconnection of the terminal device and one of the other terminal devices, a synchronization packet including the stored value of the synchronization action may be sent to the newly joined terminal device or one of the terminal device and the other terminal devices. As an example, when a new terminal device joins the conference room, a value currently used in the conference room, for example, a value that the user modifies the volume on hardware connected with the room or a value that the user modifies the screen parameter on hardware connected with the room, or the like, may be transmitted to the new terminal device through the synchronization packet so that the conference room system volume and the conference room screen parameter of the new terminal device are synchronized with the volume and the screen parameter of the conference room.
In the embodiment of the present disclosure, in response to determining that a new terminal device joins synchronization with the terminal device and the other terminal devices or joins synchronization again after one of the terminal device and the other terminal devices is disconnected, an associated synchronization packet including a stored value of an associated synchronization action may be sent to the newly joined terminal device or one of the terminal device and the other terminal devices. As an example, when a new terminal device joins a conference room, a value such as a modified volume or a modified screen parameter that is actually initiated by room, which is requested on a controller currently used in the conference room, is transmitted to the new terminal device through an associated synchronization packet, so that the conference room system volume and the conference room screen parameter of the new terminal device are synchronized with the volume and the screen parameter of the conference room.
Fig. 7 illustrates a flow diagram of a data synchronization method according to yet another embodiment of the present disclosure. The method is performed by a terminal device. In particular, the method may be performed by a client installed on a terminal device, the client comprising an application installed on the terminal device, by invoking a software development kit. The terminal device includes at least one of a personal computer, a mobile phone, a tablet, a television, and the like, which are capable of implementing the method of the present disclosure, and the application includes at least one of a social app, a video conference app, an instant messenger app, and an online education app.
Referring to fig. 7, in step S701, a synchronization packet pushed by a server is received. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action.
In an embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet includes information of a trigger type and information of a setting type. Here, the trigger type information indicates a value of a synchronization action that does not require the server to store the synchronization packet, the setting type information indicates a value of a synchronization action that requires the server to store the synchronization packet, and the setting type information is used to set the synchronization action.
In step S702, data synchronization or an association control operation is performed based on the received synchronization packet.
In an embodiment of the present disclosure, when data synchronization is performed based on a synchronization packet, data synchronization may be performed when information indicating a type of a synchronization action of the received synchronization packet indicates that the type of the synchronization action is a trigger type or a set type. When data synchronization is performed based on the synchronization packet, an association control operation may be performed when the information of the received synchronization packet indicates that the type of the synchronization action is a trigger type.
In the embodiment of the present disclosure, after the association control operation is performed in step S702, an association synchronization packet including information indicating the type of the association synchronization action and a value of the association synchronization action may be further generated based on the association control operation, and the generated association synchronization packet may be transmitted to the server to be forwarded to other terminal devices that need to be synchronized. Details regarding the synchronization packets and the associated synchronization packets have been described in detail in the description of fig. 2 and 4, and are not repeated here.
The data synchronization method and system according to the embodiments of the present disclosure have been described above with reference to fig. 1 to 7. Hereinafter, a terminal device, a server, and units thereof according to an embodiment of the present disclosure will be described with reference to fig. 8 to 10.
Fig. 8 shows a block diagram of a terminal device according to an embodiment of the present disclosure.
Referring to fig. 8, the terminal device includes an operation receiving unit 81, a packet generating unit 82, and a packet transmitting unit 83.
The operation receiving unit 81 is configured to receive an operation of the terminal device by the user. Here, the operation of the user with respect to the terminal device may be, for example, but not limited to, turning a camera, modifying volume, modifying screen parameters, accessing new hardware, and the like.
The packet generation unit 82 is configured to generate a synchronization packet based on the received operation. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action.
In the embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet generated by the packet generation unit 82 includes at least one of information of a trigger type and information of a request type. Here, the trigger type information indicates a value of a synchronization action that does not require the server to store the synchronization packet, and the request type information indicates a value of a synchronization action that requires the server to store the synchronization packet.
In an embodiment of the present disclosure, the value of the synchronization action of the synchronization packet may be used to indicate a synchronization action pre-agreed by the terminal device and the other terminal device. The synchronization action may include at least one of turning the camera, modifying the volume, modifying screen parameters, accessing new hardware.
The packet sending unit 83 is configured to send the generated synchronization packet to the server to be forwarded to other terminal devices that need synchronization.
In an embodiment of the present disclosure, the terminal device may further include a status updating unit (not shown) configured to receive an associated synchronization packet sent by the other terminal device via the server when the information indicating the type of the synchronization action of the generated synchronization packet indicates that the type of the synchronization action is the trigger type, and update the status stored by the terminal device with respect to the other terminal device according to the associated synchronization packet.
Fig. 9 shows a block diagram of a server according to an embodiment of the present disclosure.
Referring to fig. 9, the server includes a packet receiving unit 91, a parsing and processing unit 92, and a packet pushing unit 93.
The packet receiving unit 91 is configured to receive a synchronization packet transmitted by the terminal device. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action.
In the embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet received by the packet receiving unit 91 includes at least one of information indicating a trigger type and information indicating a request type, wherein the information indicating a trigger type does not require the server to store a value of the synchronization action of the synchronization packet, and the information indicating a request type requires the server to store a value of the synchronization action of the synchronization packet.
The packet pushing unit 93 is configured to push the processed synchronization packet to other terminal devices that need synchronization.
In an embodiment of the present disclosure, the parsing and processing unit 92 is configured to store a value of the synchronization action of the synchronization packet when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is the request type.
In an embodiment of the present disclosure, the parsing and processing unit 92 is configured to update the information of the received synchronization packet indicating the type of the synchronization action to indicate a set type when the information of the received synchronization packet indicating the type of the synchronization action indicates that the type of the synchronization action is a request type.
In an embodiment of the present disclosure, the server may further include an association pushing unit (not shown) configured to, when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is the trigger type, receive, after pushing the synchronization packet to the other terminal device that needs to be synchronized, an association synchronization packet sent by the other terminal device and including information indicating the type of the association synchronization action associated with the synchronization action and a value of the association synchronization action; and pushing the associated synchronization packet to the terminal device.
In an embodiment of the present disclosure, the information indicating the type of the associated synchronization action of the associated synchronization packet indicates that the type of the synchronization action is a request type.
In an embodiment of the present disclosure, the server may further include an association processing unit (not shown) configured to store a value of an association synchronization action of the association synchronization packet; and updating the information indicating the type of the associated synchronization action of the pushed associated synchronization packet to indicate a setting type.
In an embodiment of the present disclosure, the server may further include a first pushing unit (not shown) configured to send a synchronization packet including the stored value of the synchronization action to the newly joined terminal device or one of the terminal device and the other terminal device in response to determining that the new terminal device joins synchronization with the terminal device and the other terminal device or rejoins synchronization after disconnection of the terminal device and the other terminal device. In an embodiment of the present disclosure, the server may further include a second pushing unit (not shown) configured to send an associated synchronization packet including the stored value of the associated synchronization action to the newly joined terminal device or one of the terminal device and the other terminal device in response to determining that the new terminal device joins synchronization with the terminal device and the other terminal device or rejoins synchronization after disconnection of the terminal device and the other terminal device. In this way, the newly joined terminal device can perform data synchronization based on the value of the synchronization action and/or the value of the associated synchronization action, so that the newly joined terminal device can join the conference in the conference room.
Fig. 10 shows a block diagram of a terminal device according to another embodiment of the present disclosure.
Referring to fig. 10, the terminal apparatus includes a packet receiving unit 101 and an executing unit 102.
The data packet receiving unit 101 is configured to receive a synchronization data packet pushed by a server. Here, the synchronization packet may include information indicating the type of the synchronization action and a value of the synchronization action.
In the embodiment of the present disclosure, the information indicating the type of the synchronization action of the synchronization packet received by the packet receiving unit 101 includes at least one of information of a trigger type and information of a setting type. Here, the trigger type information indicates a value of a synchronization action that does not require the server to store the synchronization packet, the setting type information indicates a value of a synchronization action that requires the server to store the synchronization packet, and the setting type information is used to set the synchronization action.
The execution unit 102 is configured to perform data synchronization or perform an associated control operation based on the received synchronization packet.
In the embodiment of the present disclosure, the association control operation performed by the execution unit 102 is an operation associated with an operation of the other terminal device for which the user received by the other terminal device that generated the synchronization packet is directed.
In an embodiment of the present disclosure, the performing unit 102 may be configured to perform data synchronization when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is a trigger type or a set type.
In an embodiment of the present disclosure, the performing unit 102 may be configured to perform the association control operation when the information of the received synchronization packet indicates that the type of the synchronization action is the trigger type.
In an embodiment of the present disclosure, the terminal device may further include a packet generation unit (not shown) configured to generate an association synchronization packet including information indicating a type of the association synchronization action and a value of the association synchronization action based on the association control operation; and a packet transmitting unit (not shown) configured to transmit the generated associated synchronization packet to the server to be forwarded to other terminal devices requiring synchronization.
In an embodiment of the present disclosure, the information indicating the type of the associated synchronization action of the associated synchronization packet is information of a request type.
Referring now to fig. 11, a schematic diagram of an electronic device (e.g., a terminal device or server of fig. 8-10) 1100 suitable for implementing embodiments of the present disclosure is shown. The terminal device in the embodiments of the present disclosure may include, but is not limited to, a mobile terminal such as a mobile phone, a notebook computer, a digital broadcast receiver, a PDA (personal digital assistant), a PAD (tablet computer), a PMP (portable multimedia player), a vehicle terminal (e.g., a car navigation terminal), and the like, and a stationary terminal such as a digital TV, a desktop computer, and the like. The electronic device shown in fig. 11 is only an example, and should not bring any limitation to the functions and the scope of use of the embodiments of the present disclosure.
As shown in fig. 11, the electronic device 1100 may include a processing means (e.g., a central processing unit, a graphics processor, etc.) 1101 that may perform various appropriate actions and processes in accordance with a program stored in a Read Only Memory (ROM)1102 or a program loaded from a storage device 1106 into a Random Access Memory (RAM) 1103. In the RAM 1103, various programs and data necessary for the operation of the electronic device 1100 are also stored. The processing device 1101, the ROM 602, and the RAM 1103 are connected to each other by a bus 1104. An input/output (I/O) interface 1105 is also connected to bus 1104.
Generally, the following devices may be connected to the I/O interface 1105: input devices 1106 including, for example, a touch screen, touch pad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 1107 including, for example, Liquid Crystal Displays (LCDs), speakers, vibrators, and the like; storage devices 1106 including, for example, magnetic tape, hard disk, etc.; and a communication device 1109. The communication means 1109 may allow the electronic device 1100 to communicate wirelessly or wiredly with other devices to exchange data. While fig. 11 illustrates an electronic device 1100 having various means, it is to be understood that not all illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
In particular, according to an embodiment of the present disclosure, the processes described above with reference to the flowcharts may be implemented as computer software programs. For example, embodiments of the present disclosure include a computer program product comprising a computer program carried on a non-transitory computer readable medium, the computer program containing program code for performing the method illustrated by the flow chart. In such embodiments, the computer program may be downloaded and installed from a network through the communication device 1109, or installed from the storage device 1106, or installed from the ROM 1102. The computer program, when executed by the processing device 1101, performs the above-described functions defined in the methods of the embodiments of the present disclosure.
It should be noted that the computer readable medium in the present disclosure can be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present disclosure, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In contrast, in the present disclosure, a computer readable signal medium may comprise a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: electrical wires, optical cables, RF (radio frequency), etc., or any suitable combination of the foregoing.
In some embodiments, the clients, servers may communicate using any currently known or future developed network Protocol, such as HTTP (HyperText Transfer Protocol), and may interconnect with any form or medium of digital data communication (e.g., a communications network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future developed network.
The computer readable medium may be embodied in the electronic device; or may exist separately without being assembled into the electronic device.
The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: receiving the operation of a user for the terminal equipment; generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and sending the generated synchronization data packet to the server to be forwarded to other terminal devices needing synchronization.
Alternatively, the computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: receiving a synchronous data packet sent by a terminal device, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; analyzing and processing the synchronous data packet; and pushing the processed synchronous data packet to other terminal equipment needing synchronization.
Alternatively, the computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to: receiving a synchronous data packet pushed by a server, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; and performs data synchronization or performs an association control operation based on the received synchronization packet.
Computer program code for carrying out operations for the present disclosure may be written in any combination of one or more programming languages, including but not limited to an object oriented programming language such as Java, Smalltalk, C + +, and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet service provider).
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units described in the embodiments of the present disclosure may be implemented by software or hardware. Where the name of a unit does not in some cases constitute a limitation of the unit itself, for example, an execution unit may also be described as a "unit that performs data synchronization, or performs an associated control operation".
The functions described herein above may be performed, at least in part, by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), systems on a chip (SOCs), Complex Programmable Logic Devices (CPLDs), and the like.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
According to one or more embodiments of the present disclosure, [ example 1 ] there is provided a data synchronization method comprising: receiving the operation of a user for the terminal equipment; generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and sending the generated synchronous data packet to a server to be forwarded to other terminal equipment needing synchronization.
According to one or more embodiments of the present disclosure, [ example 2 ] there is provided the method of example 1, wherein the information of the generated synchronization packet indicating the type of the synchronization action includes information of a trigger type indicating a value of the synchronization action that does not require the server to store the synchronization packet.
According to one or more embodiments of the present disclosure, [ example 3 ] there is provided the method of example 1, wherein the information indicating the type of the synchronization action of the generated synchronization packet includes information indicating a request type indicating a value of the synchronization action requiring the server to store the synchronization packet.
According to one or more embodiments of the present disclosure, [ example 4 ] there is provided the method of example 1, wherein a value of the synchronization action of the synchronization packet is used to indicate the synchronization action pre-agreed by the terminal device and the other terminal device.
According to one or more embodiments of the present disclosure, [ example 5 ] there is provided the method of example 4, wherein the pre-agreed synchronization action comprises at least one of turning a camera, modifying a volume, modifying a screen parameter, accessing new hardware.
According to one or more embodiments of the present disclosure, [ example 6 ] there is provided the method of example 2, wherein when the information indicating the type of the synchronization action of the generated synchronization packet indicates that the type of the synchronization action is the trigger type, the method further comprises: and receiving the associated synchronous data packet sent by the other terminal equipment through the server, and updating the state of the other terminal equipment stored by the terminal equipment according to the associated synchronous data packet.
According to one or more embodiments of the present disclosure, [ example 7 ] there is provided the method of any one of examples 1-6, wherein the method is performed by a client installed on the terminal device, the client comprising an application installed on the terminal device, by invoking a software development kit.
According to one or more embodiments of the present disclosure, [ example 8 ] there is provided the method of example 7, wherein the terminal device comprises at least one of a personal computer, a cell phone, a tablet, and the application comprises at least one of a social app, a video conference app, an instant messaging app, an online education app.
According to one or more embodiments of the present disclosure, [ example 9 ] there is provided a data synchronization method comprising: receiving a synchronous data packet sent by a terminal device, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; analyzing and processing the synchronous data packet; and pushing the processed synchronous data packet to other terminal equipment needing synchronization.
According to one or more embodiments of the present disclosure, [ example 10 ] there is provided the method of example 9, wherein the information of the received synchronization packet indicating the type of the synchronization action includes information of a trigger type indicating a value of the synchronization action that does not require the server to store the synchronization packet.
According to one or more embodiments of the present disclosure, [ example 11 ] there is provided the method of example 9, wherein the information of the received synchronization packet indicating the type of the synchronization action includes information of a request type indicating a value of the synchronization action requiring the server to store the synchronization packet.
According to one or more embodiments of the present disclosure, [ example 12 ] there is provided the method of example 11, wherein the parsing and processing the synchronization packet comprises: when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is the request type, a value of the synchronization action of the synchronization packet is stored.
According to one or more embodiments of the present disclosure, [ example 13 ] there is provided the method of example 11, wherein the parsing and processing the synchronization packet comprises: when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is the request type, the information indicating the type of the synchronization action of the synchronization packet is updated to indicate the setting type.
According to one or more embodiments of the present disclosure, [ example 14 ] there is provided the method of example 10, wherein when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is a trigger type, after pushing the synchronization packet to the other terminal device that needs to be synchronized, the method further comprises: receiving an associated synchronization data packet which is sent by the other terminal equipment and comprises information indicating the type of the associated synchronization action associated with the synchronization action and a value of the associated synchronization action; and pushing the associated synchronous data packet to the terminal equipment.
According to one or more embodiments of the present disclosure, [ example 15 ] there is provided the method of example 14, wherein prior to pushing the association synchronization packet to the terminal device, the method further comprises: storing the value of the associated synchronization action of the associated synchronization packet; and updating the information of the pushed associated synchronization data packet indicating the type of the associated synchronization action into an indication setting type.
According to one or more embodiments of the present disclosure, [ example 16 ] there is provided the method of example 12, further comprising: and in response to determining that a new terminal device joins synchronization with the terminal device and the other terminal devices or rejoins synchronization after disconnection of the terminal device and one of the other terminal devices, sending a synchronization packet including the stored value of the synchronization action to the newly joined terminal device or one of the terminal device and the other terminal devices.
According to one or more embodiments of the present disclosure, [ example 17 ] there is provided the method of example 15, further comprising: and in response to determining that a new terminal device joins synchronization with the terminal device and the other terminal devices or rejoins synchronization after disconnection of the terminal device and one of the other terminal devices, sending an associated synchronization packet including the stored value of the associated synchronization action to the newly joined terminal device or one of the terminal device and the other terminal devices.
According to one or more embodiments of the present disclosure, [ example 18 ] there is provided a data synchronization method comprising: receiving a synchronous data packet pushed by a server, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; data synchronization or an association control operation is performed based on the received synchronization packet.
According to one or more embodiments of the present disclosure, [ example 19 ] there is provided the method of example 18, wherein the association control operation is an operation associated with an operation of the other terminal device for which the user received by the other terminal device that generated the synchronization packet.
According to one or more embodiments of the present disclosure, [ example 20 ] there is provided the method of example 18, wherein the information of the received synchronization packet indicating the type of the synchronization action includes at least one of information of a trigger type indicating a value of the synchronization action that does not require the server to store the synchronization packet and information of a set type for setting the synchronization action.
According to one or more embodiments of the present disclosure, [ example 21 ] there is provided the method of example 20, wherein the step of performing data synchronization based on the synchronization packet comprises: when the information indicating the type of the synchronization action of the received synchronization packet indicates that the type of the synchronization action is a trigger type or a set type, data synchronization is performed.
According to one or more embodiments of the present disclosure, [ example 22 ] there is provided the method of example 20, wherein the step of performing the association control operation based on the received synchronization packet comprises: when the information of the received synchronization packet indicates that the type of the synchronization action is a trigger type, an association control operation is performed.
According to one or more embodiments of the present disclosure, [ example 23 ] there is provided the method of example 22, wherein after performing the association control operation, the method further comprises: generating an association synchronization packet based on the association control operation, wherein the association synchronization packet includes information indicating a type of the association synchronization action and a value of the association synchronization action; and sending the generated associated synchronous data packet to a server to be forwarded to the other terminal equipment needing to be synchronized.
According to one or more embodiments of the present disclosure, [ example 24 ] there is provided the method of example 23, wherein the information of the associated synchronization packet indicating the type of the associated synchronization action is information of a request type.
According to one or more embodiments of the present disclosure, [ example 25 ] there is provided the method of any one of examples 18-24, wherein the method is performed by a client installed on the other terminal device, the client comprising an application installed on the other terminal device, by invoking a software development kit.
According to one or more embodiments of the present disclosure, [ example 26 ] there is provided the method of example 25, wherein the other terminal device comprises at least one of a personal computer, a cell phone, a tablet, and the application comprises at least one of a social app, a video conference app, an instant messaging app, an online education app.
According to one or more embodiments of the present disclosure, [ example 27 ] there is provided a data synchronization system comprising: a terminal device, a server and another terminal device, wherein the terminal device is configured to: receiving the operation of a user for the terminal equipment; generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; sending the generated synchronization data packet to a server for forwarding to another terminal device requiring synchronization, the server being configured to: receiving a synchronous data packet sent by a terminal device, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; analyzing and processing the synchronous data packet; pushing the processed synchronization data packet to another terminal device needing synchronization, wherein the another terminal device is configured to: receiving a synchronous data packet pushed by a server, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; data synchronization or an association control operation is performed based on the received synchronization packet.
According to one or more embodiments of the present disclosure, [ example 28 ] there is provided the system of example 27, wherein the information indicating the type of the synchronization action of the synchronization packet generated by the terminal device includes information indicating a trigger type indicating a value of the synchronization action that does not require the server to store the synchronization packet.
According to one or more embodiments of the present disclosure, [ example 29 ] there is provided the system of example 27, wherein the information of the generated synchronization packet indicating the type of the synchronization action includes information of a request type indicating a value of the synchronization action requiring the server to store the synchronization packet.
According to one or more embodiments of the present disclosure, [ example 30 ] there is provided the system of example 27, wherein a value of the synchronization action of the synchronization packet generated by the terminal device is used to indicate a synchronization action pre-agreed by the terminal device and the other terminal device.
According to one or more embodiments of the present disclosure, [ example 31 ] there is provided the system of example 28, wherein when the information indicating the type of the synchronization action of the generated synchronization packet indicates that the type of the synchronization action is the trigger type, the terminal device is further configured to: and receiving the associated synchronous data packet sent by the other terminal equipment through the server, and updating the state stored by the terminal equipment and related to the other terminal equipment according to the associated synchronous data packet.
According to one or more embodiments of the present disclosure, [ example 32 ] there is provided the system of example 27, wherein the information of the synchronization packet received by the server indicating the type of the synchronization action comprises information of a trigger type.
According to one or more embodiments of the present disclosure, [ example 33 ] there is provided the system of example 27, wherein the information of the synchronization packet received by the server indicating the type of the synchronization action comprises information of a request type.
In accordance with one or more embodiments of the present disclosure, [ example 34 ] there is provided the system of example 33, wherein the server is configured to: when the information indicating the type of the synchronization action indicates that the type of the synchronization action is the request type, a value of the synchronization action of the synchronization packet is stored.
In accordance with one or more embodiments of the present disclosure, [ example 35 ] there is provided the system of example 33, wherein the server is configured to: when the information indicating the type of the synchronization action indicates that the type of the synchronization action is the request type, the information indicating the type of the synchronization action of the synchronization packet is updated to indicate the set type.
In accordance with one or more embodiments of the present disclosure, [ example 36 ] there is provided the system of example 33, wherein the server is further configured to: when the information indicating the type of the synchronization action indicates that the type of the synchronization action is a trigger type, after pushing a synchronization packet to the other terminal device requiring synchronization, receiving an associated synchronization packet including information indicating the type of an associated synchronization action associated with the synchronization action and a value of the associated synchronization action sent by the other terminal device, and pushing the associated synchronization packet to the terminal device.
In accordance with one or more embodiments of the present disclosure, [ example 37 ] there is provided the system of example 36, wherein the server is further configured to: storing the value of the associated synchronization action of the associated synchronization data packet; and updating the information of the pushed associated synchronization data packet indicating the type of the associated synchronization action into an indication setting type.
In accordance with one or more embodiments of the present disclosure, [ example 38 ] there is provided the system of example 34, wherein the server is further configured to: and in response to determining that a new terminal device joins synchronization with the terminal device and the other terminal devices or rejoins synchronization after disconnection of the terminal device and one of the other terminal devices, sending a synchronization packet including the stored value of the synchronization action to the newly joined terminal device or one of the terminal device and the other terminal devices.
In accordance with one or more embodiments of the present disclosure, [ example 39 ] there is provided the system of example 37, wherein the server is further configured to: and in response to determining that a new terminal device joins synchronization with the terminal device and the other terminal devices or rejoins synchronization after disconnection of the terminal device and one of the other terminal devices, sending an associated synchronization packet including the stored value of the associated synchronization action to the newly joined terminal device or one of the terminal device and the other terminal devices.
According to one or more embodiments of the present disclosure, [ example 40 ] there is provided the system of example 27, wherein the association control operation is an operation associated with an operation of the terminal device by a user received by the terminal device generating the sync packet.
According to one or more embodiments of the present disclosure, [ example 41 ] there is provided the system of example 27, wherein the information indicating the type of the synchronization action of the synchronization packet received by the another terminal device includes at least one of information indicating a trigger type and information indicating a setting type, the setting type information being used to set the synchronization action.
According to one or more embodiments of the present disclosure, [ example 42 ] there is provided the system of example 41, wherein the another terminal device is further configured to: when the information indicating the type of the synchronization action of the received synchronization packet is the trigger type information or the setting type information, data synchronization is performed.
According to one or more embodiments of the present disclosure, [ example 43 ] there is provided the system of example 41, wherein the another terminal device is further configured to: when the information indicating the type of the synchronization action of the received synchronization packet is the trigger type information, the association control operation is performed.
According to one or more embodiments of the present disclosure, [ example 44 ] there is provided the system of example 43, wherein the another terminal device is further configured to: after the association control operation is executed, generating an association synchronization packet based on the association control operation, wherein the association synchronization packet includes information indicating a type of the association synchronization action and a value of the association synchronization action; and sending the generated associated synchronization data packet to a server to be forwarded to the terminal device needing synchronization.
According to one or more embodiments of the present disclosure, [ example 45 ] there is provided the system of example 44, wherein the information of the associated synchronization packet indicating the type of the associated synchronization action indicates that the type of the synchronization action is a request type.
According to one or more embodiments of the present disclosure, [ example 46 ] there is provided a terminal device comprising: an operation receiving unit configured to receive an operation of a user for a terminal device; a packet generation unit configured to generate a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and the data packet sending unit is configured to send the generated synchronous data packet to the server so as to forward the synchronous data packet to other terminal equipment needing synchronization.
According to one or more embodiments of the present disclosure, [ example 47 ] there is provided a server comprising: a packet receiving unit configured to receive a synchronization packet transmitted by a terminal device, wherein the synchronization packet includes information indicating a type of a synchronization action and a value of the synchronization action; the analysis and processing unit is configured to analyze and process the synchronous data packet; and the data packet pushing unit is configured to push the processed synchronous data packet to other terminal equipment needing synchronization.
According to one or more embodiments of the present disclosure, [ example 48 ] there is provided a terminal device comprising: a data packet receiving unit configured to receive a synchronization data packet pushed by a server, wherein the synchronization data packet includes information indicating a type of a synchronization action and a value of the synchronization action; and an execution unit configured to perform data synchronization or perform an association control operation based on the received synchronization packet.
According to one or more embodiments of the present disclosure, [ example 49 ] there is provided a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the method of any of examples 1 to 26.
According to one or more embodiments of the present disclosure, [ example 50 ] there is provided an electronic device comprising: a processor; a memory storing a computer program that, when executed by the processor, implements the method of any of examples 1-26.
The foregoing description is only exemplary of the preferred embodiments of the disclosure and is illustrative of the principles of the technology employed. It will be appreciated by those skilled in the art that the scope of the disclosure herein is not limited to the particular combination of features described above, but also encompasses other embodiments in which any combination of the features described above or their equivalents does not depart from the spirit of the disclosure. For example, the above features and (but not limited to) the features disclosed in this disclosure having similar functions are replaced with each other to form the technical solution.
Further, while operations are depicted in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination.
According to the data synchronization method, the data synchronization system, the terminal device and the server, the problem of data synchronization among devices in a conference room scene is solved, the expandability of data communication among the devices can be ensured, the server side cannot sense the increased data types when the data types are increased, and therefore various kinds of data needing to be synchronized are conveniently added.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (10)

1. A method of data synchronization, comprising:
receiving the operation of a user for the terminal equipment;
generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action;
and sending the generated synchronous data packet to a server to be forwarded to other terminal equipment needing synchronization.
2. The method of claim 1, wherein the information indicating the type of the synchronization action of the generated synchronization packet includes information indicating a trigger type indicating a value of the synchronization action that does not require the server to store the synchronization packet.
3. The method of claim 1, wherein the information indicating the type of the synchronization action of the generated synchronization packet includes information indicating a request type indicating a value of the synchronization action requiring the server to store the synchronization packet.
4. The method of claim 2, wherein when the information indicating the type of the synchronization action of the generated synchronization packet indicates that the type of the synchronization action is a trigger type, the method further comprises:
and receiving the associated synchronous data packet sent by the other terminal equipment through the server, and updating the state of the other terminal equipment stored by the terminal equipment according to the associated synchronous data packet.
5. A method of data synchronization, comprising:
receiving a synchronous data packet sent by a terminal device, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action;
analyzing and processing the synchronous data packet;
and pushing the processed synchronous data packet to other terminal equipment needing synchronization.
6. A method of data synchronization, comprising:
receiving a synchronous data packet pushed by a server, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action;
data synchronization or an association control operation is performed based on the received synchronization packet.
7. A data synchronization system, comprising: a terminal device, a server and another terminal device, wherein,
the terminal device is configured to: receiving the operation of a user for the terminal equipment; generating a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; the generated synchronization data packet is sent to the server to be forwarded to another terminal device requiring synchronization,
the server is configured to: receiving a synchronous data packet sent by a terminal device, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; analyzing and processing the synchronous data packet; pushing the processed synchronous data packet to another terminal device needing synchronization,
the other terminal device is configured to: receiving a synchronous data packet pushed by a server, wherein the synchronous data packet comprises information indicating the type of the synchronous action and a value of the synchronous action; data synchronization or an association control operation is performed based on the received synchronization packet.
8. A terminal device, comprising:
an operation receiving unit configured to receive an operation of a user for a terminal device;
a packet generation unit configured to generate a synchronization packet based on the received operation, wherein the synchronization packet includes information indicating a type of the synchronization action and a value of the synchronization action; and
and the data packet sending unit is configured to send the generated synchronous data packet to the server so as to forward the synchronous data packet to other terminal equipment needing synchronization.
9. A server, comprising:
a packet receiving unit configured to receive a synchronization packet transmitted by a terminal device, wherein the synchronization packet includes information indicating a type of a synchronization action and a value of the synchronization action;
the analysis and processing unit is configured to analyze and process the synchronous data packet; and
and the data packet pushing unit is configured to push the processed synchronous data packet to other terminal equipment needing synchronization.
10. A terminal device, comprising:
a data packet receiving unit configured to receive a synchronization data packet pushed by a server, wherein the synchronization data packet includes information indicating a type of a synchronization action and a value of the synchronization action; and
an execution unit configured to perform data synchronization or perform an association control operation based on the received synchronization packet.
CN202011064576.6A 2020-09-30 2020-09-30 Data synchronization method and device and system using same Active CN112187943B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011064576.6A CN112187943B (en) 2020-09-30 2020-09-30 Data synchronization method and device and system using same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011064576.6A CN112187943B (en) 2020-09-30 2020-09-30 Data synchronization method and device and system using same

Publications (2)

Publication Number Publication Date
CN112187943A true CN112187943A (en) 2021-01-05
CN112187943B CN112187943B (en) 2023-04-07

Family

ID=73948188

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011064576.6A Active CN112187943B (en) 2020-09-30 2020-09-30 Data synchronization method and device and system using same

Country Status (1)

Country Link
CN (1) CN112187943B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314333A (en) * 2022-07-14 2022-11-08 青岛海尔科技有限公司 Data sharing method and device, storage medium and electronic device

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202957917U (en) * 2012-06-21 2013-05-29 桂林一石媒体技术有限公司 Multifunctional network conference system
CN105357223A (en) * 2015-12-07 2016-02-24 山东山大华天软件有限公司 Three dimensional cooperation conference system based on instant messaging protocol and realization method thereof
US20170104661A1 (en) * 2015-10-11 2017-04-13 Microsoft Technology Licensing, Llc Synchronization of data for colliding bodies
CN107819809A (en) * 2016-09-14 2018-03-20 京东方科技集团股份有限公司 The method and device of operation is synchronized to content
CN107948159A (en) * 2017-11-27 2018-04-20 宁波市科技园区明天医网科技有限公司 A kind of method of medical image simultaneous display and diagnostic operation based on browser
CN108809670A (en) * 2018-07-02 2018-11-13 贵州康络维医疗科技发展有限公司 A kind of method of the cross-platform multi-screen interactive of medical image
CN109168064A (en) * 2018-09-17 2019-01-08 视联动力信息技术股份有限公司 A kind of synchronous display method and system of electronic data
CN110446002A (en) * 2019-07-30 2019-11-12 视联动力信息技术股份有限公司 A kind of processing method of video conference, system and device and storage medium

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202957917U (en) * 2012-06-21 2013-05-29 桂林一石媒体技术有限公司 Multifunctional network conference system
US20170104661A1 (en) * 2015-10-11 2017-04-13 Microsoft Technology Licensing, Llc Synchronization of data for colliding bodies
CN105357223A (en) * 2015-12-07 2016-02-24 山东山大华天软件有限公司 Three dimensional cooperation conference system based on instant messaging protocol and realization method thereof
CN107819809A (en) * 2016-09-14 2018-03-20 京东方科技集团股份有限公司 The method and device of operation is synchronized to content
CN107948159A (en) * 2017-11-27 2018-04-20 宁波市科技园区明天医网科技有限公司 A kind of method of medical image simultaneous display and diagnostic operation based on browser
CN108809670A (en) * 2018-07-02 2018-11-13 贵州康络维医疗科技发展有限公司 A kind of method of the cross-platform multi-screen interactive of medical image
CN109168064A (en) * 2018-09-17 2019-01-08 视联动力信息技术股份有限公司 A kind of synchronous display method and system of electronic data
CN110446002A (en) * 2019-07-30 2019-11-12 视联动力信息技术股份有限公司 A kind of processing method of video conference, system and device and storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314333A (en) * 2022-07-14 2022-11-08 青岛海尔科技有限公司 Data sharing method and device, storage medium and electronic device

Also Published As

Publication number Publication date
CN112187943B (en) 2023-04-07

Similar Documents

Publication Publication Date Title
CN112312060B (en) Screen sharing method and device and electronic equipment
CN110909521B (en) Online document information synchronous processing method and device and electronic equipment
JP7430821B2 (en) Information interaction methods, devices, servers, systems and storage media
CN109510754B (en) Online document generation method, device and system and electronic equipment
US20200169774A1 (en) Control method and device
CN112019625B (en) Websocket-based message pushing method, system, device and medium
CN113595850A (en) Information interaction method, device, server, system and storage medium
CN110781373B (en) List updating method and device, readable medium and electronic equipment
CN112165480B (en) Information acquisition method and device and electronic equipment
CN111246228B (en) Method, device, medium and electronic equipment for updating gift resources of live broadcast room
WO2023109670A1 (en) Sharing method and apparatus, electronic device, storage medium and computer program product
CN112269770B (en) Document sharing method, device and system and electronic equipment
CN111818291B (en) Method and device for establishing multimedia call and electronic equipment
CN112256733A (en) Data caching method and device, electronic equipment and computer readable storage medium
CN111694757A (en) Application program testing method and device, electronic equipment and computer readable storage medium
CN112965673A (en) Content printing method, device, equipment and storage medium
CN112187943B (en) Data synchronization method and device and system using same
CA3143824A1 (en) Special effect synchronization method, device, and storage medium
WO2015143045A1 (en) System for using a device as a side car
CN112713969B (en) Data transmission method and device and system using same
CN113114535A (en) Network fault detection method and device and electronic equipment
WO2023207788A1 (en) Information processing method and apparatus, electronic device, and storage medium
CN110996164A (en) Video distribution method and device, electronic equipment and computer readable medium
CN111212257A (en) Control method and device for distributed video conference and related equipment
WO2022042592A1 (en) Screen projection method and apparatus, electronic device, and computer-readable medium

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