CN110519455B - Method and device for establishing three-party call - Google Patents

Method and device for establishing three-party call Download PDF

Info

Publication number
CN110519455B
CN110519455B CN201910790246.6A CN201910790246A CN110519455B CN 110519455 B CN110519455 B CN 110519455B CN 201910790246 A CN201910790246 A CN 201910790246A CN 110519455 B CN110519455 B CN 110519455B
Authority
CN
China
Prior art keywords
session
terminal
application program
request
over
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910790246.6A
Other languages
Chinese (zh)
Other versions
CN110519455A (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.)
China United Network Communications Group Co Ltd
Original Assignee
China United Network Communications Group 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 China United Network Communications Group Co Ltd filed Critical China United Network Communications Group Co Ltd
Priority to CN201910790246.6A priority Critical patent/CN110519455B/en
Publication of CN110519455A publication Critical patent/CN110519455A/en
Application granted granted Critical
Publication of CN110519455B publication Critical patent/CN110519455B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1093In-session procedures by adding participants; by removing participants
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72406User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by software upgrading or downloading
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0066Details of access arrangements to the networks

Landscapes

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

Abstract

The invention belongs to the field of communication, and particularly discloses a method and a device for establishing a three-party call. The method comprises the following steps: when detecting that a call is called by a first application program, a second application program in a first terminal initiates a first session taking-over request to the first application program; the first application program sends a redirection request to a session management function entity, wherein the redirection request comprises an entrance address of a redirection target and a password code for taking over a session; after receiving the first information of the first application program, the second application program sends a second request for taking over the session to the network open function entity; the second application program receives a second agreement taking over session message returned by the network open function entity; and the second application program is accessed to a third terminal to form three-party communication of the first terminal, the second terminal and the third terminal. The method can establish three-way communication between the application programs which are independent from each other, and improves user experience.

Description

