Message processing methods, network devices, terminal devices, and storage media

By sending session negotiation messages and service association requests to the terminal device during a call, the control problem of data channel negotiation in the distributed communication service platform is solved, enabling data interaction and call control between the terminal device and the network device, and supporting interactive services of the communication service platform.

CN118827628BActive Publication Date: 2026-01-30CHINA MOBILE COMM LTD RES INST +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310745525.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-06-21
Publication Date
2026-01-30
Estimated Expiration
2043-06-21

AI Technical Summary

Technical Problem

In distributed communication service platforms and network devices, existing technologies cannot effectively control data channel negotiation, resulting in the communication service platform being unable to provide call-based interactive services and unable to accurately control calls to the network devices handling the current call.

Method used

By sending a session negotiation message carrying information and a service association request to the terminal device during the call, a media session is established between the terminal device and the network device to realize the association and negotiation of information, support the interactive services of the distributed communication service platform, and ensure the accuracy of call control.

Benefits of technology

It enables data interaction between terminal devices and network devices in a distributed environment, supports communication service platforms to provide call-based interactive services, and does not require upgrading the DC protocol stack and negotiation process of network devices.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118827628B_ABST
    Figure CN118827628B_ABST
Patent Text Reader

Abstract

This application discloses a message processing method, comprising: during a first call, a first network device sending a session negotiation message carrying first information to a first terminal device; wherein the first information is used to associate the session negotiation message related to the first call and / or a call event notification message; the first call is used to establish a media session between the first terminal device and a second terminal device; the first terminal device receiving the session negotiation message; the first terminal device sending a service association request carrying second information to the second network device; and the second network device receiving the service association request. This application also discloses a first network device, a second network device, a first terminal device, and a computer-readable storage medium.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to, but is not limited to, the field of communications, and particularly to a message processing method, a first network device, a second network device, a first terminal device, and a computer-readable storage medium. Background Technology

[0002] In related technologies, Internet Protocol Multimedia Subsystem (IMS) fixed-line phones, Session Initialization Protocol (SIP) soft terminals, or certain communication service platforms, such as call centers, can provide real-time interactive calling capabilities. This means that during a call, users can interact with the other end's IMS fixed-line phone, SIP soft terminal, or certain communication service platform through a negotiated data channel (DC). Here, the DC can transmit data information of any protocol type, enabling real-time data interaction between users during the call.

[0003] Currently, because some communication service platforms and / or network devices that can communicate directly with mobile calling terminals can be deployed in a distributed manner, when their access network does not support DC or they themselves do not support DC, the relevant technologies cannot control DC negotiation through a simple call event control mechanism. That is, during a call, the node responding to the call message and the node responding to the DC negotiation message may not be the same. As a result, the communication service platform cannot provide call-based interactive services; or the communication service platform cannot accurately perform call control, such as DC establishment request, to the network device that is handling the current call. Summary of the Invention

[0004] This application provides a message processing method, a first network device, a second network device, a first terminal device, and a computer-readable storage medium.

[0005] In a first aspect, embodiments of this application provide a message processing method applied to a first network device, the method comprising:

[0006] During the first call, a session negotiation message carrying first information is sent to the first terminal device; wherein, the first information is used to associate the session negotiation message related to the first call and / or the call event notification message; the first call is used to establish a media session between the first terminal device and the second terminal device.

[0007] Secondly, embodiments of this application provide a data transmission method applied to a second network device, the method comprising:

[0008] Based on the first address of the second network device, obtain the service association request sent by the first terminal device carrying the second information.

[0009] Thirdly, embodiments of this application provide a data transmission method applied to a first terminal device, the method comprising:

[0010] During the first call, a session negotiation message carrying first information is received from a first network device; wherein, the first information is used to associate the session negotiation message related to the first call and / or the call event notification message; the first call is used to establish a media session between the first terminal device and the second terminal device.

[0011] Send a service association request carrying second information to the second network device.

[0012] Fourthly, embodiments of this application provide a first network device, the first network device comprising:

[0013] The first sending module is used to send a session negotiation message carrying first information to the first terminal device during the first call; wherein the first information is used to associate session negotiation information related to the first call and / or a call event notification message; the first call is used to establish a media session between the first terminal device and the second terminal device.

[0014] Fifthly, embodiments of this application provide a second network device, the network device comprising:

[0015] The second acquisition module is used to acquire, based on the first address of the second network device, a service association request carrying second information sent by the first terminal device.

[0016] Sixthly, embodiments of this application provide a first terminal device, the first terminal device comprising:

[0017] The third receiving module is used to receive a session negotiation message carrying first information sent by the first network device during the first call; wherein, the first information is used to associate the session negotiation message related to the first call and / or the call event notification message; the first call is used to establish a media session between the first terminal device and the second terminal device.

[0018] The third sending module is used to send a service association request carrying second information to the second network device.

[0019] Seventhly, embodiments of this application provide a first network device, the first network device comprising:

[0020] The first memory is used to store executable instructions;

[0021] The first processor, when executing executable instructions stored in the first memory, implements the message processing method described above.

[0022] Eighthly, embodiments of this application provide a second network device, the second network device comprising:

[0023] The second memory is used to store executable instructions;

[0024] The second processor, when executing executable instructions stored in the second memory, implements the message processing method described above.

[0025] Ninthly, embodiments of this application provide a first terminal device, the first terminal device comprising:

[0026] The third memory is used to store executable instructions;

[0027] The third processor, when executing executable instructions stored in the third memory, implements the message processing method described above.

[0028] In a tenth aspect, embodiments of this application provide a computer-readable storage medium for storing a computer program that causes a computer to perform the message processing method described above.

[0029] This application discloses a message processing method, a first network device, a second network device, a first terminal device, and a computer-readable storage medium. The method includes: during a first call, the first network device sends a session negotiation message carrying first information to the first terminal device; wherein the first information is used to associate the session negotiation message related to the first call with / or a call event notification message; the first call is used to establish a media session between the first terminal device and the second terminal device; the first terminal device receives the session negotiation message; the first terminal device sends a service association request carrying second information to the second network device; and the second network device receives the service association request. In other words, during the first call, this application utilizes the first information (service association information) sent by the first network device to the first terminal device, and the service association request sent by the first terminal device to the second network device, to associate messages related to the first call; for example, to associate a call request message with a negotiated DC message. Thus, this application can support triggering a distributed communication service platform and / or network device, which can provide call-based interactive services; and the communication service platform can accurately perform call control on the network device processing the current call. Attached Figure Description

[0030] Figure 1This is a schematic diagram of a DC negotiation scheme provided in related technologies;

[0031] Figure 2 This is a schematic diagram of a DC negotiation scheme based on a capability-open architecture provided in related technologies;

[0032] Figure 3 A flowchart illustrating the message processing method provided in the embodiments of this application. Figure 1 ;

[0033] Figure 4 A flowchart illustrating the message processing method provided in the embodiments of this application. Figure 2 ;

[0034] Figure 5 A flowchart illustrating the message processing method provided in the embodiments of this application. Figure 3 ;

[0035] Figure 6 A flowchart illustrating the message processing method provided in the embodiments of this application. Figure 4 ;

[0036] Figure 7 A schematic block diagram of a first network device provided in an embodiment of this application;

