WO2021259124A1 - 视频会议的实现方法、终端和sip网关 - Google Patents

视频会议的实现方法、终端和sip网关 Download PDF

Info

Publication number
WO2021259124A1
WO2021259124A1 PCT/CN2021/100550 CN2021100550W WO2021259124A1 WO 2021259124 A1 WO2021259124 A1 WO 2021259124A1 CN 2021100550 W CN2021100550 W CN 2021100550W WO 2021259124 A1 WO2021259124 A1 WO 2021259124A1
Authority
WO
WIPO (PCT)
Prior art keywords
sip
terminal
webrtc
signaling
video conference
Prior art date
Application number
PCT/CN2021/100550
Other languages
English (en)
French (fr)
Inventor
舒龙
张敬宇
郭小琴
Original Assignee
京东方科技集团股份有限公司
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 京东方科技集团股份有限公司 filed Critical 京东方科技集团股份有限公司
Priority to US17/778,198 priority Critical patent/US20220417294A1/en
Publication of WO2021259124A1 publication Critical patent/WO2021259124A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1033Signalling gateways
    • H04L65/104Signalling gateways in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1108Web based protocols, e.g. webRTC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]

Definitions

  • the embodiments of the present application relate to the technical field of video conferencing, and in particular, to a video conferencing method, a WebRTC terminal, and a SIP gateway.
  • WebRTC Web Real-Time Communications
  • WebRTC Web Real-Time Communications
  • an embodiment of the present application provides a method for implementing a video conference, which is applied to a WebRTC terminal, and the method includes:
  • the SIP signaling interaction is performed between the SIP account and the SIP gateway to establish a video conference connection with the SIP terminal;
  • the SIP signaling between the WebRTC terminal and the SIP gateway is transmitted through the WebSocket protocol, and the WebRTC terminal can Analyze the received SIP signaling transmitted through the WebSocket protocol;
  • the interaction of SIP signaling between the SIP account and the SIP gateway to establish a video conference connection with the SIP terminal includes:
  • the second SIP signaling sent by the SIP gateway, analyze the second SIP signaling, and establish a video conference connection with the SIP terminal, the second SIP signaling carries the SIP terminal pair Confirmation of the first invitation.
  • the interaction of SIP signaling between the SIP account and the SIP gateway to establish a video conference connection with the SIP terminal includes:
  • the method before the SIP signaling interaction between the SIP account and the SIP gateway, the method further includes:
  • the sending the locally collected video stream includes:
  • the receiving the video stream of the SIP terminal includes:
  • the embodiments of the present application provide a method for implementing a video conference, which is applied to a SIP gateway, and the method includes:
  • the SIP signaling interaction with the WebRTC terminal and the SIP terminal is performed to establish a video conference connection between the WebRTC terminal and the SIP terminal.
  • the SIP signaling between the WebRTC terminal and the SIP gateway is through WebSocket Protocol transmission, the SIP gateway can parse SIP signaling transmitted through the WebSocket protocol.
  • the interaction of SIP signaling with a WebRTC terminal and a SIP terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal includes:
  • the second SIP signaling sent by the SIP terminal is received, and the second SIP signaling is forwarded to the WebRTC terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal.
  • the interaction of SIP signaling with a WebRTC terminal and a SIP terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal includes:
  • the fourth SIP signaling sent by the WebRTC terminal is received, the fourth SIP signaling is analyzed, and the resolved fourth SIP signaling is forwarded to the SIP terminal to establish the WebRTC terminal and For the video conference connection between the SIP terminals, the fourth SIP signaling carries the confirmation of the WebRTC terminal to the second invitation.
  • the method before the SIP signaling interaction with the WebRTC terminal and the SIP terminal, the method further includes:
  • an embodiment of the present application provides a terminal, including:
  • connection module is used to exchange SIP signaling with the SIP gateway through the SIP account to establish a video conference connection with the SIP terminal;
  • SIP signaling between the WebRTC terminal and the SIP gateway is transmitted through the WebSocket protocol, so The WebRTC terminal can parse the received SIP signaling transmitted through the WebSocket protocol;
  • the transmission module is used to send the locally collected video stream, and/or to receive the video stream of the SIP terminal and play it through the browser.
  • an embodiment of the present application provides a SIP gateway, including:
  • the connection module is used to interact with the SIP signaling between the WebRTC terminal and the SIP terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal.
  • the connection between the WebRTC terminal and the SIP gateway is SIP signaling is transmitted through the WebSocket protocol, and the SIP gateway terminal can analyze the SIP signaling transmitted through the WebSocket protocol.
  • an embodiment of the present application provides a terminal, including a processor, a memory, and a program or instruction stored on the memory and capable of running on the processor, and the program or instruction is executed by the processor.
  • the steps of the video conference implementation method of the first aspect described above are realized.
  • an embodiment of the present application provides a SIP gateway, including a processor, a memory, and a program or instruction stored on the memory and capable of running on the processor, and the program or instruction is processed by the processor.
  • a SIP gateway including a processor, a memory, and a program or instruction stored on the memory and capable of running on the processor, and the program or instruction is processed by the processor.
  • an embodiment of the present application provides a readable storage medium storing a program or instruction on the readable storage medium, and when the program or instruction is executed by a processor, the implementation method of the video conference in the first aspect described above is realized Or, when the program or instruction is executed by a processor, the steps of the video conference implementation method of the second aspect described above are realized.
  • FIG. 1 is a schematic structural diagram of a video conference system according to an embodiment of the application
  • FIG. 2 is a schematic structural diagram of a video conference system according to another embodiment of the application.
  • FIG. 3 is a schematic flowchart of a method for implementing a video conference in Embodiment 1 of this application;
  • FIG. 4 is a schematic flowchart of a method for implementing a video conference in Embodiment 2 of this application;
  • FIG. 5 is a schematic flowchart of a method for implementing a video conference in Embodiment 3 of this application;
  • FIG. 6 is a schematic flowchart of a method for implementing a video conference in Embodiment 4 of this application;
  • FIG. 7 is a schematic flowchart of a method for implementing a video conference in Embodiment 5 of this application.
  • FIG. 8 is a schematic flowchart of a method for implementing a video conference in Embodiment 6 of this application.
  • FIG. 9 is a schematic diagram of a specific signaling implementation flow of a SIP account registered by a WebRTC terminal in an embodiment of the application.
  • FIG. 10 is a schematic diagram of a signaling realization flow for establishing a connection between a WebRTC terminal and a SIP terminal and transmitting a video stream in an embodiment of the application;
  • FIG. 11 is a schematic structural diagram of a WebRTC terminal in an embodiment of the application.
  • Figure 12 is a schematic structural diagram of a SIP gateway in an embodiment of the application.
  • SIP signaling can be transmitted through the WebSocket protocol, and both WebRTC terminals and SIP terminals use RTP (Real-time Transport Protocol) to transmit audio and video streams.
  • RTP Real-time Transport Protocol
  • the embodiments of the present application provide a method, terminal, and SIP gateway for implementing a video conference.
  • SIP signaling is transmitted between the WebRTC terminal and the SIP gateway through the WebSocket protocol, and the video stream is performed through the RTP protocol.
  • the scalability of the video conference is improved.
  • FIG. 1 is a schematic structural diagram of a video conferencing system according to an embodiment of this application.
  • the video conferencing system includes: WebRTC terminals, SIP terminals, and SIP gateways.
  • the WebRTC terminals and SIP gateways can be transmitted through the WebSocket protocol.
  • SIP signaling ie SIP over WebSocket
  • SIP signaling is transmitted between the SIP gateway and SIP terminal through the SIP protocol to establish a video conference connection between the WebRTC terminal and the SIP terminal.
  • the video stream can be transmitted through the RTP protocol.
  • the video stream can be transmitted between the WebRTC terminal and the SIP terminal through the SRTP (Secure Real-time Transport Protocol) protocol to improve security.
  • SRTP Secure Real-time Transport Protocol
  • FIG. 2 is a schematic structural diagram of a video conference system according to another embodiment of the application.
  • the video conference system includes: a WebRTC terminal, a SIP terminal, a SIP gateway, and a WebRTC server.
  • SIP signaling is transmitted through the WebSocket protocol (that is, SIP over WebSocket), and SIP signaling is transmitted between the SIP gateway and the SIP terminal through the SIP protocol to establish a video conference connection between the WebRTC terminal and the SIP terminal.
  • the WebRTC terminal and The video stream can be transmitted between SIP terminals through the RTP protocol.
  • a video stream can be transmitted between the WebRTC terminal and the SIP terminal through the SRTP protocol to improve security.
  • the WebRTC terminal can also transmit the locally collected video stream to the WebRTC server through the Websocket protocol, and the WebRTC server transmits it to the SIP terminal or other WebRTC terminals.
  • the SIP terminal can transmit the locally collected video stream to the SIP gateway through the SIP protocol, and the WebRTC terminal can also receive the SIP terminal's video stream from the SIP gateway through the Websocket protocol, so that the WebRTC terminal or SIP terminal does not need to transfer the locally collected video stream Send to multiple terminals (SIP terminals or other WebRTC terminals) separately, saving bandwidth.
  • the video stream can be transmitted between the WebRTC terminal and the WebRTC server through the WSS protocol to improve security.
  • the WebRTC server and/or SIP gateway can support SFU (Selective Forward Unit, selective forwarding) mode to send video streams.
  • SFU Selective Forward Unit, selective forwarding
  • the so-called selective forwarding means that the WebRTC terminal transmits the locally collected video stream To the WebRTC server, the WebRTC server transmits to other terminals respectively.
  • the SIP terminal sends the locally collected video stream to the SIP gateway, and the SIP gateway transmits it to other terminals. At this time, the terminal can select one or more of the terminals on the web page.
  • the video stream is simple to implement, has strong interactivity, low delay, and has low server hardware requirements.
  • the WebRTC specification is not modified, but a WebSocket-based SIP parsing library is set up on the WebRTC terminal and SIP gateway to verify the received WebSocket-based protocol
  • the transmitted SIP signaling is analyzed.
  • the WebRTC terminal also needs to register a SIP account to realize the video conference with the SIP terminal.
  • the SIP account can be an account independent of the WebRTC account, where the WebRTC account is used to conduct WebRTC account video For conferences, SIP accounts are used for SIP video conferences, or SIP and WebRTC use the same account.
  • video stream in the embodiment of the present application includes audio and video.
  • the following describes the implementation methods of the video conference performed by the WebRTC terminal and the SIP gateway respectively.
  • FIG. 3 is a schematic flowchart of a method for implementing a video conference in Embodiment 1 of this application.
  • the method for implementing a video conference is applied to a WebRTC terminal and includes:
  • Step 31 Perform SIP signaling interaction with the SIP gateway through the SIP account to establish a video conference connection with the SIP terminal; the SIP signaling between the WebRTC terminal and the SIP gateway is transmitted through the WebSocket protocol, and the WebRTC The terminal can analyze the received SIP signaling transmitted through the WebSocket protocol;
  • Step 32 Send the locally collected video stream, and/or receive the video stream of the SIP terminal and play it through the browser.
  • a WebRTC terminal can create a video conference and invite SIP terminals to join the video conference. Please refer to FIG. 4.
  • FIG. 4 is a schematic flowchart of a method for implementing a video conference in Embodiment 2 of this application. The implementation method of is applied to WebRTC terminal, including:
  • Step 41 Send a first SIP signaling to the SIP gateway through a SIP account, where the first SIP signaling carries a first invitation to invite SIP terminals to join the video conference;
  • Step 42 Receive the second SIP signaling sent by the SIP gateway, parse the second SIP signaling, and establish a video conference connection with the SIP terminal.
  • the second SIP signaling carries the The SIP terminal's confirmation of the first invitation.
  • Step 43 Send the locally collected video stream, and/or receive the video stream of the SIP terminal and play it through the browser.
  • a SIP terminal can also create a video conference and invite WebRTC terminals to join the video conference. Please refer to FIG. 5.
  • FIG. 5 The realization method of the meeting is applied to the WebRTC terminal, including:
  • Step 51 Receive a third SIP signaling sent by the SIP gateway, where the third SIP signaling carries a second invitation for the SIP terminal to invite the WebRTC terminal to join the video conference;
  • Step 52 parse the third SIP signaling, and send fourth SIP signaling to the SIP gateway, where the fourth SIP signaling carries the confirmation of the WebRTC terminal to the second invitation;
  • Step 53 Establish a video conference connection with the SIP terminal
  • Step 54 Send the locally collected video stream, and/or receive the video stream of the SIP terminal and play it through the browser.
  • the WebRTC terminal needs to interact with the SIP gateway through SIP signaling through the SIP account. Therefore, the WebRTC terminal also needs to register the SIP account before interacting with the SIP gateway. That is, the implementation method of the video conference in the embodiment of the present application further includes:
  • Step A1 Send fifth SIP signaling to the SIP gateway, where the fifth SIP signaling carries a request to register an account;
  • Step A2 Receive the sixth SIP signaling sent by the SIP gateway, and parse the sixth SIP signaling, where the sixth SIP signaling carries the SIP account assigned by the SIP gateway to the WebRTC terminal.
  • the sending of the locally collected video stream in the foregoing embodiment may include: sending the locally collected video stream to the WebRTC server through the WebSocket protocol, and the WebRTC server forwards the locally collected video stream to the SIP terminal, or sending the locally collected video through the RTP protocol Send the stream directly to the SIP terminal;
  • receiving the video stream of the SIP terminal through the RTP protocol includes: receiving the video stream of the SIP terminal from the SIP gateway through the Websocket protocol, or directly receiving the SIP terminal through the RTP protocol.
  • the video stream of the terminal includes: receiving the video stream of the SIP terminal from the SIP gateway through the Websocket protocol, or directly receiving the SIP terminal through the RTP protocol.
  • the video stream can be transmitted directly between the WebRTC terminal and the SIP terminal through the RTP protocol, or the video stream can be transmitted to the WebRTC server, and other terminals can watch the video from the WebRTC server.
  • FIG. 6 is a schematic flowchart of a method for implementing a video conference according to Embodiment 4 of this application.
  • the method for implementing a video conference is applied to a SIP gateway and includes:
  • Step 61 Perform SIP signaling interaction with the WebRTC terminal and the SIP terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal, and the SIP signaling between the WebRTC terminal and the SIP gateway If it is transmitted through the WebSocket protocol, the SIP gateway can parse the SIP signaling transmitted through the WebSocket protocol.
  • the implementation method of the video conference in the embodiments of the present application includes:
  • Step 71 Receive the first SIP signaling sent by the WebRTC terminal through the SIP account, and parse the first SIP signaling, where the first SIP signaling carries an invitation to invite the SIP terminal to join the video conference;
  • Step 72 Forward the parsed first SIP signaling to the SIP terminal
  • Step 73 Receive the second SIP signaling sent by the SIP terminal, and forward the second SIP signaling to the WebRTC terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal.
  • the implementation method of the video conference in the embodiments of the present application includes:
  • Step 81 Receive a third SIP signaling sent by the SIP terminal, where the third SIP signaling carries a second invitation for the SIP terminal to invite the WebRTC terminal to join the video conference;
  • Step 82 Forward the third SIP signaling to the WebRTC terminal
  • Step 83 Receive the fourth SIP signaling sent by the WebRTC terminal, analyze the fourth SIP signaling, and forward the resolved fourth SIP signaling to the SIP terminal to establish the For a video conference connection between the WebRTC terminal and the SIP terminal, the fourth SIP signaling carries a confirmation of the WebRTC terminal to the second invitation.
  • the WebRTC terminal needs to interact with the SIP gateway through SIP signaling through the SIP account. Therefore, the WebRTC terminal also needs to register the SIP account before interacting with the SIP gateway. That is, the implementation method of the video conference in the embodiment of the present application further includes:
  • Step B1 Receive the fifth SIP signaling sent by the WebRTC terminal, and parse the fifth SIP signaling, where the fifth SIP signaling carries a request to register an account;
  • Step B2 Send a sixth SIP signaling to the WebRTC terminal, and the sixth SIP signaling carries the SIP account allocated by the SIP gateway for the WebRTC terminal.
  • the implementation method of the video conference in the embodiment of the present application may further include: the SIP gateway receives the video stream sent by the SIP terminal; and when the WebRTC terminal requests to watch the video stream, it is transmitted to the WebRTC terminal through the WebSocket protocol, thereby realizing the video Selective forwarding of streams.
  • the following describes the specific signaling implementation process of the WebRTC terminal registering the SIP account.
  • the specific signaling implementation process of the SIP account registration of the WebRTC terminal in the embodiment of the present application includes the following steps:
  • Step 91 The WebRTC terminal sends an HTTP GET (WS Handshake) to the SIP gateway to request for account registration; HTTP GET (WS Handshake) is the fifth signaling mentioned above;
  • Step 92 The SIP gateway sends 101 Switching Protocols to the WebRTC terminal, indicating that the SIP gateway has understood the request of the WebRTC terminal, and will notify the WebRTC terminal to use the WebSocket protocol to complete the request through the Upgrade subsection;
  • Step 93 The SIP gateway sends a REGISTER to the WebRTC terminal through the WebSocket protocol, carrying the SIP account allocated by the SIP gateway for the WebRTC terminal, and the REGISTER is the sixth SIP signaling described above.
  • Step 94 The WebRTC terminal sends a 200 OK to the SIP gateway, indicating that the SIP account registration is successful.
  • the following describes the signaling implementation process of establishing a connection between the WebRTC terminal and the SIP terminal and transmitting the video stream.
  • the signaling realization process of establishing a connection between a WebRTC terminal and a SIP terminal and transmitting a video stream in an embodiment of the present application includes the following steps:
  • Step 101 The WebRTC terminal sends an INVITE to the SIP gateway through the registered SIP account, and the INVITE carries the first invitation to invite the SIP terminal to join the video conference; INVITE is the above-mentioned first SIP signaling;
  • Step 102 The SIP gateway parses the INVITE and returns Trying to the WebRTC terminal. Trying is a temporary response;
  • Step 103 The SIP gateway forwards the INVITE to the SIP terminal;
  • Step 104 After receiving the INVITE, the SIP terminal can display the INVITE message on the web page or APP, and after confirming to participate in the video conference, it will feed back a 200 OK to the SIP gateway for response.
  • the 200 OK is the above-mentioned second SIP signaling
  • Step 105 The SIP gateway forwards the 200 OK to the WebRTC terminal through the WebSocket protocol;
  • Step 106 The WebRTC terminal sends an ACK to the SIP gateway to confirm receipt;
  • Step 107 The SIP gateway forwards the ACK to the SIP terminal, so that a Bidirectional SRTP connection is established between the WebRTC terminal and the SIP terminal.
  • the local camera of the SIP terminal collects the user's video stream and sends it to the WebRTC terminal that needs to be watched through the SRTP protocol.
  • the SIP terminal also receives the video stream of the WebRTC terminal, and the WebRTC terminal and the SIP terminal establish a two-way media stream transmission interconnection;
  • Step 108 If the SIP terminal needs to end the video conference, send a BYE to the SIP gateway;
  • Step 109 The SIP gateway forwards the BYE to the WebRTC terminal;
  • Step 1010 The WebRTC terminal sends a 200 OK to the SIP gateway to respond to the end of the video conference;
  • Step 1011 The SIP gateway sends 200 OK to the SIP terminal, thereby ending the video conference.
  • an embodiment of the present application further provides a terminal 110, including:
  • connection module 111 is configured to interact with SIP signaling through the SIP account and SIP gateway to establish a video conference connection with the SIP terminal; the SIP signaling between the WebRTC terminal and the SIP gateway is transmitted through the WebSocket protocol, The WebRTC terminal can analyze the received SIP signaling transmitted through the WebSocket protocol;
  • the transmission module 112 is configured to send a locally collected video stream, and/or receive the video stream of the SIP terminal and play it through a browser.
  • connection module 111 is configured to send a first SIP signaling to the SIP gateway through a SIP account, where the first SIP signaling carries a first invitation to invite SIP terminals to join the video conference; receiving the The second SIP signaling sent by the SIP gateway analyzes the second SIP signaling, and establishes a video conference connection with the SIP terminal.
  • the second SIP signaling carries the SIP terminal’s connection to the first SIP terminal. Confirmation of invitation.
  • connection module 111 is configured to receive third SIP signaling sent by the SIP gateway, where the third SIP signaling carries a second invitation for the SIP terminal to invite the WebRTC terminal to join the video conference; Analyze the third SIP signaling, and send fourth SIP signaling to the SIP gateway, where the fourth SIP signaling carries the confirmation of the WebRTC terminal to the second invitation; and the SIP The terminal establishes a video conference connection.
  • the WebRTC terminal further includes:
  • a sending module configured to send fifth SIP signaling to the SIP gateway, where the fifth SIP signaling carries a request for registering an account
  • the receiving module is configured to receive the sixth SIP signaling sent by the SIP gateway and parse the sixth SIP signaling, where the sixth SIP signaling carries the SIP allocated by the SIP gateway for the WebRTC terminal account.
  • the transmission module 112 is configured to send the locally collected video stream to the WebRTC server through the WebSocket protocol, and the WebRTC server forwards the video stream to the SIP terminal, or directly transmits the locally collected video stream through the RTP protocol. Sent to the SIP terminal;
  • the transmission module 112 is configured to receive the video stream of the SIP terminal from the SIP gateway through the Websocket protocol, or directly receive the video stream of the SIP terminal from the SIP terminal through the RTP protocol.
  • an embodiment of the present application also provides a SIP gateway 120, including:
  • the connection module 121 is configured to interact with the SIP signaling between the WebRTC terminal and the SIP terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal, between the WebRTC terminal and the SIP gateway.
  • the SIP signaling transmitted through the WebSocket protocol is transmitted, and the SIP gateway can analyze the SIP signaling transmitted through the WebSocket protocol.
  • connection module 121 is configured to receive the first SIP signaling sent by the WebRTC terminal through the SIP account, and parse the first SIP signaling, where the first SIP signaling carries the invitation The SIP terminal’s invitation to join the video conference; forwards the parsed first SIP signaling to the SIP terminal; receives the second SIP signaling sent by the SIP terminal, and forwards the second SIP signaling to The WebRTC terminal to establish a video conference connection between the WebRTC terminal and the SIP terminal.
  • connection module 121 is configured to receive third SIP signaling sent by the SIP terminal, where the third SIP signaling carries a second invitation for the SIP terminal to invite the WebRTC terminal to join the video conference; Forward the third SIP signaling to the WebRTC terminal; receive the fourth SIP signaling sent by the WebRTC terminal, parse the fourth SIP signaling, and forward the parsed SIP signaling to the SIP terminal.
  • the fourth SIP signaling is used to establish a video conference connection between the WebRTC terminal and the SIP terminal, and the fourth SIP signaling carries a confirmation of the WebRTC terminal to the second invitation.
  • the SIP gateway further includes:
  • a receiving module configured to receive the fifth SIP signaling sent by the WebRTC terminal, and analyze the fifth SIP signaling, where the fifth SIP signaling carries a request for registering an account;
  • the sending module is configured to send sixth SIP signaling to the WebRTC terminal, where the sixth SIP signaling carries the SIP account assigned by the SIP gateway to the WebRTC terminal.
  • An embodiment of the present application also provides a terminal, including a processor, a memory, and a program or instruction stored on the memory and capable of running on the processor.
  • the program or instruction implements the foregoing when the program or instruction is executed by the processor.
  • An embodiment of the present application also provides a SIP gateway, including a processor, a memory, and a program or instruction that is stored on the memory and can run on the processor, and is implemented when the program or instruction is executed by the processor.
  • the embodiment of the present application also provides a computer non-transitory readable storage medium, the readable storage medium stores a program or instruction, and when the program or instruction is executed by a processor, the implementation of the above-mentioned video conference applied to the WebRTC terminal is realized.
  • the steps of the method, or when the program or instruction is executed by the processor, implement the steps of the foregoing method for implementing the video conference applied to the SIP gateway.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请提供一种视频会议的实现方法、终端和SIP网关,应用于WebRTC终端的视频会议的实现方法包括:通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接;所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述WebRTC终端能够对接收到的通过WebSocket协议传输的SIP信令进行解析;发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。