Method and device for establishing three-party call
Technical Field
The invention relates to the technical field of communication, in particular to a method and a device for establishing a three-party call based on a mobile communication network.
Background
Currently, a user can establish video or voice communication through a standard telephone set in a mobile phone through a mobile communication network, and also can establish video or voice communication through an application program in the mobile phone. However, since the video or voice communication established based on the standard telephone set in the mobile phone is independent of the voice or video communication established based on the application program in the mobile phone, the user cannot establish a three-party call in which one end is the application program and the other end is the standard telephone set.
Disclosure of Invention
Therefore, the invention provides a method and a device for establishing a three-party call, which aim to solve the problem that in the prior art, a user cannot establish a three-party call with one end being an application program and the other end being a standard telephone because video or voice communication established based on a standard telephone in the mobile phone and voice or video communication established based on an application program in the mobile phone are mutually independent.
In order to achieve the above object, a first aspect of the present invention provides a method for establishing a three-way call, which is applied to a terminal, and the method includes:
when detecting that a call is called by a first application program, a second application program in a first terminal initiates a first session taking-over request to the first application program, wherein the call request comprises a three-party call identifier, and the first session taking-over request comprises a password code for taking over the session;
the first application program sends a redirection request to a session management function entity, wherein the redirection request comprises an entrance address of a redirection target and a password code for taking over a session;
after receiving a first homonymy session taking-over message of the first application program, the second application program sends a second session taking-over request to a network open function entity, wherein the first homonymy session taking-over message is sent by the session management function entity after suspending a first session established by the first application program of the first terminal and a second terminal, and the second session taking-over request comprises a password code for taking over a session;
the second application program receives a second agreement taking over session message returned by the network open function entity, the network open function entity returns the second agreement taking over session message after the session management function entity at least completes redirection, and the second agreement taking over session message contains a password code for taking over the session;
and the second application program is accessed to a third terminal to form three-party communication of the first terminal, the second terminal and the third terminal.
Wherein, after the first application program sends a redirection request to a session management function entity, before the first application program and the second application program receive a first homologus session takeover message of the first application program, the method further includes:
receiving the first session suspension instruction of the session management functional entity, wherein the first session suspension instruction is an instruction sent to the first application program by the session management functional entity according to the redirection request;
the first application program suspends the first session according to the first session suspension instruction;
the first application sends the first consent take over message to the second application.
The second agreement takeover message is sent by the session management functional entity after redirecting the first session to the second application program and verifying the password code sent by the network open functional entity and the password code sent by the first application program.
After the first application program completes redirection, the second application program restores the suspended first session, and the first application program removes the service connection of the first session.
After the first terminal, the second terminal and the third terminal establish a three-party session, the second application program of the first terminal performs mixed editing and forwarding on the media streams from the first terminal, the second terminal and the third terminal.
In order to achieve the above object, a second aspect of the present invention provides a method for establishing a three-way call, which is applied to a core network, and the method includes:
receiving a redirection request sent by a first application program in a first terminal, wherein the redirection request is sent based on that a second application program in the first terminal detects a first session taking-over request sent by the first application program calling a call, and the redirection request comprises a password code for taking over a session;
sending a first session suspension instruction to a first application program of the first terminal so as to enable the first application program to suspend the first session, wherein the first session is a session established between the first application program of the first terminal and a second terminal;
receiving a second session taking-over request forwarded by a network open function entity, wherein the second session taking-over request is a request sent to the network open function entity after a second application program receives a first homonymy session taking-over message of a first application program, the first homonymy session taking-over message is a message sent after the first application program suspends the first session, and the second session taking-over request comprises a password code for taking over the session;
and after the first session is redirected, sending a second session taking over agreement message to the network open function entity so as to enable the second application program to access a third terminal and form a three-party call of the first terminal, the second terminal and the third terminal.
Wherein sending a second message of agreeing to take over a session to the network open function entity after the first session is redirected comprises:
receiving a redirection request for the first session initiated by the first application program;
redirecting the first session to the second application program according to the redirection request;
verifying a password code in a redirection request sent by the first application program and a password code in the second takeover session request sent by the network open function entity;
and sending a second agreement to take over the session to the network open function entity.
Wherein, after the redirecting the first session to the second application, the method further comprises:
sending a service connection dismantling instruction to the first application program so as to enable the first application program to dismantle service connection of a first session;
sending a resume suspend instruction to the second application to cause the second application to resume the suspended first session.
In order to achieve the above object, a third aspect of the present invention provides a device for establishing a three-party call, applied to a terminal, including:
the detection module is used for detecting whether a second application program in the first terminal is called by the first application program for conversation or not;
the first terminal request module is used for initiating a first session taking-over request to the first application program when the second application program detects that the call is called by the first application program, wherein the call request comprises a three-party call identifier, and the session taking-over request comprises a password code for taking over the session;
a first terminal sending module, configured to send, by the first application, a redirection request to a session management function entity, where the redirection request includes an entry address of a redirection target and a passcode for taking over a session;
a first terminal receiving module, configured to receive, by the second application program, a first concurrent takeover session message of the first application program, where the first concurrent takeover session message is a message sent by the session management functional entity after suspending a first session established between the first application program of the first terminal and the second terminal;
a second terminal sending module, configured to send a second session taking-over request to the network open function entity, where the second session taking-over request includes a passcode for taking over a session;
a second terminal receiving module, configured to receive, by the second application program, a second session takeover agreement message returned by the network open function entity;
and the access module is used for accessing the second application program into a third terminal to form three-party call of the first terminal, the second terminal and the third terminal.
In order to achieve the above object, a fourth aspect of the present invention provides a device for establishing a three-party call, applied to a core network, including:
a first core network receiving module, configured to receive a redirection request sent by a first application program in a first terminal, where the redirection request is a request sent based on a first session takeover request sent by a second application program in the first terminal when the first application program calls a call, and the redirection request includes a passcode for taking over a session;
a first core network sending module, configured to send a suspend-first-session instruction to a first application program of the first terminal, so that the first application program suspends the first session, where in the first session, a session is established between the first application program of the first terminal and a second terminal;
a second core network receiving module, configured to receive a second session takeover request forwarded by a network open function entity, where the second session takeover request is a request sent by the second application program to the network open function entity after receiving a first session takeover request message of the first application program, and the first session takeover request is a message sent by the first application program after suspending the first session, and the second session takeover request includes a passcode for taking over a session;
the verification module is used for verifying a password code in the redirection request sent by the first application program and a password code in the second takeover session request sent by the network open function entity;
and the second core network sending module is used for sending a second message of agreeing to take over the session to the network open function entity, and accessing the second application program to a third terminal to form a three-party call of the first terminal, the second terminal and the third terminal.
The invention has the following advantages:
the method for establishing three-party call provided by the invention, when a second application program detects that the call is called by the first application program, a first takeover session request is initiated to the first application program, the first application program sends a redirection request to a session management function entity after receiving the first takeover session request, after the session management function entity makes the first application program hang up with the first session of a second terminal, the first application program sends a first homologus takeover session message to the second application program, the second application program sends a second takeover session request to a network open function entity after receiving the first homologus takeover session message, the second application program takes over and accesses a third terminal after receiving a second homologus takeover session message returned by the network open function entity, three-party call of the first terminal, the second terminal and the third terminal is formed, namely, three-party call is established among mutually independent application programs, the user experience is improved.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the principles of the invention and not to limit the invention.
Fig. 1 is a flowchart of a method for establishing a three-party call applied to a terminal according to an embodiment of the present invention;
fig. 2 is a flowchart of a method for establishing a three-way call applied to a core network according to an embodiment of the present invention;
fig. 3 is a schematic block diagram of a device for establishing a three-party call applied to a terminal according to an embodiment of the present invention;
fig. 4 is a schematic block diagram of a three-party call setup device applied to a core network according to an embodiment of the present invention;
fig. 5 is a flowchart of establishing a three-way call according to an embodiment of the present invention.
In the drawings:
31: the detection module 32: first terminal request module
33 first terminal sending module 34 first terminal receiving module
35 second terminal sending module 36 second terminal receiving module
37: access module
41: the first core network receiving module 42: first core network sending module
43: the second core network receiving module 44: verification module
45: redirection module 46: second core network sending module
Detailed Description
The following detailed description of embodiments of the invention refers to the accompanying drawings. It should be understood that the detailed description and specific examples, while indicating the present invention, are given by way of illustration and explanation only, not limitation.
The method for establishing a three-way call provided by the embodiment is a method for establishing a three-way call based on a 5G mobile communication network. Specifically, the first terminal and the second terminal establish a first session through the first application program, and at this time, the first terminal wants to join a third terminal into a call through the second application program to form a three-party call. For example, the first terminal and the second terminal establish a first session through a phone program, and the first terminal joins a third terminal into the session through other application programs (such as WeChat and QQ) to form a three-party session.
As shown in fig. 1, the present embodiment provides a method for establishing a three-way call, which specifically includes:
step S101, when detecting that the call is called by the first application program, the second application program in the first terminal initiates a first session taking-over request to the first application program.
Specifically, when a first application program of a first terminal establishes a first session with a second terminal, the first terminal wants to enable a third terminal to join a call through the second application program through the application program, and establish a three-way call. And calling the second application program by the first application program of the first terminal, and hopefully utilizing the second application program to initiate an audio and video call request with the application program in the third terminal. And when the second application program detects that the call is called by the first application program, a first session taking-over request is initiated to the first application program. And the call request initiated by the second application program to the first application program contains a three-party call identifier for identifying that the initiated call is a three-party call. The first takeover session request includes a passcode for the takeover session.
For example, the first terminal establishes a first session with a phone program of the second terminal through a phone program, and if the first terminal wishes to join a third terminal into the session through a WeChat program.
In one embodiment, the first application of the first terminal performs the steps of: the method comprises the steps of lightly touching a telephone program interface of a first terminal, calling an operation interface, and clicking a 'three-party session initiating' button in the operation interface; clicking the 'three-party session initiating' button, popping up an 'opposite-end user type', selecting an 'other application' option, displaying a program list supporting audio and video calls on a mobile phone screen, namely popping up an application program list capable of establishing a session with a third terminal, and selecting an application program to be initiated, such as a WeChat program, from the application program list. And after the application program is selected, selecting a friend from the friend list of the application program so as to send a request of audio and video communication to the third terminal.
It should be noted that the first terminal and the second terminal establish the first session through the mobile communication network and perform the audio and video call. The first terminal and the third terminal establish a session through the mobile communication network, that is, the first terminal, the second terminal and the third terminal establish a three-way call through the mobile communication network.
When the second application program sends a first session taking-over request to the first application program, the first terminal automatically enters an interface for initiating an audio/video call, namely the interface for calling the third terminal by the first terminal.
It should be noted that the three-way call is initiated by the second application program of the first terminal, but not by the first application program, which is helpful for the first application program and the second application program to synchronously complete the operation state, and the operation mode for establishing the three-way call is simple.
Step S102, the first application program sends a redirection request to the session management function entity.
It should be noted that, because the first Session established between the first terminal and the second terminal is through the mobile communication network, the first Session between the first terminal and the second terminal is forwarded and controlled by a Session Management Function (SMF) and a User Plane Management Function (UPF).
In one embodiment, when a first application receives a first takeover session request by a second application, the first application sends a redirect request to the session management function entity, i.e. wishes to redirect the first session to the second application. Furthermore, the redirect request includes the entry address of the redirect target and a passcode to take over the session. The entry address of the redirection target refers to the entry address of the second application program in the first terminal.
Step S103, after receiving the first information of the first application program, the second application program sends a second request for taking over the session to the network open function entity.
In one embodiment, the first application sends a first co-takeover session message to the second application after receiving the indication of the session management function entity. Specifically, after receiving a redirection request of a first application program, a session management functional entity sends a redirection command to a user plane functional entity, the user plane functional entity sends a suspend instruction to a first terminal and a second terminal, and after receiving the suspend instruction, the first terminal and the second terminal suspend a first session, that is, the first terminal and the second terminal maintain signaling transmission with the user plane functional entity, but suspend session service transmission, in other words, the first terminal and the second terminal transmit silent video.
After suspending the first session, the first application program of the first terminal sends a first information of taking over the session to the second application program, and after receiving the first information of taking over the session, the second application program sends a second request of taking over the session to the network open function entity, wherein the second request of taking over the session contains a password code of taking over the session.
And step S104, the second application program receives a second agreement taking over session message returned by the network open function entity.
It should be noted that the first takeover session request in step S101 and the second takeover session request in step S104 are takeover session requests that are respectively sent by the second application program of the first terminal to the first application program and the network open function entity, that is, the first takeover session request and the second takeover session request are the same takeover session request, and the difference is that the sent objects are different, and the first takeover session request and the second takeover session request both include passcodes for taking over sessions.
In an embodiment, after receiving a second session takeover request of a second application program, the network open functional entity forwards the second session takeover management request to the session management functional entity, and after receiving the second session takeover management request, the session management functional entity sends a redirection instruction to the user plane functional entity, and the user plane functional entity redirects the first session of the first terminal to the second application program according to the redirection instruction, that is, the second application program performs processing and forwarding of the media stream. After receiving the completion of the redirection operation of the user plane functional entity, the session management functional entity sends a disconnection instruction to the first application program of the first terminal, so that the first application program disconnects the suspended service connection of the first session, that is, the first application program does not participate in the session. Meanwhile, the session management function entity sends the first session which is suspended to the second terminal. Therefore, the session of the first terminal and the second terminal is taken over by the second application and the redirection is completed.
And after the session management functional entity successfully redirects, sending a second message of agreeing to take over the session to the network open functional entity.
It should be understood that, although the first application program sends the redirection request to the session management function entity in step S101, the session management function entity does not perform redirection, but sends an instruction to suspend the first session to the user plane function entity according to the redirection request. In step S104, after the session management functional entity receives the second session takeover request forwarded by the network open functional entity, the session management functional entity sends a redirection instruction to the user plane functional entity.
In an embodiment, the session management function entity not only performs redirection, but also verifies that the passcodes are consistent, and specifically, after receiving a second session takeover request of a second application, the network open function entity sends the second session takeover request to the session management function entity, and after receiving the second session takeover request, the session management function entity verifies whether the passcode of the session takeover sent by the first application in step S101 is consistent with the passcode of the session takeover sent by the network open function entity in this step, and if so, the session is allowed to be taken over, otherwise, the session is not allowed to be taken over. And when the session management functional entity successfully redirects the first session and verifies that the password codes are consistent, sending a second message of agreeing to take over the session to the network open functional entity.
And step S105, the second application program is accessed to the third terminal to form a three-party call of the first terminal, the second terminal and the third terminal.
And when the second application program receives a second message of agreeing to take over the session sent by the network open function entity, the third terminal is accessed into the call. It is understood that the call between the third terminal and the first terminal is established in the same application program, for example, the call between the third terminal and the first terminal is established through the WeChat program, so far, the three-party call is established between the first terminal, the second terminal and the third terminal, wherein the third terminal is added into the three-party call through the WeChat program, and the second terminal is added into the three-party call through the telephone program.
When the three-party call is established, audio and video collected by the first terminal (through a camera and a microphone) and audio and video content from an application program in the third terminal are subjected to audio mixing and mixed editing, and a result obtained after the audio mixing and mixed editing is sent to the second terminal. And the audio and video acquired by the first terminal and the audio and video content from the second terminal are subjected to audio mixing and mixed editing, and the result of the audio mixing and mixed editing is sent to an application program in the third terminal. And the first terminal performs sound mixing and mixed editing on the audio and video content from the second terminal and the audio and video content of the application program in the third terminal, and locally displays the audio and video content back.
The embodiment also provides a method for establishing the three-party call, which is applied to a core network, in particular to a session management function entity. As shown in fig. 2, the method for establishing a three-way call includes:
step S201, a redirection request sent by a first application in the first terminal is received.
The redirection request is a request sent based on a second application program in the first terminal detecting a first session takeover request sent by the first application program calling the call, and the redirection request comprises a password code for taking over the session.
Specifically, when a first application program of a first terminal establishes a first session with a second terminal, the first terminal wants to enable a third terminal to join a call through the second application program through the application program, and establish a three-way call. And calling the second application program by the first application program of the first terminal, and hopefully utilizing the second application program to initiate an audio and video call request with the application program in the third terminal. And when the second application program detects that the call is called by the first application program, a first session taking-over request is initiated to the first application program. After the first application program receives the first session taking-over request, the session management function entity sends a redirection request.
And the call request initiated by the second application program to the first application program contains a three-party call identifier for identifying that the initiated call is a three-party call. The first takeover session request includes a passcode for the takeover session.
The specific processes of the first application program and the second application program in the first terminal are the same as those of step S101 and step S102, and are not described herein again.
Step S202, sending a suspend first session instruction to a first application program of the first terminal, so that the first application program suspends the first session.
Wherein the first session is a session established between a first application of the first terminal and the second terminal.
In one embodiment, after receiving a redirection request, a session management functional entity sends a redirection instruction to a user plane functional entity, the user plane functional entity sends a suspend instruction to a first application program and a second terminal of a first terminal, and after the first application program and the second terminal of the first terminal suspend a first session completion message, sends a first homologus takeover message to the first application program, and after receiving the first homologus takeover session message, the second application program sends a second takeover session request to a network open functional entity, where the second takeover session request includes a password code for taking over a session.
Step S203, receiving a second session takeover request forwarded by the network open function entity.
The second session taking-over request is a request sent to the network open function entity by the second application program after receiving the first session taking-over request of the first application program, the first session taking-over request is a message sent by the first application program after the first session is suspended, and the second session taking-over request includes a password code for taking over the session.
Specifically, when the network open function entity receives a second session taking-over management request sent by the second application program, the network open function entity forwards the second session taking-over management request to the session management function entity.
It should be noted that, the network open functional entity may determine whether to authenticate the request of the second application program of the first terminal according to the local configuration information, that is, determine whether the second application program can perform data transmission with the user plane functional entity through the network open functional entity, and if necessary, the network open functional entity interacts with the user plane functional entity to complete authentication on the video communication service.
Step S204, after the first conversation is redirected, a second conversation taking over agreement message is sent to the network open function entity, so that a second application program is accessed to a third terminal, and a three-party conversation of the first terminal, the second terminal and the third terminal is formed.
Specifically, the session management functional entity receives a request for redirecting the first session initiated by the first application program, redirects the first session to the second application program according to the redirecting request, and verifies a password code in the redirecting request sent by the first application program and a password code in a second session taking-over request sent by the network open functional entity; and sending a second agreement to take over the session to the network open function entity.
In one embodiment, when the network open function entity receives the second application program, the network open function entity forwards the second session taking-over management request to the session management function entity, after receiving the second session taking-over management request, the session management function entity sends a redirection instruction to the user plane function entity, and the user plane function entity redirects the first session of the first terminal to the second application program according to the redirection instruction, that is, the second application program processes and forwards the media stream. After receiving the completion of the redirection operation of the user plane functional entity, the session management functional entity sends a disconnection instruction to the first application program of the first terminal, so that the first application program disconnects the suspended service connection of the first session, that is, the first application program does not participate in the session. Meanwhile, the session management functional entity sends a suspended first session resuming instruction to the second terminal, so that the second application resumes the suspended first session. Therefore, the session of the first terminal and the second terminal is taken over by the second application and the redirection is completed.
It should be understood that, although the first application program sends the redirection request to the session management function entity in step S201, the session management function entity does not perform redirection, but sends an instruction to suspend the first session to the user plane function entity according to the redirection request. In step S204, after the session management functional entity sends the second session takeover request to the network open functional entity, a redirection instruction is sent to the user plane functional entity.
In an embodiment, the session management function entity not only performs redirection, but also verifies that the passcodes are consistent, and specifically, after receiving a second session takeover request of a second application, the network open function entity sends the second session takeover request to the session management function entity, and after receiving the second session takeover request, the session management function entity verifies whether the passcode of the session takeover sent by the first application in step S201 is consistent with the passcode of the session takeover sent by the network open function entity in this step, and if so, the session is allowed to be taken over, otherwise, the session is not allowed to be taken over. And when the session management functional entity successfully redirects the first session and verifies that the password codes are consistent, sending a second message of agreeing to take over the session to the network open functional entity.
And when the second application program receives a second message of agreeing to take over the session sent by the network open function entity, the second application program is accessed to the third terminal to form a three-party call of the first terminal, the second terminal and the third terminal. When the three-party call is established, audio and video collected by the first terminal (through a camera and a microphone) and audio and video content from an application program in the third terminal are subjected to audio mixing and mixed editing, and a result after the audio mixing and mixed editing is sent to the second terminal. And the audio and video acquired by the first terminal and the audio and video content from the second terminal are subjected to audio mixing and mixed editing, and the result of the audio mixing and mixed editing is sent to an application program in the third terminal. And the first terminal performs sound mixing and mixed editing on the audio and video content from the second terminal and the audio and video content of the application program in the third terminal, and locally displays the audio and video content back.
It should be noted that, the steps of the above methods are divided for clarity, and the implementation may be combined into one step or split some steps, and the steps are divided into multiple steps, so long as the steps include the same logical relationship, which is within the protection scope of the present patent; it is within the scope of the patent to add insignificant modifications to the algorithms or processes or to introduce insignificant design changes to the core design without changing the algorithms or processes.
In the method for establishing a three-party call provided in the foregoing embodiment, when the second application detects that the call is called by the first application, the first application initiates a first session takeover request to the first application, the first application sends a redirection request to the session management functional entity after receiving the first session takeover request, after the session management functional entity suspends the first session between the first application and the second terminal, the first application sends a first homonymy session takeover message to the second application, the second application sends a second session takeover request to the network open functional entity after receiving the first homonymy session takeover message, the second application takes over a second session takeover agreement message returned by the network open functional entity and then accesses the third terminal to form a three-party call between the application corresponding to the first session and the application used by the third terminal, that is, the three-party call is established between the applications corresponding to the first session and the third terminal that are independent of each other And the user experience is improved.
The embodiment also provides a device for establishing the three-party call, which is applied to the terminal. As shown in fig. 3, the apparatus for establishing a three-way call includes a detection module 31, a first terminal request module 32, a first terminal sending module 33, a first terminal receiving module 34, a second terminal sending module 35, a second terminal receiving module 36 and an access module 37, wherein,
the detecting module 31 is configured to detect whether a second application in the first terminal is called by the first application for call; the first request module 32 is configured to initiate a first session takeover request to the first application program when the second application program detects that the call is called by the first application program, where the call request includes a three-party call identifier, and the session takeover request includes a password code for taking over the session; the first sending module 33 is configured to send, by the first application program, a redirection request to the session management function entity, where the redirection request includes an entry address of a redirection target and a passcode for taking over a session; the first receiving module 34 is configured to receive, by the second application program, a first concurrent takeover session message of the first application program, where the first concurrent takeover session message is a message sent by the session management functional entity after suspending a first session established between the first application program of the first terminal and the second terminal; the second sending module 35 is configured to send a second session taking-over request to the network open function entity, where the second session taking-over request includes a passcode for taking over a session; the second receiving module 36 is configured to receive, by the second application program, a second agreement to take over the session message returned by the network open function entity; the access module 37 is used for accessing the second application program to the third terminal to form a three-party call among the first terminal, the second terminal and the third terminal.
The method for establishing a three-party call applied to a terminal according to this embodiment is executed by the apparatus for establishing a three-party call provided in this embodiment, and therefore, the execution steps of the apparatus for establishing a three-party call are the same as those of the method for establishing a three-party call applied to a terminal, and are not described herein again.
The embodiment also provides a three-party call establishing device applied to the core network. As shown in fig. 4, the apparatus for establishing a three-party call applied to a core network includes a first core network receiving module 41, a first core network sending module 42, a second core network receiving module 43, a verification module 44, a redirection module 45, and a second core network sending module 46, wherein,
the first core network receiving module 41 is configured to receive a redirection request sent by a first application in the first terminal, where the redirection request is a request sent based on a first session takeover request sent by a second application in the first terminal when the second application detects that the first application invokes a call, and the redirection request includes a passcode for taking over a session.
The first core network sending module 42 is configured to send a suspend first session instruction to the first application program of the first terminal, so that the first application program suspends a first session, where the first session is a session established between the first application program of the first terminal and the second terminal.
The second core network receiving module 43 is configured to receive a second session takeover request forwarded by the network openness function entity, where the second session takeover request is a request sent by the second application program to the network openness function entity after receiving the first session takeover request of the first application program, the first session takeover request is a message sent by the first application program after suspending the first session, and the second session takeover request includes a passcode for taking over the session.
And the verification module 44 is configured to verify the passcode in the redirection request sent by the first application and the passcode in the second takeover session request sent by the network open function entity.
And a redirection module 45, configured to redirect the first session.
And a second core network sending module 46, configured to send a second message for agreeing to take over the session to the network open function entity, so that a second application program is accessed to the third terminal, and a three-way call between the first terminal, the second terminal, and the third terminal is formed.
Each module in the present embodiment is a logical module, and in practical applications, one logical unit may be one physical unit, may be a part of one physical unit, or may be implemented by a combination of a plurality of physical units. In addition, in order to highlight the innovative part of the present invention, elements that are not so closely related to solving the technical problems proposed by the present invention are not introduced in the present embodiment, but this does not indicate that other elements are not present in the present embodiment.
In the device for establishing a three-party call applied to a terminal and a core network, a first terminal request module initiates a first session taking-over request, a first terminal sending module sends a redirection request to a session management function entity, a first terminal receiving module receives a first homonymy session taking-over message, a second terminal sending module sends a second session taking-over request to a network open function entity, and when a second terminal receiving module receives a second session taking-over agreeing message returned by the network open function entity, an access module enables a second application program to be accessed to a third terminal, so that a three-party call of the first terminal, the second terminal and the third terminal is formed, thereby establishing a three-party call among mutually independent application programs, and improving user experience.
The following describes a three-party session establishing procedure based on the three-party session method and apparatus provided in this embodiment. The three-party session system includes a first application (first application of the first terminal) 51, a second application (second application of the first terminal) 52, a second terminal 53, a user plane function entity 54, a session management function entity 55, a network open function entity 56, and a third terminal 57. As shown in fig. 5, before the three-party call is established, the first terminal and the second terminal have already established a first session through a telephone program, and on the basis of the first session, the following procedures are executed:
in step S501, the first program calls the second program.
For example, a phone program in the first terminal calls a WeChat program in the first terminal.
Step S502, the second program sends a first takeover session request to the first program.
Specifically, the wechat program in the first terminal sends a first takeover session request to the telephone program, wherein the first takeover session request comprises a password code for taking over the session.
In step S503, the first application sends a redirection request to the session management function entity.
And after receiving the first session taking-over request of the WeChat program, the telephone program in the first terminal sends a redirection request to the session management function entity. The redirect request includes a passcode to take over the session and an entry address for the wechat program. The passcode that takes over the session is randomly generated by the phone program.
In step S504, the session management functional entity sends a redirection instruction to the user plane functional entity.
Specifically, the session management functional entity sends a redirection instruction to the user plane functional entity according to a redirection request of a telephone program in the first terminal, wherein the redirection instruction comprises a password code for taking over the session and an entry address of the wechat program.
Step S505, the user plane functional entity sends a suspend command to the first terminal and the second terminal.
And the user plane functional entity sends a suspend command to the telephone program in the first terminal and the second terminal so that the telephone program in the first terminal and the second terminal suspend the first session.
Step S506, the first application program in the first terminal suspends the first session and returns the first information of the concurrent takeover session to the second application program.
Specifically, after receiving the user plane function entity suspend command, the telephone program in the first terminal suspends the first session and returns a first message of taking over the session along with the intention to the WeChat program. The first coincidental takeover session message includes a passcode for the takeover session.
Step S507, the second application program in the first terminal sends a second session takeover request to the network open function entity.
After receiving the first information of taking over session together with the telephone program, the wechat program in the first terminal sends a second request of taking over session to the network open function entity. The second takeover session request includes a passcode for the takeover session.
Step S508, the network open function entity forwards the second session takeover request to the session management function entity.
In step S509, the session management function entity verifies the passcode and redirects the first session.
Specifically, after receiving the second request for taking over the session forwarded by the network open function entity, the session management function entity extracts the passcode for taking over the session from the second request for taking over the session, and compares the passcode with the passcode for taking over the session obtained in the redirection request of step S503 to verify whether the two passcodes are consistent, and if so, allows taking over the session; if not, the session is not allowed to take over.
And simultaneously, the session management functional entity receives and sends a redirection instruction to the user plane functional entity.
Step S510, the user plane function interacts with the first terminal to perform redirection.
Specifically, the user plane function interacts with the first terminal according to the redirection instruction of the session management function entity, so that the first terminal redirects the first session to the wechat program.
Step S511, the user plane function interacts with the second terminal to resume the suspended first session, and interacts with the first terminal to disconnect the suspended first session.
The user plane function interacts with the second terminal to resume the suspended first session, and interacts with the first terminal to disconnect the suspended first session. I.e. the second terminal is still in conversation with the first terminal, but not directly in conversation with the telephony program of the first terminal, but in conversation with the WeChat program of the first terminal.
In step S512, the user plane function returns a redirection success message to the session management function entity.
In step S513, the session management functional entity sends a second message of agreeing to take over the session to the network open functional entity.
In step S514, the network open function entity sends a second message of agreeing to take over the session to the second application.
In step S514, the second application program sends an access call instruction to the third terminal, so as to form a three-way call.
And (3) interacting the wechat program in the first terminal with the wechat program in the third terminal, and accessing the wechat program in the third terminal into the session to form a three-party call, namely establishing the wechat program of the first terminal, the wechat program of the third terminal and the second terminal to establish the three-party call.
Step S515, the second application program in the first terminal performs mixed editing on the media streams of the first terminal, the second terminal, and the third terminal.
Specifically, audio and video collected by the first terminal (by a camera and a microphone) and audio and video content from an application program in the third terminal are subjected to audio mixing and mixed editing, and a result after the audio mixing and mixed editing is sent to the second terminal. And the audio and video acquired by the first terminal and the audio and video content from the second terminal are subjected to audio mixing and mixed editing, and the result of the audio mixing and mixed editing is sent to an application program in the third terminal. And the first terminal performs sound mixing and mixed editing on the audio and video content from the second terminal and the audio and video content of the application program in the third terminal, and locally displays the audio and video content back.
Step S516, the second application program of the first terminal forwards the mixed and mixed media stream.
It should be noted that, although the present embodiment describes a three-party call by using the first terminal, the second terminal and the third terminal, this does not mean that the present invention can only establish a three-party call with three terminals, and in fact, the third terminal is a generic concept and means any number of terminals except the first terminal and the second terminal.
It will be understood that the above embodiments are merely exemplary embodiments taken to illustrate the principles of the present invention, which is not limited thereto. It will be apparent to those skilled in the art that various modifications and improvements can be made without departing from the spirit and substance of the invention, and these modifications and improvements are also considered to be within the scope of the invention.

