CN108881774A - The calling system and method for multi-media network call - Google Patents

The calling system and method for multi-media network call Download PDF

Info

Publication number
CN108881774A
CN108881774A CN201810432303.9A CN201810432303A CN108881774A CN 108881774 A CN108881774 A CN 108881774A CN 201810432303 A CN201810432303 A CN 201810432303A CN 108881774 A CN108881774 A CN 108881774A
Authority
CN
China
Prior art keywords
signaling message
server
sent
mqtt
called party
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810432303.9A
Other languages
Chinese (zh)
Other versions
CN108881774B (en
Inventor
周万斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing QIYI Century Science and Technology Co Ltd
Original Assignee
Beijing QIYI Century Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing QIYI Century Science and Technology Co Ltd filed Critical Beijing QIYI Century Science and Technology Co Ltd
Priority to CN201810432303.9A priority Critical patent/CN108881774B/en
Publication of CN108881774A publication Critical patent/CN108881774A/en
Application granted granted Critical
Publication of CN108881774B publication Critical patent/CN108881774B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/141Systems for two-way working between two video terminals, e.g. videophone
    • 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/1066Session management
    • H04L65/1101Session protocols
    • 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
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols

Abstract

The embodiment of the invention provides a kind of calling systems of multi-media network call and method, system to include:Calls customer end, called party client end, sip server and MQTT server;Calls customer end sends and receives video call related signalling messages by sip server and called party client end, and the important signaling message in preset video call related signalling messages is sent to MQTT server;MQTT server receives and saves the important signaling message of calls customer end transmission, and the important signaling message that calls customer end is sent is sent to called party client end;Called party client end receives the video call related signalling messages that sip server is sent and the important signaling message that MQTT server is sent, establishes the video communication with calls customer end.

Description

The calling system and method for multi-media network call
Technical field
The present invention relates to network communication technology fields, calling system and side more particularly to a kind of call of multi-media network Method.
Background technique
With the development of science and technology, multi-media network call is carried out by internet, as audio or video is conversed in people Life in occupy important role, more and more people can select to carry out audio or video call by internet.
When internet carries out audio or video call, first have to be called, after access success, calling and called are built again Stand point-to-point audio or video call.
Currently, the system of the calling of multi-media network call is as shown in Figure 1, mainly include:Calls customer end, called party client End and SIP (Session Initiation Protocol, session initiation protocol) server.The process called, it is main to wrap Include following steps:
Calls customer end sends video call related signalling messages to SIP, and sip server is according to the signaling message received The calls customer end of middle carrying identifies and called party client end mark, and signaling message is sent to corresponding called party client end, is called Client receives signaling message and video communication is established at calls customer end.
In the prior art, it generallys use UDP (User Datagram Protocol, User Datagram Protocol) and carries out signaling Message transmission, since UDP is towards disconnected agreement, it only sends the datagram that application program is transmitted to IP layers, Without establishing a connection between each user client and server, and it is not timed-out the mechanism such as repeating transmission.Therefore resource consumption Take less, and transmission speed is quickly.But do not ensure that can signaling message reach called party using udp protocol transmission, In order to solve this problem, it can be set using udp protocol in transmission time-out and retry the signaling message for sending time-out, but network difference When, the signaling information of repeating transmission may also will fail, therefore not high using udp protocol transmission signaling message reliability.
Summary of the invention
The calling system and method for being designed to provide a kind of multi-media network call of the embodiment of the present invention, are made with improving With the reliability of udp protocol transmission signaling message.Specific technical solution is as follows:
In a first aspect, the embodiment of the invention provides a kind of calling systems of multi-media network call, including:Calls customer End, called party client end, sip server and MQTT server;
The calls customer end sends and receives video call related signaling with called party client end by sip server and disappears Breath, and the important signaling message in the preset video call related signalling messages is sent to MQTT server;
The MQTT server receives and saves the important signaling message of calls customer end transmission, and by calls customer end The important signaling message sent is sent to the called party client end;
The called party client end receives video call related signalling messages and MQTT server hair that sip server is sent The important signaling message sent establishes the video communication with calls customer end.
Optionally, the calls customer end is sending and receiving video call phase by sip server and called party client end Before closing signaling message, distribution call subject request is sent to MQTT server, and receive the calling master of MQTT server return Topic;And call subject notification message is sent to called party client end by the sip server;And it is sent out to the MQTT server The call subject is added in each important signaling message sent;
The MQTT server receives the distribution call subject request that calls customer end is sent, exhales for this calling distribution It is theme;
The called party client end after receiving call subject notification message by the sip server, is led from the calling The call subject is obtained in topic notification message;The subscription comprising the call subject is sent to the MQTT server to request; Receive the important signaling message comprising the call subject that the MQTT server is sent.
Optionally, the called party client end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
Optionally, the calls customer end further receives the letter that the sip server itself that sip server is sent generates Enable message;
The sip server further saves the call subject, adds and exhales in the important signaling message that itself is generated Theme is made to be sent to the MQTT server;
The called party client end, further saves the call subject, adds in the important signaling message that itself is generated The call subject is sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;
The MQTT server is further subscribed to according to calls customer end and is requested, and sip server itself is generated important The important signaling message that signaling message and called party client end itself generate is sent to calls customer end.
Optionally, the calls customer end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
Second aspect, the embodiment of the invention provides a kind of method of callings of multi-media network call, are applied to the present invention In the calling system of the call of multi-media network described in embodiment first aspect, including:
Calls customer end sends and receives video call related signalling messages by sip server and called party client end, and Important signaling message in the preset video call related signalling messages is sent to MQTT server;
MQTT server, receives and saves the important signaling message of calls customer end transmission, and calls customer end is sent Important signaling message be sent to the called party client end;
Called party client end, the video call relevant information and MQTT server for receiving sip server transmission send important Signaling message establishes the video communication with calls customer end.
Optionally, the calls customer end is sending and receiving video call phase by sip server and called party client end Before closing signaling message, distribution call subject request is sent to MQTT server, and receive the calling master of MQTT server return Topic;And theme notification message is sent to called party client end by the sip server;And it is sending to the MQTT server The call subject is added in each important signaling message;
The MQTT server receives the distribution call subject request that calls customer end is sent, exhales for this calling distribution It is theme;
The called party client end after receiving theme notification message by the sip server, disappears from theme notice The call subject is obtained in breath;The subscription comprising the call subject is sent to the MQTT server to request;Described in reception The important signaling message comprising the call subject that MQTT server is sent.
Optionally, the called party client end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
Optionally, the calls customer end further receives the letter that the sip server itself that sip server is sent generates Enable message;
The sip server further saves the call subject, adds and exhales in the important signaling message that itself is generated Theme is made to be sent to the MQTT server;
The called party client end, further saves the call subject, adds in the important signaling message that itself is generated The call subject is sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;,
The MQTT server is further subscribed to according to calls customer end and is requested, and sip server itself is generated important The important signaling message that signaling message and called party client end itself generate is sent to calls customer end.
Optionally, the calls customer end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
The third aspect, the embodiment of the invention provides the calling systems of another multi-media network call, including:Caller visitor Family end, called party client end, sip server and MQTT server;
The calls customer end sends and receives video call related signaling with called party client end by sip server and disappears Breath;
The sip server will be sent to called party client from the received video call related signalling messages in calls customer end End, and the important signaling message in the preset video call related signalling messages is sent to MQTT server;
The MQTT server, receives and saves the important signaling message of sip server transmission, and sip server is sent out The important signaling message sent is sent to the called party client end;
The called party client end, what the video call relevant information and MQTT server for receiving sip server transmission were sent Important signaling message establishes the video communication with calls customer end.
Optionally, the sip server, after receiving the call request signaling information that calls customer end is sent, to MQTT Server sends distribution call subject request, and receives the call subject of MQTT server return;It sends and leads to called party client end Inscribe notification message;And the call subject is added in each important signaling message sent to the MQTT server;
The MQTT server receives the distribution call subject request that sip server is sent, for this calling distribution calling Theme;
The called party client end after receiving the theme notification message that the sip server is sent, disappears from theme notice The call subject is obtained in breath;The subscription comprising the call subject is sent to the MQTT server to request;Described in reception The important signaling message comprising the call subject that MQTT server is sent.
Optionally, the called party client end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
Optionally, the calls customer end further receives what the sip server itself that sip server is sent generated Signaling message;
The sip server, further in the important signaling message that itself is generated addition call subject be sent to it is described MQTT server;
The called party client end, further saves the call subject, adds in the important signaling message that itself is generated The call subject is sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;
The MQTT server is further subscribed to according to calls customer end and is requested, and sip server itself is generated important The important signaling message that signaling message and called party client end itself generate is sent to calls customer end.
Optionally, the calls customer end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
Fourth aspect, the embodiment of the invention provides a kind of method of callings of multi-media network call, are applied to the present invention In the calling system of the call of multi-media network described in the embodiment third aspect,
The calls customer end sends and receives video call related signaling with called party client end by sip server and disappears Breath;
The sip server will be sent to called party client from the received video call related signalling messages in calls customer end End, and the important signaling message in the preset video call related signalling messages is sent to MQTT server;
The MQTT server, receives and saves the important signaling message of sip server transmission, and sip server is sent out The important signaling message sent is sent to the called party client end;
The called party client end, what the video call relevant information and MQTT server for receiving sip server transmission were sent Important signaling message establishes the video communication with calls customer end.
Optionally, the sip server, after receiving the call request signaling information that calls customer end is sent, to MQTT Server sends distribution call subject request, and receives the call subject of MQTT server return;It sends and leads to called party client end Inscribe notification message;And the call subject is added in each important signaling message sent to the MQTT server;
The MQTT server receives the distribution call subject request that calls customer end is sent, exhales for this calling distribution It is theme;
The called party client end after receiving the theme notification message that the sip server is sent, disappears from theme notice The call subject is obtained in breath;The subscription comprising the call subject is sent to the MQTT server to request;Described in reception The important signaling message comprising the call subject that MQTT server is sent.
Optionally, the called party client end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
Optionally, the calls customer end further receives the letter that the sip server itself that sip server is sent generates Enable message;
The sip server, further addition call subject is sent to institute in the important signaling message that itself is generated State MQTT server;
The called party client end, further saves the call subject, adds in the important signaling message that itself is generated The call subject is sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;
The MQTT server is further subscribed to according to calls customer end and is requested, and sip server itself is generated important The important signaling message that signaling message and called party client end itself generate is sent to calls customer end.
Optionally, the calls customer end, further to currently being received from the MQTT server or sip server The signaling message of identical content has been received in signaling message before judging whether;If it is, abandoning the letter being currently received Enable message.
At the another aspect that the present invention is implemented, a kind of electronic equipment, including processor, communication interface, storage are additionally provided Device and communication bus, wherein processor, communication interface, memory complete mutual communication by communication bus;
Memory, for storing computer program;
Processor when for executing the program stored on memory, realizes a kind of any of the above-described multimedia network The method of calling of network call.
At the another aspect that the present invention is implemented, a kind of computer readable storage medium is additionally provided, it is described computer-readable Instruction is stored in storage medium, when run on a computer, so as to execute any of the above-described described one kind more for computer The method of calling of media network call.
At the another aspect that the present invention is implemented, the embodiment of the invention also provides a kind of, and the computer program comprising instruction is produced Product, when run on a computer, so that computer executes a kind of calling of any of the above-described multi-media network call Method.
The calling system and method for a kind of multi-media network call provided in an embodiment of the present invention, in existing multi-media network In the case of having had sip server in the system of the calling of call, MQTT server is added, for receiving and saving calls customer The important signaling message sent is held, and the important signaling message that calls customer end is sent is sent to the called party client end.This While embodiment is using Session Initiation Protocol transmission signaling message, important signaling message also is transmitted using MQTT agreement, since MQTT takes Business device is to be established based on Transmission Control Protocol, therefore can guarantee that important signaling message reliable transmission to called party client end, therefore passes through The reliability using udp protocol transmission signaling message can be improved in the embodiment of the present invention.
Certainly, it implements any of the products of the present invention or method must be not necessarily required to reach all the above excellent simultaneously Point.
Detailed description of the invention
In order to more clearly explain the embodiment of the invention or the technical proposal in the existing technology, to embodiment or will show below There is attached drawing needed in technical description to be briefly described.
Fig. 1 is the system structure diagram for the calling that the multi-media network of the prior art is conversed;
Fig. 2 is a kind of calling system structural schematic diagram for multi-media network call that the embodiment of the present invention provides;
Fig. 3 is a kind of a kind of interaction diagrams of the method for calling of multi-media network call based on Fig. 2;
Fig. 4 is in embodiment illustrated in fig. 3, and calls customer end obtains the interaction flow for the signaling message that sip server generates Figure;
Fig. 5 is the calling system structural schematic diagram for another multi-media network call that the embodiment of the present invention provides;
Fig. 6 is a kind of a kind of interaction diagrams of method of calling of multi-media network call based on Fig. 5;
Fig. 7 is in embodiment illustrated in fig. 5, and calls customer end obtains the interaction flow for the signaling message that sip server generates Figure.
Specific embodiment
In order to make those skilled in the art more fully understand the technical solution in the present invention, implement below in conjunction with the present invention Attached drawing in example, technical scheme in the embodiment of the invention is clearly and completely described.
The embodiment of the present invention is not high using udp protocol transmission signaling message reliability in order to solve the problems, such as, in existing skill Increase the MQTT server established based on Transmission Control Protocol in the system of the calling of the multi-media network call of art, guarantees important signaling Message is transmitted to called party client end.
It is understood that the system of the calling in the call of existing multi-media network, since sip server uses UDP Agreement carries out signaling message transmission, does not ensure that whether signaling message reaches called party client end, and network environment is when different Section is variant, and retrying transmission cannot guarantee that whether signaling message can be transmitted to called party client end.TCP is connection-oriented association View, requires to establish a long link with server using each user client of TCP transmission signaling message.If signaling disappears Breath transmission time-out can transmit the signaling message of time-out again, and can abandon repetition signaling message using TCP transmission, examine letter Message is enabled, to guarantee that signaling message is transferred to called party client end from calls customer end, therefore more reliable using TCP transmission. MQTT agreement is to realize network connection based on Transmission Control Protocol, therefore, in the embodiment of the present invention, is conversed in existing multi-media network Calling system in increase MQTT server, guarantee that important signaling message is transmitted to called party client end.
Specifically, the embodiment of the invention provides the calling system of two kinds of multi-media networks call and multi-media network calls Method of calling, be described in detail separately below.
The calling system of the first multi-media network provided in an embodiment of the present invention call is introduced first below.
As shown in Fig. 2, a kind of calling system of multi-media network call provided by the embodiment of the present invention, including:
Calls customer end 201 sends and receives the related letter of video call by sip server 204 and called party client end 203 Message is enabled, and the important signaling message in preset video call related signalling messages is sent to MQTT server 202;
MQTT server 202 receives and saves the important signaling message of the transmission of calls customer end 201, and by calls customer The important signaling message that end 201 is sent is sent to called party client end 203;
Called party client end 203 receives video call related signalling messages and MQTT server that sip server 204 is sent The 202 important signaling messages sent, establish the video communication with calls customer end 201.
In the present embodiment, before calls customer end sends important signaling message to MQTT, according to preparatory definition, in video Important signaling message and insignificant signaling message are distinguished in calling related signalling messages.For example, initiating calling, drop calls are connect The signaling message for listening calling and rejection to call can be understood as important signaling message;Signaling message as heartbeat packet, as Insignificant signaling message.Important signaling message is sent to MQTT server, video call related signalling messages are sent to SIP Server sends video call related signalling messages to called party client end, same called party client end will pass through sip server Video call related signalling messages can be sent by sip server to calls customer end.Sip server knows each client The state at end and the mark of client, from calls customer end send video call related signalling messages carry calls customer end and The mark at called party client end.Sip server is according to the mark at calls customer end and called party client end by video call related signaling Message is sent to corresponding called party client end.
In the present embodiment, MQTT server, can be by weight after the important signaling message for receiving the transmission of calls customer end It wants signaling message to be stored in the database of oneself, is taken so that called party client end can receive MQTT under same call theme All important signaling messages comprising call subject that business device is sent.
In the present embodiment, sip server may be lost to called party client end transmission video call related signalling messages Signaling message, therefore, called party client end service the video call related signalling messages that will receive sip server transmission and MQTT The important signaling message that device is sent realizes reliable video communication to prevent the loss of important signaling message.
The calling system of multi-media network call through this embodiment can solve the prior art by assisting based on UDP The sip server transmission signaling message of view establishes video communication, so as to cause using udp protocol transmission signaling message insecure Problem improves the reliability of transmission signaling message.
Optionally, the calls customer end 201 in embodiment shown in Fig. 2 is passing through sip server 204 and called party client Before end 203 sends and receives video call related signalling messages, distribution call subject request is sent to MQTT server 202, And receive the call subject of the return of MQTT server 202;And call subject is sent to called party client end by sip server 304 Notification message;And call subject is being added into each important signaling message that MQTT server 202 is sent;
MQTT server 202 receives the distribution call subject request that calls customer end 201 is sent, for this calling distribution Call subject;
Called party client end 203 after receiving call subject notification message by sip server 204, is notified from call subject Call subject is obtained in message;The subscription comprising call subject is sent to MQTT server 202 to request;Receive MQTT server The 204 important signaling messages comprising call subject sent.
It is understood that MQTT server sends and receivees signaling message using theme subscribing mode, in the present embodiment Before middle calls customer end sends important signaling message to MQTT, need to know the call subject of important signaling message, therefore, caller Client can send the request of distribution call subject to MQTT server, to obtain the call subject of important signaling message.It is main Family termination of calling out-customer receives the call subject of MQTT server return, can add call subject in important signaling message, be sent to MQTT server.
In this embodiment, MQTT server can be sent to called party client end comprising calling according to the subscription at called party client end The important signaling message of theme.It is logical that called party client end knows that the mode of call subject can be sip server transmission call subject To know message, Push Service in the prior art can also be used, the mode of IM agreement pushes theme notification message to called party client end, It is not described in detail here.Called party client end needs to send the subscription request of call subject to MQTT server, so that MQTT is serviced Device sends the important signaling message comprising call subject.
In this embodiment, call subject is a kind of unique identifier for identifying video call, and call subject can be with currently System timestamp generates in real time with a random number.Such as:Current system unix timestamp is 1524792546, random number 4, The call subject that MQTT server generates is W1, and current system unix timestamp is 1524792532, random number 1, MQTT clothes The call subject that device generates of being engaged in is W2.W1 and W2 can be the group of unix timestamp, preset quantity any character and random number It closes.Call subject can be MQTT server and be generated in real time according to the mark and the number of calls of client.Such as:Calls customer end It is identified as A1, calls customer end sends distribution call subject request to MQTT server for the first time, and what MQTT server generated exhales Being theme is Q1;Calls customer end is identified as A1, and calls customer end sends distribution call subject to MQTT server for the second time and asks It asks, the call subject that MQTT server generates is Q2;Q1 and Q2 can for the mark of client, preset quantity any character and The combination of the number of calls.
Optionally, called party client end 203, further to currently being received from MQTT server 202 or sip server 204 Signaling message, the signaling message of identical content has been received before judging whether;If it is, what discarding was currently received Signaling message.
In the present embodiment, if sip server transmission signaling message is lost, called party client end has received MQTT server hair The signaling message sent prevents important signaling message from losing in this way.If sip server transmission signaling message is not lost It loses, called party client end also has received the signaling identical with the signaling message content of sip server transmission of MQTT server transmission Message, the signaling message that discarding is currently received from MQTT server.If called party client end has received MQTT server hair The signaling message sent, sip server transmit signaling message identical with the signaling message content that MQTT server is sent and also do not lose It loses, abandons the signaling message currently received from sip server.
Identical content has been received in the present embodiment signaling message before judging whether can be according in signaling message The key parameter of appearance or signaling message content.The key parameter of signaling message content includes:Send the client of signaling message Mark, the client identification for receiving signaling message, the type of signaling message and the unique identification of record primary video calling.
Optionally, in embodiment shown in Fig. 2, calls customer end 201 further receives what sip server 204 was sent The signaling message that sip server 204 itself generates;
Sip server 204 further saves the call subject, adds and exhales in the important signaling message that itself is generated Theme is made to be sent to the MQTT server 202;
The called party client end 203, further saves the call subject, adds in the important signaling message that itself is generated The call subject is added to be sent to MQTT server 202;
Calls customer end 201 further sends to MQTT server 202 and subscribes to request;
MQTT server 202 is further subscribed to according to calls customer end 201 and is requested, the weight that sip server itself is generated The important signaling message for wanting signaling message and called party client end 203 itself to generate is sent to calls customer end 201.
In the present embodiment, sip server can be obtained from the call subject notification message that the calls customer end received is sent It takes call subject and saves.Sip server can record the service state at calls customer end and called party client end in real time, and according to Business demand does corresponding processing.The signaling message that sip server is generated according to called party client end service state itself, then Sip server distinguishes important signaling message and insignificant signaling message according to preparatory definition, in the signaling message that itself is generated. Sip server will act as heartbeat packet signaling message and common ACK message, as insignificant signaling message;Sip server will Signaling message in addition to heartbeat packet and common ACK message, as important signaling message;Sip server generates itself Signaling message is sent to calls customer end, and the important signaling message addition call subject that can also generate itself is sent to MQTT clothes Business device.
Such as:In the business that a not support call waits, if calls customer end sends the relevant letter of video call Message is enabled, called party client end has been in busy condition, then sip server can generate corresponding with called party client end service state Important signaling message, the important signaling message can be:Called party client end B is conversing or called party client end B is just busy. If, if calls customer end sends the relevant signaling message of video call, be called in the business that a support call waits Client has been in busy condition, then sip server can generate important signaling corresponding with called party client end service state and disappear Breath, the important signaling message can be:Called party client end B, which is conversing, to be waited or called party client end B please just be waited busy To.
In the present embodiment, called party client end receives the call subject notification message that sip server is sent, called party client end Call subject is known, called party client end can generate important signaling message according to the service state of itself, and itself generate Important signaling message in add call subject, be sent to MQTT server.What called party client end generated itself is used as heartbeat The signaling message of packet, as insignificant signaling message.Called party client end drop calls, the signaling for answering calling and rejection calling disappear Breath can be understood as important signaling.
Such as:Called party client end receives the relevant signaling message of video that sip server is sent, and establishes and calls customer end Video communication, if video communication is hung up at called party client end, but called party client is rectified busy, and called party client end is directly hung Disconnected video communication, can generate the important signaling message of drop calls, be sent to MQTT server.If called party client end receives The relevant signaling message of video that sip server is sent, establishes video communication, called party client end, which can generate, answers the important of calling Signaling message is sent to MQTT server.
In the present embodiment, calls customer end sends distribution call subject request to MQTT server, and has received calling Theme, therefore, calls customer end need to only send to MQTT server and subscribe to request, so that it may receive the transmission of MQTT server The slave quilt of signaling message, the signaling message that called party client end itself generates and sip server transmission that sip server itself generates The important signaling message in video call related signalling messages for making client receive.
Optionally, calls customer end 201, further to currently being received from MQTT server 402 or sip server 404 Signaling message, the signaling message of identical content has been received before judging whether;If it is, what discarding was currently received Signaling message.
In the present embodiment, if the signaling message that sip server transmits itself generation is lost, calls customer end is had received MQTT server sends the signaling message that sip server itself generates, and prevents what sip server itself generated in this way Signaling message is lost.If the signaling message that sip server transmits itself generation is not lost, calls customer end also has received MQTT The signaling message identical with the signaling message content of sip server itself generation that server is sent, will abandon currently from MQTT The signaling message that the sip server that server receives itself generates.If calls customer end has received the transmission of MQTT server Sip server itself generate signaling message, sip server transmit itself generation signaling message also do not lose, caller visitor Family end abandons the signaling message that the sip server itself currently received from sip server generates.
As shown in figure 3, the method for calling that a kind of multi-media network based on Fig. 2 is conversed, includes the following steps:
S301, calls customer end send and receive video call related signaling with called party client end by sip server and disappear Breath, and the important signaling message in preset video call related signalling messages is sent to MQTT server;
S302, MQTT server receive and save the important signaling message of calls customer end transmission, and by calls customer end The important signaling message sent is sent to called party client end;
S303, called party client end, what the video call relevant information and MQTT server for receiving sip server transmission were sent Important signaling message establishes the video communication with calls customer end.
In the present embodiment, before calls customer end sends important signaling message to MQTT, according to preparatory definition, Important signaling message and insignificant signaling message are distinguished in video call related signalling messages.For example, initiating calling, hangs up and exhale It cries, the signaling message for answering calling and rejection calling can be understood as important signaling message;Signaling message as heartbeat packet, As insignificant signaling message.Video call related signalling messages are sent to sip server, video call related signaling is disappeared Important signaling message in breath is sent to MQTT server, sends video call related signalling messages will pass through sip server To called party client end, same called party client end can also send video call related signalling messages to caller by sip server Client.
Sip server knows the state of each client and the mark of client, the video sent from calls customer end Call the mark that related signalling messages carry calls customer end and called party client end.Sip server according to calls customer end and by Make the mark of client that video call related signalling messages are sent to corresponding called party client end.
In the present embodiment, MQTT server, can be by weight after the important signaling message for receiving the transmission of calls customer end It wants signaling message to be stored in the database of oneself, is taken so that called party client end can receive MQTT under same call theme All important signaling messages comprising call subject that business device is sent.
In the present embodiment, sip server transmission video call related signalling messages may lose signaling message, because This, the important letter that called party client end sends the video call related signalling messages that will receive server transmission and MQTT server Message is enabled, to prevent the loss of important signaling message, to establish reliable video communication.
The calling system of multi-media network call through this embodiment can solve the prior art by assisting based on UDP The sip server of view establishes video communication, so as to cause using udp protocol to transmit the insecure problem of signaling message, improves and passes The reliability of defeated signaling message.
Optionally, in the embodiment shown in fig. 3, the called party client end in S303 is passing through sip server and is being called out-customer Family end includes before sending and receiving video call related signalling messages:
Step 1:Calls customer end sends distribution call subject request to MQTT server, and receives MQTT server and return The call subject returned;And theme notification message is sent to called party client end by sip server;And it is sent to MQTT server Each important signaling message in add the call subject;
Step 2:MQTT server receives the distribution call subject request that calls customer end is sent, for this calling distribution Call subject;
Step 3:Called party client end, after receiving theme notification message by sip server, from theme notification message Obtain call subject;The subscription comprising call subject is sent to MQTT server to request;Receive MQTT server send include The important signaling message of call subject.
The present embodiment is in order to obtain the call subject of important signaling from MQTT server, so that calls customer end can pass through MQTT server is by important signalling to called party client end.
It is understood that MQTT server, which receives, sends signaling message using theme subscribing mode, in the present embodiment Before calls customer end sends important signaling message to MQTT, need to know the call subject of important signaling message, therefore, caller visitor Family end can send the request of distribution call subject to MQTT server, to obtain the call subject of important signaling message.Caller Client receives the call subject of MQTT server return, can add call subject in important signaling message, be sent to MQTT server.
In this embodiment, important signaling message whether be transferred to called party client end depending on called party client end whether basis The demand of itself subscribes to the important signaling message comprising call subject.Know that the mode of call subject can be in called party client end Sip server sends call subject notification message, can also use Push Service in the prior art, and the mode of IM agreement is to called Client push theme notification message, is not described in detail here.Called party client end needs to send call subject to MQTT server Request is subscribed to, so that it includes the important signaling message of call subject that MQTT server, which is sent,.
In this embodiment, call subject is a kind of unique identifier for identifying video call, and call subject can be with currently System timestamp generates in real time with a random number.Such as:Current system unix timestamp is 1524792546, random number 4, The call subject that MQTT server generates is W1, and current system unix timestamp is 1524792532, random number 1, MQTT clothes The call subject that device generates of being engaged in is W2.W1 and W2 can be the group of unix timestamp, preset quantity any character and random number It closes.Call subject can be MQTT server and be generated in real time according to the mark and the number of calls of client.Such as:Calls customer end It is identified as A1, calls customer end sends distribution call subject request to MQTT server for the first time, and what MQTT server generated exhales Being theme is Q1;Calls customer end is identified as A1, and calls customer end sends distribution call subject to MQTT server for the second time and asks It asks, the call subject that MQTT server generates is Q2;Q1 and Q2 can for the mark of client, preset quantity any character and The combination of the number of calls.
Optionally, in S303, called party client end receives the video call relevant information and MQTT that sip server is sent Include after the step of important signaling message that server is sent:Further to currently being connect from MQTT server or sip server The signaling message of identical content has been received in the signaling message received before judging whether;If it is, abandoning current receive The signaling message arrived.
In the present embodiment, if sip server transmission signaling message is lost, called party client end has received MQTT server hair The signaling message sent prevents important signaling message from losing in this way.If sip server transmission signaling message is not lost It loses, called party client end also has received the signaling identical with the signaling message content of sip server transmission of MQTT server transmission Message, the signaling message that discarding is currently received from MQTT server.If called party client end has received MQTT server hair The signaling message sent, sip server transmit signaling message identical with the signaling message content that MQTT server is sent and also do not lose It loses, abandons the signaling message currently received from sip server.
Identical content has been received in the present embodiment signaling message before judging whether can be according in signaling message The key parameter of appearance or signaling message content.The key parameter of signaling message content includes:Send the client of signaling message Mark, the client identification for receiving signaling message, the type of signaling message and the unique identification of record primary video calling.
Optionally, as shown in figure 4, in the embodiment shown in fig. 3, calls customer end obtains the signaling that sip server generates The interactive process of message, includes the following steps:
S401, calls customer end further receive the signaling message that the sip server itself that sip server is sent generates;
S402, sip server further save the call subject, add in the important signaling message that itself is generated Call subject is sent to the MQTT server;
S403, called party client end further save the call subject, add in the important signaling message that itself is generated The call subject is sent to MQTT server;
S404, calls customer end further send to MQTT server and subscribe to request;
S405, MQTT server are further subscribed to according to calls customer end and are requested, the weight that sip server itself is generated The important signaling message for wanting signaling message and called party client end itself to generate is sent to calls customer end.
In the present embodiment, sip server can be obtained from the call subject notification message that the calls customer end received is sent It takes call subject and saves.Sip server can record the service state at calls customer end and called party client end in real time, and according to Business demand does corresponding processing.The signaling message that sip server is generated according to called party client end service state itself, then Sip server distinguishes important signaling message and insignificant signaling message according to preparatory definition, in the signaling message that itself is generated. Sip server will act as heartbeat packet signaling message and common ACK message, as insignificant signaling message;Sip server will Signaling message in addition to heartbeat packet and common ACK message, as important signaling message;Sip server generates itself Signaling message is sent to calls customer end, and the important signaling message addition call subject that can also generate itself is sent to MQTT clothes Business device.
Such as:In the business that a not support call waits, if calls customer end sends the relevant letter of video call Message is enabled, called party client end has been in busy condition, then sip server can generate corresponding with called party client end service state Important signaling message, the important signaling message can be:Called party client end B is conversing or called party client end B is just busy. If, if calls customer end sends the relevant signaling message of video call, be called in the business that a support call waits Client has been in busy condition, then sip server can generate important signaling corresponding with called party client end service state and disappear Breath, the important signaling message can be:Called party client end B, which is conversing, to be waited or called party client end B please just be waited busy To.
In the present embodiment, called party client end receives the call subject notification message that sip server is sent, and called party client end is Known call subject, called party client end can generate important signaling message according to the service state of itself, and generated at itself Call subject is added in important signaling message, is sent to MQTT server.What called party client end generated itself is used as heartbeat packet Signaling message, as insignificant signaling message.Called party client end drop calls answer the signaling message of calling and rejection calling It can be understood as important signaling.
Such as:Called party client end receives the relevant signaling message of video that sip server is sent, and establishes and calls customer end Video communication, if video communication is hung up at called party client end, but called party client is rectified busy, and called party client end is directly hung Disconnected video communication, can generate the important signaling message of drop calls, be sent to MQTT server.If called party client end receives The relevant signaling message of video that sip server is sent, establishes video communication, called party client end, which can generate, answers the important of calling Signaling message is sent to MQTT server.
In the present embodiment, calls customer end sends distribution call subject request to MQTT server, and has received calling Theme, therefore, calls customer end need to only send to MQTT server and subscribe to request, so that it may receive the transmission of MQTT server The slave quilt of signaling message, the signaling message that called party client end itself generates and sip server transmission that sip server itself generates The important signaling message in video call related signalling messages for making client receive.
Optionally, in S404, MQTT server is further subscribed to according to calls customer end and is requested, sip server is sent The signaling message the step of being sent to calls customer end itself generated after, including:Calls customer end, further to currently from The signaling message that MQTT server or sip server receive, the signaling that identical content has been received before judging whether disappear Breath;If it is, abandoning the signaling message being currently received.
In the present embodiment, if the signaling message that sip server transmits itself generation is lost, calls customer end is had received MQTT server sends the signaling message that sip server itself generates, and prevents what sip server itself generated in this way Signaling message is lost.If the signaling message that sip server transmits itself generation is not lost, calls customer end also has received MQTT The signaling message identical with the signaling message content of sip server itself generation that server is sent, will abandon currently from MQTT The signaling message that the sip server that server receives itself generates.If calls customer end has received the transmission of MQTT server The signaling message that sip server itself generates, the signaling message that sip server transmits itself generation are not also lost, calls customer End abandons the signaling message that the sip server itself currently received from sip server generates.
As shown in figure 5, the embodiment of the invention provides another multi-media network call calling system include:
Calls customer end 501 sends and receives the related letter of video call by sip server 504 and called party client end 503 Enable message;
Sip server 504 will be sent to from the received video call related signalling messages in calls customer end 501 and be called out-customer Family end, and the important signaling message in the preset video call related signalling messages is sent to MQTT server 502;
MQTT server 502 receives and saves the important signaling message of the transmission of sip server 504, and by sip server The 504 important signaling messages sent are sent to the called party client end;
Called party client end 503 receives video call relevant information and the hair of MQTT server 502 that sip server 504 is sent The important signaling message sent establishes the video communication with calls customer end 501.
In the present embodiment, in sip server after the received video call related signalling messages in calls customer end, parsing Video call related signalling messages therefrom obtain the content of signaling message.Further according to the preparatory definition of sip server, in video Important signaling message and insignificant signaling message are distinguished in calling related signalling messages.For example, initiating calling, drop calls are connect The signaling message for listening calling and rejection to call can be understood as important signaling message;Signaling message as heartbeat packet, as Insignificant signaling message.Video call related signalling messages are sent to called party client end by sip server, by video call correlation Important signaling message in signaling message is sent to MQTT server.Same called party client end can also be sent out by sip server Send video call related signalling messages to calls customer end.Sip server knows the state and client of each client Mark, the video call related signalling messages sent from calls customer end carry the mark at calls customer end and called party client end. Video call related signalling messages are sent to corresponding quilt according to the mark at calls customer end and called party client end by sip server It is client.
In the present embodiment, MQTT server, can will be important after the important signaling message for receiving sip server transmission Signaling message is stored in the database of oneself, is serviced so that called party client end can receive MQTT under same call theme All important signaling messages comprising call subject that device is sent.
In the present embodiment, sip server may be lost to called party client end transmission video call related signalling messages Signaling message, therefore, called party client end service the video call related signalling messages that will receive sip server transmission and MQTT The important signaling message that device is sent realizes reliable video communication to prevent the loss of important signaling message.
The calling system of multi-media network call through this embodiment can solve the prior art by assisting based on UDP The sip server transmission signaling message of view establishes video communication, so as to cause using udp protocol transmission signaling message insecure Problem improves the reliability of transmission signaling message.
Optionally, in embodiment shown in fig. 5, sip server 504 sends distribution call subject to MQTT server 502 Request, and receive the call subject of the return of MQTT server 502;Theme notification message is sent to called party client end 503;And to The call subject is added in each important signaling message that the MQTT server 502 is sent;
MQTT server 502 receives the distribution call subject request that sip server 504 is sent, exhales for this calling distribution It is theme;
Called party client end 503 after receiving the theme notification message that the sip server 504 is sent, is notified from the theme The call subject is obtained in message;The subscription comprising the call subject is sent to the MQTT server 502 to request;It receives The important signaling message comprising the call subject that the MQTT server 502 is sent.
It is understood that MQTT server receive send signaling message use theme subscribing mode, sip server to Before MQTT sends important signaling message, need to know the call subject of important signaling message, therefore, sip server can be to MQTT Server sends the request of distribution call subject, to obtain the call subject of important signaling message.Calls customer termination receives The call subject that MQTT server returns can add call subject in important signaling message, be sent to MQTT server.
In this embodiment, MQTT server can be sent to called party client end comprising calling according to the subscription at called party client end The important signaling message of theme.It is logical that called party client end knows that the mode of call subject can be sip server transmission call subject To know message, Push Service in the prior art can also be used, the mode of IM agreement pushes theme notification message to called party client end, It is not described in detail here.Called party client end needs to send the subscription request of call subject to MQTT server, so that MQTT is serviced Device sends the important signaling message comprising call subject.
In this embodiment, call subject is a kind of unique identifier for identifying video call, and call subject can be with currently System timestamp generates in real time with a random number.Such as:Current system unix timestamp is 1524792546, random number 4, The call subject that MQTT server generates is W1, and current system unix timestamp is 1524792532, random number 1, MQTT clothes The call subject that device generates of being engaged in is W2.W1 and W2 can be the group of unix timestamp, preset quantity any character and random number It closes.Call subject can be MQTT server and be generated in real time according to the mark and the number of calls of client.Such as:Calls customer end It is identified as A1, calls customer end sends distribution call subject request to MQTT server for the first time, and what MQTT server generated exhales Being theme is Q1;Calls customer end is identified as A1, and calls customer end sends distribution call subject to MQTT server for the second time and asks It asks, the call subject that MQTT server generates is Q2;Q1 and Q2 can for the mark of client, preset quantity any character and The combination of the number of calls.
Optionally, called party client end 503, further to currently being received from MQTT server 502 or sip server 504 Signaling message, the signaling message of identical content has been received before judging whether;If it is, what discarding was currently received Signaling message.
In the present embodiment, if sip server transmission signaling message is lost, called party client end has received MQTT server hair The signaling message sent prevents important signaling message from losing in this way.If sip server transmission signaling message is not lost It loses, called party client end also has received the signaling identical with the signaling message content of sip server transmission of MQTT server transmission Message, the signaling message that discarding is currently received from MQTT server.If called party client end has received MQTT server hair The signaling message sent, sip server transmit signaling message identical with the signaling message content that MQTT server is sent and also do not lose It loses, abandons the signaling message currently received from sip server.
Identical content has been received in the present embodiment signaling message before judging whether can be according in signaling message The key parameter of appearance or signaling message content.The key parameter of signaling message content includes:Send the client of signaling message Mark, the client identification for receiving signaling message, the type of signaling message and the unique identification of record primary video calling.
Optionally, the calls customer end 501 in embodiment shown in fig. 5 further receives what sip server 504 was sent The signaling message that sip server 504 itself generates;
Sip server 504, further addition call subject is sent to MQTT clothes in the important signaling message that itself is generated Business device 502;
Called party client end 503 further saves the call subject, adds and exhales in the important signaling message that itself is generated Theme is made to be sent to MQTT server 502;
Calls customer end 501 further sends to MQTT server 502 and subscribes to request;
MQTT server 502 is further subscribed to according to calls customer end 501 and is requested, and sip server 504 itself is generated Important signaling message and called party client end 503 itself generate important signaling message be sent to calls customer end 501.
In the present embodiment, sip server saves the call subject received from MQTT server.Sip server meeting The service state at record calls customer end and called party client end in real time, and corresponding processing is done according to business demand.SIP service The signaling message that device is generated according to called party client end service state itself, then sip server is according to preparatory definition, at itself The signaling message of generation distinguishes important signaling message and insignificant signaling message.The signaling that sip server will act as heartbeat packet disappears Breath and common ACK message, as insignificant signaling message;Sip server will be in addition to heartbeat packet and common ACK message Signaling message, as important signaling message;The signaling message that itself is generated is sent to calls customer end by sip server, can also The important signaling message addition call subject itself generated is sent to MQTT server.
Such as:In the business that a not support call waits, if calls customer end sends the relevant letter of video call Message is enabled, called party client end has been in busy condition, then sip server can generate corresponding with called party client end service state Important signaling message, the important signaling message can be:Called party client end B is conversing or called party client end B is just busy. If, if calls customer end sends the relevant signaling message of video call, be called in the business that a support call waits Client has been in busy condition, then sip server can generate important signaling corresponding with called party client end service state and disappear Breath, the important signaling message can be:Called party client end B, which is conversing, to be waited or called party client end B please just be waited busy To.
In the present embodiment, called party client end receives the call subject notification message that sip server is sent, and called party client end is Known call subject, called party client end can generate important signaling message according to the service state of itself, and generated at itself Call subject is added in important signaling message, is sent to MQTT server.What called party client end generated itself is used as heartbeat packet Signaling message, as insignificant signaling message.Called party client end drop calls answer the signaling message of calling and rejection calling It can be understood as important signaling.
Such as:Called party client end receives the relevant signaling message of video that sip server is sent, and establishes and calls customer end Video communication, if video communication is hung up at called party client end, but called party client is rectified busy, and called party client end is directly hung Disconnected video communication, can generate the important signaling message of drop calls, be sent to MQTT server.If called party client end receives The relevant signaling message of video that sip server is sent, establishes video communication, called party client end, which can generate, answers the important of calling Signaling message is sent to MQTT server.
In the present embodiment, sip server sends distribution call subject request to MQTT server, and has received and exhale It is theme.The call subject is simultaneously notified calls customer end by sip server.Therefore, calls customer end only need to be to MQTT server It sends and subscribes to request, so that it may receive signaling message, called party client that the sip server itself of MQTT server transmission generates In the video call related signalling messages that the slave called party client end that the signaling message and sip server for holding itself to generate are sent receives Important signaling message.
Optionally, calls customer end 501, further to currently being received from MQTT server 502 or sip server 504 Signaling message, the signaling message of identical content has been received before judging whether;If it is, what discarding was currently received Signaling message.
In the present embodiment, if the signaling message that sip server transmits itself generation is lost, calls customer end is had received MQTT server sends the signaling message that sip server itself generates, and prevents what sip server itself generated in this way Signaling message is lost.If the signaling message that sip server transmits itself generation is not lost, calls customer end also has received MQTT The signaling message identical with the signaling message content of sip server itself generation that server is sent, will abandon currently from MQTT The signaling message that the sip server that server receives itself generates.If calls customer end has received the transmission of MQTT server Sip server itself generate signaling message, sip server transmit itself generation signaling message also do not lose, caller visitor Family end abandons the signaling message that the sip server itself currently received from sip server generates.
As shown in fig. 6, the method for calling that a kind of multi-media network based on Fig. 5 is conversed, includes the following steps:
S601, calls customer end send and receive video call related signaling with called party client end by sip server and disappear Breath;
S602, sip server will be sent to called party client from the received video call related signalling messages in calls customer end End, and the important signaling message in the preset video call related signalling messages is sent to MQTT server;
S603, MQTT server, receive and save the important signaling message of sip server transmission, and sip server is sent out The important signaling message sent is sent to the called party client end;
S604, called party client end, what the video call relevant information and MQTT server for receiving sip server transmission were sent Important signaling message establishes the video communication with calls customer end.
In the present embodiment, in sip server after the received video call related signalling messages in calls customer end, parsing Video call related signalling messages therefrom obtain the content of signaling message.Further according to the preparatory definition of sip server, in video Important signaling message and insignificant signaling message are distinguished in calling related signalling messages.For example, initiating calling, drop calls are connect The signaling message for listening calling and rejection to call can be understood as important signaling message;Signaling message as heartbeat packet, as Insignificant signaling message.Video call related signalling messages are sent to called party client end by sip server, by video call correlation Important signaling message in signaling message is sent to MQTT server.Same called party client end can also be sent out by sip server Send video call related signalling messages to calls customer end.Sip server knows the state and client of each client Mark, the video call related signalling messages sent from calls customer end carry the mark at calls customer end and called party client end. Video call related signalling messages are sent to corresponding quilt according to the mark at calls customer end and called party client end by sip server It is client.
In the present embodiment, MQTT server, can will be important after the important signaling message for receiving sip server transmission Signaling message is stored in the database of oneself, is serviced so that called party client end can receive MQTT under same call theme All important signaling messages comprising call subject that device is sent.
In the present embodiment, sip server may be lost to called party client end transmission video call related signalling messages Signaling message, therefore, called party client end service the video call related signalling messages that will receive sip server transmission and MQTT The important signaling message that device is sent realizes reliable video communication to prevent the loss of important signaling message.
The calling system of multi-media network call through this embodiment can solve the prior art by assisting based on UDP The sip server of view establishes video communication, so as to cause using udp protocol to transmit the insecure problem of signaling message, improves and passes The reliability of defeated signaling message.
Optionally, in the embodiment shown in fig. 6, in S602, sip server is related by the preset video call Include before the step of important signaling message in signaling message is sent to MQTT server:
Step 1:Sip server sends distribution call subject request to MQTT server, and receives MQTT server and return The call subject returned;And theme notification message is sent to called party client end by sip server;And it is sent to MQTT server Each important signaling message in add the call subject;
Step 2:MQTT server receives the distribution call subject request that sip server is sent, for this calling distribution Call subject;
Step 3:Called party client end after receiving the theme notification message that the sip server is sent, disappears from theme notice The call subject is obtained in breath;The subscription comprising the call subject is sent to the MQTT server to request;Described in reception The important signaling message comprising the call subject that MQTT server is sent.
It is understood that MQTT server sends and receivees signaling message using theme subscribing mode, in sip server Before sending important signaling message to MQTT, need to know the call subject of important signaling message, therefore, sip server can be to MQTT server sends the request of distribution call subject, to obtain the call subject of important signaling message.Calls customer termination The call subject of MQTT server return is received, call subject can be added in important signaling message, be sent to MQTT server.
In this embodiment, MQTT server can be sent to called party client end comprising calling according to the subscription at called party client end The important signaling message of theme.It is logical that called party client end knows that the mode of call subject can be sip server transmission call subject To know message, Push Service in the prior art can also be used, the mode of IM agreement pushes theme notification message to called party client end, It is not described in detail here.Called party client end needs to send the subscription request of call subject to MQTT server, so that MQTT is serviced Device sends the important signaling message comprising call subject.
In this embodiment, call subject is a kind of unique identifier for identifying video call, and call subject can be with currently System timestamp generates in real time with a random number.Such as:Current system unix timestamp is 1524792546, random number 4, The call subject that MQTT server generates is W1, and current system unix timestamp is 1524792532, random number 1, MQTT clothes The call subject that device generates of being engaged in is W2.W1 and W2 can be the group of unix timestamp, preset quantity any character and random number It closes.Call subject can be MQTT server and be generated in real time according to the mark and the number of calls of client.Such as:Calls customer end It is identified as A1, calls customer end sends distribution call subject request to MQTT server for the first time, and what MQTT server generated exhales Being theme is Q1;Calls customer end is identified as A1, and calls customer end sends distribution call subject to MQTT server for the second time and asks It asks, the call subject that MQTT server generates is Q2;Q1 and Q2 can for the mark of client, preset quantity any character and The combination of the number of calls.
Optionally, at S604 called party client end, the video call relevant information and MQTT service that sip server is sent are received Include after the step of important signaling message that device is sent:Called party client end, further to currently from MQTT server or SIP clothes The signaling message that business device receives, has been received the signaling message of identical content before judging whether;Work as if it is, abandoning Before the signaling message that receives.
In the present embodiment, if sip server transmission signaling message is lost, called party client end has received MQTT server hair The signaling message sent prevents important signaling message from losing in this way.If sip server transmission signaling message is not lost It loses, called party client end also has received the signaling identical with the signaling message content of sip server transmission of MQTT server transmission Message, the signaling message that discarding is currently received from MQTT server.If called party client end has received MQTT server hair The signaling message sent, sip server transmit signaling message identical with the signaling message content that MQTT server is sent and also do not lose It loses, abandons the signaling message currently received from sip server.
Identical content has been received in the present embodiment signaling message before judging whether can be according in signaling message The key parameter of appearance or signaling message content.The key parameter of signaling message content includes:Send the client of signaling message Mark, the client identification for receiving signaling message, the type of signaling message and the unique identification of record primary video calling.
Optionally, as shown in fig. 7, in the embodiment shown in fig. 5, calls customer end obtains the signaling that sip server generates The process of message, includes the following steps:
S701, calls customer end further receive the signaling message that the sip server itself that sip server is sent generates;
S702, sip server, further in the important signaling message that itself is generated addition call subject be sent to it is described MQTT server;
S703, called party client end further save the call subject, add in the important signaling message that itself is generated Call subject is sent to MQTT server;
S704, calls customer end further send to MQTT server and subscribe to request;
S705, MQTT server are further subscribed to according to calls customer end and are requested, the weight that sip server itself is generated The important signaling message for wanting signaling message and called party client end itself to generate is sent to calls customer end.
In the present embodiment, sip server saves the call subject received from MQTT server.Sip server meeting The service state at record calls customer end and called party client end in real time, and corresponding processing is done according to business demand.SIP service The signaling message that device is generated according to called party client end service state itself, then sip server is according to preparatory definition, at itself The signaling message of generation distinguishes important signaling message and insignificant signaling message.The signaling that sip server will act as heartbeat packet disappears Breath and common ACK message, as insignificant signaling message;Sip server will be in addition to heartbeat packet and common ACK message Signaling message, as important signaling message;The signaling message that itself is generated is sent to calls customer end by sip server, can also The important signaling message addition call subject itself generated is sent to MQTT server.
Such as:In the business that a not support call waits, if calls customer end sends the relevant letter of video call Message is enabled, called party client end has been in busy condition, then sip server can generate corresponding with called party client end service state Important signaling message, the important signaling message can be:Called party client end B is conversing or called party client end B is just busy. If, if calls customer end sends the relevant signaling message of video call, be called in the business that a support call waits Client has been in busy condition, then sip server can generate important signaling corresponding with called party client end service state and disappear Breath, the important signaling message can be:Called party client end B, which is conversing, to be waited or called party client end B please just be waited busy To.
In the present embodiment, called party client end receives the call subject notification message that sip server is sent, called party client end Call subject is known, called party client end can generate important signaling message according to the service state of itself, and itself generate Important signaling message in add call subject, be sent to MQTT server.What called party client end generated itself is used as heartbeat The signaling message of packet, as insignificant signaling message.Called party client end drop calls, the signaling for answering calling and rejection calling disappear Breath can be understood as important signaling.
Such as:Called party client end receives the relevant signaling message of video that sip server is sent, and establishes and calls customer end Video communication, if video communication is hung up at called party client end, but called party client is rectified busy, and called party client end is directly hung Disconnected video communication, can generate the important signaling message of drop calls, be sent to MQTT server.If called party client end receives The relevant signaling message of video that sip server is sent, establishes video communication, called party client end, which can generate, answers the important of calling Signaling message is sent to MQTT server.
In the present embodiment, sip server sends distribution call subject request to MQTT server, and has received and exhale It is theme.The call subject is simultaneously notified calls customer end by sip server.Therefore, calls customer end only need to be to MQTT server It sends and subscribes to request, so that it may receive signaling message, called party client that the sip server itself of MQTT server transmission generates In the video call related signalling messages that the slave called party client end that the signaling message and sip server for holding itself to generate are sent receives Important signaling message.
Optionally, in S704, MQTT server is further subscribed to according to calls customer end and is requested, sip server is sent The signaling message the step of being sent to calls customer end itself generated after, including:Calls customer end, further to currently from The signaling message that MQTT server or sip server receive, the signaling that identical content has been received before judging whether disappear Breath;If it is, abandoning the signaling message being currently received.
In the present embodiment, if the signaling message that sip server transmits itself generation is lost, calls customer end is had received MQTT server sends the signaling message that sip server itself generates, and prevents what sip server itself generated in this way Signaling message is lost.If the signaling message that sip server transmits itself generation is not lost, calls customer end also has received MQTT The signaling message identical with the signaling message content of sip server itself generation that server is sent, will abandon currently from MQTT The signaling message that the sip server that server receives itself generates.If calls customer end has received the transmission of MQTT server Sip server itself generate signaling message, sip server transmit itself generation signaling message also do not lose, caller visitor Family end abandons the signaling message that the sip server itself currently received from sip server generates.
In another embodiment provided by the invention, a kind of computer readable storage medium is additionally provided, which can It reads to be stored with instruction in storage medium, when run on a computer, so that computer executes any institute in above-described embodiment The method of calling for the multi-media network call stated.
In another embodiment provided by the invention, a kind of computer program product comprising instruction is additionally provided, when it When running on computers, so that computer executes the caller of any multi-media network call in above-described embodiment Method.
In the above-described embodiments, can come wholly or partly by software, hardware, firmware or any combination thereof real It is existing.When implemented in software, it can entirely or partly realize in the form of a computer program product.The computer program Product includes one or more computer instructions.When loading on computers and executing the computer program instructions, all or It partly generates according to process or function described in the embodiment of the present invention.The computer can be general purpose computer, dedicated meter Calculation machine, computer network or other programmable devices.The computer instruction can store in computer readable storage medium In, or from a computer readable storage medium to the transmission of another computer readable storage medium, for example, the computer Instruction can pass through wired (such as coaxial cable, optical fiber, number from a web-site, computer, server or data center User's line (DSL)) or wireless (such as infrared, wireless, microwave etc.) mode to another web-site, computer, server or Data center is transmitted.The computer readable storage medium can be any usable medium that computer can access or It is comprising data storage devices such as one or more usable mediums integrated server, data centers.The usable medium can be with It is magnetic medium, (for example, floppy disk, hard disk, tape), optical medium (for example, DVD) or semiconductor medium (such as solid state hard disk Solid State Disk (SSD)) etc..
It should be noted that, in this document, relational terms such as first and second and the like are used merely to a reality Body or operation are distinguished with another entity or operation, are deposited without necessarily requiring or implying between these entities or operation In any actual relationship or order or sequence.Moreover, the terms "include", "comprise" or its any other variant are intended to Non-exclusive inclusion, so that the process, method, article or equipment including a series of elements is not only wanted including those Element, but also including other elements that are not explicitly listed, or further include for this process, method, article or equipment Intrinsic element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that There is also other identical elements in process, method, article or equipment including the element.
Each embodiment in this specification is all made of relevant mode and describes, same and similar portion between each embodiment Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for system reality For applying example, since it is substantially similar to the method embodiment, so being described relatively simple, related place is referring to embodiment of the method Part explanation.
The foregoing is merely illustrative of the preferred embodiments of the present invention, is not intended to limit the scope of the present invention.It is all Any modification, equivalent replacement, improvement and so within the spirit and principles in the present invention, are all contained in protection scope of the present invention It is interior.

Claims (20)

1. a kind of calling system of multi-media network call, which is characterized in that the system comprises:Calls customer end is called out-customer Family end, sip server and MQTT server;
The calls customer end sends and receives video call related signalling messages by sip server and called party client end, and Important signaling message in the preset video call related signalling messages is sent to MQTT server;
The MQTT server, receives and saves the important signaling message of calls customer end transmission, and calls customer end is sent Important signaling message be sent to the called party client end;
The called party client end, what the video call related signalling messages and MQTT server for receiving sip server transmission were sent Important signaling message establishes the video communication with calls customer end.
2. system according to claim 1, which is characterized in that
The calls customer end is sending and receiving video call related signalling messages by sip server and called party client end Before, distribution call subject request is sent to MQTT server, and receives the call subject of MQTT server return;And pass through institute It states sip server and sends call subject notification message to called party client end;And it is each heavy being sent to the MQTT server It wants to add the call subject in signaling message;
The MQTT server receives the distribution call subject request that calls customer end is sent, for this calling distribution calling master Topic;
The called party client end, it is logical from the call subject after receiving call subject notification message by the sip server Know and obtains the call subject in message;The subscription comprising the call subject is sent to the MQTT server to request;It receives The important signaling message comprising the call subject that the MQTT server is sent.
3. system according to claim 1 or 2, which is characterized in that
Sentence further to the signaling message currently received from the MQTT server or sip server at the called party client end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
4. system according to claim 2, which is characterized in that
The calls customer end further receives the signaling message that the sip server itself that sip server is sent generates;
The sip server further saves the call subject, the addition calling master in the important signaling message that itself is generated Topic is sent to the MQTT server;
The called party client end, further saves the call subject, adds institute in the important signaling message that itself is generated It states call subject and is sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;
The MQTT server is further subscribed to according to calls customer end and is requested, the important signaling that sip server itself is generated The important signaling message that message and called party client end itself generate is sent to calls customer end.
5. system according to claim 4, which is characterized in that
Sentence further to the signaling message currently received from the MQTT server or sip server at the calls customer end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
6. a kind of method of calling of multi-media network call, which is characterized in that be applied to calling system described in claim 1 In, the method includes:
Calls customer end sends and receives video call related signalling messages by sip server and called party client end, and will be pre- If the video call related signalling messages in important signaling message be sent to MQTT server;
MQTT server receives and saves the important signaling message of calls customer end transmission, and the weight that calls customer end is sent Signaling message is wanted to be sent to the called party client end;
Called party client end receives the video call relevant information that sip server is sent and the important signaling that MQTT server is sent Message establishes the video communication with calls customer end.
7. according to the method described in claim 6, it is characterized in that,
The calls customer end is sending and receiving video call related signalling messages by sip server and called party client end Before, distribution call subject request is sent to MQTT server, and receives the call subject of MQTT server return;And pass through institute It states sip server and sends theme notification message to called party client end;And in each important letter sent to the MQTT server It enables and adds the call subject in message;
The MQTT server receives the distribution call subject request that calls customer end is sent, for this calling distribution calling master Topic;
The called party client end, after receiving theme notification message by the sip server, from the theme notification message Obtain the call subject;The subscription comprising the call subject is sent to the MQTT server to request;Receive the MQTT The important signaling message comprising the call subject that server is sent.
8. method according to claim 6 or 7, which is characterized in that
Sentence further to the signaling message currently received from the MQTT server or sip server at the called party client end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
9. the method according to the description of claim 7 is characterized in that
The calls customer end further receives the signaling message that the sip server itself that sip server is sent generates;
The sip server further saves the call subject, the addition calling master in the important signaling message that itself is generated Topic is sent to the MQTT server;
The called party client end, further saves the call subject, exhales described in addition itself generating in important signaling message Theme is made to be sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;
The MQTT server is further subscribed to according to calls customer end and is requested, the important signaling that sip server itself is generated The important signaling message that message and called party client end itself generate is sent to calls customer end.
10. according to the method described in claim 9, it is characterized in that,
Sentence further to the signaling message currently received from the MQTT server or sip server at the calls customer end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
11. a kind of calling system of multi-media network call, which is characterized in that the system comprises:Calls customer end is called out-customer Family end, sip server and MQTT server;
The calls customer end sends and receives video call related signalling messages by sip server and called party client end;
The sip server will be sent to called party client end from the received video call related signalling messages in calls customer end, and Important signaling message in the preset video call related signalling messages is sent to MQTT server;
The MQTT server receives and saves the important signaling message of sip server transmission, and sip server is sent Important signaling message is sent to the called party client end;
The called party client end, the video call relevant information and MQTT server for receiving sip server transmission send important Signaling message establishes the video communication with calls customer end.
12. system according to claim 11, which is characterized in that
The sip server after receiving the call request signaling information that calls customer end is sent, is sent to MQTT server Call subject request is distributed, and receives the call subject of MQTT server return;Theme notification message is sent to called party client end; And the call subject is added in each important signaling message sent to the MQTT server;
The MQTT server receives the distribution call subject request that sip server is sent, for this calling distribution calling master Topic;
The called party client end, after receiving the theme notification message that the sip server is sent, from the theme notification message Obtain the call subject;The subscription comprising the call subject is sent to the MQTT server to request;Receive the MQTT The important signaling message comprising the call subject that server is sent.
13. system according to claim 11 or 12, which is characterized in that
Sentence further to the signaling message currently received from the MQTT server or sip server at the called party client end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
14. system according to claim 12, which is characterized in that
The calls customer end further receives the signaling message that the sip server itself that sip server is sent generates;
The sip server, further addition call subject is sent to the MQTT in the important signaling message that itself is generated Server;
The called party client end, further saves the call subject, in the important signaling message that itself is generated described in addition Call subject is sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;
The MQTT server is further subscribed to according to calls customer end and is requested, the important signaling that sip server itself is generated The important signaling message that message and called party client end itself generate is sent to calls customer end.
15. system according to claim 14, which is characterized in that
Sentence further to the signaling message currently received from the MQTT server or sip server at the calls customer end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
16. a kind of method of calling of multi-media network call, which is characterized in that applied to the calling system described in claim 11 In,
The calls customer end sends and receives video call related signalling messages by sip server and called party client end;
The sip server will be sent to called party client end from the received video call related signalling messages in calls customer end, and Important signaling message in the preset video call related signalling messages is sent to MQTT server;
The MQTT server receives and saves the important signaling message of sip server transmission, and sip server is sent Important signaling message is sent to the called party client end;
The called party client end, the video call relevant information and MQTT server for receiving sip server transmission send important Signaling message establishes the video communication with calls customer end.
17. according to the method for claim 16, which is characterized in that
The sip server after receiving the call request signaling information that calls customer end is sent, sends to MQTT server and divides It is requested with call subject, and receives the call subject of MQTT server return;Theme notification message is sent to called party client end;And The call subject is added in each important signaling message sent to the MQTT server;
The MQTT server receives the distribution call subject request that calls customer end is sent, for this calling distribution calling master Topic;
The called party client end, after receiving the theme notification message that the sip server is sent, from the theme notification message Obtain the call subject;The subscription comprising the call subject is sent to the MQTT server to request;Receive the MQTT The important signaling message comprising the call subject that server is sent.
18. method according to claim 16 or 17, which is characterized in that
Sentence further to the signaling message currently received from the MQTT server or sip server at the called party client end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
19. according to the method for claim 17, which is characterized in that
The calls customer end further receives the signaling message that the sip server itself that sip server is sent generates;
The sip server, further addition call subject is sent to the MQTT in the important signaling message that itself is generated Server;
The called party client end, further saves the call subject, in the important signaling message that itself is generated described in addition Call subject is sent to MQTT server;
The calls customer end further sends to MQTT server and subscribes to request;
The MQTT server is further subscribed to according to calls customer end and is requested, the important signaling that sip server itself is generated The important signaling message that message and called party client end itself generate is sent to calls customer end.
20. according to the method for claim 19, which is characterized in that
Sentence further to the signaling message currently received from the MQTT server or sip server at the calls customer end The disconnected signaling message that identical content whether has been received before;If it is, abandoning the signaling message being currently received.
CN201810432303.9A 2018-05-08 2018-05-08 Calling system and method for multimedia network call Active CN108881774B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810432303.9A CN108881774B (en) 2018-05-08 2018-05-08 Calling system and method for multimedia network call

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810432303.9A CN108881774B (en) 2018-05-08 2018-05-08 Calling system and method for multimedia network call

Publications (2)

Publication Number Publication Date
CN108881774A true CN108881774A (en) 2018-11-23
CN108881774B CN108881774B (en) 2021-05-28

Family

ID=64326497

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810432303.9A Active CN108881774B (en) 2018-05-08 2018-05-08 Calling system and method for multimedia network call

Country Status (1)

Country Link
CN (1) CN108881774B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112600749A (en) * 2020-10-27 2021-04-02 百果园技术(新加坡)有限公司 Expired call identification method, device, terminal and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015145401A1 (en) * 2014-03-28 2015-10-01 Aetonix Systems Simple video communication platform
US20150312179A1 (en) * 2014-04-25 2015-10-29 International Business Machines Corporation Messaging based signaling for communications sessions
CN105656847A (en) * 2014-11-13 2016-06-08 中国科学院沈阳计算技术研究所有限公司 SIP (Session Initiation Protocol)/MQTT (Message Queuing Telemetry Transport) protocol conversion gateway system and control method thereof for mobile device
US20170104792A1 (en) * 2015-10-08 2017-04-13 Verizon Patent And Licensing Inc. Establishing media sessions via mqtt and sip
CN106817341A (en) * 2015-11-27 2017-06-09 中国科学院沈阳计算技术研究所有限公司 A kind of Session Initiation Protocol throttling Transmission system and method towards mobile Internet

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015145401A1 (en) * 2014-03-28 2015-10-01 Aetonix Systems Simple video communication platform
US20150312179A1 (en) * 2014-04-25 2015-10-29 International Business Machines Corporation Messaging based signaling for communications sessions
CN105656847A (en) * 2014-11-13 2016-06-08 中国科学院沈阳计算技术研究所有限公司 SIP (Session Initiation Protocol)/MQTT (Message Queuing Telemetry Transport) protocol conversion gateway system and control method thereof for mobile device
US20170104792A1 (en) * 2015-10-08 2017-04-13 Verizon Patent And Licensing Inc. Establishing media sessions via mqtt and sip
CN106817341A (en) * 2015-11-27 2017-06-09 中国科学院沈阳计算技术研究所有限公司 A kind of Session Initiation Protocol throttling Transmission system and method towards mobile Internet

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112600749A (en) * 2020-10-27 2021-04-02 百果园技术(新加坡)有限公司 Expired call identification method, device, terminal and storage medium
CN112600749B (en) * 2020-10-27 2023-02-17 百果园技术(新加坡)有限公司 Expired call identification method, device, terminal and storage medium

Also Published As

Publication number Publication date
CN108881774B (en) 2021-05-28

Similar Documents

Publication Publication Date Title
US7299286B2 (en) Personal user agent
KR101109276B1 (en) Sustaining session connections
EP1579654B1 (en) Controller for multimedia sessions
JP4649977B2 (en) Presence integrated management system and presence server
JP4215645B2 (en) Service access and conference system and method in communication network
US7908322B2 (en) Initiation and support of video conferencing using instant messaging
JP2005318503A (en) Presence server, session control server, packet relay system, server, and system
CN105282730B (en) Terminal communications status acquisition methods and system and application server in IMS network
EP3679713B1 (en) Call reconnection
KR20100127316A (en) Method and apparatus for cpm session management
US10375124B2 (en) Publish/subscribe network enabled for multimedia signaling control, method for initiating a session within the network and respective network device
CN110933180A (en) Communication establishing method and device, load equipment and storage medium
US10341452B2 (en) Method, apparatus and network for multi-domain conference management
CN106789571A (en) A kind of cross-domain instant communication method and its system based on IMS architecture
EP3371964B1 (en) Seamless mechanism to connect an active call to another device
EP1820089A2 (en) Leveraging real-time communications client
CN105072126B (en) Cut-in method, the apparatus and system of conference terminal
US8300559B2 (en) System and method for monitoring call flow in heterogeneous environments
KR101038736B1 (en) Session based communication
CN106970843B (en) Remote calling method and device
CN106210362B (en) Call method and device
WO2014108862A2 (en) Method and system for the handling of redundant long poll
CN108881774A (en) The calling system and method for multi-media network call
WO2008125057A1 (en) Method and system for communicating with subscriber supporting various message services
CN102724214B (en) Calling device and method and device for establishing conversation based on instant messaging (IM) client-side

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