Method and system for interconnection and intercommunication between terminal equipment and browser

The method and system address interoperability, real-time performance, and security issues in terminal-device-browser connections by employing a server-based SIP and WebRTC architecture to manage SDP exchanges and media streaming, ensuring efficient and secure point-to-point connections.

CN119094505AActive Publication Date: 2024-12-06GUANGZHOU BAOLUN ELECTRONICS CO LTD
View PDF 10 Cites 0 Cited by

Patent Information

Application Number
CN202411051689.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-01
Publication Date
2024-12-06
Estimated Expiration
2044-08-01

AI Technical Summary

Technical Problem

Existing technologies have not simultaneously addressed the interoperability, real-time, and security requirements in the interconnection of terminal devices with browsers, particularly in ensuring compatibility, real-time performance, and security.

Method used

A method and system utilizing a server-based architecture that employs SIP and WebRTC protocols to establish point-to-point connections, with the server acting as an active intermediary to manage SDP exchanges and media streaming, ensuring real-time performance and security by minimizing protocol conversion and CPU load.

Benefits of technology

The solution ensures real-time and secure interconnection between terminal devices and browsers by reducing CPU resource consumption and protocol conversion, thereby enhancing interoperability and maintaining low latency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119094505A_ABST
    Figure CN119094505A_ABST
Patent Text Reader

Abstract

The invention discloses a method and system for interconnection and intercommunication between terminal equipment and a browser, and the method comprises the steps: a client sends a signaling request to a server, and the client is the browser or the terminal equipment; the signaling module processes the signaling request into an instruction in a unified format, and sends the instruction to an instruction processing sub-module; the instruction processing sub-module sends an instruction to the rtc sub-module for processing, the rtc sub-module creates an offer sdp and sets an opposite-end answer, and according to the offer sdp and the opposite-end answer, the rtc sub-module is in point-to-point connection with a terminal device or a browser through data in the sdp; and the server sets the generated abstract proxy entity object into the bridging strategy sub-module, and the bridging strategy sub-module establishes a mapping relationship between entities with the same streaming name and forwards data. According to the invention, the interoperability, the real-time performance and the safety can be simultaneously met, and the bidirectional real-time audio and video communication between the terminal equipment and the browser is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of data transmission, and in particular to a method and system for interconnecting a terminal device and a browser. Background Art

[0002] Web browsers have become the mainstream products used by users, so terminal devices with intercom functions have been born, which can also realize two-way intercom functions with browsers to achieve interconnection. In this scenario, it is necessary to comprehensively consider the interoperability, real-time, and security of the protocol. The existing technologies, such as using rtsp and rtmp to achieve push and pull streaming, can meet the functions of interconnection, but cannot meet the above-mentioned real-time or security requirements at the same time.

[0003] In summary, the industry urgently needs to develop an interconnection method or system that can simultaneously meet the requirements of interoperability, real-time performance, and security. Summary of the invention

[0004] The purpose of the present invention is to overcome the deficiencies of the above prior art and to provide a method and system for interconnecting terminal devices and browsers that simultaneously meet interoperability, real-time performance and security requirements.

[0005] The purpose of the present invention is achieved through the following technical solutions:

[0006] A first aspect of the present invention provides a method for interconnecting a terminal device and a browser, the method comprising:

[0007] S1, the client sends a signaling request to the server, the client is a browser or a terminal device;

[0008] S2, the signaling module of the server processes the signaling request into a command in a unified format and sends the command to the command processing submodule; the command includes the stream_name stream name, the uid command code, the cmd command code and the data carried by the cmd_data command code;

[0009] S3, the instruction processing submodule sends the instruction to the rtc submodule for processing, and the rtc submodule creates offersdp and sets the answer of the other end, which is a browser or a terminal device;

[0010] S4, according to the offer sdp and the answer of the other end, the rtc submodule establishes a point-to-point connection with the terminal device or browser through the data in the sdp;

[0011] S5, the server sets the generated abstract proxy entity object to the bridging strategy submodule, and the bridging strategy submodule establishes a mapping relationship between entities with the same stream_name, and forwards data to achieve interconnection between the terminal device and the browser.