Description

视频会议的实现方法、终端和SIP网关
相关申请的交叉引用
本申请主张在2020年6月23日在中国提交的中国专利申请号No.202010584051.9的优先权,其全部内容通过引用包含于此。
技术领域
本申请实施例涉及视频会议技术领域,尤其涉及一种视频会议方法、WebRTC终端和SIP网关。
背景技术
随着互联网的不断发展,远程视频会议系统的应用也越来越广泛,如何实现高效、低成本、稳定、扩展性好的视频会议系统一直是企业追求的目标。
WebRTC(Web Real-Time Communications,网页实时通信)是基于Web(网页)的视频会议技术,用户无需安装任何插件或第三方的软件就可实现音视频流或者其他任意数据的传输。相关技术中的视频会议系统使用SIP(Session Initiation Protocol,会话初始化协议)协议做信令交互,无法在网页显示,而WebRTC视频会议使用WebSocket(网页套接字)做信令交互,WebRTC终端和SIP终端之间无法进行视频会议。
发明内容
第一方面,本申请实施例提供了一种视频会议的实现方法,应用于WebRTC终端,所述方法包括:
通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接;所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述WebRTC终端能够对接收到的通过WebSocket协议传输的SIP信令进行解析;
发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
可选的,所述通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接包括:
通过SIP账号向所述SIP网关发送第一SIP信令,所述第一SIP信令携带邀请SIP终端加入视频会议的第一邀请;
接收到所述SIP网关发送的第二SIP信令,对所述第二SIP信令进行解析,并与所述SIP终端建立视频会议连接,所述第二SIP信令中携带所述SIP终端对所述第一邀请的确认。
可选的,所述通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接包括:
接收所述SIP网关发送的第三SIP信令,所述第三SIP信令携带所述SIP终端邀请所述WebRTC终端加入视频会议的第二邀请;
对所述第三SIP信令进行解析,并向所述SIP网关发送第四SIP信令,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认;
与所述SIP终端建立视频会议连接。
可选的,所述通过SIP账号与SIP网关之间进行SIP信令的交互之前还包括:
向所述SIP网关发送第五SIP信令,所述第五SIP信令携带注册账号的请求;
接收所述SIP网关发送的第六SIP信令,并对所述第六SIP信令进行解析,所述第六SIP信令携带所述SIP网关为所述WebRTC终端分配的SIP账号。
可选的,所述发送本地采集的视频流包括:
通过WebSocket协议将本地采集的视频流发送给WebRTC服务器,由所述WebRTC服务器转发给所述SIP终端,或者,通过RTP协议将本地采集的视频流直接发送给所述SIP终端;
所述接收所述SIP终端的视频流包括:
通过Websocket协议从所述SIP网关接收所述SIP终端的视频流,或者,通过RTP协议直接从SIP终端接收所述SIP终端的视频流。
第二方面,本申请实施例提供了一种视频会议的实现方法,应用于SIP网 关,所述方法包括:
与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述SIP网关能够对通过WebSocket协议传输的SIP信令进行解析。
可选的,所述与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接包括:
接收所述WebRTC终端通过SIP账号发送的第一SIP信令,并对所述第一SIP信令进行解析,所述第一SIP信令携带邀请所述SIP终端加入视频会议的邀请;
向所述SIP终端转发解析后的所述第一SIP信令;
接收到所述SIP终端发送的第二SIP信令,将所述第二SIP信令转发给所述WebRTC终端,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接。
可选的,所述与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接包括:
接收所述SIP终端发送的第三SIP信令,所述第三SIP信令携带所述SIP终端邀请所述WebRTC终端加入视频会议的第二邀请;
将所述第三SIP信令转发给所述WebRTC终端;
接收到所述WebRTC终端发送的第四SIP信令,对所述第四SIP信令进行解析,并向所述SIP终端转发解析后的所述第四SIP信令,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认。
可选的,所述与WebRTC终端和SIP终端之间进行SIP信令的交互之前还包括:
接收所述WebRTC终端发送的第五SIP信令,并对所述第五SIP信令进行解析,所述第五SIP信令携带注册账号的请求;
向所述WebRTC终端发送第六SIP信令,所述第六SIP信令携带所述SIP网关为所述WebRTC终端分配的SIP账号。
第三方面,本申请实施例提供了一种终端,包括:
连接模块,用于通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接;所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述WebRTC终端能够对接收到的通过WebSocket协议传输的SIP信令进行解析;
传输模块,用于发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
第四方面,本申请实施例提供了一种SIP网关,包括:
连接模块,用于与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述SIP网关终端能够对通过WebSocket协议传输的SIP信令进行解析。
第五方面,本申请实施例提供了一种终端,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现上述第一方面的视频会议的实现方法的步骤。
第六方面,本申请实施例提供了一种SIP网关,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现上述第二方面的视频会议的实现方法的步骤。
第七方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现上述第一方面的视频会议的实现方法的步骤,或者,所述程序或指令被处理器执行时实现上述第二方面的视频会议的实现方法的步骤。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出可选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本申请一实施例的视频会议系统的结构示意图;
图2为本申请另一实施例的视频会议系统的结构示意图;
图3为本申请实施例一的视频会议的实现方法的流程示意图;
图4为本申请实施例二的视频会议的实现方法的流程示意图;
图5为本申请实施例三的视频会议的实现方法的流程示意图;
图6为本申请实施例四的视频会议的实现方法的流程示意图;
图7为本申请实施例五的视频会议的实现方法的流程示意图;
图8为本申请实施例六的视频会议的实现方法的流程示意图;
图9为本申请实施例中的WebRTC终端注册SIP账号的具体的信令实现流程示意图;
图10为本申请实施例中的WebRTC终端和SIP终端之间建立连接以及进行视频流的传输的信令实现流程示意图;
图11为本申请实施例中的WebRTC终端的结构示意图;
图12为本申请实施例中的SIP网关的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在IETF(Internet Engineering Task Force,国际互联网工程任务组)发布的规范中规定SIP信令可以通过WebSocket协议传输,且WebRTC终端与SIP终端传输音视频流传输都是使用RTP(Real-time Transport Protocol,实时传输协议)协议,基于此,本申请实施例提供一种视频会议的实现方法、终端和SIP网关,在WebRTC终端与SIP网关之间通过WebSocket协议传输SIP信令,且通过RTP协议进行视频流的传输,从而实现WebRTC终端和SIP终端之间的视频会议,提高了视频会议的扩展性。
请参考图1,图1为本申请一实施例的视频会议系统的结构示意图,该视频会议系统包括:WebRTC终端、SIP终端和SIP网关,其中,WebRTC终端和SIP网关之间可以通过WebSocket协议传输SIP信令(即SIP over  WebSocket),SIP网关与SIP终端之间通过SIP协议传输SIP信令,从而建立WebRTC终端和SIP终端之间的视频会议连接,连接完成后,WebRTC终端和SIP终端之间可以通过RTP协议传输视频流。可选的,WebRTC终端和SIP终端之间可以通过SRTP(Secure Real-time Transport Protocol,安全实时传输协议)协议传输视频流,以提高安全性。
请参考图2,图2为本申请另一实施例的视频会议系统的结构示意图,该视频会议系统包括:WebRTC终端、SIP终端、SIP网关和WebRTC服务器,其中,WebRTC终端和SIP网关之间可以通过WebSocket协议传输SIP信令(即SIP over WebSocket),SIP网关与SIP终端之间通过SIP协议传输SIP信令,从而建立WebRTC终端和SIP终端之间的视频会议连接,连接完成后,WebRTC终端和SIP终端之间可以通过RTP协议传输视频流。可选的,WebRTC终端和SIP终端之间可以通过SRTP协议传输视频流,以提高安全性。此外,在进行视频流的传输时,WebRTC终端还可以将本地采集的视频流通过Websocket协议传输给WebRTC服务器,由WebRTC服务器传输给SIP终端或其他WebRTC终端。SIP终端可以将本地采集的视频流通过SIP协议传输给SIP网关,WebRTC终端还可以通过Websocket协议从SIP网关接收所述SIP终端的视频流,从而WebRTC终端或SIP终端不需要将本地采集的视频流分别发送给多个终端(SIP终端或其他WebRTC终端),节省了带宽。可选的,WebRTC终端和WebRTC服务器之间可以通过WSS协议进行视频流的传输,以提高安全性。
本申请实施例中,可选的,WebRTC服务器和/或SIP网关能够支持SFU(Selective forward unit,选择性转发)方式发送视频流,所谓选择性转发是指,WebRTC终端将本地采集的视频流传输到WebRTC服务器,由WebRTC服务器分别传输给其他终端,SIP终端将本地采集的视频流发送给SIP网关,由SIP网关分别传输给其他终端,此时终端可以在网页上选择其中一个或多个终端的视频流进行播放,相比现有的将所有终端的视频流合并之后发送的方式相比,实现简单、互动性强、延时低,而且对服务器硬件要求低。
本申请实施例中,为了避免重复定义和最大程度兼容现有,未对WebRTC规范进行修改,而是在WebRTC终端和SIP网关上设置一个基于WebSocket 的SIP解析库,以对接收到的基于WebSocket协议传输的SIP信令进行解析。
同时,本申请实施例中,WebRTC终端还需要注册一个SIP账号,用于实现与SIP终端的视频会议,该SIP账号可以是独立于WebRTC账号的一个账号,其中,WebRTC账号用于进行WebRTC账号视频会议,SIP账号用于进行SIP视频会议,也可以是SIP与WebRTC使用同一个账号。
需要说明的是,本申请实施例中的视频流包括音频和视频。
下面分别针对WebRTC终端和SIP网关侧各自执行的视频会议的实现方法进行说明。
请参考图3,图3为本申请实施例一的视频会议的实现方法的流程示意图,该视频会议的实现方法应用于WebRTC终端,包括:
步骤31:通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接;所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述WebRTC终端能够对接收到的通过WebSocket协议传输的SIP信令进行解析;
步骤32:发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
在本申请的一些实施例中,可以由WebRTC终端创建视频会议并邀请SIP终端加入视频会议,请参考图4,图4为本申请实施例二的视频会议的实现方法的流程示意图,该视频会议的实现方法应用于WebRTC终端,包括:
步骤41:通过SIP账号向所述SIP网关发送第一SIP信令,所述第一SIP信令携带邀请SIP终端加入视频会议的第一邀请;
步骤42:接收到所述SIP网关发送的第二SIP信令,对所述第二SIP信令进行解析,并与所述SIP终端建立视频会议连接,所述第二SIP信令中携带所述SIP终端对所述第一邀请的确认。
步骤43:发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
在本申请的一些实施例中,也可以由SIP终端创建视频会议并邀请WebRTC终端加入视频会议,请参考图5,图5为本申请实施例三的视频会议的实现方法的流程示意图,该视频会议的实现方法应用于WebRTC终端,包 括:
步骤51:接收所述SIP网关发送的第三SIP信令,所述第三SIP信令携带所述SIP终端邀请所述WebRTC终端加入视频会议的第二邀请;
步骤52:对所述第三SIP信令进行解析,并向所述SIP网关发送第四SIP信令,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认;
步骤53:与所述SIP终端建立视频会议连接;
步骤54:发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
本申请实施例中,WebRTC终端需要通过SIP账号与SIP网关之间进行SIP信令的交互,因而,WebRTC终端在与SIP网关之间进行SIP信令的交互之前,还需要进行SIP账号的注册,即本申请实施例中的视频会议的实现方法还包括:
步骤A1:向所述SIP网关发送第五SIP信令,所述第五SIP信令携带注册账号的请求;
步骤A2:接收所述SIP网关发送的第六SIP信令,并对所述第六SIP信令进行解析,所述第六SIP信令携带所述SIP网关为所述WebRTC终端分配的SIP账号。
上述实施例中的发送本地采集的视频流可以包括:通过WebSocket协议将本地采集的视频流发送给WebRTC服务器,由所述WebRTC服务器转发给所述SIP终端,或者,通过RTP协议将本地采集的视频流直接发送给所述SIP终端;
上述实施例中的所述通过RTP协议接收所述SIP终端的视频流包括:通过Websocket协议从所述SIP网关接收所述SIP终端的视频流,或者,通过RTP协议直接从SIP终端接收所述SIP终端的视频流。
也就是说,WebRTC终端与SIP终端之间可以直接通过RTP协议进行视频流的传输,也可以将视频流传输到WebRTC服务器,其他终端从WebRTC服务器观看视频。
请参考图6,图6为本申请实施例四的视频会议的实现方法的流程示意图,该视频会议的实现方法应用于SIP网关,包括:
步骤61:与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述SIP网关能够对通过WebSocket协议传输的SIP信令进行解析。
请参考图7,在本申请的一些实施例中,若发起视频会议的终端是WebRTC终端,本申请实施例的视频会议的实现方法包括:
步骤71:接收所述WebRTC终端通过SIP账号发送的第一SIP信令,并对所述第一SIP信令进行解析,所述第一SIP信令携带邀请所述SIP终端加入视频会议的邀请;
步骤72:向所述SIP终端转发解析后的所述第一SIP信令;
步骤73:接收到所述SIP终端发送的第二SIP信令,将所述第二SIP信令转发给所述WebRTC终端,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接。
请参考图8,在本申请的一些实施例中,若发起视频会议的终端是SIP终端,本申请实施例的视频会议的实现方法包括:
步骤81:接收所述SIP终端发送的第三SIP信令,所述第三SIP信令携带所述SIP终端邀请所述WebRTC终端加入视频会议的第二邀请;
步骤82:将所述第三SIP信令转发给所述WebRTC终端;
步骤83:接收到所述WebRTC终端发送的第四SIP信令,对所述第四SIP信令进行解析,并向所述SIP终端转发解析后的所述第四SIP信令,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认。
本申请实施例中,WebRTC终端需要通过SIP账号与SIP网关之间进行SIP信令的交互,因而,WebRTC终端在与SIP网关之间进行SIP信令的交互之前,还需要进行SIP账号的注册,即本申请实施例中的视频会议的实现方法还包括:
步骤B1:接收所述WebRTC终端发送的第五SIP信令,并对所述第五SIP信令进行解析,所述第五SIP信令携带注册账号的请求;
步骤B2:向所述WebRTC终端发送第六SIP信令,所述第六SIP信令携 带所述SIP网关为所述WebRTC终端分配的SIP账号。
可选的,本申请实施例中视频会议的实现方法还可以包括:SIP网关接收SIP终端发送的视频流;并在WebRTC终端请求观看该视频流时,通过WebSocket协议传输给WebRTC终端,从而实现视频流的选择性转发。
下面对WebRTC终端注册SIP账号的具体的信令实现流程进行说明。
请参考图9,本申请实施例中的WebRTC终端注册SIP账号的具体的信令实现流程包括以下步骤:
步骤91:WebRTC终端向SIP网关发送HTTP GET(WS handshake),以请求注册账号;HTTP GET(WS handshake)即上述第五信令;
步骤92:SIP网关向WebRTC终端发送101Switching Protocols,表示SIP网关已经理解了WebRTC终端的请求,并将通过Upgrade子段通知WebRTC终端采用WebSocket协议来完成这个请求;
步骤93:SIP网关通过WebSocket协议向WebRTC终端发送REGISTER,携带SIP网关为所述WebRTC终端分配的SIP账号,REGISTER即上述第六SIP信令。
步骤94:WebRTC终端向SIP网关发送200OK,表示注册SIP账号成功。
下面对WebRTC终端和SIP终端之间建立连接以及进行视频流的传输的信令实现流程进行说明。
请参考图10,本申请实施例中的WebRTC终端和SIP终端之间建立连接以及进行视频流的传输的信令实现流程包括以下步骤:
步骤101:WebRTC终端通过注册的SIP账号向SIP网关发送INVITE,INVITE中携带邀请SIP终端加入视频会议的第一邀请;INVITE即上述第一SIP信令;
步骤102:SIP网关解析INVITE,并向WebRTC终端返回Trying,Trying为临时响应;
步骤103:SIP网关将INVITE转发给SIP终端;
步骤104:SIP终端接收到INVITE之后,可以在网页或者APP上展示INVITE消息,确认参加视频会议后,向SIP网关反馈200OK,用于响应, 200OK即上述第二SIP信令;
步骤105:SIP网关通过WebSocket协议将200OK转发给WebRTC终端;
步骤106:WebRTC终端向SIP网关发送ACK,用于确认接收;
步骤107:SIP网关将ACK转发给SIP终端,从而WebRTC终端与SIP终端之间建立了双向(Bidirectional)SRTP连接,SIP终端本地摄像头采集用户的视频流并通过SRTP协议发送给需要观看的WebRTC终端,同时SIP终端也接收WebRTC终端的视频流,WebRTC终端和SIP终端建立双向媒体流传输的互联互通;
步骤108:若SIP终端需要结束视频会议,向SIP网关发送BYE;
步骤109:SIP网关将BYE转发至WebRTC终端;
步骤1010:WebRTC终端向SIP网关发送200OK,以对结束视频会议进行响应;
步骤1011:SIP网关将200OK发送给SIP终端,从而结束视频会议。
请参考图11,本申请实施例还提供一种终端110,包括:
连接模块111,用于通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接;所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述WebRTC终端能够对接收到的通过WebSocket协议传输的SIP信令进行解析;
传输模块112,用于发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
可选的,所述连接模块111,用于通过SIP账号向所述SIP网关发送第一SIP信令,所述第一SIP信令携带邀请SIP终端加入视频会议的第一邀请;接收到所述SIP网关发送的第二SIP信令,对所述第二SIP信令进行解析,并与所述SIP终端建立视频会议连接,所述第二SIP信令中携带所述SIP终端对所述第一邀请的确认。
可选的,所述连接模块111,用于接收所述SIP网关发送的第三SIP信令,所述第三SIP信令携带所述SIP终端邀请所述WebRTC终端加入视频会议的第二邀请;对所述第三SIP信令进行解析,并向所述SIP网关发送第四 SIP信令,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认;与所述SIP终端建立视频会议连接。
可选的,所述WebRTC终端还包括:
发送模块,用于向所述SIP网关发送第五SIP信令,所述第五SIP信令携带注册账号的请求;
接收模块,用于接收所述SIP网关发送的第六SIP信令,并对所述第六SIP信令进行解析,所述第六SIP信令携带所述SIP网关为所述WebRTC终端分配的SIP账号。
可选的,所述传输模块112,用于通过WebSocket协议将本地采集的视频流发送给WebRTC服务器,由所述WebRTC服务器转发给所述SIP终端,或者,通过RTP协议将本地采集的视频流直接发送给所述SIP终端;
可选的,所述传输模块112,用于通过Websocket协议从所述SIP网关接收所述SIP终端的视频流,或者,通过RTP协议直接从SIP终端接收所述SIP终端的视频流。
请参考图12,本申请实施例还提供一种SIP网关120,包括:
连接模块121,用于与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述SIP网关能够对通过WebSocket协议传输的SIP信令进行解析。
可选的,所述连接模块121,用于接收所述WebRTC终端通过SIP账号发送的第一SIP信令,并对所述第一SIP信令进行解析,所述第一SIP信令携带邀请所述SIP终端加入视频会议的邀请;向所述SIP终端转发解析后的所述第一SIP信令;接收到所述SIP终端发送的第二SIP信令,将所述第二SIP信令转发给所述WebRTC终端,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接。
可选的,所述连接模块121,用于接收所述SIP终端发送的第三SIP信令,所述第三SIP信令携带所述SIP终端邀请所述WebRTC终端加入视频会议的第二邀请;将所述第三SIP信令转发给所述WebRTC终端;接收到所述WebRTC终端发送的第四SIP信令,对所述第四SIP信令进行解析,并向所 述SIP终端转发解析后的所述第四SIP信令,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认。
可选的,所述SIP网关还包括:
接收模块,用于接收所述WebRTC终端发送的第五SIP信令,并对所述第五SIP信令进行解析,所述第五SIP信令携带注册账号的请求;
发送模块,用于向所述WebRTC终端发送第六SIP信令,所述第六SIP信令携带所述SIP网关为所述WebRTC终端分配的SIP账号。
本申请实施例还提供一种终端,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现上述应用于WebRTC终端的视频会议的实现方法的步骤。
本申请实施例还提供一种SIP网关,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现上述应用于SIP网关的视频会议的实现方法的步骤。
本申请实施例还提供一种计算机非瞬态可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现上述应用于WebRTC终端的视频会议的实现方法的步骤,或者,所述程序或指令被处理器执行时实现上述应用于SIP网关的视频会议的实现方法的步骤。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (14)

  1. 一种视频会议的实现方法,应用于网页实时通信WebRTC终端,所述方法包括:
    通过会话初始化协议SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接;所述WebRTC终端与所述SIP网关之间的SIP信令通过网页套接字WebSocket协议传输,所述WebRTC终端能够对接收到的通过WebSocket协议传输的SIP信令进行解析;
    发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
  2. 如权利要求1所述的方法,其中,所述通过会话初始化协议SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接包括:
    通过SIP账号向所述SIP网关发送第一SIP信令,所述第一SIP信令携带邀请SIP终端加入视频会议的第一邀请;
    接收所述SIP网关发送的第二SIP信令,对所述第二SIP信令进行解析,并与所述SIP终端建立视频会议连接,所述第二SIP信令中携带所述SIP终端对所述第一邀请的确认。
  3. 如权利要求1所述的方法,其中,所述通过会话初始化协议SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接包括:
    接收所述SIP网关发送的第三SIP信令,所述第三SIP信令携带所述SIP终端邀请所述WebRTC终端加入视频会议的第二邀请;
    对所述第三SIP信令进行解析,并向所述SIP网关发送第四SIP信令,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认;
    与所述SIP终端建立视频会议连接。
  4. 如权利要求1所述的方法,其中,所述通过SIP账号与SIP网关之间进行SIP信令的交互之前,所述方法还包括:
    向所述SIP网关发送第五SIP信令,所述第五SIP信令携带注册账号的请求;
    接收所述SIP网关发送的第六SIP信令,并对所述第六SIP信令进行解 析,所述第六SIP信令携带所述SIP网关为所述WebRTC终端分配的SIP账号。
  5. 如权利要求1-4中任一项所述的方法,其中,
    所述发送本地采集的视频流包括:
    通过WebSocket协议将本地采集的视频流发送给WebRTC服务器,由所述WebRTC服务器转发给所述SIP终端,或者,通过RTP协议将本地采集的视频流直接发送给所述SIP终端;
    所述接收所述SIP终端的视频流包括:
    通过Websocket协议从所述SIP网关接收所述SIP终端的视频流,或者,通过RTP协议直接从SIP终端接收所述SIP终端的视频流。
  6. 一种视频会议的实现方法,应用于SIP网关,所述方法包括:
    与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述SIP网关能够对通过WebSocket协议传输的SIP信令进行解析。
  7. 如权利要求6所述的方法,其中,所述与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接包括:
    接收所述WebRTC终端通过SIP账号发送的第一SIP信令,并对所述第一SIP信令进行解析,所述第一SIP信令携带邀请所述SIP终端加入视频会议的邀请;
    向所述SIP终端转发解析后的所述第一SIP信令;
    接收到所述SIP终端发送的第二SIP信令,将所述第二SIP信令转发给所述WebRTC终端,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接。
  8. 如权利要求6所述的方法,其中,所述与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接包括:
    接收所述SIP终端发送的第三SIP信令,所述第三SIP信令携带所述SIP 终端邀请所述WebRTC终端加入视频会议的第二邀请;
    将所述第三SIP信令转发给所述WebRTC终端;
    接收到所述WebRTC终端发送的第四SIP信令,对所述第四SIP信令进行解析,并向所述SIP终端转发解析后的所述第四SIP信令,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述第四SIP信令携带对所述WebRTC终端对所述第二邀请的确认。
  9. 如权利要求6-8中任一项所述的方法,其中,所述与WebRTC终端和SIP终端之间进行SIP信令的交互之前,所述方法还包括:
    接收所述WebRTC终端发送的第五SIP信令,并对所述第五SIP信令进行解析,所述第五SIP信令携带注册账号的请求;
    向所述WebRTC终端发送第六SIP信令,所述第六SIP信令携带所述SIP网关为所述WebRTC终端分配的SIP账号。
  10. 一种终端,包括:
    连接模块,用于通过SIP账号与SIP网关之间进行SIP信令的交互,以与SIP终端建立视频会议连接;所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述WebRTC终端能够对接收到的通过WebSocket协议传输的SIP信令进行解析;
    传输模块,用于发送本地采集的视频流,和/或,接收所述SIP终端的视频流并通过浏览器播放。
  11. 一种SIP网关,包括:
    连接模块,用于与WebRTC终端和SIP终端之间进行SIP信令的交互,以建立所述WebRTC终端和所述SIP终端之间的视频会议连接,所述WebRTC终端与所述SIP网关之间的SIP信令通过WebSocket协议传输,所述SIP网关终端能够对通过WebSocket协议传输的SIP信令进行解析。
  12. 一种终端,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1-5任一项所述的视频会议的实现方法的步骤。
  13. 一种SIP网关,包括处理器,存储器及存储在所述存储器上并可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如 权利要求6-9任一项所述的视频会议的实现方法的步骤。
  14. 一种计算机非瞬态可读存储介质,其中,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如权利要求1-5任一项所述的视频会议的实现方法的步骤,或者,所述程序或指令被处理器执行时实现如权利要求6-9任一项所述的视频会议的实现方法的步骤。