[0037] Figure 8 A schematic block diagram of a second network device provided in an embodiment of this application;

[0038] Figure 9 A schematic block diagram of a first terminal device provided in an embodiment of this application;

[0039] Figure 10 This is a schematic structural diagram of a communication device provided in an embodiment of this application. Detailed Implementation

[0040] The technical solutions of the embodiments of this application will now be described with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of them. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.

[0041] The term "comprising," and any variations thereof, used in the specification and claims of this application, is intended to cover a non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not necessarily limited to those explicitly listed, but may include other steps or units not explicitly listed or inherent to such process, method, product, or apparatus. Furthermore, the use of "and / or" in the specification and claims indicates at least one of the connected objects, such as A and / or B, indicating the inclusion of A alone, B alone, or both A and B.

[0042] In the embodiments of this application, the terms "exemplary" or "for example" are used to indicate that something is an example, illustration, or description. Any embodiment or design that is described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design. Specifically, the use of the terms "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0043] The technical solutions of this application embodiment can be applied to various communication systems, such as: Long Term Evolution (LTE) systems, LTE-Advanced (LTE-A) systems, Universal Mobile Telecommunication System (UMTS), Internet of Things (IoT) systems, Narrow Band Internet of Things (NB-IoT) systems, enhanced Machine-Type Communications (eMTC) systems, 5G communication systems (also known as New Radio (NR) communication systems), or future communication systems, LTE Time Division Duplex (TDD), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Frequency Division Multiple Access (FDMA), Orthogonal Frequency Division Multiple Access (OFDMA), Single-carrier Frequency-Division Multiple Access (SC-FDMA), etc. The terms "system" and "network" in the embodiments of this application are often used interchangeably, and the described technical solutions can be used not only for the systems and radio technologies mentioned above, but also for other systems and radio technologies.

[0044] Before explaining this application, the DC negotiation scheme in the related art is described here:

[0045] In 2019, the 3rd Generation Partnership Project (3GPP) 26.114 introduced Data Channel (DC) technology into the IMS system. According to 3GPP 26.114, based on the SIP protocol, terminals or networks negotiate DC through the Session Description Protocol (SDP) and establish a data channel consisting of a protocol stack of User Datagram Protocol (UDP), Datagram Transport Layer Security (DTLS), and Stream Control Transmission Protocol (SCTP). This data channel can transmit data information of any protocol type, enabling real-time data interaction between the user and the caller. In audio and video calls, users can transfer files through the DC, and the network platform can also establish a DC channel with the terminal user to transmit interactive control-related data, thereby providing users with interactive services during the call, such as background replacement, animated stickers, and intelligent translation services based on user settings.

[0046] In the 3GPP scheme, the DC channel negotiation between the two ends of the IMS session is achieved through the SIP protocol. After the DC negotiation is completed, DTLS / SCTP connection establishment negotiation is performed, and data transmission begins after the DTLS / SCTP connection is established. Figure 1 This is a DC negotiation scheme provided in related technologies. It should be noted that... Figure 1 The network in the diagram can be a network element; Figure 1 The network in the context includes the network to which terminal A belongs and the network to which terminal B belongs. For example... Figure 1 As shown, the scheme includes:

[0047] Step 101: Establish an IMS audio / video session between terminal A and network / terminal B; further, after the IMS audio / video session is successfully established, enter the SIP negotiation phase, namely steps 102 to 104.

[0048] Step 102: Terminal A sends an invitation redirection (re-INVITE) message to the network / terminal B.

[0049] The re-INVITE message contains SDP's DC media negotiation information.

[0050] Step 103: Network / Terminal B sends 200 OK to Terminal A.

[0051] Step 104: Terminal A sends an acknowledgment character (ACK) to the network / terminal B. Further, after step 104 is completed, the DTLS handshake phase begins, i.e., steps 102 to 119. Steps 105 to 108 are used for the handshake request and cookie exchange during the DTLS handshake phase; steps 109 to 112 are used for exchanging the server certificate during the DTLS handshake phase; steps 113 to 115 are used for exchanging the client certificate during the DTLS handshake phase; and steps 116 to 119 are used for exchanging the symmetric key during the DTLS handshake phase.

[0052] Step 105: Terminal A sends the first ClientHello message to the network / Terminal B.

[0053] The first ClientHello message does not carry a COOKIE, the session ID is not generated, but it may carry a set of algorithms for negotiation.

[0054] Step 106: Network / Terminal B sends a Hello Verify Request message to Terminal A.

[0055] The Hello verification request contains a 32-byte COOKIE.

[0056] Step 107: Terminal A sends a second ClientHello message to the network / terminal B.

[0057] The second ClientHello message contains a COOKIE.

[0058] Step 108: Network / Terminal B sends a ServerHello message to Terminal A.

[0059] The ServerHello message generates a 32-byte SessionID and specifies the key algorithm set to be used.

[0060] Steps 109 to 112: Network / Terminal B sends a Certificate, ServerKeyExchange, CertificateRequest, and ServerHelloDone message to Terminal A.

[0061] Steps 113 to 115: Terminal A sends a Certificate, Client Key Exchange, and Certification Verify to the network / Terminal B.

[0062] Step 116: Terminal A sends a ChangeCipherSpec message to the network / Terminal B.

[0063] Step 117: Terminal A sends a Finished message to the network / Terminal B.

[0064] The Finished message indicates that the handshake is complete.

[0065] Step 118: Network / Terminal B sends a ChangeCipherSpec message to Terminal A.

[0066] Step 119: Network / Terminal B sends a Finished message to Terminal A; further, after step 119 is completed, the SCTP handshake phase begins, namely steps 120 to 123.

[0067] Step 120: Terminal A sends an initialization (INIT) message to the network / terminal B.

[0068] Step 121: Network / Terminal B sends an INIT ACK message to Terminal A.

[0069] Step 122: Terminal A sends a COOKIE response (ECHO) message to the network / terminal B.

[0070] Step 123: Network / Terminal B sends a COOKIE ACK message to Terminal A; furthermore, after step 123 is completed, Network / Terminal B and Terminal A transfer files through the DC.

[0071] However, in response to Figure 1The proposed solution uses the SIP protocol for DC negotiation, including DC negotiation between terminals and between the terminal and the network. After DC negotiation, DTLS / SCTP connection establishment negotiation is also required, making the process very complex. Furthermore, the SIP protocol during a call has different negotiation processes for different states and scenarios (such as ringing, off-hook, steady state, busy, unreachable, forwarding, call waiting, call hold, etc.), making the negotiation process very complex and difficult for developers to learn. Meanwhile, in the current market environment, HyperText Transfer Protocol (HTTP) is more widely used in mobile application development, and SIP is rarely used except for audio and video negotiation. DTLS / SCTP protocols are also uncommon. Existing application implementations are also difficult to quickly port to IMS DC calling applications. To address these issues, the industry has proposed a DC negotiation solution based on an open capability architecture, reducing the development difficulty for business developers in implementing DC between the network-side business platform and the terminal. Figure 2 This is a DC negotiation scheme based on a capability-open architecture provided in related technologies. It should be noted that network A is the network element corresponding to the network to which terminal A belongs, and network B is the network element corresponding to the network to which terminal B belongs. For example... Figure 2 As shown, the scheme includes:

[0072] Step 201: Terminal A sends a re-INVITE request to network A.

[0073] The re-INVITE request is based on the SIP protocol and is used for DC negotiation.

[0074] Step 202: Network A sends a call event notification to the service platform.

[0075] Call event notifications are based on the HTTP protocol.

[0076] Step 203: The service platform sends a call event control to network A.

[0077] Call event control is based on the HTTP protocol.

[0078] Step 204: Network A forwards the re-INVITE request to terminal B via network B.

[0079] The re-INVITE request is based on the SIP protocol and is used for DC negotiation.

[0080] Step 205: Terminal B sends a 200 OK message to Network A via Network B; Network A sends a 200 OK message to Terminal A.

[0081] It should be noted that the time when terminal B sends a 200 OK message to network A through network B can be before or at the same time when network A sends a 200 OK message to terminal A.

[0082] Step 206: Terminal A sends an ACK message to network A; network A then sends an ACK message to terminal B via network B.

[0083] It should be noted that the time when terminal A sends an ACK message to network A can be before or simultaneously with the time when network A sends an ACK message to terminal B through network B.

[0084] Step 207: Terminal A establishes a DTLS / SCTP connection with Network A; furthermore, Terminal A and Network A transfer files through a data channel, and Network A and the business platform forward DC data through the HTTP protocol.

[0085] It should be noted that when the communication service platform itself is also a terminal in an audio / video call (such as a calling terminal or certain IMS landlines), the communication service platform needs to support both the DC negotiation process and the DC protocol stack. When the calling and called network sides have not been upgraded to support IMS DC capabilities, the network support side terminal cannot interact with the other end terminal.

[0086] Figure 3 This is a flowchart illustrating a message processing method provided in an embodiment of this application, as shown below. Figure 3 As shown, this method is applied to a call system, which includes calling and called terminals, and network devices corresponding to the calling and called terminals. The method includes:

[0087] Step 301: During the first call, the first network device sends a session negotiation message carrying first information to the first terminal device.

[0088] The first information is used to associate a session negotiation message related to the first call, and / or a call event notification message related to the first call; the first call is used to establish a media session between the first terminal device and the second terminal device.

[0089] It should be noted that the call event notification message is used to indicate the session negotiation message currently being processed for the call; the call event notification message includes a first call event notification message, which is used to indicate the negotiation of a first data channel with the second terminal device; the first data channel is used to transmit interactive data between the first terminal device and the second terminal device.

[0090] Here, the session negotiation message includes at least one of the following: a Session Initiation Protocol Invitation (SIP INVITE) message; a Session Initiation Protocol 183 (SIP 183) message; a Session Initiation Protocol Redirection Invitation (SIP re-INVITE) message; a Session Initiation Protocol Update (SIP UPDATE) message; or a Session Initiation Protocol Request Feedback message, such as a 200 OK message.

[0091] In this embodiment, the first terminal device can be either a calling terminal or a called terminal. The first terminal device includes at least one of the following: a Session Initiation Protocol soft terminal; an Internet Protocol Multimedia Subsystem (IMS) fixed-line terminal; a first node in a communication service platform or a communication service platform.

[0092] In this embodiment, the second terminal device is the peer device of the first terminal device. The second terminal device can be a terminal device, a call service platform or a second node within the call service platform, a Session Initiation Protocol (SIP) soft terminal, or an Internet Protocol Multimedia Subsystem (IMS) fixed-line terminal. Terminal devices include, but are not limited to, access terminals, user equipment (UE), user units, user stations, mobile stations, mobile stations, remote stations, remote terminals, mobile devices, user terminals, terminals, wireless communication devices, user agents, or user devices. Access terminals can be cellular phones, cordless phones, Session Initiation Protocol (SIP) phones, IoT devices, satellite handheld terminals, Wireless Local Loop (WLL) stations, Personal Digital Assistants (PDAs), handheld devices with wireless communication capabilities, computing devices or other processing devices connected to a wireless modem, in-vehicle devices, wearable devices, terminal devices in 5G networks, or terminal devices in future evolved networks.

[0093] In this embodiment, the first network device is the first network element corresponding to the network to which the second terminal device belongs. The first network element includes, but is not limited to, a Voice over Long-Term Evolution Application Server (VoLTE AS).

[0094] In this embodiment, the session negotiation message is a session negotiation message related to the first call. The session negotiation message includes audio / video call media negotiation information; the first information can be written into the audio / video call media negotiation information.

[0095] In this embodiment of the application, the first information includes at least one of the following: the first address of the second network device; the identifier of the first call.

[0096] In this embodiment, the second network device is the second network element corresponding to the network to which the second terminal device belongs; the second network element includes, but is not limited to, 5G Voice Over New Radio (VoNR)+ capability network elements and Data Channel Media Function (DCMF) network elements. The second network device and the first network device are two independent devices interconnected; or, the second network device and the first network device are the same device.

[0097] In this embodiment, the identifier of the first call includes graphic identifiers, text identifiers, numeric identifiers, location identifiers, etc. Different calls can use the same type of identifier; of course, the types of identifiers for different calls may not be completely the same, or the types of identifiers for different calls may be completely different. For example, the identifier of the first call may be the Uniform Resource Locator (URL) of the first call.

[0098] In this embodiment, the first address of the second network device includes the address at which the second network device receives service association requests. The first address includes, but is not limited to, the Internet Protocol (IP) address of the second network device and the Medium Access Control (MAC) address of the second network device.

[0099] In this embodiment of the application, there is a mapping (correspondence) relationship between the first address and the first call; the correspondence relationship here can be a unique correspondence relationship or a non-unique correspondence relationship, that is, a one-to-many relationship; if the correspondence relationship is a unique correspondence relationship, the unique identifier of the first call includes the first address.

[0100] In this embodiment of the application, the first information includes first indication information; wherein, the first indication information is used to indicate whether the first network device belongs to the calling network, or to indicate whether the first network device belongs to the called network. Here, the calling network is the network to which the calling terminal belongs; the called network is the network to which the called terminal belongs.

[0101] Step 302: The first terminal device receives the session negotiation message.

[0102] Step 303: The first terminal device sends a service association request carrying the second information to the second network device.

[0103] In this embodiment of the application, after receiving the session negotiation message, the first terminal device parses the first information from the session negotiation message; obtains the first address of the second network device from the first information, and sends service association information carrying the second information according to the first address.

[0104] In this embodiment of the application, after receiving the session negotiation message, the first terminal device parses the first information from the session negotiation message and determines whether it is necessary to trigger the service association process. If the first terminal device determines that it is necessary to trigger the service association process, the first terminal device obtains the first address of the second network device from the first information and sends the service association information carrying the second information according to the first address.

[0105] In this embodiment of the application, the second information includes at least one of the following: the second address of the first terminal device; the identifier of the first call; or the first address of the second network device.

[0106] In this embodiment, the second address is the address information of the first terminal device when it receives notification messages such as call event notifications or call event control result notifications. The second address of the first terminal device includes, but is not limited to, the IP address and MAC address of the first terminal device.

[0107] In this embodiment of the application, if there is a unique correspondence between the first call and the first address, the second information may include the identifier of the first address or the first call to uniquely identify the first call; if there is a one-to-many correspondence between the first call and the first address, the second information may include the identifier of the first call to uniquely identify the first call.