[0012] Preferably, between step S3 and step S4, it also includes: judging the client type through the data module according to the uid field in the instruction, if it is a browser, the rtc submodule performs a point-to-point connection with the terminal device or the browser through the data in the sdp;

[0013] S401, sending the processing result of the rtc submodule to the signaling module, and the signaling module constructs response data of the signaling request according to the processing result;

[0014] S402, the signaling module returns the constructed data and obtains the offer data created by the server;

[0015] S403, repeat steps S1-S3 and S401-S402 twice to implement the SDP exchange of offer / answer, and the RTC submodule establishes a point-to-point connection with the browser.

[0016] Preferably, if it is a device terminal, the RTC submodule performs a point-to-point connection with the terminal device or the browser through the data in the SDP, including:

[0017] S411, the sip submodule receives offer sdp;

[0018] S412, query the corresponding terminal information through the uid instruction code, fill the offersdp into sip invite according to the terminal information, and send it to the other end;

[0019] S413, the peer receives the invite request and carries the answersdp of the terminal device's response in the sipack protocol packet;

[0020] S414, extract the terminal device to answer sdp and set it to the rtc module, and the rtc submodule establishes a point-to-point connection with the terminal device.

[0021] Preferably, the offer / answer SDP exchange in step S403 includes: offer SDP creation and answer SDP setting; offer SDP creation includes: the browser sends an HTTP request to the server, the server first processes and parses the HTTP request through the signaling module, the server obtains the instruction code through the signaling module, and when it is determined that the offer SDP needs to be created, the offer SDP is created through the RTC module, and the offer SDP is returned to the signaling module, and the signaling module carries the offer SDP therein and returns it; answer SDP setting includes: after the browser receives the offer SDP, it creates an answer SDP, sends an HTTP request and carries the answer SDP to the server, the server parses it through the signaling module, the server obtains the instruction code through the signaling module, and determines that it is an instruction to set the answer according to the instruction code, then extracts the answer SDP information therein and sets it to the RTC module, the RTC module sets the answer SDP to implement offer / answer SDP exchange starts a point-to-point connection with the browser.

[0022] The second aspect of the present invention provides a system for interconnecting a terminal device and a browser, the system comprising: a data module, a signaling module and a flow management module; wherein the flow management module comprises an instruction processing submodule, an RTC submodule, a SIP submodule and a bridging strategy submodule; the data module is used to obtain static data and dynamic data, wherein the static data is obtained by querying a database connection, and the dynamic data is the dynamic push data of the terminal device; the signaling module is used to process the UDP request protocol and the HTTP request protocol sent by the terminal to obtain instructions in a unified format, wherein the instructions include a stream name stream_name, a user identifier uid and an instruction code cmd; the instruction processing submodule is used to extract the user identifier uid, and determine whether the user type is a browser or a terminal device according to the user identifier uid; the RTC submodule is used to create an offer sdp and set the answer sdp of the opposite end. In the stage of creating the offer sdp, a virtual entity connected to the opposite end is abstracted within the system, and when the answer sdp of the opposite end is received, the answer code is parsed to obtain the instruction code. The sdp establishes a point-to-point connection with the other end; the sip submodule is used to receive the offer sdp and instructions, obtain the address information corresponding to the terminal device according to the user identifier uid in the instruction, use the offer sdp to fill the sipinvate protocol sent to the corresponding terminal device, and the terminal returns the answer sdp. At this time, the corresponding answer sdp is set to the rtc submodule; the bridging strategy submodule is used to establish a forwarding relationship between proxy entities and adapt and convert the protocols of the browser and the terminal device.

[0023] Preferably, the instruction processing submodule includes an SDP creation unit and a user type judgment unit; the SDP creation unit is used to pass the user identifier UID to the RTC submodule, and the RTC submodule creates an OffersDP, and the Offer SDP includes transmission information parameters of both ends, encoder parameters used, and security policies; the user type judgment unit is used to judge the user type according to the Offer SDP, and if it is judged that the user type is a browser, it is returned to the signaling module for HTTP response; if it is judged that the user type is a terminal device, the instruction and Offer SDP are input into the SIP submodule;

[0024] Preferably, the bridging strategy submodule is further used to internally bridge the two sides with the same stream_name obtained by instruction extraction, and adapt the rtp packet received at one end to the rtp packet format negotiated by the other end.

