CN109194729B - Information communication system and method - Google Patents

Information communication system and method Download PDF

Info

Publication number
CN109194729B
CN109194729B CN201810972660.4A CN201810972660A CN109194729B CN 109194729 B CN109194729 B CN 109194729B CN 201810972660 A CN201810972660 A CN 201810972660A CN 109194729 B CN109194729 B CN 109194729B
Authority
CN
China
Prior art keywords
message
communication
server
sending
instruction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810972660.4A
Other languages
Chinese (zh)
Other versions
CN109194729A (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.)
Guoguang East Network Beijing Co ltd
Original Assignee
Guoguang East Network Beijing 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 Guoguang East Network Beijing Co ltd filed Critical Guoguang East Network Beijing Co ltd
Priority to CN201810972660.4A priority Critical patent/CN109194729B/en
Publication of CN109194729A publication Critical patent/CN109194729A/en
Application granted granted Critical
Publication of CN109194729B publication Critical patent/CN109194729B/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/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The present application provides an information communication system, wherein, the system includes: a first device and a message server; the first equipment is used for receiving the communication message sent by the message server and verifying the validity of the received communication message; after the communication message is verified to be valid, sending an analysis instruction to a message server; the first device is also used for receiving and executing the message instruction; the message server is used for sending the communication message to the message server; receiving an analysis instruction, analyzing the communication message based on the analysis instruction, and acquiring a message instruction code corresponding to the communication message; matching a message instruction corresponding to the message instruction code according to the message instruction code; the message instruction is sent to the first device.

Description