Claims (10)

1. A method for establishing a three-party call is applied to a terminal, and comprises the following steps:
when detecting that a call is called by a first application program, a second application program in a first terminal initiates a first session taking-over request to the first application program, wherein the corresponding call request comprises a three-party call identifier, and the first session taking-over request comprises a password code for taking over the session;
the first application program sends a redirection request to a session management function entity, wherein the redirection request comprises an entry address of a redirection target and a password code for taking over a session, and the entry address of the redirection target is the entry address of the second application program in the first terminal;
after receiving a first homonymy session taking-over message of the first application program, the second application program sends a second session taking-over request to a network open function entity, wherein the first homonymy session taking-over message is sent by the session management function entity after suspending a first session established by the first application program of the first terminal and a second terminal, and the second session taking-over request comprises a password code for taking over a session;
the second application program receives a second session taking over agreement message returned by the network open function entity, wherein the second session taking over agreement message is a message sent by the network open function entity after the session management function entity responds to the second session taking over request and sends a redirection instruction to a user plane function entity, the user plane function entity redirects the first session to the second application program according to the redirection instruction, and the second session taking over agreement message includes a password code for taking over the session;
and the second application program is accessed to a third terminal to form three-party communication of the first terminal, the second terminal and the third terminal.
2. The method of claim 1, wherein after the first application sends the redirection request to the session management function entity and before the second application receives the first co-taking over session message of the first application, further comprising:
receiving a first session suspension instruction of the session management functional entity, wherein the first session suspension instruction is an instruction sent to the first application program by the session management functional entity according to the redirection request;
the first application program suspends the first session according to the first session suspension instruction;
the first application sends the first consent take over message to the second application.
3. The method according to claim 2, wherein the second consent to take over message is sent by the session management function entity after redirecting the first session to the second application and verifying the passcode sent by the network open function entity and the passcode sent by the first application.
4. The method of claim 3, wherein after the first application completes redirection, the second application resumes the suspended first session, and wherein the first application tears down a traffic connection of the first session.
5. The method according to claim 1, wherein after the first terminal, the second terminal and the third terminal establish the three-party session, the second application program of the first terminal performs mixing and forwarding on the media streams from the first terminal, the second terminal and the third terminal.
6. A method for establishing a three-way call is applied to a core network, and the method comprises the following steps:
receiving a redirection request sent by a first application program in a first terminal, wherein the redirection request is sent based on that a second application program in the first terminal detects a first session taking-over request sent by the first application program calling a call, and the redirection request comprises an entry address of a redirection target and a password code for taking over the session, and the entry address of the redirection target is the entry address of the second application program in the first terminal;
sending a first session suspension instruction to a first application program of the first terminal so as to enable the first application program to suspend the first session, wherein the first session is established between the first application program of the first terminal and a second terminal;
receiving a second session taking-over request forwarded by a network open function entity, wherein the second session taking-over request is a request sent to the network open function entity after a second application program receives a first homonymy session taking-over message of a first application program, the first homonymy session taking-over message is a message sent after the first application program suspends the first session, and the second session taking-over request comprises a password code for taking over the session;
and sending a second session taking-over agreement message to the network open function entity after redirecting the first session so as to enable the second application program to access a third terminal and form a three-party call of the first terminal, the second terminal and the third terminal, wherein the second session taking-over agreement message is a message sent by the network open function entity after responding to the second session taking-over request at the session management function entity and sending a redirection instruction to a user plane function entity, and the user plane function entity redirects the first session to the second application program according to the redirection instruction.
7. The method of claim 6, wherein sending a second message to the network openness function to agree to take over a session after the first session redirection comprises:
receiving a redirection request for the first session initiated by the first application program;
redirecting the first session to the second application program according to the redirection request;
verifying a password code in a redirection request sent by the first application program and a password code in the second takeover session request sent by the network open function entity;
and sending a second agreement to take over the session to the network open function entity.
8. The method of claim 7, wherein after the redirecting the first session to the second application, further comprising:
sending a service connection dismantling instruction to the first application program so as to enable the first application program to dismantle service connection of a first session;
sending a resume suspend instruction to the second application to cause the second application to resume the suspended first session.
9. A device for establishing a three-party call is applied to a terminal and comprises:
the detection module is used for detecting whether a second application program in the first terminal is called by the first application program for conversation or not;
the first terminal request module is used for initiating a first session taking-over request to the first application program when the second application program detects that the call is called by the first application program, wherein the corresponding call calling request comprises a three-party call identifier, and the session taking-over request comprises a password code for taking over the session;
a first terminal sending module, configured to send, by the first application, a redirection request to a session management function entity, where the redirection request includes an entry address of a redirection target and a passcode for taking over a session, and the entry address of the redirection target is an entry address of a second application in the first terminal;
a first terminal receiving module, configured to receive, by the second application program, a first concurrent takeover session message of the first application program, where the first concurrent takeover session message is a message sent by the session management functional entity after suspending a first session established between the first application program of the first terminal and the second terminal;
a second terminal sending module, configured to send a second session taking-over request to the network open function entity, where the second session taking-over request includes a passcode for taking over a session;
a second terminal receiving module, configured to receive, by the second application program, a second session takeover agreement message returned by the network open functional entity, where the second session takeover agreement message is a message sent by the network open functional entity after responding to the second session takeover request at the session management functional entity, and sending a redirection instruction to a user plane functional entity, where the user plane functional entity redirects the first session to the second application program according to the redirection instruction;
and the access module is used for accessing the second application program into a third terminal to form three-party call of the first terminal, the second terminal and the third terminal.
10. A device for establishing a three-party call is applied to a core network, and comprises:
a first core network receiving module, configured to receive a redirection request sent by a first application in a first terminal, where the redirection request is sent based on a second application in the first terminal detecting that a first session takeover request sent by the first application calls a call, and the redirection request includes an entry address of a redirection target and a passcode for taking over a session, where the entry address of the redirection target is an entry address of the second application in the first terminal;
a first core network sending module, configured to send a suspend-first-session instruction to a first application program of the first terminal, so that the first application program suspends the first session, where the first session is a session established between the first application program of the first terminal and a second terminal;
a second core network receiving module, configured to receive a second session takeover request forwarded by a network open function entity, where the second session takeover request is a request sent by the second application program to the network open function entity after receiving a first session takeover request message of the first application program, and the first session takeover request is a message sent by the first application program after suspending the first session, and the second session takeover request includes a passcode for taking over a session;
the verification module is used for verifying a password code in the redirection request sent by the first application program and a password code in the second takeover session request sent by the network open function entity;
a second core network sending module, configured to send a second session takeover agreement message to the network open function entity, and access the second application program to a third terminal to form a three-way call between the first terminal, the second terminal, and the third terminal, where the second session takeover agreement message is a message sent by the network open function entity after responding to the second session takeover request at the session management function entity, and sending a redirection instruction to a user plane function entity, where the user plane function entity redirects the first session to the second application program according to the redirection instruction.
CN201910790246.6A 2019-08-26 2019-08-26 Method and device for establishing three-party call Active CN110519455B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910790246.6A CN110519455B (en) 2019-08-26 2019-08-26 Method and device for establishing three-party call

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910790246.6A CN110519455B (en) 2019-08-26 2019-08-26 Method and device for establishing three-party call