[0025] The present invention has the following advantages over the prior art:

[0026] The server of the present invention uses the SIP protocol to negotiate a point-to-point connection with the terminal device. The terminal device needs to support the SIP protocol. At the same time, the SIP protocol is used to exchange SDP. The processing of the streaming media is processed by the RTC module. In addition, since the data packets are directly forwarded, no encoding or decoding is required, and the CPU resource consumption is very small. Direct forwarding also greatly reduces the delay, so that the server guarantees the real-time performance of the link with the device.

[0027] The server at the other end establishes a point-to-point connection with the browser through two HTTP SDP exchanges. The WebRTC protocol ensures good real-time and security. Policy bridging is performed within the server, which realizes the interconnection between the terminal device and the browser as a whole, while also ensuring real-time and security.

[0028] At the same time, the underlying streaming media parsing of the SIP protocol and the WebRTC protocol are both based on RTP / RTCP, so there is less work on protocol conversion between the two. At the same time, by generating the offer SDP through the server, the server, as the active party, can unify the media format and encoder used at both ends from the source, so that the server can avoid the adaptation work at both ends. The server can spend a small amount of computing to achieve the conversion, which can reduce the load on the server and ensure real-time performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] The drawings constituting a part of the present application are used to provide a further understanding of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:

[0030] Figure 1 The present invention is a flowchart of a method for interconnecting a terminal device with a browser.

[0031] Figure 2 The block diagram of the system for interconnecting terminal devices and browsers of the present invention.

[0032] Figure 3 It is a flow chart of the flow management module of the present invention. DETAILED DESCRIPTION

[0033] The present invention will be further described below in conjunction with the accompanying drawings and embodiments.

[0034] See also Figure 2-3A system for interconnecting a terminal device and a browser comprises: a data module, a signaling module and a flow management module; wherein the flow management module comprises an instruction processing submodule, an RTC submodule, a SIP submodule and a bridging strategy submodule; the data module is used to obtain static data and dynamic data, wherein the static data is obtained by querying a database, and the dynamic data is the dynamic push data of the terminal device; the signaling module is used to process the UDP request protocol and the HTTP request protocol sent by the terminal to obtain an instruction in a unified format, wherein the instruction comprises a stream name stream_name, a user identifier uid and an instruction code cmd; the instruction processing submodule is used to extract the user identifier uid, and judge whether the user type is a browser or a terminal device according to the user identifier uid; the RTC submodule is used to create an offer sdp and set the answer sdp of the opposite end. In the stage of creating the offer sdp, a virtual entity connected to the opposite end is abstracted in the system, and when the answer sdp of the opposite end is received, a point-to-point connection is made with the opposite end by parsing the answer sdp; the sip submodule is used to receive the offer SDP and instructions, obtain the address information corresponding to the terminal device according to the user identifier UID in the instruction, use Offer SDP to fill in the SIP Invate protocol sent to the corresponding terminal device, and the terminal returns Answer SDP. At this time, the corresponding Answer SDP is set to the RTC submodule; the bridging strategy submodule is used to establish a forwarding relationship between proxy entities and adapt and convert the protocols of the browser and terminal devices.

[0035] In this embodiment, the data module is mainly used to connect to other services in the system to obtain data, which is divided into static data and dynamic data. Static data is obtained by querying and obtaining by connecting to the database, and dynamic data is obtained by connecting to the relay server that manages the terminal device to obtain the online status of the terminal, the terminal executes tasks and other dynamic push data. The function of this module is provided to other modules for querying data for common use. Among them, other services in the system can be data services. The service program accesses the database to provide a database access interface for other programs, mainly providing basic information of the terminal, such as model, IP address, etc. Other services in the system can also be relay services. The service program connects to the terminal device to obtain the online information of the terminal, and the terminal status information is waiting. Other services in the system can also be other services, which are not specifically limited here.

[0036] In this embodiment, the signaling module is the entrance of the entire server, and supports both the UDP request protocol and the HTTP request protocol sent by the terminal. The signaling module transmits the obtained instructions in a unified format to the flow management module.