Information communication system and method
Technical Field
The present application relates to the field of internet technologies, and in particular, to an information communication system and method.
Background
At present, when communication is performed between devices, the devices need to establish NETWORK connection, after the devices establish the first NETWORK connection, an Internet Protocol (IP) address interconnected between NETWORKs is obtained, and obtaining the IP address by the devices means that the devices have been added to the NETWORKs, and the devices perform cyclic broadcast in the local area NETWORK through local area NETWORK communication protocols such as a digital living NETWORK ALLIANCE (DIGITAL LIVING NETWORK ALLIANCE, DLNA), a Server Messages Block (SMB), and the like until another device is found to initiate a communication request to the devices. When another device is found to initiate a communication request with the device, the communication relationship between the two devices is established through local area network protocols such as DLNA, SMB and the like.
However, the communication relationship established by the devices through local area network protocols such as DLNA, SMB, and the like performs data transmission through the same protocol model when performing data transmission, so that the communication relationship between the devices limits the data transmission between the devices to be performed in the local area network, and the interconnection and intercommunication of a plurality of remote devices cannot be realized.
Disclosure of Invention
In view of this, an object of the embodiments of the present application is to provide an information communication system and method, in which a device can perform data transmission without relying on a transmission means of a local area network, so as to implement real-time remote interconnection and interworking of multiple devices.
In a first aspect, an embodiment of the present application provides an information communication system, where the system includes: a first device and a message server;
the first device is used for receiving the communication message sent by the message server and verifying the validity of the received communication message; after the communication message is verified to be valid, sending an analysis instruction to a message server; the first device is also used for receiving and executing message instructions;
the message server is used for sending the communication message to the first equipment; receiving the analysis instruction, analyzing the communication message based on the analysis instruction, and acquiring a message instruction code corresponding to the communication message; according to the message instruction code, matching a message instruction corresponding to the message instruction code; and sending the message instruction to the first equipment.
With reference to the first aspect, an embodiment of the present application provides a first possible implementation manner of the first aspect, where:
the system further comprises: a second device and a verification server;
the first device is further configured to obtain a second device identifier of the second device, bind the second device identifier and the first device identifier of the first device, and send the bound second device identifier and the first device identifier of the first device as binding information to the verification server;
the checking server is used for storing and forwarding the binding information;
and the second equipment is used for sending the communication message to the message server.
With reference to the first possible implementation manner of the first aspect, an embodiment of the present application provides a second possible implementation manner of the first aspect, where:
the first device is further configured to send a first identity verification request to the server after receiving the communication message sent by the message server; receiving binding information sent by the server based on the first identity verification request, and verifying the validity of the communication message according to the binding information;
the verification server is used for receiving a first identity verification request of the first equipment; and sending the binding information to the first device according to the first identity verification request.
In combination with the first possible implementation manner of the first aspect, the present application provides a third possible implementation manner of the first aspect, wherein,
the second device is further configured to send a second authentication request to the server; and receiving binding information sent by the server based on the second identity authentication request, checking whether the first equipment has a binding relationship with the second equipment according to the binding information, and sending the communication message to the message server by the second equipment when the first equipment has the binding relationship with the second equipment, wherein the binding relationship is the binding state of the first equipment identifier and the second equipment identifier.
In combination with the second possible implementation manner of the first aspect, the present application provides a fourth possible implementation manner of the first aspect, wherein,
the communication message comprises: a message sending device identifier and a message target device identifier;
the first device is specifically configured to verify validity of the communication message according to the following steps:
acquiring a message sending device identifier and a message target device identifier in the communication message;
according to the binding message, detecting the consistency of the message sending equipment identification and a second equipment identification in the binding message, and detecting the consistency of the message target equipment identification and a first equipment identification in the binding message;
and when the message sending equipment identification is detected to be consistent with the second equipment identification in the binding message and the message target equipment identification is detected to be consistent with the first equipment identification in the binding message, the communication message is valid.
In combination with the second possible implementation manner of the first aspect, the present application provides a fifth possible implementation manner of the first aspect, wherein,
the communication message further comprises: a message sending account;
the verification server is also used for storing a second local login account which is authorized to send the communication message to the first local login account; carrying the second local login account in the binding information, and sending the binding information to the first device;
the first device is specifically further configured to verify validity of the communication message according to the following steps:
acquiring a message sending account in the communication message, and acquiring a second local login account in the binding information;
detecting whether the message sending account is consistent with the second local login account;
and when the message sending account is detected to be consistent with the second local login account, the communication message is valid.
In combination with the first aspect, the present examples provide a sixth possible implementation manner of the first aspect, where,
the communication message further comprises: a message target account number;
the first device is further configured to, after receiving the message instruction and before executing the message instruction, verify whether a first local login account of the first device is authorized to execute the message instruction according to the following steps:
acquiring a message target account in the communication message;
detecting the consistency of the message target account and the first local login account;
and when the message target account is detected to be consistent with the first local login account, the first local login account is authorized to execute the message command.
In combination with the first aspect, the present application provides a seventh possible implementation manner of the first aspect, where,
the communication message further comprises: message sending time and message valid time;
the message server is further configured to detect timeliness of the communication message after receiving the communication message and before sending the communication message to the first device, and specifically includes:
acquiring message sending time and message effective time in the communication message;
detecting whether the time difference between the message sending time and the current time is within the range of the message valid time;
and when the time difference is detected to be within the range of the effective time of the message, the communication message has timeliness.
In a second aspect, an embodiment of the present application further provides an information communication method, which is applied to a first device, where the method includes:
receiving a communication message sent by the message server, and carrying out validity verification on the received communication message;
after the communication message is verified to be valid, sending an analysis instruction to a message server to instruct the message server to analyze the communication message according to the analysis instruction to obtain a message instruction, and sending the message instruction to the first device;
and receiving and executing the message instruction.
In a third aspect, an embodiment of the present application further provides an information communication method, which is applied to a message server, where the method includes:
sending the communication message to the message server;
receiving the analysis instruction, analyzing the communication message based on the analysis instruction, and acquiring a message instruction code corresponding to the communication message;
according to the message instruction code, matching a message instruction corresponding to the message instruction code;
and sending the message instruction to the first equipment.
In a fourth aspect, an embodiment of the present application further provides an electronic device, including: a processor, a memory and a bus, the memory storing machine-readable instructions executable by the processor, the processor and the memory communicating via the bus when the electronic device is operating, the machine-readable instructions when executed by the processor performing the steps of the second aspect, the third aspect as described above.
In a fourth aspect, the present application further provides a computer-readable storage medium, where a computer program is stored on the computer-readable storage medium, and the computer program is executed by a processor to perform the steps in the second aspect and the third aspect.
The information communication system and method provided by the embodiment of the application, the second device is adopted to forward the communication message to the first device through the message server, the first device verifies the validity of the communication message, the first device sends the analysis instruction to the message server after the communication message is verified to be valid, the message server receives the analysis instruction, analyzes the communication message to obtain the message instruction code carried in the communication message, matches the message instruction corresponding to the message instruction code according to the message instruction code and sends the message instruction to the first device, the first device executes the message instruction to complete the message communication with the second device, the communication with the two devices in the prior art is established through a local area network protocol, the communication between the devices is limited to be only carried out in the local area network, the first device and the second device can not only carry out the communication under the local area network, the method can also break through the limitation of the local area network, carry out communication under the wide area network, ignore the distance between the devices and realize interconnection and intercommunication among a plurality of remote devices.
In order to make the aforementioned objects, features and advantages of the present application more comprehensible, preferred embodiments accompanied with figures are described in detail below.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are required to be used in the embodiments will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present application and therefore should not be considered as limiting the scope, and for those skilled in the art, other related drawings can be obtained from the drawings without inventive effort.
Fig. 1 is a schematic structural diagram illustrating an information communication system according to an embodiment of the present application;
FIG. 2 is a flowchart illustrating a method for verifying timeliness of a communication message according to an embodiment of the present disclosure;
fig. 3 is a flowchart illustrating a method for verifying validity of a communication message according to an embodiment of the present application;
FIG. 4 is a flow chart illustrating another method for verifying timeliness of a communication message according to an embodiment of the present disclosure;
FIG. 5 is a flowchart illustrating a method for verifying that a first local login account is authorized to execute a message command according to an embodiment of the present application;
fig. 6 is a flowchart illustrating an information communication method according to an embodiment of the present application;
FIG. 7 is a flow chart illustrating another method of communicating information according to an embodiment of the present disclosure;
fig. 8 shows a schematic structural diagram of an electronic device provided in an embodiment of the present application.
Illustration of the drawings:
101-a first device, 102-a message server, 103-a second device, 104-a verification server.
Detailed Description
In order to make the objects, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all the embodiments. The components of the embodiments of the present application, generally described and illustrated in the figures herein, can be arranged and designed in a wide variety of different configurations. Thus, the following detailed description of the embodiments of the present application, presented in the accompanying drawings, is not intended to limit the scope of the claimed application, but is merely representative of selected embodiments of the application. All other embodiments, which can be derived by a person skilled in the art from the embodiments of the present application without making any creative effort, shall fall within the protection scope of the present application.
At present, when communication is performed between devices, the devices need to establish NETWORK connection, after the devices establish the first NETWORK connection, an Internet Protocol (IP) address interconnected between NETWORKs is obtained, and obtaining the IP address by the devices means that the devices have been added to the NETWORKs, and the devices perform cyclic broadcast in the local area NETWORK through local area NETWORK communication protocols such as a digital living NETWORK ALLIANCE (DIGITAL LIVING NETWORK ALLIANCE, DLNA), a Server Messages Block (SMB), and the like until another device is found to initiate a communication request to the devices. When another device initiates a communication request with the device, a communication relationship between the two devices is established through local area network protocols such as DLNA, SMB and the like, and at the moment, the establishment of the communication relationship needs all devices starting the communication protocol to perform cyclic broadcasting until one device initiates a communication request to the other device, and the two devices can establish the communication relationship.
However, the devices perform data transmission through the same protocol model when performing data transmission through the communication relationship established by local area network protocols such as DLNA, SMB and the like, so that the communication between the devices can only depend on the local area network environment to solve the problem that the interconnection and the intercommunication between the devices limited in the same local area network are limited, and therefore, the interconnection and the intercommunication of a plurality of remote devices cannot be realized. In addition, the communication relationship established between the devices is only a temporary communication relationship once, and cannot be recorded and stored, and further cannot be applied to the next communication performed between the devices.
Based on the information communication system and the information communication method, the second device can establish a long-term stable binding relationship with the first device; meanwhile, the first equipment and the second equipment can communicate under the local area network and break through the limitation of the local area network, communicate under the wide area network, ignore the distance between the equipment and realize interconnection and intercommunication among a plurality of remote equipment.
To facilitate understanding of the present embodiment, a detailed description will be given of an information communication system disclosed in the embodiments of the present application.
Referring to fig. 1, an information communication system according to an embodiment of the present application includes: a first device 101 and a message server 102;
the first device 101 is configured to receive the communication message sent by the message server 102, and perform validity verification on the received communication message; after the communication message is verified to be valid, sending an analysis instruction to the message server 102; the first device 101 is further configured to receive and execute a message instruction;
the message server 102 is configured to send the communication message to the first device 101; receiving the analysis instruction, analyzing the communication message based on the analysis instruction, and acquiring a message instruction code corresponding to the communication message; according to the message instruction code, matching a message instruction corresponding to the message instruction code; sending the message instruction to the first device 101.
In a specific implementation, the first device 101 is a party for communicating with other devices, and the message server 102 is a party for storing and forwarding the communication message to the first device 101; in addition, the communication system provided by the present application further includes a second device 103, where the second device 103 is another party communicating with the first device 101; the second device 103 is configured to initiate a communication request actively, and by sending the communication message to the message server 102, the message server 102 forwards the communication message to the first device 101, so as to complete communication between the first device 101 and the second device 103. Here, the functional roles of the first device 101 and the second device 103 are not necessarily fixed, and either one of the two communicating devices may serve as the second device 103 in the present application to initiate a communication request. For example: the mobile phone pushes a video to a Personal Computer (PC) for playing once, and the mobile phone initiates a communication request to the PC, so that the mobile phone is the second device 103, and the PC is the first device 101; for another example, if the PC pushes a news broadcast to the tv, the PC will actively initiate a communication request to the tv, and then the PC is the second device 103 and the tv is the first device 101.
In addition, the information communication system provided by the embodiment of the application can also complete the following functions:
1. remote equipment interconnection and intercommunication based on a message server:
the information communication between the devices is completely realized based on the message server, and all the interactions do not require the devices to be in the same local area network and can be carried out remotely.
2. Establishing a real-time synchronization mode with the binding relationship based on the dual binding relationship of the user and the equipment:
the binding relationship between the devices is established by adopting account number and device identification dual authentication. The device identification acts on message push between devices; and the account and the equipment identification jointly act on a validity judging and processing mode of the message instruction. The mechanism can flexibly process the affiliation among a plurality of users and a plurality of devices in a specific application scene.
3. The interactive mode of the command execution is compared based on the message instruction codes appointed by each terminal application:
in the technical scheme, the interaction between the devices is performed by adopting a set of unified message instruction coding > instruction execution mode appointed by various terminals, and the message instruction coding and the corresponding message instructions can be enriched according to the specific performances of various terminals, so that the method comprises (without limitation): the method has the advantages of being flexible in technical application expansibility, and having application scenes such as media content pushing, equipment remote control, equipment content grabbing, remote monitoring and remote debugging.
4. Based on the interaction mode of the user:
because the traditional mode of relying on local area network interaction is abandoned, the operation of the user can be recorded (only the operation agreed or authorized by the user) based on the user, the user can synchronously operate at multiple ends, and better use experience is brought to the user.
5. An underlying code architecture model based on event-driven IO multiplexing and multi-threaded thread pools:
the method is characterized in that event-driven IO multiplexing is adopted, a producer thread monitors events by adopting an EPOLLET OneShot model in Linux, the events are put into a queue, a consumer thread processes in a scrambling mode, the consumer thread adopts a thread pool mechanism, and a single server can support 50 thousands of clients to be connected at the same time.
6. Based on the distributed server architecture model:
the end-to-end message forwarding depends on the forwarding of a message server, the architecture of the server determines the access amount of a terminal, and the server architecture adopts a distributed architecture and supports horizontal infinite extension. The cluster is divided into a core node, an edge node and a core monitor, the core node and the edge node are connected with the core monitor in a long-term mode, the edge node is dynamically distributed and connected with the core node, and the connection mode is disconnected in an idle mode. All nodes support end-to-end direct connections. The forwarding mode is that the node is rapidly forwarded, and the cross-node end is forwarded through the core node, so that the problems of low forwarding performance, low forwarding efficiency of edge nodes among different networks, synchronous login positions and the like are solved.
7. Adopt multi-level polymorphic type's buffer memory structure based on the check-up server:
the data cache sequentially adopts a relational database, a memory database and a memory data structure to cache data, and for an active end, the message forwarding can be completed by directly operating the memory database without basically inquiring the relational database and the memory database. And the query of the data also follows the query of the memory data structure, the memory database and the relational database in sequence, so that the time consumption of the server operation is reduced.
8. Multi-platform multi-language compatibility:
software Development Kit (SDK) of the client supports cross-platform, and currently supports platforms such as a windows operating system, a linux operating system, and an android operating system. The client supports cross-language integration, and currently supports C + +, JAVA, Objective-C, JS and other languages.
9. Private protocol transfers data:
the messages are transmitted by adopting a private protocol, the difficulty of cracking the messages is increased, and compared with other protocols, the protocol consumption flow is very small. Meanwhile, the protocol is added with a version expansion function and supports the simultaneous operation of multiple versions of the protocol.
10. Global message design:
the global message only stores one message list, and all the clients pull the global message after the ID according to the historical message time ID of the message list, so that the problem of overlarge server storage pressure caused by multiple copies is solved. Meanwhile, memory caching can be performed according to the ID range, and the acquisition performance is improved.
11. Dynamic scheduling based on client IP:
when the client logs in, the client is connected with the portal server, and the portal server carries out dynamic scheduling according to the IP of the client, so as to support scheduling to the servers of the same type of network operators and the same province, city, district and county positions. While supporting scheduling according to the load of the server.
12. Message delivery receipt:
the server not only supports the function of sending the message receipt by the node, but also supports the function of cross-logging the message and receipt between different servers, thereby ensuring the complete delivery of the message. When the message is sent, the ID of the message source and the ID of the message destination are stored, and when the message is returned, the return receipt message is sent to the position of the source, and the return receipt path can be preferentially replied and can be different from the jump path of the message. Meanwhile, for the offline client, the offline of the message to the database is supported.
13. Dynamic survival time:
all messages support setting the survival time of the messages, support setting permanent survival, no offline storage and specific survival time, and have time granularity of second level. And the time-to-live is relative to a certain message and in support message parameterization. Unlike other schemes, only fixed time-to-live and only one type of message are supported.
14. Message security:
the authenticated servers mutually authenticate through IP, performance loss of encryption and decryption is reduced, key verification is added for messages of the client, and verification of source IP and verification of survival time are supported.
15. Testing and monitoring service:
the system develops a pressure test client list which is completely compatible with a client protocol, and a single client is supported to simulate sixty thousand clients to be simultaneously connected with a server for pressure test. Meanwhile, both the pressure simulation client and the cluster server have a World Wide Web (Web) monitoring function, and support the overall states of the comprehensive server and the pressure simulation client and the viewing of the specific details of the single simulation client. Facilitating pressure and testing and problem finding.
The communication system provided by the application comprises the following processes:
(1) and (3) a device binding process:
before the first device 101 communicates with the second device 103, a binding relationship between the first device 101 and the second device 103 is established, where the binding relationship is long-term, and the established binding relationship between the first device 101 and the second device 103 is uploaded to the verification server 104 as binding information, and the first device 101 communicates with the second device 103 according to authentication.
Specifically, referring to fig. 1, an information communication system provided in the second embodiment of the present application further includes: a second device 103 and a verification server 104;
the first device 101 is further configured to obtain a second device 103 identifier of the second device 103, and send the second device 103 identifier and the first device 101 identifier of the first device 101, which are bound, as binding information to the verification server 104;
the verification server 104 is configured to store and forward the binding information;
the second device 103 is configured to send the communication message to the message server 102.
In a specific implementation, the verification server 104 is a server for storing a binding relationship between the first device 101 and the second device 103, and the binding relationship between the first device 101 and the second device 103 is used as binding information to be stored and verified by the verification server 104; the binding information may be a binding relationship list including binding relationships between a plurality of devices. In addition, when the first device 101 and the second device 103 verify the identity of each other, the verification server 104 further sends a binding message to the first device 101 and the second device 103, so that the first device 101 and the second device 103 confirm the identity of each other.
The second device 103 is a party for actively initiating a communication request to the first device 101, and the second device 103 is provided with a second device 103 identifier for identifying the identity of the second device 103, which may be a character string. The second device 103 identification may be obtained by scanning a two-dimensional code, inputting a digital identification, and the like. For example; the second device 103 identifier is a two-dimensional code, and the first device 101 may acquire the second device 103 identifier by scanning the two-dimensional code. When in use
Here, the verification server 104 further stores information of the first local login account and the second local login account, and when the first device 101 and the second device 103 perform authentication of the local login accounts, the verification server 104 further carries the first local login account in the binding information and sends the binding information to the second device 103, or carries the second local login account in the binding message and sends the binding information to the first device 101.
It should be noted here that the established relationship between the first device 101 and the second device 103 is also updated, and when the binding relationship changes, the verification server 104 also updates the binding information; for example: when the first device 101 and the second device 103 are unbound, if the first device 101 actively initiates the unbound relationship, the first device 101 notifies the check server 104 to update the binding information; if the second device 103 actively initiates the unbinding relationship, the second device 103 notifies the check server 104 to update the binding information.
After the first device 101 and the second device 103 establish a binding relationship, and the binding relationship is stored in the binding information of the verification server 104, the first device 101 and the second device 103 establish a relatively long-term stable binding relationship, and before the first device 101 communicates with the second device 103, the process (1) does not need to be repeated, and the communication between the first device 101 and the second device can be directly performed according to the binding information stored in the verification server 104.
(2) And a message sending confirmation process:
before the second device 103 sends the communication message to the first device 101, a second authentication request is sent to the verification server 104, and then it is determined whether the current second device 103 and the first device 101 have a binding relationship, where the second authentication request may be a character string, which enables the verification server 104 to execute a request instruction for sending binding information to the second device 103, when the verification server 104 receives the second authentication request sent by the second device 103, the binding information is sent to the second device 103, and after the second device 103 receives the binding information, it is determined whether the current second device 103 and the first device 101 have a binding relationship according to the binding information, where the first device 101 is further provided with a first device 101 identifier, the binding relationship is a binding state between the first device 101 identifier and the second device 103 identifier, and when the first device 101 identifier and the second device 103 identifier are bound together, the first device 101 and the second device 103 have a binding status, and when the first device 101 identifier and the second device 103 identifier are not bound together, the first device 101 and the second device 103 do not have a binding relationship.
And after confirming that the current second device 103 is in a binding relationship with the first device 101, sending the communication message to the message server 102. For example: the binding information is a binding relationship list, and after the second device 103 receives the binding information, the binding relationship between the second device 103 and the first device 101 is searched according to the binding relationship list.
(3) And a message sending process:
after the authentication is passed, the second device 103 sends a communication message to the message server 102, and after receiving the communication message, the message server 102 stores the communication message and forwards the communication message to the first device 101. The message server 102 sends the communication message to the first device 101 in two cases:
one is as follows:
referring to fig. 2, in an information communication system provided in the third embodiment of the present application, the communication message further includes: message sending time and message valid time;
the message server 102 is further configured to detect timeliness of the communication message after receiving the communication message and before sending the communication message to the first device 101, and specifically includes the following steps S201 to S203:
s201: and acquiring the message sending time and the message effective time in the communication message.
S202: and detecting whether the time difference between the message sending time and the current time is within the range of the message valid time.
S203: and when the time difference is detected to be within the range of the effective time of the message, the communication message has timeliness.
In a specific implementation, when the first device 101 is in a power-off state, the message server 102 stores the communication message, and the message sending time is stored in the communication message, that is, the time for the second device 103 to send the communication message to the message server 102, and the message validity time, where the message validity time is a time length. The message server 102 may detect the timeliness of the communication message in real time to decide whether to keep saving the communication message or discard the communication message.
When the message server 102 detects the time difference between the current time and the message sending time in real time, when the time difference is detected to be within the range of the message valid time, the communication message has timeliness, the communication message is continuously stored, and if the time difference is detected to exceed the range of the message valid time, the communication message loses timeliness, and the communication message is discarded.
The second step is as follows:
when the first device 101 is in the powered-on state, because the time when the first device 101 is in the powered-on state may be delayed compared with the time when the second device 103 sends the communication message to the message server 102, the message server 102 may also detect a time difference between the current time and the message sending time in real time, and when the first device 101 is in the powered-on state, and the communication message has timeliness at the same time, the message server 102 may send the communication message to the first device 101, so that the first device 101 performs validity verification on the communication message.
(4) And message validity verification process:
specifically, an information communication system provided in the fourth embodiment of the present application includes:
the first device 101 is further configured to send a first identity verification request to the server after receiving the communication message sent by the message server 102; receiving binding information sent by the server based on the first identity verification request, and verifying the validity of the communication message according to the binding information;
the verification server 104 is configured to receive a first authentication request of the first device 101; and sending the binding information to the first device 101 according to the first authentication request.
In a specific implementation, after receiving the communication message sent by the message server 102, the first device 101 performs validity verification on the communication message, where the verification mode includes the following two modes;
one is as follows:
referring to fig. 3, in an information communication system provided in the fifth embodiment of the present application, the communication message includes: a message sending device identifier and a message target device identifier;
the first device 101 is specifically configured to verify validity of the communication message according to the following steps S301 to S303:
s301: and acquiring the message sending equipment identifier and the message target equipment identifier in the communication message.
S302: according to the binding message, the consistency between the message sending device identification and the second device 103 identification in the binding message is detected, and the consistency between the message target device identification and the first device 101 identification in the binding message is detected.
S303: when it is detected that the message sending device identifier is consistent with the second device 103 identifier in the binding message and the message target device identifier is consistent with the first device 101 identifier in the binding message, the communication message is valid.
In the specific implementation, the message sending device identifier is used to identify the device sending the communication message, and the message target device identifier is the device identifier receiving the communication message. When receiving a communication message sent by the message server 102, the first device 101 acquires a message sending device identifier and a message destination device identifier carried in the communication message, and sends a first authentication request to the verification server 104, where the first authentication request may be a character string, which enables the verification server 104 to execute a request instruction for sending binding information to the first device 101, when the verification server 104 receives the first authentication request sent by the first device 101, the first device 101 sends the binding information to the first device 101, and after receiving the binding information, the first device 101 first detects that a device corresponding to the message sending device identifier is in a binding relationship with the first device 101, and when detecting that the device corresponding to the message sending device identifier is in a binding relationship with the first device 101, the message sending device identifier is identical to the second device 103 identifier, and detects whether the message target identifier is identical to the first device 101 identifier, and if the message sending device identifier is identical to the second device 103 identifier and the message target identifier is identical to the first device 101 identifier, the communication message is valid,
the second step is as follows:
referring to fig. 4, in an information communication system provided in a sixth embodiment of the present application, the communication message further includes: a message sending account;
the verification server 104 is further configured to store a second local login account authorized to send the communication message to the first local login account; the second local login account is carried in the binding information and is sent to the first device 101;
the first device 101 is further specifically configured to verify validity of the communication message according to the following steps S401 to S402:
s401: and acquiring a message sending account in the communication message, and acquiring a second local login account in the binding information.
S402: and detecting whether the message sending account is consistent with the second local login account.
S403: and when the message sending account is detected to be consistent with the second local login account, the communication message is valid.
In specific implementation, the second local login account is used to represent the identity of a user using the second device 103 to register an account, and after the user registers the account, the second local login account is stored in the verification server 104, when the first device 101 performs validity verification on the communication message, and when the verification server 104 sends the binding information, the binding information also carries the second local login information, the first device 101 acquires a message sending account in the communication message, and detects whether the message sending account is consistent with the second local login account, and when it is detected that the message sending account is consistent with the second local login account, the communication message is valid.
The two ways of verifying the validity of the communication message may be that one of them is established to prove that the communication message is valid, or that the two ways are simultaneously established to prove that the communication message is valid.
(5) And (3) message analysis process:
after the first device 101 verifies that the communication message is valid, it sends a parsing instruction to the message server 102, where the parsing instruction may be a character string for instructing the message server 102 to parse the communication message. After receiving the message instruction, the message server 102 parses the communication message to obtain a message instruction code carried in the communication message, where the message instruction code represents a function that needs to be executed by the first device 101. The message server 102 stores a message instruction corresponding to the message instruction code, and the message instruction code and the message instruction are agreed together, and both the first device 101 and the second device 103 can recognize. For example: referring to table 1, "000000" is a message instruction code, which indicates a play-designated address, and corresponds to a message instruction, and the message instruction may instruct the first device 101 to perform an action of "play-designated address", and after obtaining the message instruction code, the message server 102 matches the message instruction corresponding to the message instruction code, and sends the matched message instruction corresponding to the message instruction code to the first device 101.
TABLE 1
Message instruction encoding Executing commands
000000 Playing the designated address
000001 Stop playing
000002 Message reply to current play address
(6) And the instruction execution process comprises the following steps:
specifically, referring to fig. 5, in an information communication system provided by the seventh embodiment of the present application, the communication message further includes: a message target account number;
the first device 101 is further configured to, after receiving the message instruction and before executing the message instruction, verify whether the first local login account of the first device 101 is authorized to execute the message instruction according to the following steps S501 to S503:
s501: and acquiring a message target account in the communication message.
S502: and detecting the consistency of the message target account and the first local login account.
S503: and when the message target account is detected to be consistent with the first local login account, the first local login account is authorized to execute the message command.
In a specific implementation, the message target account refers to a device that receives the communication message, and the first local login account is an account that represents the identity of the user and is registered by using the first device 101. After receiving the message instruction sent by the message server 102, the first device 101 further verifies whether the first local login account of the first device 101 is consistent with the message target account, and when it is detected that the first local login account is consistent with the message target account, the first local login account has the right to execute the message instruction, and the first device 101 executes the message instruction to complete communication with the second device 103.
According to the embodiment of the application, after the first device and the second device are subjected to dual identity binding, a relatively long-term stable binding relationship is established, and the binding relationship is stored in the binding message in the verification server, so that the first device and the second device can verify the identity of the devices from the verification server and locate the message target. The communication message is stored in the message server, so that the communication message is forwarded depending on the message server in the interaction process of the first device and the second device, and the second device can establish a long-term stable binding relationship with the first device by the communication mode; meanwhile, the first equipment and the second equipment can communicate under the local area network and break through the limitation of the local area network, communicate under the wide area network, ignore the distance between the equipment and realize interconnection and intercommunication among a plurality of remote equipment.
Based on the same inventive concept, the embodiment of the present application further provides an information communication method corresponding to the information communication system, and as the principle of solving the problem of the apparatus in the embodiment of the present application is similar to that of the information communication system in the embodiment of the present application, the implementation of the method can refer to the implementation of the system, and repeated details are not repeated.
Referring to fig. 6, an eighth embodiment of the present application provides an information communication method, including:
s601: and receiving the communication message sent by the message server, and verifying the validity of the received communication message.
S602: after the communication message is verified to be valid, sending an analysis instruction to a message server; and instructing the message server to analyze the communication message according to the analysis instruction to obtain a message instruction, and sending the message instruction to the first equipment.
S603: and receiving and executing the message instruction.
Referring to fig. 7, a ninth embodiment of the present application provides another information communication method, including:
s701: and sending the communication message to the message server.
S702: and receiving the analysis instruction, analyzing the communication message based on the analysis instruction, and acquiring a message instruction code corresponding to the communication message.
S703: according to the message instruction code, matching a message instruction corresponding to the message instruction code;
s704: and sending the message instruction to the first equipment.
Corresponding to the information communication methods in fig. 6 and fig. 7, an embodiment of the present application further provides a computer apparatus 800, as shown in fig. 8, the apparatus includes a memory 1000, a processor 2000 and a computer program stored in the memory 1000 and executable on the processor 2000, wherein the processor 2000 implements the steps of the information communication method when executing the computer program.
Specifically, the memory 1000 and the processor 2000 can be general memories and general processors, which are not limited herein, and when the processor 2000 runs a computer program stored in the memory 1000, the information communication method can be executed, so that the problem that the communication relationship between the devices, that is, the data transmission between the devices is limited to be performed in a local area network, and the interconnection between a plurality of remote devices cannot be realized is solved, and therefore, the first device and the second device can communicate not only under the local area network, but also can break through the limitation of the local area network, communicate under the wide area network, ignore the distance between the devices, and realize the interconnection between a plurality of remote devices.
Corresponding to the information communication methods in fig. 6 and fig. 7, an embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored, and the computer program is executed by a processor to perform the steps of the information communication method.
Specifically, the storage medium can be a general storage medium, such as a mobile disk, a hard disk, and the like, and when a computer program on the storage medium is executed, the information communication method can be executed, so that a communication relationship between devices is solved, that is, the problem that data transmission between the devices is limited to be performed in a local area network and interconnection and intercommunication of a plurality of remote devices cannot be realized is solved, and the effects that the first device and the second device can not only perform communication under the local area network, but also can break through the limitation of the local area network, perform communication under the wide area network, ignore the distance between the devices, and realize interconnection and intercommunication between the plurality of remote devices are achieved.
The computer program product of the information communication method provided in the embodiment of the present application includes a computer-readable storage medium storing a program code, where instructions included in the program code may be used to execute the method described in the foregoing method embodiment, and specific implementation may refer to the method embodiment, which is not described herein again.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the system and the apparatus described above may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again. In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. The above-described embodiments of the apparatus are merely illustrative, and for example, the division of the units is only one logical division, and there may be other divisions when actually implemented, and for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection of devices or units through some communication interfaces, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a non-volatile computer-readable storage medium executable by a processor. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
Finally, it should be noted that: the above-mentioned embodiments are only specific embodiments of the present application, and are used for illustrating the technical solutions of the present application, but not limiting the same, and the scope of the present application is not limited thereto, and although the present application is described in detail with reference to the foregoing embodiments, those skilled in the art should understand that: any person skilled in the art can modify or easily conceive the technical solutions described in the foregoing embodiments or equivalent substitutes for some technical features within the technical scope disclosed in the present application; such modifications, changes or substitutions do not depart from the spirit and scope of the exemplary embodiments of the present application, and are intended to be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (8)