[0108] In this embodiment of the application, the second information further includes second indication information; the indication bits of the second indication information include a first value, such as 1, a second value, such as 2, and a third value, such as 3;

[0109] The first value is used to instruct the second network device to send a first call event notification message according to the second rule and the second address; the second rule is used to instruct the second network device whether to send the first call event notification message to the first terminal device.

[0110] The second value is used to instruct the second network device to forward the interactive data sent from the second terminal device to the first terminal device through the first interface. Here, the first interface is used by the second network device to send interactive data to the second terminal device.

[0111] The third value is used to instruct the second network device to send a first call event notification message according to the second rule and the second address, and the second network device to forward the interactive data sent from the second terminal device to the first terminal device through the first interface.

[0112] Step 304: The second network device receives the service association request.

[0113] In some embodiments, step 304 may be implemented as the second network device obtaining a service association request carrying second information sent by the first terminal device based on the first address of the second network device.

[0114] In this embodiment of the application, obtaining the service association request carrying the second information sent by the first terminal device based on the first address of the second network device can be achieved by the first terminal device sending the service association request to the network device corresponding to the first address after the network device corresponding to the first address sends the acquisition request to the first terminal device; or it can be achieved by the first terminal device generating the service association request and then sending the service association request to the network device corresponding to the first address based on the first address in the first information.

[0115] This application discloses a message processing method, which includes: during a first call, a first network device sends a session negotiation message carrying first information to a first terminal device; wherein the first information is used to associate the session negotiation message related to the first call with / or a call event notification message; the first call is used to establish a media session between the first terminal device and a second terminal device; the first terminal device receives the session negotiation message; the first terminal device sends a service association request carrying second information to the second network device; and the second network device receives the service association request. In other words, during the first call, this application utilizes the first information (service association information) sent by the first network device to the first terminal device, and the service association request sent by the first terminal device to the second network device, to establish an association between messages related to the first call; for example, to establish an association between a call request message and a negotiated DC message. Thus, this application can support triggering a distributed communication service platform and / or network devices, whereby the communication service platform can provide call-based interactive services; and the communication service platform can accurately perform call control on the network device processing the current call.

[0116] Furthermore, in the solution of this application, the call service platform does not need to support the DC protocol stack and DC SIP negotiation process. Moreover, the call service platform can achieve data interaction with the peer terminal even without upgrading its access-side network to support IMS DC capabilities, thus eliminating the need for the access network to support IMS DC.

[0117] In some embodiments, the method provided in this application includes the following:

[0118] Step A1: The first network device determines whether to add the first information to the session negotiation message according to the first rule.

[0119] In this embodiment of the application, the first rule includes determining whether the identifier corresponding to the first terminal device is the number of the communication service platform, or whether the identifier corresponding to the second terminal device is the number of the communication service platform; that is, determining whether the first terminal device or the second terminal device is a node in the communication service platform.

[0120] In this embodiment of the application, the first rule includes determining whether the second terminal device supports DC capability and whether the corresponding identifier of the second terminal device is a non-landline number; or determining whether the first terminal device supports DC capability and whether the corresponding identifier of the first terminal device is a non-landline number.

[0121] In this embodiment of the application, the first rule is indicated to the first network device by the second network device; or, the first rule is configured on the first network device.

[0122] In some embodiments, the method provided in this application includes the following:

[0123] The second network device determines, according to the second rule, whether to send the first call event notification message to the second address.

[0124] The first call event notification message is used to instruct the negotiation of a first data channel with the second terminal device; the first data channel is used to transmit interactive data between the first terminal device and the second terminal device; the first call event notification message includes a unique identifier for the first call.

[0125] In this embodiment of the application, the second rule is subscribed to by the first terminal device through a call event; or, the second rule is signed up by the first terminal device through a service contract; or, the second rule is proposed by the first terminal device to the second network device through a target method; or, the second rule is indicated by the first or third value included in the indication bit of the second indication information.

[0126] Here, the requests made to the second network device through the target method include those made by the first terminal device to the second network device when registering data channel capabilities.

[0127] In some embodiments, the method provided in this application includes the following:

[0128] Step B1: The second network device obtains the first call control message sent by the first terminal device based on the first address.

[0129] The first call control message is used to instruct the second network device to trigger the first network device to complete data channel negotiation with the second terminal device.

[0130] In this embodiment of the application, the first terminal device sends a first call control message based on the first address of the second network device.

[0131] Step B2: The second network device sends a call event control result notification message based on the second address.

[0132] The call event control result notification message is used to indicate whether data channel negotiation has been completed.

[0133] In this embodiment of the application, the second network device sends a call event control result notification message to the first terminal device based on the second address of the first terminal device.

[0134] The embodiments of this application are described below with reference to Embodiments 1 to 3.

[0135] Example 1, see Figure 4 The specific steps are as follows:

[0136] It should be noted that the first network device is VoLTE AS, the second network device is VoNR+ capability network element, the second terminal device is terminal A, and the first terminal device is agent A of the calling terminal.

[0137] Step 401: Terminal A sends an INVITE request to VoLTE AS.

[0138] The INVITE request is used to instruct terminal A to dial a call center agent; the INVITE request includes audio call information (a), video call information (v), and guide data channel (bdc) information.

[0139] Among them, the guiding data channel information is used to transmit pre-processing data services, such as obtaining a list of service applications / mini-programs that can use interactive call services in the current call through BDC.

[0140] Step 402: The VoLTE AS sends a call event notification to the VoNR+ capability network element.

[0141] The call event notification includes the calling number and the called number.

[0142] Step 403: The VoNR+ capability network element determines, according to the first rule, whether service association information needs to be added to the INVITE request.

[0143] The first rule here is to determine whether the called number is a call center number.

[0144] Here, service association information is the primary information. Service association information includes at least one of the following: VoNR+ capability element address and call identifier (callurl).

[0145] Step 404: The VoNR+ capability network element sends a feedback message to the VoLTE AS.

[0146] Furthermore, the VoLTE AS receives feedback messages.

[0147] In some embodiments, if the VoNR+ capability network element determines, according to the first rule, that a service association information feedback message needs to be added to the INVITE request, then the feedback message includes a message for notifying the VoLTE AS to supplement the service association information and a message for notifying the deletion of m lines of DC information in the INVITE request; m is a positive integer.

[0148] Step 405: VoLTE AS forwards the INVITE request to the call center.

[0149] Here, the VoLTE AS forwards an INVITE request carrying service association information to the call center (the first network device sends a session protocol message carrying first information to the first terminal device).

[0150] In this embodiment of the application, the VoLTE AS can supplement and extend the header field of the INVITE request and add service association information to the header field.

[0151] Step 406: The call center receives an INVITE request carrying service association information and determines whether to trigger the service association process. If it is determined that the service association process needs to be triggered, proceed to step 407.

[0152] Step 407: The call center sends a service association request to the VoNR+ capability network element (the first terminal device sends a service association request carrying the second information to the second network device).

[0153] In this embodiment of the application, the service association request carries a call identifier (callurl) and a call center callback address.

[0154] Step 408: The call center sends a 183 message to the VoLTE AS.