[0037] In this embodiment, the instruction processing submodule includes an SDP creation unit and a user type judgment unit; the SDP creation unit is used to pass the user identification UID to the RTC submodule, and the RTC submodule creates an Offer SDP, and the Offer SDP includes transmission information parameters of both ends, encoder parameters used and security policies; the user type judgment unit is used to judge the user type according to the Offer SDP, and if the user type is judged to be a browser, it is returned to the signaling module for HTTP response; if the user type is judged to be a terminal device, the instruction and Offer SDP are input into the SIP submodule; the instruction processing submodule mainly extracts the above-mentioned user identification UID, and the data module can judge whether the user type is a browser or a terminal device. Regardless of the type, the first stage is to pass it to the RTC module to create an offer type SDP (OffersDP). SDP stands for Session Description Protocol. This text describes the transmission information parameters of both ends, the encoder parameters used, the security policy, etc. It is created uniformly by the server here. After the SDP is created, the second stage is carried out; the second stage determines the user type, and for the browser type, it is sent back to the signaling module for HTTP response. For the terminal type, the instruction and the created offer SDP are input to the SIP submodule. The SIP submodule will interact with the corresponding terminal device by Invate, and the answer SDP in the Invate process is set to the RTC module. Finally, the result of the entire process will be sent back to the signaling module for return. Among them, the return is the offer SDP information carried in the HTTP response.

[0038] In this embodiment, the SIP submodule receives the offer SDP and instruction data from the instruction processing submodule, extracts the user identification UID field, obtains the address information corresponding to the terminal through the data module, fills in the offers DP and sends the SIP Invate protocol to the corresponding terminal. Under normal circumstances, the terminal will return the answer SDP, and the corresponding answer SDP is set to the RTC submodule. Among them, the user identification UID is parsed by the signaling module, because the data sent by the terminal is generally based on UDP, and the request sent by the browser is generally based on HTTP / HTTPS. After being processed by the signaling module, the request types of different external formats are unified into internally defined structure format data.

[0039] In this embodiment, the rtc submodule provides two functions: creating an offer sdp and setting the answer sdp of the other end. In the stage of creating the offer sdp, a virtual entity connected to the other end will be abstracted internally. When the answer sdp of the other end is received, a point-to-point connection with the other end is established by parsing the answer sdp. The rtc submodule uses the idea of ​​SFU. The virtual entity abstracted from the server can be considered as an agent of the other end in the server. The entity is composed of two sub-objects, one is the uplink push end of the server as the receiver and the other end as the sender. The server will realize synchronization, jitter optimization jitterbuf, and various standard protocol rtcp packets on this side, including nack, pli, xr, rr and other processing; the other sub-object is the downlink pull end of the server as the sender and the other end as the receiver, which realizes smooth transmission, nack packet loss retransmission and gcc Google congestion control algorithm, etc.

[0040] In this embodiment, the bridging strategy submodule is also used to internally bridge the two sides with the same stream_name obtained by instruction extraction, and adapt the RTP packet received at one end to the RTP packet format negotiated by the other end. The main function of the bridging strategy submodule is to establish a forwarding relationship between the proxy entities generated by multiple RTC submodules, and adapt and convert the protocols at both ends, specifically, to internally bridge the two sides with the same stream_name obtained by instruction extraction, and adapt the RTP packet received at one end to the RTP packet format negotiated by the other end.

[0041] See also Figure 1-3 A method for interconnecting a terminal device and a browser applicable to the above-mentioned system for interconnecting a terminal device and a browser includes:

[0042] S1, the client sends a signaling request to the server, the client is a browser or a terminal device; the signaling request can support http format or udp format.

[0043] S2, the signaling module of the server processes the signaling request into a command of a unified format, and sends the command to the command processing submodule; the command includes the stream_name stream name, the uid command code, the cmd command code, and the data carried by the cmd_data command code; the signaling module is one of the modules inside the server, and the server will monitor the udp port and the http port at the same time. The signaling request of the terminal device uses the data from the udp port, and the signaling port of the browser uses the data from the http port. Since the data packet encapsulation formats from different ports are different, the signaling requests received from all different sources are processed by the signaling module and processed into the instructions of the unified internal format data inside the server. The command includes the stream_name stream name, the uid command code, the cmd command code, and the data carried by the cmd_data command code; wherein the uid command code is the user id, and the user type can be obtained through the data module query through this field, and the type can be used to communicate with which terminal device or with which browser user.