1. An information communication system, comprising: the system comprises a first device, a message server, a second device and a verification server;
the first device is used for receiving the communication message sent by the message server and verifying the validity of the received communication message; after the communication message is verified to be valid, sending an analysis instruction to a message server; the first device is also used for receiving and executing message instructions;
the message server is used for sending the communication message to the first equipment; receiving the analysis instruction, analyzing the communication message based on the analysis instruction, and acquiring a message instruction code corresponding to the communication message; according to the message instruction code, matching a message instruction corresponding to the message instruction code; sending the message instruction to the first device;
the first device is further configured to obtain a second device identifier of the second device, bind the second device identifier and the first device identifier of the first device, and send the bound second device identifier and the first device identifier of the first device as binding information to the verification server;
the checking server is used for storing and forwarding the binding information;
the second device is used for sending the communication message to the message server;
the first device is further configured to send a first identity verification request to the verification server after receiving the communication message sent by the message server; receiving binding information sent by the verification server based on the first identity verification request, and verifying the validity of the communication message according to the binding information;
the verification server is used for receiving a first identity verification request of the first equipment; sending the binding information to the first device according to the first identity verification request;
wherein the first device is further configured to execute a function of the second device; when the first device performs the function of the second device, the second device is configured to perform the function of the first device.
2. The system of claim 1,
the second device is further configured to send a second authentication request to the verification server; and receiving binding information sent by the verification server based on the second identity authentication request, checking whether the first equipment has a binding relationship with the second equipment according to the binding information, and sending the communication message to the message server by the second equipment when the first equipment has the binding relationship with the second equipment, wherein the binding relationship is the binding state of the first equipment identifier and the second equipment identifier.
3. The system of claim 1, wherein the communication message comprises: a message sending device identifier and a message target device identifier;
the first device is specifically configured to verify validity of the communication message according to the following steps:
acquiring a message sending device identifier and a message target device identifier in the communication message;
according to the binding information, detecting the consistency of the message sending equipment identification and a second equipment identification in the binding information, and detecting the consistency of the message target equipment identification and a first equipment identification in the binding information;
and when the message sending equipment identification is detected to be consistent with the second equipment identification in the binding information and the message target equipment identification is detected to be consistent with the first equipment identification in the binding information, the communication message is valid.
4. The system of claim 1, wherein the communication message further comprises: a message sending account;
the verification server is further configured to store a second local login account which is authorized to send the communication message to the first local login account of the first device; carrying the second local login account in the binding information, and sending the binding information to the first device;
the first device is specifically further configured to verify validity of the communication message according to the following steps:
acquiring a message sending account in the communication message, and acquiring a second local login account in the binding information;
detecting whether the message sending account is consistent with the second local login account;
and when the message sending account is detected to be consistent with the second local login account, the communication message is valid.
5. The system of claim 4, wherein the communication message further comprises: a message target account number;
the first device is further configured to, after receiving the message instruction and before executing the message instruction, verify whether a first local login account of the first device is authorized to execute the message instruction according to the following steps:
acquiring a message target account in the communication message;
detecting the consistency of the message target account and the first local login account;
and when the message target account is detected to be consistent with the first local login account, the first local login account is authorized to execute the message instruction.
6. The system of claim 1, wherein the communication message further comprises: message sending time and message valid time;
the message server is further configured to detect timeliness of the communication message after receiving the communication message and before sending the communication message to the first device, and specifically includes:
acquiring message sending time and message effective time in the communication message;
detecting whether the time difference between the message sending time and the current time is within the range of the message valid time;
and when the time difference is detected to be within the range of the effective time of the message, the communication message has timeliness.
7. An information communication method applied to a first device, the method comprising:
receiving a communication message sent by a message server, and carrying out validity verification on the received communication message; the communication message is sent to the message server by the second equipment;
after the communication message is verified to be valid, sending an analysis instruction to a message server to instruct the message server to analyze the communication message according to the analysis instruction, acquiring a message instruction code corresponding to the communication message, matching a message instruction corresponding to the message instruction code according to the message instruction code, and sending the message instruction to the first device;
receiving and executing a message instruction;
the method further comprises the following steps: acquiring a second device identifier of the second device, binding the second device identifier and a first device identifier of the first device to serve as binding information, and sending the binding information to a verification server so that the verification server stores and forwards the binding information;
the method further comprises the following steps: after receiving the communication message sent by the message server, sending a first identity verification request to the verification server;
receiving binding information sent by the verification server based on the first identity verification request, and verifying the validity of the communication message according to the binding information;
the method further comprises the following steps: performing a function of the second device; when the first device performs the function of the second device, the second device is configured to perform the function of the first device.
8. An information communication method applied to a message server is characterized by comprising the following steps:
sending the communication message to the first equipment; after receiving the communication message sent by the message server, the first device sends a first identity verification request to a verification server, receives binding information sent by the verification server based on the first identity verification request, and verifies the validity of the communication message according to the binding information; the communication message is sent to the message server by the second equipment; the first authentication request is for causing the verification server to send the binding information to the first device according to the first authentication request; the binding information is stored and forwarded through the verification server; the binding information is generated by the first device after the first device is bound according to the acquired second device identifier of the second device and the first device identifier of the first device;
receiving an analysis instruction, analyzing the communication message based on the analysis instruction, and acquiring a message instruction code corresponding to the communication message; the analysis instruction is sent to the message server by the first equipment after the communication message is verified to be valid;
according to the message instruction code, matching a message instruction corresponding to the message instruction code;
sending the message instruction to the first device so that the first device receives and executes the message instruction;
the method further comprises the following steps: when the first device executes the function of the second device, and the second device is used for executing the function of the first device, the message server executes the method.
CN201810972660.4A 2018-08-24 2018-08-24 Information communication system and method Active CN109194729B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810972660.4A CN109194729B (en) 2018-08-24 2018-08-24 Information communication system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810972660.4A CN109194729B (en) 2018-08-24 2018-08-24 Information communication system and method