[0155] Step 409: VoLTE AS sends Message 183 to Terminal A.

[0156] Among them, message 183 includes audio call information (a), video call information (v), and guide data channel (bdc) information. The bdc information is used to assist in establishing a bdc channel between terminals A.

[0157] Step 410: Terminal A, VoLTE AS, VoNR+ capability network element, VoNR+ media plane, Interconnect Session Border Controller (I-SBC) and call center continue to complete audio and video call negotiation and establish BCD channels between Terminal A.

[0158] It should be noted that continuing to complete the audio and video call negotiation and the establishment of the BCD channel between terminal A will involve the Provisional Response Acknowledgment (PRACK) message, PRACK200 message, UPDATE message, UPDATE 200 message, and 180 message in SIP messages.

[0159] Step 411: Terminal A, VoLTE AS, VoNR+ capability network element, and VoNR+ media plane download the call center applet.

[0160] In this embodiment, terminal A downloads the bootloader and mini-program list using the bcd information. If terminal A determines that the call center mini-program has the autoload attribute, it triggers the download of the call center mini-program.

[0161] Step 412: The called terminal answers the phone.

[0162] In this embodiment of the application, after the called terminal goes off-hook, the terminal A call center applet automatically starts, triggering the establishment of an ADC between terminal A and the call center.

[0163] In this embodiment, ADC is an application-specific DC channel established by a certain application / mini-program, which only transmits interactive data related to that application / mini-program.

[0164] It should be noted that the called terminal's answering time involves 200 OK messages and ACK messages.

[0165] Step 413: Terminal A automatically loads the call center mini-program.

[0166] In this embodiment of the application, terminal A automatically loads the call center applet and triggers the establishment of an ADC between terminal A and the call center.

[0167] Step 414: Terminal A sends a re-INVITE request to VoLTE AS.

[0168] In this embodiment of the application, the re-INVITE request carries audio call information (a), video call information (v), guide data channel (bdc) information, and adc information.

[0169] Step 415: The VoLTE AS sends a call event notification to the VoNR+ capability network element.

[0170] The call event notification is used to negotiate and establish an ADC between terminal A and the call center. The call event notification message includes the call event notification itself.

[0171] Step 416: The VoNR+ capability network element sends a call event notification (first call event notification message) to the call center.

[0172] Among them, the call event notification is used to establish an ADC between terminal A and the call center.

[0173] Step 417: The call center sends a call event control message to the VoNR+ capability network element (i.e., obtains the first call control message sent by the first terminal device based on the first address).

[0174] In this embodiment, the call center associates the callurl in the call event notification with the current call and controls the VoNR+ capability network element to complete the ADC negotiation of the call center applet.

[0175] Step 418: The VoNR+ capability network element sends call event control to the VoLTE AS.

[0176] In this embodiment of the application, the call event notification message includes call event control.

[0177] Step 419: VoLTE AS forwards the re-INVITE request to the call center.

[0178] Step 420: The call center sends a 200 OK message to the VoLTE AS.

[0179] Step 421: VoLTE AS sends 200 OK to terminal A.

[0180] Step 422: Terminal A sends an ACK to VoLTE AS.

[0181] Step 423: VoLTE AS sends an ACK to the call center.

[0182] Step 424: The VoLTE AS sends a call control result notification to the VoNR+ capability network element.

[0183] Step 425: The VoNR+ capability network element sends a call control result notification to the call center (i.e., sends a call event control result notification message based on the second address).

[0184] Step 426: Transmit interactive data.

[0185] In this embodiment, terminal A sends / receives interactive data with the call center via the ADC channel. The VoNR+ media plane is responsible for forwarding the interactive data within the ADC to the call center, and also supports sending data sent from the call center to the terminal via the ADC.

[0186] Step 427: Terminal A presents interactive information.

[0187] In this embodiment, terminal A displays content based on the data in ADC.

[0188] Example 2, see Figure 5 The specific steps are as follows:

[0189] It should be noted that the first network device is the VoLTE AS in network A, the second network device is the VoNR+ capability network element in network A, the second terminal device is terminal A, and the first terminal device is terminal B, which constitutes the first node of the communication service platform. Network A also includes the Service Call Session Control Function / Call Session Control Function (I / S-CSCF) and the VoNR+ media plane. Network B includes the Unified Virtual Switch (Centrex) and the Fixed Network Session Border Controller (ISBC).

[0190] Step 501: Terminal B sends an INVITE request to VoLTE AS in network A through network B.

[0191] Among them, the guiding data channel information is used to transmit pre-processing data services, such as obtaining a list of service applications / mini-programs that can use interactive call services in the current call through BDC.

[0192] The INVITE request is used to instruct the communication service platform to dial terminal A; the INVITE request includes audio call information (a), video call information (v), and guide data channel (bdc) information.

[0193] Step 502: The VoLTE AS sends an INVITE call event notification to the VoNR+ capability network element (obtaining a call event notification message related to the first call from the first network device).

[0194] The call event notification includes the calling number and the called number.

[0195] Step 503: The VoNR+ capability network element determines, according to the first rule, whether terminal A supports DC capability and whether the peer number of terminal A is a non-landline number; if it is determined that terminal A supports DC capability and the peer number of terminal A is a non-landline number, proceed to step 504.

[0196] Step 504: The VoNR+ capability network element sends a feedback message to the VoLTE AS.

[0197] Furthermore, the VoLTE AS receives feedback messages.

[0198] The feedback message is used for call event control; the call event control creates a BDC, adds the x-vonr-plus-info extension header field to carry service association information when forwarding the terminal A183 response, and deletes m lines of DC information in the 183 response; m is a positive integer.

[0199] Here, the service association information includes at least one of the following: VoNR+ capability element address and call identifier (callurl).

[0200] Step 505: VoLTE AS forwards the INVITE request to terminal A.

[0201] The INVITE request includes audio call information (a), video call information (v), and guide data channel (bdc) information.

[0202] Step 506: Terminal A sends a 183 response to VoLTE AS.

[0203] Furthermore, the VoLTE AS received a 183 response.

[0204] The 183 response includes audio call information (a), video call information (v), and guide data channel (bdc) information.

[0205] Step 507: The VoLTE AS forwards a 183 response carrying service association information according to the call control policy.

[0206] In this embodiment of the application, the VoLTE AS forwards the 183 response carrying service association information according to the call control policy in step 504.

[0207] Here, the VoLTE AS forwards a 183 response carrying service association information (the first network device sends a session negotiation message carrying first information to the first terminal device).

[0208] In this embodiment of the application, the VoLTE AS can supplement and extend the header field of the 183 response and add service association information to the header field.

[0209] Step 508: VoLTE AS communicates with network B and forwards the 183 response to terminal B.

[0210] In this embodiment, the 183 message carries audio information, video information, bdc, supplementary extended header fields, and adds service association information.

[0211] It should be noted that in steps 501 to 508, the communication service platform initiates a call to terminal A and sends an INVITE request without carrying DC-related media negotiation information. Upon receiving the INVITE request, the VoLTE AS reports a call event notification. The VoNR+ capability network element determines that terminal A supports DC capability and that the peer number is not a fixed-line number, and instructs the VoLTE AS to perform the following operations: create a bdc, add an x-vonr-plus-info extended header field to carry service association information when forwarding terminal A's 183 response, and delete the DC information in line m of the 183 response.