[0044] S3, the instruction processing submodule sends the instruction to the rtc submodule for processing. The rtc submodule creates offersdp and sets the answer of the other end. In this step, the rtc submodule will create offer sdp and set the answer of the other end. If it is to create an offer, the user type will be determined through the data module according to the uid field in the unified instruction. If it is a browser, then execute steps S401-S403, and then execute step S5. If it is a terminal device, execute steps S411-S414, and then execute step S5.

[0045] In this embodiment, the other end is a browser or a terminal. If the SDP is exchanged in the form of HTTP, it communicates with the browser. If the SDP is exchanged in the form of SIP protocol, it communicates with the terminal device.

[0046] S401, sending the processing result of the rtc submodule to the signaling module, the signaling module constructs the response data of the signaling request according to the processing result; the core fields of the response data include:

[0047] {

[0048] Errno: Error code

[0049] Offer:sdp text string

[0050] }

[0051] S402, the signaling module returns the constructed data and obtains the offer data created by the server; returns the corresponding link according to the source type of the request. If the requested protocol is the http protocol, it is returned through the http protocol; if the requested protocol is the udp protocol, it is returned through the udp protocol. That is, the http protocol is used to communicate with the browser, and the udp protocol is used to communicate with the device terminal.

[0052] S403, repeat steps S1-S3, S401-S402 twice, implement the SDP exchange of offer / answer, and establish a point-to-point connection between the RTC submodule and the browser. Because one offer and answer interaction can only establish one point-to-point connection, the two offer and answer interactions establish point-to-point connections with the other end in turn. Among them, the SDP exchange of offer / answer here is the process of establishing a point-to-point connection between the browser type and the server. The complete process includes:

[0053] Offer stage:

[0054] 1. The browser sends an http request to the server;

[0055] 2. The server is first processed and parsed by the signaling module;

[0056] 3. The server parses the instruction code obtained by the signaling module and determines that an offer sdp needs to be created. Then, the offer sdp will be created through the rtc module and returned to the signaling module;

[0057] 4. The signaling module receives the offer sdp created by the rtc module and returns it through the http protocol.

[0058] Answer stage:

[0059] 1. After receiving the offer sdp, the browser creates an answer sdp and sends an http request with the answer sdp to the server;

[0060] 2. The server performs analysis through the signaling module;

[0061] 3. The server parses the command code through the signaling and determines that it is a command to set the answer, then extracts the answer sdp information and sets it to the rtc module

[0062] 4. The rtc module sets the answer sdp, implements the offer / answer sdp exchange, and starts a point-to-point connection with the browser.

[0063] In this embodiment, the rtc submodule establishes a p2p point-to-point connection with the browser, and the process of establishing the connection requires the following three steps:

[0064] 1. Carry out ice interaction process and establish ice connection.

[0065] 2. Encrypt the transmission channel and perform DTLS protocol handshake.

[0066] 3. The streaming media channel is established successfully, and both parties conduct two-way audio and video data communication and transmission.

[0067] It should be noted that the point-to-point connection with the browser uses the Webrtc protocol, which is a collection of a series of protocols. The steps to establish a webrtc connection include:

[0068] 1. Use two HTTP requests to exchange the SDP session description protocol on both ends;

[0069] 2. According to the information in SDP, establish ice connection and DTLS interaction process for data communication;

[0070] 3. Transmit rtp / rtcp audio and video data packets based on the established communication link.

[0071] The above process points out the SDP exchange method, as well as the subsequent ICE and DTLS processes, and finally transmits the audio and video data packets through RTP / RTCP load, so the WebRTC protocol has been implemented.

[0072] S411, the sip submodule receives offer sdp;

[0073] S412, query the corresponding terminal information through the uid instruction code, fill the offersdp into sip invite according to the terminal information, and send it to the other end;