Publications (2)

Publication Number Publication Date
CN109194729A CN109194729A (en) 2019-01-11
CN109194729B true CN109194729B (en) 2021-07-09

Family

ID=64919565

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810972660.4A Active CN109194729B (en) 2018-08-24 2018-08-24 Information communication system and method

Country Status (1)

Country Link
CN (1) CN109194729B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021072664A1 (en) * 2019-10-16 2021-04-22 深圳市欢太科技有限公司 Information obtaining method and apparatus, system, electronic device, and storage medium
CN111131392A (en) * 2019-11-27 2020-05-08 北京文渊佳科技有限公司 Method, device, electronic equipment and medium for processing message
CN113709257B (en) * 2021-10-09 2024-04-23 天翼物联科技有限公司 Message cache out-of-date monitoring method, device, equipment and medium

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103001767A (en) * 2011-09-08 2013-03-27 北京智慧风云科技有限公司 User authentication system
CN103533545A (en) * 2013-10-25 2014-01-22 小米科技有限责任公司 Method, device and equipment for acquiring effective communication account number
CN103616860A (en) * 2013-11-08 2014-03-05 海信集团有限公司 Method and device for remote control of household appliances
CN103795571A (en) * 2014-01-24 2014-05-14 北京搜狗科技发展有限公司 Binding method and device between equipment
CN103986720A (en) * 2014-05-26 2014-08-13 网之易信息技术(北京)有限公司 Log-in method and device
CN104283773A (en) * 2014-10-23 2015-01-14 深圳市领耀东方科技股份有限公司 System for controlling internet-of-things devices through microblog
CN105744555A (en) * 2014-12-12 2016-07-06 华为技术有限公司 Terminal maintenance method, maintenance device and network management server
CN106210017A (en) * 2016-07-05 2016-12-07 Tcl集团股份有限公司 A kind of smart machine control method based on wechat platform and system thereof
CN106846506A (en) * 2017-01-25 2017-06-13 腾讯科技(深圳)有限公司 A kind of method and system that Information Authentication is carried out based on message identification code

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103001767A (en) * 2011-09-08 2013-03-27 北京智慧风云科技有限公司 User authentication system
CN103533545A (en) * 2013-10-25 2014-01-22 小米科技有限责任公司 Method, device and equipment for acquiring effective communication account number
CN103616860A (en) * 2013-11-08 2014-03-05 海信集团有限公司 Method and device for remote control of household appliances
CN103795571A (en) * 2014-01-24 2014-05-14 北京搜狗科技发展有限公司 Binding method and device between equipment
CN103986720A (en) * 2014-05-26 2014-08-13 网之易信息技术(北京)有限公司 Log-in method and device
CN104283773A (en) * 2014-10-23 2015-01-14 深圳市领耀东方科技股份有限公司 System for controlling internet-of-things devices through microblog
CN105744555A (en) * 2014-12-12 2016-07-06 华为技术有限公司 Terminal maintenance method, maintenance device and network management server
CN106210017A (en) * 2016-07-05 2016-12-07 Tcl集团股份有限公司 A kind of smart machine control method based on wechat platform and system thereof
CN106846506A (en) * 2017-01-25 2017-06-13 腾讯科技(深圳)有限公司 A kind of method and system that Information Authentication is carried out based on message identification code