PCT/CN2021/100550 2020-06-23 2021-06-17 视频会议的实现方法、终端和sip网关 WO2021259124A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/778,198 US20220417294A1 (en) 2020-06-23 2021-06-17 Method for realizing video conference, and terminal and sip gateway

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010584051.9 2020-06-23
CN202010584051.9A CN113839910A (zh) 2020-06-23 2020-06-23 视频会议的实现方法、终端和sip网关

Publications (1)

Publication Number Publication Date
WO2021259124A1 true WO2021259124A1 (zh) 2021-12-30

Family

ID=78964218

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/100550 WO2021259124A1 (zh) 2020-06-23 2021-06-17 视频会议的实现方法、终端和sip网关

Country Status (3)

Country Link
US (1) US20220417294A1 (zh)
CN (1) CN113839910A (zh)
WO (1) WO2021259124A1 (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717234A (zh) * 2013-12-11 2015-06-17 中兴通讯股份有限公司 一种政企网通信装置及通信方法
US20180255182A1 (en) * 2016-07-15 2018-09-06 E-MetroTel Global Inc. Web Real-Time Client Communication Over a Stimulus Based Network
CN110830777A (zh) * 2019-11-29 2020-02-21 公安部第一研究所 基于WebRTC协议的跨浏览器预览GB/T28181标准监控视频的方法
US20200153876A1 (en) * 2014-06-10 2020-05-14 Orange Method for setting up a webrtc session

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9112975B2 (en) * 2012-11-05 2015-08-18 Genesys Telecommunications Laboratories, Inc. System and method for web-based real time communication with contact centers
US8695077B1 (en) * 2013-03-14 2014-04-08 Sansay, Inc. Establishing and controlling communication sessions between SIP devices and website application servers
CN104869101B (zh) * 2014-02-21 2018-02-23 华为技术有限公司 一种通道建立的方法和设备
CN105099897B (zh) * 2014-05-13 2020-01-21 中兴通讯股份有限公司 一种在浏览器和电信网络之间进行通信的方法和网关
US9912705B2 (en) * 2014-06-24 2018-03-06 Avaya Inc. Enhancing media characteristics during web real-time communications (WebRTC) interactive sessions by using session initiation protocol (SIP) endpoints, and related methods, systems, and computer-readable media
CN105516176B (zh) * 2015-12-25 2018-09-14 北京京东尚科信息技术有限公司 一种呼叫中心系统及其通信连接方法和装置
US10917256B2 (en) * 2016-08-03 2021-02-09 Telefonaktiebolaget Lm Ericsson (Publ) Guest user access in the IP multimedia subsystem IMS
US11606535B2 (en) * 2021-05-28 2023-03-14 Synergy Sky Gatewaying of conference calls to browser-based conferences

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104717234A (zh) * 2013-12-11 2015-06-17 中兴通讯股份有限公司 一种政企网通信装置及通信方法
US20200153876A1 (en) * 2014-06-10 2020-05-14 Orange Method for setting up a webrtc session
US20180255182A1 (en) * 2016-07-15 2018-09-06 E-MetroTel Global Inc. Web Real-Time Client Communication Over a Stimulus Based Network
CN110830777A (zh) * 2019-11-29 2020-02-21 公安部第一研究所 基于WebRTC协议的跨浏览器预览GB/T28181标准监控视频的方法

Also Published As

Publication number Publication date
CN113839910A (zh) 2021-12-24
US20220417294A1 (en) 2022-12-29

Similar Documents

Publication Publication Date Title
US9356976B2 (en) Real-time communications methods providing pause and resume and related devices
US9294111B2 (en) Remote media IMS sessions
US10893080B2 (en) Relaying multimedia conferencing utilizing software defined networking architecture
EP2863632B1 (en) System and method for real-time adaptation of a conferencing system to current conditions of a conference session
US20080165245A1 (en) Integration of audio conference bridge with video multipoint control unit
JP2005513870A (ja) テレビ会議コール設定
CN103348657B (zh) 流媒体播放方法、设备及系统
WO2010045834A1 (zh) 视频监控系统实现媒体穿越网络地址翻译的方法和系统
CN110475094B (zh) 视频会议处理方法、装置及可读存储介质
WO2013097457A1 (zh) 云计算环境中实现voip通话的方法、装置和系统
WO2012174927A1 (zh) 一种视频监控系统及媒体穿越网络地址转换设备的方法
CN105657368A (zh) 一种ipc摄像头快速接入ip多媒体系统ims的方法
WO2011022994A1 (zh) 组播实时传输协议会话快速接入的方法、装置及系统
CN115334273A (zh) 一种协议转换音视频通信方法及系统
WO2020098712A1 (zh) 数据传输通道的建立方法及设备、存储介质、系统
CN111107445B (zh) 一种媒体协议流优化方法及系统
CN101188601B (zh) 一种多媒体数据快速发送和接收的方法
WO2021259124A1 (zh) 视频会议的实现方法、终端和sip网关
CN110719435B (zh) 一种进行终端会议的方法和系统
KR101508575B1 (ko) 화상통신 장치 및 방법
JP2001320437A (ja) データ受信装置及び方法、データ送信装置及び方法
KR101528268B1 (ko) 콘텐츠를 원격 위치들에 스트리밍하기 위한 시스템과 방법
WO2012009909A1 (zh) 会话启动协议sip终端参加多媒体会议的方法及系统
WO2012062104A1 (zh) 多页彩信的传输系统和方法、会话初始化协议终端以及彩信代理服务器
WO2011022983A1 (zh) 组播视频数据的方法、装置及系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21827887

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21827887

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 05/07/2023)

122 Ep: pct application non-entry in european phase

Ref document number: 21827887

Country of ref document: EP

Kind code of ref document: A1