[0074] S413, the other end receives the invite request and carries the answer sdp of the terminal device in the sipack protocol package. The server will monitor port 5060 internally, which is used to communicate with the device terminal in the sip protocol. After receiving the above signaling request, the server will parse the signaling module to obtain unified data. Through the information in the data, the terminal device information to be communicated with can be obtained in the data module. Important data includes the address for communicating with the terminal device. After the server constructs the offer, it sends the sip invite request to the address. The corresponding terminal device will return the answer information carried in the sip ack protocol package according to the sip protocol.

[0075] S414, extract the terminal device to answer sdp and set it to the rtc module, and the rtc submodule establishes a point-to-point connection with the terminal device.

[0076] After the above steps, the rtc module has obtained the sdp data at both ends, and establishes a point-to-point connection with the terminal device or browser through the data in the sdp.

[0077] S5, the server sets the generated abstract proxy entity object to the bridging strategy submodule, and the bridging strategy submodule establishes a mapping relationship between entities with the same stream_name, and forwards data to achieve interconnection between the terminal device and the browser.

[0078] In summary, the present application proposes a method that is compatible with both SIP and WebRTC protocols and realizes the interconnection and intercommunication of the two protocols. The method converts across protocols and takes into account real-time performance. Specifically, the server uses the SIP protocol to negotiate a point-to-point connection with the terminal device. The terminal device needs to support the SIP protocol. At the same time, the SIP protocol is only used to exchange the SDP function. The processing of the streaming media is handled by the RTC module, so that the server guarantees the real-time performance of the link with the device. Because the server adopts the SFU architecture design, the core feature of the SFU server is to "disguise" itself as a SIP protocol or WebRTC Peer client. Other clients do not actually know whether they are connected to a real client or a server through a point-to-point connection. The server bridges and forwards data internally, which can better adapt to different network conditions and terminal types (browser or terminal). In this way, since the data packet is directly forwarded, no encoding or decoding is required, and the CPU resource consumption is very small. And direct forwarding also greatly reduces the delay and improves the real-time performance. The other end establishes a point-to-point connection with the browser through two HTTP exchanges of SDP. The WebRTC protocol ensures good real-time and security. The server performs policy bridging internally, which not only realizes the interconnection between terminal devices and browsers, but also ensures real-time and security. At the same time, the underlying streaming media parsing of the SIP protocol and the WebRTC protocol are based on RTP / RTCP, and the work of protocol conversion between the two is less. At the same time, by generating offersdp by the server, the server, as the active party, can unify the media formats and encoders used at both ends from the source, so that the server can avoid the adaptation work at both ends, and the server can spend a small amount of computing to achieve conversion, which can reduce the load of the server and ensure real-time performance.

[0079] The above specific implementation modes are preferred embodiments of the present invention and cannot be used to limit the present invention. Any other changes or other equivalent replacement methods that do not deviate from the technical solution of the present invention are included in the protection scope of the present invention.

Claims

1. A method for interconnecting a terminal device and a browser, characterized in that: include: S1, the client sends a signaling request to the server, the client is a browser or a terminal device; S2, the signaling module of the server processes the signaling request into a command in a unified format and sends the command to the command processing submodule; the command includes the stream_name stream name, the uid command code, the cmd command code and the data carried by the cmd_data command code; S3, the instruction processing submodule sends the instruction to the rtc submodule for processing, and the rtc submodule creates an offer sdp and sets the answer of the other end, which is a browser or a terminal device; S4, according to the offer sdp and the answer of the other end, the rtc submodule establishes a point-to-point connection with the terminal device or browser through the data in the sdp; S5, the server sets the generated abstract proxy entity object to the bridging strategy submodule, and the bridging strategy submodule establishes a mapping relationship between entities with the same stream_name, and forwards data to achieve interconnection between the terminal device and the browser.

2. The method for interconnecting a terminal device and a browser according to claim 1, characterized in that: Between step S3 and step S4, it also includes: judging the client type through the data module according to the uid field in the instruction, if it is a browser, the rtc submodule performs a point-to-point connection with the terminal device or the browser through the data in the sdp; S401, sending the processing result of the rtc submodule to the signaling module, and the signaling module constructs response data of the signaling request according to the processing result; S402, the signaling module returns the constructed data and obtains the offer data created by the server; S403, repeat steps S1-S3 and S401-S402 twice to implement the SDP exchange of offer / answer, and the RTC submodule establishes a point-to-point connection with the browser.