Also Published As

Publication number Publication date
CN109194729A (en) 2019-01-11

Similar Documents

Publication Publication Date Title
CN106254951B (en) A kind of net cast creation method and its system, access device, management equipment
KR101672101B1 (en) Device controlling method, client, server and intermediate device
US9774642B2 (en) Method and device for pushing multimedia resource and display terminal
CN109194729B (en) Information communication system and method
CN101217431B (en) A method and system of photos in synchronous mobile terminal network TV and network album
CN103069755B (en) Use the method and system that the instant message of multiple client instance transmits
CN110392071B (en) Uploading and downloading methods of streaming media resources, distribution system and streaming media server
JP5602542B2 (en) Page content synchronization method, synchronization server and program for synchronizing page content between terminals
JP2017108389A (en) Method and system for providing time machine function in live program
CN104767775A (en) Webpage application information push method and webpage application information push system
CN104580454A (en) Data synchronizing method, device and system
CN103491055A (en) Method for synchronizing information among clients, clients and server
JP2014524621A (en) File synchronization method and apparatus
CN113489805B (en) Butt joint method, device, equipment and storage medium of cloud desktop system
US20120242841A1 (en) System and method for transmitting real-time images
KR20180019183A (en) Multi-screen control method, apparatus, program and computer-readable recording medium
JP2017535124A (en) Method and apparatus for providing information associated with media content
JP4635615B2 (en) Information processing apparatus, system, data synchronization method, and program
CN114157607A (en) Media stream transmission method and system
CN110650097B (en) Data broadcasting method and device and computer readable storage medium
CN107332894B (en) Live broadcast method, device and system, server and storage medium
CN102185701A (en) Method and system for realizing group information interaction
CN110309342B (en) Media file acquisition method, device and storage medium
CN111787093B (en) Application management method, application management device, related equipment and medium
CN110895583A (en) Method, device and system for acquiring data resources

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