[0212] Step 509: Terminal B, i.e. the first node of the communication service platform, obtains the address of the VoNR+ capability network element that handles the call based on the X-Vonr-Plus-Info extended header field in the 183 response, and initiates a service association request to the VoNR+ capability network element (i.e., sends a service association request carrying the second information to the first network device).

[0213] It should be noted that the service is associated with the call URL and the callback address of the communication service platform.

[0214] Step 510: Terminal A, VoNR+ media plane, VoNR+ capability network element, VoLTE AS, I / S-CSCF, Unified Centrex, Fixed network ISBC, and Terminal B continue to complete audio and video call negotiation.

[0215] It should be noted that continuing to complete the audio and video call negotiation includes the second network device sending a first call event notification message according to the second rule and the second address, obtaining a first call control message sent by the first terminal device according to the first address of the second network device, and sending a call event control result message according to the second address of the first network device.

[0216] Step 511: Terminal A downloads the bootloader and the list of mini-programs via bdc.

[0217] Step 512: After the mini-program is loaded, it communicates with the communication service platform through the call service mini-program.

[0218] Example 3, see Figure 6 The specific steps are as follows:

[0219] It should be noted that the first network device and the second network device are the same device, namely IMS network A element, the second terminal device is terminal A, and the first terminal device is terminal B, which is the first node of the communication service platform.

[0220] Step 601: Terminal A sends an INVITE request to IMS network element A.

[0221] The INVITE request is based on the SIP protocol; the INVITE request includes audio call information (a), video call information (v), and guide data channel (bdc) information.

[0222] Among them, the guiding data channel information is used to transmit pre-processing data services, such as obtaining a list of service applications / mini-programs that can use interactive call services in the current call through BDC.

[0223] Step 602: IMS network element A determines, according to the first rule, whether the INVITE request needs to be supplemented with service association information; if it is determined that the INVITE request needs to be supplemented with service association information, proceed to step 603.

[0224] Step 603: IMS network element A forwards the INVITE request to terminal B (sends a session negotiation message carrying first information to the first terminal device).

[0225] The INVITE request includes audio call information (a), video call information (v), and bootstrap data channel (bdc) information, as well as service association information.

[0226] In this embodiment of the application, the IMS network A element can supplement and extend the header field of the INVITE request, and add service association information to the header field.

[0227] In this embodiment of the application, the service association information includes at least one of the following: IMS network A element address and / or call identifier (callurl).

[0228] Step 604: Terminal B sends a service association request to the IMS network A element (sends a service association request carrying the second information to the first network device).

[0229] The service association request includes a call identifier (callurl) and the callback address of terminal B.

[0230] Step 605: Terminal A, Terminal B, IMS Network A element, and IMS Network B element continue to complete the subsequent call negotiation process.

[0231] In this embodiment of the application, the call negotiation process includes terminal A and terminal B establishing an audio and video call.

[0232] In this embodiment of the application, the call negotiation process involves PRACK message, PRACK 200 message, UPDATE message, UPDATE 200 message, 183 message, and INVITE 200 message.

[0233] Step 606: Terminal A sends a re-INVITE request to the IMS network A element.

[0234] In this embodiment of the application, the re-INVITE request is based on the SIP protocol and is used to make a DC negotiation request; the re-INVITE request includes audio call information (a), video call information (v), guide data channel (bdc) information and adc information.

[0235] In this embodiment, ADC is an application-specific DC channel established by a certain application / mini-program, which only transmits interactive data related to that application / mini-program.

[0236] Step 607: IMS network element A forwards the re-INVITE request to terminal B.

[0237] Here, the re-INVITE message is based on the SIP protocol.

[0238] Step 608: IMS network element A sends a call event notification to terminal B via the HTTP protocol.

[0239] In this embodiment of the application, the call event notification carries a call identifier (callurl).

[0240] Step 609: Terminal B sends a call event control to IMS network A via the HTTP protocol.

[0241] Step 610: Terminal B sends a 200 OK message to IMS network A through IMS network element B.

[0242] Step 611: IMS network element A sends a 200 OK message to terminal A.

[0243] Step 612: Terminal A sends an ACK message to IMS network element A.

[0244] Step 613: IMS network element A sends an ACK message to terminal B through IMS network element B.

[0245] Step 614: Terminal A establishes a DTLS / SCTP connection with the IMS network A element.

[0246] Furthermore, file transfer is achieved between terminal A and IMS network A via DC, and data forwarding between IMS network A and the service platform is achieved via HTTP protocol.

[0247] Embodiments of this application provide a first network device, which can be used to implement... Figure 3 A corresponding embodiment provides a message processing method, referring to... Figure 7As shown, the first network device 70 includes:

[0248] The first sending module 701 is used to send a session negotiation message carrying first information to the first terminal device during the first call; wherein the first information is used to associate the session negotiation message related to the first call and / or the call event notification message; the first call is used to establish a media session between the first terminal device and the second terminal device.

[0249] In other embodiments of this application, the first processing module 702 is used to determine whether to add first information to the session negotiation message according to a first rule.

[0250] In other embodiments of this application, the first information includes at least one of the following: the first address of the second network device; the identifier of the first call.

[0251] In other embodiments of this application, there is a mapping relationship between the first address and the first call; if the mapping relationship is a unique correspondence, the unique identifier of the first call includes the first address.

[0252] In other embodiments of this application, the first information includes first indication information; wherein the first indication information is used to indicate whether the first network device belongs to the calling network or to indicate whether the first network device belongs to the called network.

[0253] In other embodiments of this application, the session negotiation message includes audio / video call media negotiation information; the session negotiation message includes at least one of the following: a session initiation protocol invitation message; a session initiation protocol 183 message.

[0254] In other embodiments of this application, the first rule is indicated to the first network device by the second network device; or, the first rule is configured on the first network device.

[0255] In other embodiments of this application, the first terminal device includes at least one of the following: a Session Initiation Protocol soft terminal; an Internet Protocol Multimedia Subsystem fixed-line terminal; and a first node in a communication service platform.

[0256] The descriptions of the above device embodiments are similar to those of the above method embodiments, and have similar beneficial effects. For technical details not disclosed in the device embodiments of this application, please refer to the descriptions of the method embodiments of this application for understanding.

[0257] It should be noted that, in the embodiments of this application, if the above-described message processing method is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a terminal device to execute all or part of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, mobile hard drives, read-only memory (ROM), magnetic disks, or optical disks. Thus, the embodiments of this application are not limited to any specific hardware and software combination.

[0258] Embodiments of this application provide a second network device that can be used for Figure 3 A corresponding embodiment provides a message processing method, referring to... Figure 8 As shown, the second network device 80 includes:

[0259] The second acquisition module 801 is used to acquire, based on the first address of the second network device, a service association request carrying second information sent by the first terminal device.

[0260] In other embodiments of this application, the second information includes at least one of the following: the second address of the first terminal device; the identifier of the first call; or the first address of the second network device.