Publications (2)

Publication Number Publication Date
CN110519455A CN110519455A (en) 2019-11-29
CN110519455B true CN110519455B (en) 2021-04-02

Family

ID=68627859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910790246.6A Active CN110519455B (en) 2019-08-26 2019-08-26 Method and device for establishing three-party call

Country Status (1)

Country Link
CN (1) CN110519455B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1619854A1 (en) * 2004-07-21 2006-01-25 Siemens Mobile Communications S.p.A. SIP message extension for push to watch service
CN101141689A (en) * 2007-10-10 2008-03-12 中兴通讯股份有限公司 Method for inviting users when establishing session service
CN101945357A (en) * 2010-08-23 2011-01-12 中国电信股份有限公司 Method and system for realizing multi-party call of mobile terminal, mobile terminal and multi-party call platform
CN105100410A (en) * 2015-05-27 2015-11-25 小米科技有限责任公司 Method and device for aggregating third-party telephone application
CN105376761A (en) * 2015-10-12 2016-03-02 腾讯科技(深圳)有限公司 Method, device and conversation system for establishing conversation connection

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1619854A1 (en) * 2004-07-21 2006-01-25 Siemens Mobile Communications S.p.A. SIP message extension for push to watch service
CN101141689A (en) * 2007-10-10 2008-03-12 中兴通讯股份有限公司 Method for inviting users when establishing session service
CN101945357A (en) * 2010-08-23 2011-01-12 中国电信股份有限公司 Method and system for realizing multi-party call of mobile terminal, mobile terminal and multi-party call platform
CN105100410A (en) * 2015-05-27 2015-11-25 小米科技有限责任公司 Method and device for aggregating third-party telephone application
CN105376761A (en) * 2015-10-12 2016-03-02 腾讯科技(深圳)有限公司 Method, device and conversation system for establishing conversation connection

