Disclosure of Invention
The invention aims to provide a method for freely combining similar equipment to complete remote audio and video and document collaboration.
The technical scheme adopted by the invention is as follows:
A method for completing remote audio/video and document collaboration by free combination of similar equipment comprises the following steps:
Step 1, accessing a local area network as equipment of a cooperator, registering equipment information in the local area network by using an mDNS (Multicast DNS) and distributing an expansion screen service of free combination of the equipment;
step 2, the equipment serving as an initiator enters a local area network, and a multicast message is sent to inquire about the extended screen service of the free combination of all the provided equipment in the local area network so as to acquire and analyze the registered equipment information serving as a cooperator;
Step 3, the initiator equipment performs equipment pairing with the cooperator according to the equipment information registered by the cooperator, and exchanges own public keys;
Step 4, after the initiator device and the cooperator device are successfully matched, a stable TCP long link is established, and each cooperator performs data interaction according to a multi-screen cooperation protocol (MDCT);
And 5, the initiator receives the audio/video and document collaboration data of each collaborator and sends the data to the remote collaboration equipment through the MQTT to realize remote collaboration.
Specifically, the device group can freely adjust the device number, adjust the splicing scene in real time according to the number, can see the current all connected device list and the splicing mode on the setting page of the initiating device, can freely combine and adjust the corresponding splicing scene in real time by dragging and moving the corresponding device control, and can dynamically add or delete the corresponding device.
Further, the registered device information in step 1 includes registered IP, port, device name, type information.
Further, the specific steps of step 3 are as follows:
Step 3-1, the equipment of the initiator establishes Socket link with the equipment of the cooperator according to the connection information in the registered equipment information, and sends identity information and self public key request pairing to the equipment of the cooperator;
Step 3-2, the cooperator equipment receives the pairing request and selects whether to accept pairing, if yes, the public key of the cooperator equipment is encrypted and returned to the initiator equipment through the public key sent by the initiator equipment, and step 3-3 is executed;
and 3-3, the initiator device uses the private key of the initiator device to analyze the information returned by the cooperator device, and obtains and stores the public key of the cooperator device.
Specifically, the innovation point of the inter-device communication protocol (multi-screen cooperation protocol MDCT) is 1, privacy, and the MDCT protocol is a self-research protocol. 2. And the security is achieved by packing the data in the local area network, encrypting and transmitting the data by using the public key at the transmitting end, decrypting by using the private key at the receiving end, and guaranteeing the security of data transmission. 3. The compatibility and the expandability are that 3.1 MDCT protocol realizes the compatibility of equipment communication between different versions through type+general data+expandable data, for example, the protocol version of equipment A is 1, the protocol version of equipment B is 2, the equipment A and the equipment B have no method for communication according to the existing protocols, and 3.1.1 can communicate with the equipment B through the general data of MDCT protocol in the equipment A, thereby ensuring the normal communication of the general data in different versions. 3.1.2 Through the extensible data of the MDCT protocol, normal communication of devices of different versions is guaranteed, meanwhile, the devices of the same version can have the latest function, and normal communication can be achieved between the devices.
Further, in step 4, the data is encapsulated by adopting a fixed header+variable content according to the multi-screen cooperation protocol MDCT, the fixed header contains a data type+general data+variable data length, the variable content is changed according to the data type and variable data length, the data sender encrypts and sends the data by using the public key of the data receiver obtained in the device pairing process, and after receiving the data sent by other devices, the devices of each cooperator decrypt the data by using the private key of the cooperator to complete the data interaction.
Further, the step 5 specifically includes the following steps:
step 5-1, respectively building a small http server on each cooperator device for file request and transmission between the devices;
and 5-2, enabling the initiator device and each piece of cooperator device to realize TCP long-chain link sharing data through Socket links, enabling the equipment of each cooperator to form a device group, enabling the cooperator devices to share files through http servers built respectively, enabling the equipment to communicate data, enabling the files to share, and enabling audio and video and document collaboration across multiple screens to be realized according to a multi-screen cooperation protocol (MDCT).
Further, the small http server of step 5-1 is used for asynchronous transmission of media information.
Further, each device in step 5-2 encapsulates the data according to the multi-screen collaboration protocol, then encrypts and transmits the data by using the public key of the other party obtained in the pairing process, decrypts the data by using the private key after receiving the data transmitted by other devices, and completes data interaction.
Further, in step 5-2, the function expansion is implemented in a downward compatible manner by defining a version of the multi-screen cooperation protocol (MDCT).
The invention adopts the technical scheme, is based on the conference whiteboard system, and is used in a local area network environment by making a communication protocol. The method can be used for combining a plurality of Android system devices, a plurality of small program devices at mobile terminals, a plurality of Windows computer devices or a plurality of kylin system devices into a device group, the devices do not need to be connected in real, and a plurality of screens and various interactive conference scenes are spliced through protocol expansion. The method has the advantages that the multiple similar devices can be assigned with the function of permission, any operation document can be assigned, one operation document is written, the audio and video operation is carried out, the device operation is not affected and limited, the conference is more efficient, the multiple similar devices can be simultaneously written and moved, and the like, so that a brand new multi-screen whiteboard writing experience is provided, and conference contents are cooperated together. The invention can adjust the spliced scene in real time, dynamically add and delete equipment, and meet the requirements of any conference office. Compared with a single display device, the invention has the advantages that a plurality of devices are spliced to enable the conference to obtain larger display space, richer display combination and more efficient content display, and immersive conference experience is brought to users.
Description of the embodiments
In order to make the objects, technical solutions and advantages of the embodiments of the present application more clear, the technical solutions of the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application.
MDNS, i.e. multicast DNS, is a protocol for resolving hostnames and services within a local area network. It allows devices to perform service discovery without using a traditional DNS server and automatically assign IP addresses within a local area network, such as Android Network Service Discovery (NSD), bonjour of apples. Socket is an abstraction of endpoints for two-way communication between application processes on different hosts in a network, and is a basic operation unit for supporting path communication of TCP/IP protocol, socket usually exchanges data with each other in a local area network, and various processes communicate with Internet protocol clusters in the local area network. The hypertext transfer protocol (Hyper Text Transfer Protocol, HTTP) is a simple request response protocol, HTTP is an object oriented protocol that allows the transfer of any type of data object.
As shown in FIG. 1, the invention discloses a method for freely combining similar equipment to complete remote audio/video and document collaboration, which comprises the following steps:
Step 1, accessing a local area network as equipment of a cooperator, registering equipment information in the local area network by using an mDNS (Multicast DNS) and distributing an expansion screen service of free combination of the equipment;
step 2, the equipment serving as an initiator enters a local area network, and a multicast message is sent to inquire about the extended screen service of the free combination of all the provided equipment in the local area network so as to acquire and analyze the registered equipment information serving as a cooperator;
Step 3, the initiator equipment performs equipment pairing with the cooperator according to the equipment information registered by the cooperator, and exchanges own public keys;
Step 4, after the initiator device and the cooperator device are successfully matched, a stable TCP long link is established, and each cooperator performs data interaction according to a multi-screen cooperation protocol (MDCT);
And 5, the initiator receives the audio/video and document collaboration data of each collaborator and sends the data to the remote collaboration equipment through the MQTT to realize remote collaboration.
Specifically, the device group can freely adjust the device number, adjust the splicing scene in real time according to the number, can see the current all connected device list and the splicing mode on the setting page of the initiating device, can freely combine and adjust the corresponding splicing scene in real time by dragging and moving the corresponding device control, and can dynamically add or delete the corresponding device.
Further, the registered device information in step 1 includes registered IP, port, device name, type information.
Further, the specific steps of step 3 are as follows:
Step 3-1, the equipment of the initiator establishes Socket link with the equipment of the cooperator according to the connection information in the registered equipment information, and sends identity information and self public key request pairing to the equipment of the cooperator;
Step 3-2, the cooperator equipment receives the pairing request and selects whether to accept pairing, if yes, the public key of the cooperator equipment is encrypted and returned to the initiator equipment through the public key sent by the initiator equipment, and step 3-3 is executed;
and 3-3, the initiator device uses the private key of the initiator device to analyze the information returned by the cooperator device, and obtains and stores the public key of the cooperator device.
Specifically, the cooperator apparatus B establishes Socket link with the initiator apparatus a according to the searched IP and port of the initiator apparatus a, and transmits identity information and its own public key request pairing. After receiving the pairing request, the initiator device a responds to the request and selects whether to accept pairing. If refused, disconnecting, canceling the pairing process, and if agreed, encrypting and returning the public key to the opposite party through the public key sent by the opposite party. After the initiator device A responds to the request, the cooperator device B uses the private key to analyze the information returned by the initiator device, and obtains and stores the public key sent by the initiator device A.
The innovation point of the inter-device communication protocol (multi-screen cooperation protocol MDCT) is 1, privacy, and the MDCT protocol is a self-grinding protocol. 2. And the security is achieved by packing the data in the local area network, encrypting and transmitting the data by using the public key at the transmitting end, decrypting by using the private key at the receiving end, and guaranteeing the security of data transmission. 3. The compatibility and the expandability are that 3.1 MDCT protocol realizes the compatibility of equipment communication between different versions through type+general data+expandable data, for example, the protocol version of equipment A is 1, the protocol version of equipment B is 2, the equipment A and the equipment B have no method for communication according to the existing protocols, and 3.1.1 can communicate with the equipment B through the general data of MDCT protocol in the equipment A, thereby ensuring the normal communication of the general data in different versions. 3.1.2 Through the extensible data of the MDCT protocol, normal communication of devices of different versions is guaranteed, meanwhile, the devices of the same version can have the latest function, and normal communication can be achieved between the devices.
Further, in step 4, the data is encapsulated by adopting a fixed header+variable content according to the multi-screen cooperation protocol MDCT, the fixed header contains a data type+general data+variable data length, the variable content is changed according to the data type and variable data length, the data sender encrypts and sends the data by using the public key of the data receiver obtained in the device pairing process, and after receiving the data sent by other devices, the devices of each cooperator decrypt the data by using the private key of the cooperator to complete the data interaction.
Further, the step 5 specifically includes the following steps:
step 5-1, respectively building a small http server on each cooperator device for file request and transmission between the devices;
and 5-2, enabling the initiator device and each piece of cooperator device to realize TCP long-chain link sharing data through Socket links, enabling the equipment of each cooperator to form a device group, enabling the cooperator devices to share files through http servers built respectively, enabling the equipment to communicate data, enabling the files to share, and enabling audio and video and document collaboration across multiple screens to be realized according to a multi-screen cooperation protocol (MDCT).
Further, the small http server of step 5-1 is used for asynchronous transmission of media information. Specifically, in order to ensure that media information such as pictures and audio can be asynchronously transmitted without blocking normal device communication, a small http server is additionally built on each device for file request and transmission between devices.
Further, each device in step 5-2 encapsulates the data according to the multi-screen collaboration protocol, then encrypts and transmits the data by using the public key of the other party obtained in the pairing process, decrypts the data by using the private key after receiving the data transmitted by other devices, and completes data interaction. When a plurality of devices enter a local area network, each device can be connected with other devices, so that a device group is formed, the devices can be freely adjusted, and the splicing scene can be adjusted in real time.
Further, in step 5-2, the function expansion is implemented in a downward compatible manner by defining a version of the multi-screen cooperation protocol (MDCT).
The invention adopts the technical scheme, is based on the conference whiteboard system, and is used in a local area network environment by making a communication protocol. The method can be used for combining a plurality of Android system devices, a plurality of small program devices at mobile terminals, a plurality of Windows computer devices or a plurality of kylin system devices into a device group, the devices do not need to be connected in real, and a plurality of screens and various interactive conference scenes are spliced through protocol expansion. The method has the advantages that the multiple similar devices can be assigned with the function of permission, any operation document can be assigned, one operation document is written, the audio and video operation is carried out, the device operation is not affected and limited, the conference is more efficient, the multiple similar devices can be simultaneously written and moved, and the like, so that a brand new multi-screen whiteboard writing experience is provided, and conference contents are cooperated together. The invention can adjust the spliced scene in real time, dynamically add and delete equipment, and meet the requirements of any conference office. Compared with a single display device, the invention has the advantages that a plurality of devices are spliced to enable the conference to obtain larger display space, richer display combination and more efficient content display, and immersive conference experience is brought to users.
It will be apparent that the described embodiments are some, but not all, embodiments of the application. Embodiments of the application and features of the embodiments may be combined with each other without conflict. The components of the embodiments of the present application generally described and illustrated in the figures herein may be arranged and designed in a wide variety of different configurations. Thus, the detailed description of the embodiments of the application is not intended to limit the scope of the application, as claimed, but is merely representative of selected embodiments of the application. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.