[0261] In other embodiments of this application, the second information further includes second indication information; the indication bit of the second indication information includes a first value; the first value is used to instruct the second network device to send a first call event notification message according to the second rule and the second address; wherein, the second rule is used to instruct the second network device whether to send the first call event notification message to the first terminal device; the first call event notification message is used to instruct to negotiate a first data channel with the second terminal device; the first data channel is used to transmit interactive data between the first terminal device and the second terminal device.

[0262] In other embodiments of this application, the indication bit of the second indication information further includes a second value; the second value is used to instruct the second network device to forward the interactive data sent by the second terminal device to the first terminal device through the first interface.

[0263] In other embodiments of this application, the indication bit of the second indication information further includes a third value; the third value is used to instruct the second network device to send a first call event notification message according to the second rule and the second address, and the second network device to forward the interactive data sent by the second terminal device to the first terminal device through the first interface.

[0264] In other embodiments of this application, the second rule is subscribed to by the first terminal device through a call event; or, the second rule is signed up by the first terminal device through a service contract; or, the second rule is proposed by the first terminal device to the second network device through a target method.

[0265] Alternatively, the second rule is indicated by the first or third value included in the indication bit of the second indication information.

[0266] In other embodiments of this application, the first call event notification message includes a unique identifier of the first call.

[0267] In other embodiments of this application, the second processing module 802 is used to determine whether to send a first call event notification message to the second address according to a second rule.

[0268] In other embodiments of this application, the second acquisition module 801 is used to acquire a call event notification message related to the first call from the first network device; wherein the call event notification message is used to indicate the session negotiation message currently being processed by the call.

[0269] In other embodiments of this application, the second acquisition module 801 is used to acquire a first call control message sent by the first terminal device according to the first address; wherein, the first call control message is used to instruct the second network device to trigger the first network device to complete data channel negotiation with the second terminal device;

[0270] The second sending module 803 is further configured to send a call event control result notification message according to the second address; wherein the call event control result notification message is used to indicate whether data channel negotiation has been completed.

[0271] In other embodiments of this application, the second network device and the first network device are two independent devices connected to each other; or, the second network device and the first network device are the same device.

[0272] The descriptions of the above device embodiments are similar to those of the above method embodiments, and have similar beneficial effects. For technical details not disclosed in the device embodiments of this application, please refer to the descriptions of the method embodiments of this application for understanding.

[0273] It should be noted that, in the embodiments of this application, if the above-described message processing method is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a terminal device to execute all or part of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, mobile hard drives, ROMs, magnetic disks, or optical disks. Thus, the embodiments of this application are not limited to any specific hardware and software combination.

[0274] Embodiments of this application provide a first terminal device, which can be used to implement... Figure 3 A corresponding embodiment provides a message processing method, referring to... Figure 9 As shown, the first terminal device 90 includes:

[0275] The third receiving module 901 is used to receive a session negotiation message carrying first information sent by the first network device during the first call; wherein the first information is used to associate the session negotiation message related to the first call and / or the call event notification message; the first call is used to establish a media session between the first terminal device and the second terminal device.

[0276] The third sending module 902 is used to send a service association request carrying second information to the second network device.

[0277] The descriptions of the above device embodiments are similar to those of the above method embodiments, and have similar beneficial effects. For technical details not disclosed in the device embodiments of this application, please refer to the descriptions of the method embodiments of this application for understanding.

[0278] It should be noted that, in the embodiments of this application, if the above-described message processing method is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a terminal device to execute all or part of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, mobile hard drives, ROMs, magnetic disks, or optical disks. Thus, the embodiments of this application are not limited to any specific hardware and software combination.

[0279] Figure 10This is a schematic structural diagram of a communication device 1000 provided in an embodiment of this application. The communication device can be a first terminal device, a first network device, or a second network device. Figure 10 The communication device 1000 shown includes a first processor 1010, which can call and run computer programs from memory to implement the methods in the embodiments of this application.

[0280] Optionally, such as Figure 10 As shown, the communication device 1000 may further include a first memory 1020. The first processor 1010 can call and run computer programs from the first memory 1020 to implement the methods in the embodiments of this application.

[0281] The first memory 1020 can be a separate device independent of the first processor 1010, or it can be integrated into the first processor 1010.

[0282] Optionally, such as Figure 10 As shown, the communication device 1000 may also include a transceiver 1030. The first processor 1010 can control the transceiver 1030 to communicate with other devices. Specifically, it can send information or data to other devices or receive information or data sent by other devices.

[0283] The transceiver 1030 may include a transmitter and a receiver. The transceiver 1030 may further include an antenna, and the number of antennas may be one or more.

[0284] Optionally, the communication device 1000 may specifically be a second network device in the embodiments of this application, and the communication device 1000 may implement the corresponding processes implemented by the second network device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.

[0285] Optionally, the communication device 1000 may specifically be the first network device in the embodiments of this application, and the communication device 1000 may implement the corresponding processes implemented by the first network device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.

[0286] Optionally, the communication device 1000 may specifically be the first terminal device in the embodiments of this application, and the communication device 1000 may implement the corresponding processes implemented by the first terminal device in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.

[0287] It should be understood that the processor in the embodiments of this application may be an integrated circuit chip with signal processing capabilities. In implementation, the steps of the above method embodiments can be completed by integrated logic circuits in the processor's hardware or by instructions in software form. The processor described above can be a general-purpose processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly embodied in the execution of a hardware decoding processor, or executed by a combination of hardware and software modules in the decoding processor. The software modules can be located in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps of the above method.

[0288] As one embodiment, the processor may include one or more general-purpose central processing units (CPUs). Each of these processors may be a single-core processor or a multi-core processor. Here, "processor" may refer to one or more devices, circuits, and / or processing cores used for processing data (e.g., executing instructions).

[0289] It is understood that the memory in the embodiments of this application can be volatile memory or non-volatile memory, or may include both volatile and non-volatile memory. The non-volatile memory can be ROM, Programmable Read-Only Memory (PROM), Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), or flash memory. The volatile memory can be Random Access Memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchlink DRAM (SLDRAM), and Direct Rambus RAM (DR RAM). It should be noted that the memory used in the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0290] It should be understood that the above-described memory is exemplary and not a limiting description. For example, the memory in the embodiments of this application may also be static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus RAM (DR RAM), etc. That is to say, the memory in the embodiments of this application is intended to include, but is not limited to, these and any other suitable types of memory.

[0291] This application also provides a computer-readable storage medium for storing computer programs.

[0292] Optionally, the computer-readable storage medium can be applied to the network device / first terminal in the embodiments of this application, and the computer program causes the computer to execute the corresponding processes implemented by the network device / first terminal in the various methods of the embodiments of this application. For the sake of brevity, it will not be described in detail here.

[0293] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product.

[0294] A computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions may be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a server or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state drives (SSDs)).

[0295] The message processing method, first network device, second network device, first terminal device, and computer-readable storage medium provided in the embodiments of this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are only for the purpose of helping to understand the methods and core ideas of this application. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this application. Therefore, the content of this specification should not be construed as a limitation of this application.