Also Published As

Publication number Publication date
CN110519455A (en) 2019-11-29

Similar Documents

Publication Publication Date Title
CN103139529B (en) Video call switching method between sip server, video call device
US9288229B2 (en) Device association via video handshake
US9351328B2 (en) Method for transferring a communication session between devices
US20180255112A1 (en) Instant calling method, apparatus and system
JP6456391B2 (en) Tunneling VOIP call control in cellular networks
JP7257526B2 (en) Providing communication services using a set of I/O devices
WO2017028567A1 (en) Internet telephone connection processing method and device
CN110365931B (en) Multi-party call control method and device, electronic equipment and storage medium
CN103929553A (en) Teleconference achieving method and system
CN113099055A (en) Communication method, system, device, electronic equipment and storage medium
JP2008153774A (en) Thin client system and communication device
RU2670096C2 (en) Method and device for ending video communication
CN108270777B (en) Method for establishing a VOIP communication between a PBX system and a first terminal, private branch exchange system and communication network
ES2933116T3 (en) WebRTC communication method and user equipment
CN110493022B (en) Method, device and system for establishing three-party session
CN111787496A (en) Method and equipment for switching calls between mobile phones
CN110505593B (en) Method and device for realizing three-party call
CN110519455B (en) Method and device for establishing three-party call
CN110337079B (en) 5G network communication method, terminal, network equipment and server
WO2017012547A1 (en) Method for establishing communication connection and electronic device
US11837235B2 (en) Communication transfer between devices
CN110493737B (en) Method and device for establishing three-party call
CN110505356B (en) Call establishment method and call establishment system
WO2017128601A1 (en) Method and device for backing up voice call
CN110493023B (en) Three-party session establishment method and device

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