3. The method for interconnecting a terminal device and a browser according to claim 2, characterized in that: If it is a device terminal, the RTC submodule uses the data in the SDP to establish a point-to-point connection with the terminal device or browser, including: S411, the sip submodule receives offer sdp; S412, query the corresponding terminal information through the uid instruction code, fill the offer sdp into sip invite according to the terminal information, and send it to the other end; S413, the peer end receives the invite request and carries the answer sdp of the terminal device's response in the sip ack protocol packet; S414, extract the terminal device to answer sdp and set it to the rtc module, and the rtc submodule establishes a point-to-point connection with the terminal device.

4. The method for interconnecting a terminal device and a browser according to claim 2, characterized in that: The offer / answer sdp exchange in step S403 includes: offer sdp creation and answer sdp setting; The creation of offer sdp includes: the browser sends an http request to the server, the server first processes and parses the http request through the signaling module, and when the server obtains the instruction code through the signaling module, it determines that the offer sdp needs to be created, and then creates the offer sdp through the rtc module, and returns the offer sdp to the signaling module, and the signaling module carries the offer sdp in it through the http protocol and returns it; The answer sdp setting includes: after the browser receives the offer sdp, it creates an answer sdp, sends an http request and carries the answer sdp to the server, and the server parses it through the signaling module. The server parses the instruction code through the signaling module, and determines that it is an instruction to set the answer based on the instruction code. The answer sdp information is extracted and set to the rtc module. The rtc module sets the answer sdp, realizes the offer / answer sdp exchange, and starts a point-to-point connection with the browser.

5. A system for interconnecting a terminal device and a browser, characterized in that: include: Data module, signaling module and flow management module; wherein the flow management module includes instruction processing submodule, rtc submodule, sip submodule and bridging strategy submodule; The data module is used to obtain static data and dynamic data, wherein the static data is obtained by querying the database, and the dynamic data is the dynamic push data of the terminal device; The signaling module is used to process the udp request protocol and the http request protocol sent by the terminal to obtain instructions in a unified format, wherein the instructions include a stream name stream_name, a user identifier uid and an instruction code cmd; The instruction processing submodule is used to extract the user identifier uid, and determine whether the user type is a browser or a terminal device according to the user identifier uid; The rtc submodule is used to create an offer sdp and set the answer sdp of the other end. When creating the offer sdp, a virtual entity connected to the other end is abstracted within the system. When receiving the answer sdp of the other end, a point-to-point connection is established with the other end by parsing the answer sdp. The sip submodule is used to receive the offer sdp and the instruction, obtain the address information corresponding to the terminal device according to the user identifier uid in the instruction, fill the sip invite protocol sent to the corresponding terminal device with the offer sdp, and the terminal returns the answer sdp, and at the same time sets the corresponding answer sdp to the rtc submodule; The bridging strategy submodule is used to establish a forwarding relationship between proxy entities and adapt and convert the protocols of the browser and terminal devices.

6. The system for interconnecting terminal devices and browsers according to claim 5, characterized in that: The instruction processing submodule includes an sdp creation unit and a user type determination unit; The sdp creation unit is used to pass the user identifier uid to the rtc submodule, and the rtc submodule creates an offer sdp, wherein the offer sdp includes transmission information parameters of both ends, encoder parameters used, and security policies; The user type determination unit is used to determine the user type according to the offer sdp. If the user type is determined to be a browser, it is sent back to the signaling module for HTTP response; if the user type is determined to be a terminal device, the instruction and offer sdp are input into the sip submodule.

7. The system for interconnecting terminal devices and browsers according to claim 5, characterized in that: The bridging strategy submodule is also used to internally bridge the two sides with the same stream_name extracted from the instruction, and adapt the rtp packet received at one end to the rtp packet format negotiated by the other end.

Citation Information

Patent Citations

  • Real-time communication method, terminal equipment, real-time communication server and system

    CN103580986A

  • Method for establishing a communication connection which is suitable for transmitting media streams between a first RTC client and a second RTC client

    CN106464697A

  • HTTP redirecting method and device, routing device and computer storage medium

    CN108712492A

  • WebRTC communication method based on SIP protocol

    CN109995734A

  • Data routing system and method

    CN116366738A