[0296] It should be understood that the phrases "an embodiment," "an embodiment," "an embodiment of this application," "the foregoing embodiment," "some implementations," or "some embodiments" mentioned throughout the specification mean that a specific feature, structure, or characteristic related to the embodiment is included in at least one embodiment of this application. Therefore, the phrases "an embodiment," "an embodiment," "an embodiment of this application," "the foregoing embodiment," "some implementations," or "some embodiments" appearing throughout the specification do not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. It should be understood that in the various embodiments of this application, the sequence numbers of the above-described processes do not imply a sequential order of execution; the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application. The sequence numbers of the above-described embodiments of this application are merely descriptive and do not represent the superiority or inferiority of the embodiments.

[0297] Unless otherwise specified, any step performed by the first terminal device / first network device / second network device in the embodiments of this application may be executed by the processor of the first terminal device / first network device / second network device. Unless otherwise specified, the embodiments of this application do not limit the order in which the first terminal device / first network device / second network device performs the following steps. Furthermore, the methods used to process data in different embodiments may be the same or different methods.

[0298] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.

[0299] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units. They may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.

[0300] In addition, each functional unit in the various embodiments of this application can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.

[0301] The methods disclosed in the several method embodiments provided in this application can be arbitrarily combined without conflict to obtain new method embodiments.

[0302] The features disclosed in the several product embodiments provided in this application can be arbitrarily combined without conflict to obtain new product embodiments.

[0303] The features disclosed in the several method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain new method or device embodiments.

[0304] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media that can store program code, such as mobile storage devices, ROMs, magnetic disks, or optical disks.

[0305] Alternatively, if the integrated units described above are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer storage medium. Based on this understanding, the technical solutions of the embodiments of this application, or the parts that contribute to related technologies, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROMs, magnetic disks, or optical disks.

[0306] The singular forms “a,” “the,” and “the” used in the embodiments of this application and the appended claims are also intended to include the plural forms, unless the context clearly indicates otherwise.

[0307] It should be noted that in the various embodiments involved in this application, all steps or some steps may be performed, as long as a complete technical solution can be formed.

[0308] The above description is merely an embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A message processing method characterized by, The method is applied to a first network device, and the method comprises: In a first call process, a session negotiation message carrying first information is sent to a first terminal device; The first information is used for associating a session negotiation message and / or a call event notification message related to the first call; the first call is used for establishing a media session between the first terminal device and a second terminal device; and the first terminal device sends a service association request carrying second information to a second network device according to the first information.

2. The method of claim 1, wherein, The method further comprises: According to a first rule, it is determined whether the first information is added in the session negotiation message.

3. The method of claim 1, wherein, The first information comprises at least one of the following: A first address of the second network device; An identifier of the first call.

4. The method of claim 3, wherein, There is a mapping relationship between the first address and the first call; if the mapping relationship is a unique correspondence relationship, a unique identifier of the first call comprises the first address.

5. The method of claim 1, wherein, The first information comprises first indication information; the first indication information is used for indicating whether the first network device belongs to a calling network or whether the first network device belongs to a called network.

6. The method of claim 1, wherein, The session negotiation message comprises audio and video call media negotiation information; and the session negotiation message comprises at least one of the following: A session initiation protocol invitation message; A session initiation protocol 183 message.

7. The method of claim 2, wherein, The first rule is indicated by the second network device to the first network device; Or, The first rule is configured on the first network device.

8. The method of claim 1, wherein, The first terminal device comprises at least one of the following: A session initiation protocol soft terminal; An Internet Protocol Multimedia Subsystem fixed terminal; A communication service platform or a first node in the communication service platform.

9. A message processing method characterized by, The method is applied to a second network device, and the method comprises: According to a first address of the second network device, a service association request carrying second information sent by a first terminal device is acquired; in a first call process, a first network device sends a session negotiation message carrying first information to the first terminal device; the first information is used for associating a session negotiation message and / or a call event notification message related to the first call; the first call is used for establishing a media session between the first terminal device and a second terminal device; and the first information comprises the first address.

10. The method of claim 9, wherein, The second information comprises at least one of the following: A second address of the first terminal device; An identifier of the first call or the first address of the second network device.

11. The method of claim 9, wherein, The second information further comprises second indication information; an indication bit of the second indication information comprises a first value; The first value is used for indicating that the second network device sends a first call event notification message according to a second rule and the second address; the second rule is used for indicating whether the second network device sends the first call event notification message to the first terminal device; the first call event notification message is used for indicating that a first data channel is negotiated with the second terminal device; and the first data channel is used for transmitting interactive data between the first terminal device and the second terminal device.

12. The method of claim 11, wherein, The indication bit of the second indication information further comprises a second value; The second value is used to instruct the second network device to forward interaction data sent by the second terminal device to the first terminal device through the first interface.

13. The method of claim 11, wherein, The indication bit of the second indication information further includes a third value. The third value is used to instruct the second network device to send a first call event notification message according to a second rule and a second address, and the second network device to forward interaction data sent by the second terminal device to the first terminal device through the first interface.

14. The method of claim 13, wherein, The second rule is subscribed by the first terminal device through a call event. Or, The second rule is subscribed by the first terminal device through a service. Or, The second rule is proposed by the first terminal device to the second network device through a target mode. Or, The second rule is indicated according to the first value or the third value included in the indication bit of the second indication information.

15. The method of claim 11, wherein, The first call event notification message includes a unique identifier of the first call.

16. The method of claim 11, wherein, The method further includes: According to the second rule, determining whether to send the first call event notification message to the second address.

17. The method of claim 9, wherein, The method further includes: Obtaining a call event notification message related to the first call from the first network device; wherein the call event notification message is used to indicate that a session negotiation message is currently being processed.

18. The method of claim 9, wherein, The method further includes: According to the first address, obtaining a first call control message sent by the first terminal device; wherein the first call control message is used to instruct the second network device to trigger the first network device to complete data channel negotiation with the second terminal device. According to the second address, sending a call event control result notification message; wherein the call event control result notification message is used to indicate whether the data channel negotiation is completed.

19. The method of claim 9, wherein, The second network device and the first network device are two independent devices connected to each other. Or, The second network device and the first network device are the same device.

20. A message processing method, characterized by, Applied to the first terminal device, the method includes: During the first call process, receiving a session negotiation message carrying first information sent by the first network device; wherein the first information is used to associate session negotiation messages and / or call event notification messages related to the first call; and the first call is used to establish a media session between the first terminal device and the second terminal device. Sending a service association request carrying second information to the second network device.

21. A first network device, comprising: The first network device includes: A first memory for storing executable instructions; A first processor for executing the executable instructions stored in the first memory, realizing the message processing method of any one of claims 1 to 8.

22. A second node, comprising: The second network device includes: A second memory for storing executable instructions; A second processor for executing the executable instructions stored in the second memory, realizing the message processing method of any one of claims 9 to 19.

23. A first terminal device, comprising: The first terminal device includes: A third memory for storing executable instructions; A third processor for executing the executable instructions stored in the third memory, realizing the message processing method of claim 20.

24. A computer-readable storage medium, characterized in that, The computer readable storage medium stores one or more programs, which can be executed by one or more processors to implement the message processing method according to any one of claims 1-8 or 9-19 or 20. The computer readable storage medium stores one or more programs, which can be executed by one or more processors to implement the message processing method according to any one of claims 1-8 or 9-19 or 20.

Citation Information

Patent Citations

  • User facility, voice call continuous application server and network switch method

    CN101141794A

  • QoS bearer resource control method and system in access negotiation and release

    CN103685200A