Session processing method and apparatus, and device, storage medium and program product
By sending SDP proposals and responses containing the data channel application identifier in the IMS session, the problem of IMS session failure is resolved, and the user's real-time communication experience is improved.
Patent Information
- Application Number
- PCT/CN2025/091775
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-16
- Filing Date
- 2025-04-28
- Publication Date
- 2026-01-22
AI Technical Summary
When a UE initiates a request for a standalone DC application data channel session, but the peer UE has not downloaded the standalone DC application, the IMS session based on the standalone DC is prone to failure.
The calling terminal device sends a first SDP proposal containing the data channel application identifier. After receiving a non-download response, it sends a second SDP proposal through the core network equipment to update the application data channel media information until the peer UE completes the application download.
This effectively resolves the issue of IMS session failure caused by the peer UE not downloading the independent data channel application, thus improving the user's IMS real-time communication experience.
Smart Images

Figure CN2025091775_22012026_PF_FP_ABST
Abstract
Description
Session processing method, device, equipment, storage medium and program product
[0001] Related applications
[0002] The present application claims priority to the Chinese patent application No. 2024109504229, filed on July 16, 2024, and entitled "Session processing method, device, equipment, storage medium and program product", the contents of which are hereby incorporated by reference in its entirety. TECHNICAL FIELD
[0003] The present application relates to the field of communication technology, in particular to a session processing method, device, equipment, storage medium and program product. BACKGROUND
[0004] The real-time communication technology of the next generation IP Multimedia Subsystem (IMS) network is the focus of the research of the 3rd Generation Partnership Project (3GPP) R19 (Release 19), and the goal of R19 is that the real-time communication based on the Data Channel (DC) can be implemented without relying on the traditional Voice over New Radio (VoNR) / Voice over Long Term Evolution (VoLTE) call, that is, an independent DC application download, DC application list update and DC application version update can be established between the terminal and the network for the DC application. An independent application data channel can be established between the terminal and the network or between the terminals to realize the transmission and interaction of data or messages between DC applications.
[0005] The related research report proposes related application scenarios, solutions and session processes for real-time communication based on independent data channels. However, in some special scenarios, such as the scenario where one UE (User Equipment) initiates an independent DC application data channel session request, but the opposite UE does not download the independent DC application, the IMS real-time communication service based on the independent DC will fail.
[0006] Therefore, how to solve the problem of IMS session failure based on independent DC in the scenario where the opposite UE does not download the independent DC has become a problem to be solved. SUMMARY
[0007] The embodiments of the present application provide a session processing method, device, equipment, storage medium and program product.
[0008] In a first aspect, the present application provides a session processing method applied to a called terminal device, the method comprising:
[0009] receiving a first SDP offer of a calling UE for an initial session, the first SDP offer containing an identifier of a data channel application;
[0010] sending a first SDP answer when it is determined at the local end that the data channel application is not downloaded, the first SDP answer containing information that the data channel application is not downloaded at the local end;
[0011] receiving a second SDP offer of the calling UE for updating the data channel media information of the same session, the second SDP offer containing the identifier of the data channel application;
[0012] sending a second SDP answer.
[0013] In one of the embodiments, the first SDP offer contains a set of guided data channel media information and application data channel media information, and the application data channel media information contains the identifier of the data channel application.
[0014] In one of the embodiments, the second SDP offer contains the application data channel media information, and the application data channel media information contains the identifier of the data channel application.
[0015] In one of the embodiments, the information that the data channel application is not downloaded at the local end contained in the first SDP answer includes at least one of the following: an application port value of the application data channel media information is 0 or null; information indicating that the data channel application is not downloaded at the local end is added in the application data channel media information; first timer information.
[0016] In one of the embodiments, the application port value of the application data channel media information being 0 or null includes that an SCTP port value of the application data channel media information is 0 or null.
[0017] In one of the embodiments, the receiving of the first SDP offer of the calling UE for the initial session includes receiving a SIP INVITE message forwarded by a second IP multimedia subsystem application server, the SIP INVITE message carrying the first SDP offer.
[0018] In one of the embodiments, after the receiving of the first SDP offer of the calling UE for the initial session, the method further includes that the called UE downloads the data channel application after the guided data channel is established.
[0019] In one of the embodiments, the called UE downloads the data channel application after the establishment of the pilot data channel, including: after the called UE establishes the media information channel of the pilot data channel with the first media function, the called UE downloads the data channel application to the first data channel signaling function.
[0020] In one of the embodiments, the called UE downloads the data channel application after the establishment of the pilot data channel, including: after the called UE establishes the media information channel of the pilot data channel with the second media function, the called UE downloads the data channel application to the second data channel signaling function.
[0021] In one of the embodiments, when the second SDP offer is received, if the data channel application has been downloaded, the application port value of the application data channel media information in the second SDP answer sent is updated to a normal value.
[0022] In one of the embodiments, when the second SDP offer is received, if the data channel application has been downloaded, the application port value of the application data channel media information in the second SDP answer sent is updated to a normal value.
[0023] In one of the embodiments, when the second SDP offer is received, if the data channel application has not been downloaded, the second SDP answer sent carries information indicating that the data channel application has not been downloaded.
[0024] In one of the embodiments, the first SDP offer is carried by a SIP INVITE message, and the first SDP answer is carried by a SIP 200 OK message.
[0025] In one of the embodiments, the second SDP offer is carried by a SIP re-INVITE or UPDATE message, and the second SDP answer is carried by a SIP 200 OK message.
[0026] In a second aspect, the application provides a session processing method, applied to a calling UE, including:
[0027] sending a first SDP offer for an initial session; the first SDP offer containing an identifier of a data channel application;
[0028] receiving a first SDP answer of the called UE; when the called UE determines that the data channel application has not been downloaded, the first SDP answer containing information that the data channel application has not been downloaded;
[0029] sending a second SDP offer for updating application data channel media information for the same session; the second SDP offer containing the identifier of the data channel application;
[0030] receiving a second SDP answer of the called UE.
[0031] In one of the embodiments, the first SDP offer contains a set of guiding data channel media information and application data channel media information; the application data channel media information contains an identification of a data channel application.
[0032] In one of the embodiments, the second SDP offer contains application data channel media information; the application data channel media information contains an identification of a data channel application.
[0033] In one of the embodiments, the information of the local non-downloaded data channel application contained in the first SDP answer includes at least one of the following: an application port value of the application data channel media information is 0 or null; information indicating the local non-downloaded data channel application is added in the application data channel media information; first timer information.
[0034] In one of the embodiments, the application port value of the application data channel media information being 0 or null includes: an SCTP port value of the application data channel media information being 0 or null.
[0035] In one of the embodiments, the method further includes: if the received first SDP answer of the called UE contains the first timer information, the calling UE starts the first timer; if the first SDP answer of the called UE does not contain the first timer information, the calling UE starts the second timer.
[0036] In one of the embodiments, the sending of the second SDP offer containing updated application data channel media information for the same session includes: if the first timer expires or the second timer expires, the sending of the second SDP offer containing updated application data channel media information for the same session.
[0037] In one of the embodiments, the method further includes: if the received second SDP answer of the called UE carries information of the local non-completed downloaded application data application, the calling UE sends a SIP BYE message.
[0038] In one of the embodiments, the sending of the second SDP offer containing updated application data channel media information for the same session includes: periodically sending the second SDP offer containing updated application data channel media information for the same session.
[0039] In one of the embodiments, the method further includes: if the received second SDP answer from the called UE carries information of the local non-completed downloaded application data application, a SIP BYE message is sent in the case that the number of times of sending the second SDP offer containing updated application data channel media information for the same session reaches a set number of times.
[0040] In one of the embodiments, the method further comprises: if the second SDP answer from the called UE does not carry the information of the local unfinished downloading application data application program, establishing an independent application data channel with the called UE.
[0041] In one of the embodiments, the method further comprises: after the calling UE establishes the media information channel of the pilot data channel with the first media function, updating the data channel application program list.
[0042] In one of the embodiments, the first SDP offer is carried by a SIP INVITE message, and the first SDP answer is carried by a SIP 200 OK message.
[0043] In one of the embodiments, the second SDP offer is carried by a SIP re-INVITE or UPDATE message, and the second SDP answer is carried by a SIP 200 OK message.
[0044] In a third aspect, the application provides a session processing method, applied to a core network, the method comprising:
[0045] receiving a first SDP offer of a calling UE for an initial session, and forwarding to a called UE; the first SDP offer containing the identification of a data channel application program;
[0046] receiving a first SDP answer of the called UE, and forwarding to the calling UE; when the called UE determines not to download the data channel application program, the first SDP answer containing the information of the local unfinished downloading data channel application program;
[0047] receiving a second SDP offer of the calling UE for updating the media information of the application data channel of the same session, and forwarding to the called UE; the second SDP offer containing the identification of the data channel application program;
[0048] receiving a second SDP answer of the called UE, and forwarding to the calling UE.
[0049] In one of the embodiments, the first SDP offer contains a set of pilot data channel media information and application data channel media information; the application data channel media information contains the identification of the contained data channel application program.
[0050] In one of the embodiments, the second SDP offer contains the application data channel media information; the application data channel media information contains the identification of the data channel application program.
[0051] In one of the embodiments, the information about the local non-downloaded application of the data channel in the first SDP answer includes at least one of the following: the application port value of the application data channel media information is 0 or null; information indicating the local non-downloaded application of the data channel is added in the application data channel media information; and the first timer information.
[0052] In one of the embodiments, when the second SDP offer is received, if the called UE has not completed the download of the application of the data channel, the second SDP answer of the called UE carries the information about the local non-downloaded application of the data channel.
[0053] In one of the embodiments, when the second SDP offer is received, if the called UE has completed the download of the application of the data channel, the second SDP answer of the called UE does not carry the information about the local non-downloaded application of the data channel.
[0054] In one of the embodiments, when the second SDP offer is received, if the called UE has completed the download of the application of the data channel, the application port value in the application data channel media information in the second SDP answer of the called UE is updated to a normal value.
[0055] In one of the embodiments, the method further includes: when the second IP multimedia subsystem application server identifies that the first SDP answer of the called UE contains the information about the local non-downloaded application of the data channel, starting a third timer.
[0056] In one of the embodiments, the method further includes: when the third timer ends and the second SDP answer of the called UE without carrying the information about the local non-downloaded application of the data channel is not received, the second IP multimedia subsystem application server informs the second media function to delete the data channel information reserved for the called UE.
[0057] In one of the embodiments, the method further includes: the first media function establishes a media information channel for guiding the data channel with the calling UE to update the list of the application of the data channel of the calling UE; and / or, the second media function establishes a media information channel for guiding the data channel with the called UE to implement the download of the application of the data channel of the called UE.
[0058] In one of the embodiments, the first SDP offer is carried by a SIP INVITE message, and the first SDP answer is carried by a SIP 200 OK message.
[0059] In one of the embodiments, the second SDP offer is carried by a SIP re-INVITE or UPDATE message, and the second SDP answer is carried by a SIP 200 OK message.
[0060] In a fourth aspect, the present application provides a session processing apparatus applied to a called UE, the apparatus comprising:
[0061] a proposal receiving module configured to receive a first SDP proposal of a calling UE for an initial session, wherein the first SDP proposal comprises an identifier of the data channel application;
[0062] a response sending module configured to send a first SDP response when it is determined at the local end that the data channel application is not downloaded, wherein the first SDP response comprises information that the data channel application is not downloaded at the local end;
[0063] the proposal receiving module is further configured to receive a second SDP proposal of the calling UE for updating the application data channel media information for the same session, wherein the second SDP proposal comprises the identifier of the data channel application;
[0064] the response sending module is further configured to send a second SDP response.
[0065] In a fifth aspect, the present application provides a session processing apparatus applied to a calling UE, the apparatus comprising:
[0066] a proposal sending module configured to send a first SDP proposal for an initial session, wherein the first SDP proposal comprises an identifier of a data channel application;
[0067] a response receiving module configured to receive a first SDP response of a called UE, wherein the first SDP response comprises information indicating that the data channel application is not downloaded at the local end when it is determined at the called UE that the data channel application is not downloaded;
[0068] the proposal sending module is further configured to send a second SDP proposal for updating the application data channel media information for the same session, wherein the second SDP proposal comprises the identifier of the data channel application;
[0069] the response receiving module is further configured to receive a second SDP response of the called UE.
[0070] In a sixth aspect, the present application provides a session processing apparatus applied to a core network, the apparatus comprising:
[0071] a first receiving and forwarding module configured to receive a first SDP proposal of a calling UE for an initial session and forward to a called UE, wherein the first SDP proposal comprises an identifier of a data channel application;
[0072] a second receiving and forwarding module configured to receive a first SDP response of the called UE and forward to the calling UE, wherein the first SDP response comprises information that the data channel application is not downloaded at the local end when it is determined at the called UE that the data channel application is not downloaded;
[0073] The first receiving and forwarding module is further configured to receive a second SDP offer of the calling UE for updating application data channel media information of the same session, and forward the second SDP offer to the called UE; the second SDP offer contains the identification of the data channel application;
[0074] The second receiving and forwarding module is further configured to receive a second SDP answer of the called UE, and forward the second SDP answer to the calling UE.
[0075] In a seventh aspect, the present application provides a terminal device, comprising a transmitter and a receiver; wherein:
[0076] The receiver is configured to receive a first SDP offer of the calling UE for an initial session; the first SDP offer contains the identification of the data channel application;
[0077] The transmitter is configured to send a first SDP answer when it is determined at the local end that the data channel application is not downloaded; the first SDP answer contains information that the data channel application is not downloaded at the local end;
[0078] The receiver is further configured to receive a second SDP offer of the calling UE for updating application data channel media information of the same session; the second SDP offer contains the identification of the data channel application;
[0079] The transmitter is further configured to send a second SDP answer.
[0080] In an eighth aspect, the present application provides a terminal device, comprising a transmitter and a receiver; wherein:
[0081] The transmitter is configured to send a first SDP offer for an initial session; the first SDP offer contains the identification of the data channel application;
[0082] The receiver is configured to receive a first SDP answer of the called UE; the first SDP answer contains information that the data channel application is not downloaded at the local end when it is determined at the called UE that the data channel application contained in the first SDP offer is not downloaded;
[0083] The transmitter is further configured to send a second SDP offer for updating application data channel media information of the same session; the second SDP offer contains the identification of the data channel application;
[0084] The receiver is further configured to receive a second SDP answer of the called UE.
[0085] In a ninth aspect, the present application provides a core network device, comprising a transceiver; wherein:
[0086] The transceiver is configured to receive a first SDP offer of the calling UE for an initial session, and forward the first SDP offer to the called UE; the first SDP offer contains the identification of the data channel application;
[0087] The transceiver is further configured to receive a first SDP answer of the called UE and forward to the calling UE; the first SDP answer contains information of a local undownloaded data channel application when the called UE determines that the undownloaded data channel application is not downloaded;
[0088] The transceiver is further configured to receive a second SDP offer of the calling UE for updating application data channel media information of the same session and forward to the called UE; the second SDP offer contains an identification of the data channel application;
[0089] The transceiver is further configured to receive a second SDP answer of the called UE and forward to the calling UE.
[0090] In a tenth aspect, the present application further provides a computer readable storage medium, having stored thereon a computer program, which when executed by a processor, implements the steps of the method designed in any one of the first aspect to the third aspect.
[0091] In an eleventh aspect, the present application further provides a chip, comprising a programmable logic circuit and / or program instructions, which when executed by the chip, can execute the steps of the method designed in any one of the first aspect to the third aspect.
[0092] In a twelfth aspect, the present application further provides a computer program product, comprising a computer program, which when executed by a processor, implements the steps of the method designed in any one of the first aspect to the third aspect.
[0093] The details of one or more embodiments of the present application are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the present application will be apparent from the description and drawings, and from the claims. BRIEF DESCRIPTION OF DRAWINGS
[0094] In order to more clearly illustrate the technical solutions in the embodiments of the present application or in the prior art, the drawings needed to be used in the embodiments or the prior art description will be briefly introduced below. Obviously, the drawings in the following description are only embodiments of the present application, and other drawings can be obtained by those skilled in the art without any creative effort on the basis of the disclosed drawings.
[0095] FIG. 1 is a structural schematic diagram of a communication system provided by an embodiment of the present application;
[0096] FIG. 2 is a flow schematic diagram of a session processing method applied to a called terminal device provided by an embodiment of the present application;
[0097] FIG. 3 is a flow schematic diagram of a session processing method applied to a calling terminal device provided by an embodiment of the present application;
[0098] FIG. 4 is a flow diagram of a session processing method applied to a core network device according to an embodiment of the present application;
[0099] FIG. 5 is a flow diagram of a multi-terminal interactive session processing method according to an embodiment of the present application;
[0100] FIG. 6 is a flow diagram of another multi-terminal interactive session processing method according to an embodiment of the present application;
[0101] FIG. 7 is a flow diagram of still another multi-terminal interactive session processing method according to an embodiment of the present application;
[0102] FIG. 8 is a structural diagram of a session processing apparatus applied to a called terminal device according to an embodiment of the present application;
[0103] FIG. 9 is a structural diagram of a session processing apparatus applied to a called terminal device according to an embodiment of the present application;
[0104] FIG. 10 is a structural diagram of a session processing apparatus applied to a core network device according to an embodiment of the present application;
[0105] FIG. 11 is a structural diagram of a terminal device according to an embodiment of the present application;
[0106] FIG. 12 is a structural diagram of a core network device according to an embodiment of the present application. DETAILED DESCRIPTION
[0107] In order to make the objects, technical solutions and advantages of the present application clearer, the present application will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and should not be used to limit the present application.
[0108] Please refer to FIG. 1, which is a structural diagram of a communication system according to an embodiment of the present application. As shown in FIG. 1, the communication system includes a calling terminal device 101, a called terminal device 102 and a core network (also referred to as IMS network) 103. The calling terminal device 101 and the called terminal device 102 perform data transmission through the core network 103.
[0109] Optionally, the calling terminal device 101 and the called terminal device 102 can each be a wireless terminal, which can refer to a device that provides voice and / or other data connectivity to a user, or a hand-held device having a wireless connection function, or other processing device connected to a wireless modem. The wireless terminal can communicate with one or more core networks via a radio access network (RAN), and can be a mobile terminal, such as a mobile telephone (or "cell" phone) and a computer with a mobile termination, e.g., a portable, pocket, handheld, computer-embedded or car-mounted mobile apparatus that exchanges language and / or data with a radio access network. The wireless terminal can also be referred to as a system, a subscriber unit, a subscriber station, a mobile station, a mobile, a remote station, a remote terminal, an access terminal, a user terminal, a user agent, a user device or user equipment, without limitation.
[0110] 3GPP introduces IMS (IP Multimedia Subsystem) DC (Data Channel) in the relevant standard, and formally defines the Next Generation (NG) communication-Real-Time Communication (RTC) (referred to as NG-RTC) architecture in further standards, laying a protocol and standard foundation for new calls.
[0111] Compared with traditional voice and video calls, the intelligent high-definition and multi-dimensional interactive calls provided by the 5th-Generation (5G) new call upgrade the user's communication experience in all directions. Typical application scenarios include intelligent customer service, calling business card, interesting call, content sharing, screen sharing, etc. Among them, the 5G new call is based on the VoNR audio and video channel to carry the new IMS DC, and on the basis of high-definition audio and video calls, it synchronously transmits any multimedia information through the IMS DC, thereby upgrading the real-time call to a real-time interactive / immersive call.
[0112] Currently, the next generation of IMS network-based real-time communication technology is the focus of 3GPP related standard research, and the goal of the related standards is that the real-time communication based on DC can not rely on the traditional VoNR / voice over long term evolution (VoLTE) call implementation, that is, an independent guide data channel can be established between the terminal and the network for DC application download, DC application list update and DC application version update, etc.; an independent application data channel can be established between the terminal and the network or between the terminal and the terminal to realize the transmission and interaction of data or messages between DC applications.
[0113] The related standard research report proposes related application scenarios, solutions and session processes for real-time communication based on independent data channels. However, in some special scenarios, such as the scenario where one UE initiates an IMS session based on an independent DC application, but the opposite UE does not download the independent DC application, the IMS real-time communication service based on independent DC may fail.
[0114] Therefore, an embodiment of the present application provides an IMS session processing method and device, a communication device and a storage medium, wherein the method comprises: a calling terminal device sends a first SDP (Session Description Protocol) offer for an initial session to a called terminal device through a core network device, and correspondingly, the called terminal device receives the first SDP offer for the initial session, and the first SDP offer contains the identifier of a data channel application program; the called terminal device sends a first SDP answer to the calling terminal device through the core network device in the case of determining that the data channel application program is not downloaded, and correspondingly, the calling terminal device receives the first SDP answer, and the first SDP answer contains information that the called terminal device does not download the data channel application program; the calling terminal device sends a second SDP offer for updating application data channel media information for the same session to the called terminal device through the core network device, and correspondingly, the called terminal device receives the second SDP offer for updating application data channel media information for the same session, and the second SDP offer contains the identifier of the data channel application program; and the called terminal device sends a second SDP answer to the calling terminal device through the core network device, and correspondingly, the calling terminal device receives the second SDP answer. The calling terminal device can be understood as the initiating end of the IMS session, and the called terminal device can be understood as the opposite end corresponding to the initiating end. By using the method, the problem of IMS session failure based on independent data channels in the scenario where the called terminal device does not download the independent data channel application program can be effectively solved, and the user experience of IMS real-time communication service based on independent data channels can be improved.
[0115] It should be noted that the beneficial effects or technical problems solved by the embodiments of the present application are not limited to this one, but also other implicit or related problems. For details, please refer to the description of the following embodiments.
[0116] Before introducing the specific embodiments of the present application, the professional terms involved in the present application are explained:
[0117] 1、IMS(IP Multimedia Subsystem, IP Multimedia Subsystem): IMS is an IP-based network architecture, aiming to provide a variety of multimedia services, including voice, video, message, etc., usually used in telecommunications networks. The IMS architecture includes IMS Application Server (Application Server) (referred to as IMS-AS), Media Function (Media Function, MF) and DC signaling function (Data Channel Signal Function, DCSF).
[0118] Among them, IMS-AS is used to manage and process user sessions and service requests during session establishment; MF is used to manage and allocate media resources, thereby realizing efficient audio / video and data transmission; DCSF is used to process the signaling of data channel sessions.
[0119] 2、Independent DC(Standalone Data Channel, Standalone Data Channel): Independent DC refers to establishing an independent data channel based on IMS network without relying on VoNR / VoLTE call. Among them, the terminal device and the network device can establish an independent boot data channel, which is used for DC application download, DC application list update and DC application version update, etc.; the terminal device and the terminal device or the terminal device and the network device can establish an independent application data channel, which is used for data or message interaction between two DC applications.
[0120] The IMS session based on independent data channel is a communication session established through IMS, in which media transmission and signaling control are managed through independent data channels. This way not only improves the transmission efficiency of media stream, but also ensures the flexibility and reliability of the session.
[0121] 3、Session Description Protocol(SDP, Session Description Protocol): SDP is a network protocol used to describe multimedia sessions. In real-time communication (such as Voice over Internet Protocol (VoIP), video conferencing, etc.), SDP is widely used to exchange multimedia parameters of sessions, such as codec information, bandwidth, time, participants, etc.
[0122] The offer / answer model of SDP allows the initiator and the receiver to negotiate and determine the final communication parameters, so as to realize the establishment of a multimedia session. Two main message types include:
[0123] SDP offer (or referred to as SDP offer): SDP offer refers to a message sent by an initiator (usually a party who wants to establish a session), which contains initial parameters of the session, multimedia formats, codecs, bandwidths and other information that the initiator wants to use, and parameters that the initiator is willing to accept.
[0124] SDP answer (or referred to as SDP answer): SDP answer refers to the response of the receiver to the SDP offer. In the SDP answer message, the receiver can confirm or modify the parameters proposed in the SDP offer, and propose its own multimedia parameters, such as codecs, bandwidths and other parameters supported by the receiver.
[0125] In an embodiment, the flow of the offer / answer model of SDP is as follows: 1) The initiator creates an SDP offer and sends the SDP offer to the receiver, and correspondingly, the receiver receives the SDP offer. 2) The receiver responds to the SDP offer and creates an SDP answer based on the parameters it supports. 3) The receiver sends the SDP answer to the initiator, and correspondingly, the initiator receives the SDP answer. 4) The initiator adjusts its own settings based on the parameters in the SDP answer to ensure that the two parties can communicate.
[0126] The technical solutions of the present application and how the technical solutions of the present application solve the above technical problems will be described in detail in the following specific embodiments. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments. The embodiments of the present application will be described below with reference to the accompanying drawings.
[0127] Please refer to FIG. 2, which is a flowchart of a session processing method applied to a called terminal device according to an embodiment of the present application. As shown in FIG. 2, the method can include but is not limited to the following steps:
[0128] S201, receiving a first SDP offer for an initial session from a calling terminal device, the first SDP offer containing an identifier of a data channel application.
[0129] In an optional implementation, the first SDP offer contains a set of bootstrap data channel (BDC) media information and application data channel (ADC) media information, and the application data channel media information contains an identifier of a data channel application. The identifier of the data channel application can be carried by a label in an attribute line. In this way, an IMS session combining an independent bootstrap data channel and an application data channel can be used to establish an application data channel for downloading an application for the called device. If the called device has not downloaded the application, it is allowed to download the application after accepting the bootstrap data channel, and the session is updated in the same session to use the application.
[0130] The BDC media information can refer to bootstrap data channel media information, which can be used to describe media resource information in the bootstrap data channel. The ADC media information can be application data channel media information, which includes media resource information in the application data channel.
[0131] The calling terminal device is also referred to as a calling UE (User Equipment), and the called terminal device is also referred to as a called UE. The calling UE can be understood as an originating end of an IMS session, and the called UE can be understood as a peer end corresponding to the originating end.
[0132] In an optional implementation, the first SDP offer can be carried by an SIP (Session Initiation Protocol) INVITE message.
[0133] S202. When it is determined at the local end that the data channel application has not been downloaded, a first SDP response is sent, and the first SDP response contains information that the data channel application has not been downloaded at the local end.
[0134] In an optional implementation, the called terminal device sends a first SDP response to the core network device when it is determined that the data channel application identified by the label in the ADC media information in the first SDP offer has not been downloaded.
[0135] In the specific embodiment, the information indicating that the local end does not download the data channel application in the first SDP response includes at least one of the following: (1) the application port value of the application data channel media information is 0 or null (in the present application, the normal value of the application port value is not 0 or null); (2) information indicating that the local end does not download the data channel application is added in the application data channel media information; and (3) first timer information. By carrying the above at least one information in the first SDP response sent by the called end, the calling end can know the download state of the corresponding application of the called end, and in the case that the called end does not download the corresponding application, the corresponding response is made to avoid the failure of the application data channel session based on the application.
[0136] In an optional embodiment, the first SDP response can be carried by a SIP 200 OK message.
[0137] S203, receiving a second SDP offer of the calling terminal device for updating the application data channel media information of the same session; the second SDP offer contains the identification of the data channel application.
[0138] The second SDP offer for updating the application data channel media information of the same session can be understood as the SDP offer initiated by the calling terminal device for the IMS session initiated by the first SDP offer, and the IMS session contains the application data channel, so the SDP offer can be used to update the data channel media description information of the same application in the IMS session.
[0139] In an optional embodiment, the second SDP offer does not contain the BDC media information, but contains the ADC media information, and the ADC media information contains the identification of the data channel application contained in the first SDP offer.
[0140] Optionally, the second SDP offer can be carried by a SIP re-INVITE or UPDATE message. The second SDP offer is carried by the UPDATE message, that is, the UPDATE message contains the message type corresponding to the second SDP offer.
[0141] In an optional embodiment, the second SDP offer can be carried by a SIP re-INVITE or UPDATE message.
[0142] S204, sending a second SDP response.
[0143] In an alternative implementation, when the called terminal device has not completed downloading the data channel application corresponding to the first SDP offer upon receiving the second SDP offer, the second SDP response includes information that the local end has not downloaded the data channel application corresponding to the first SDP offer; when the called terminal device has completed downloading the data channel application corresponding to the first SDP offer, the second SDP response includes information that the local end has downloaded the data channel application corresponding to the first SDP offer, or does not include information that the local end has not completed downloading the data channel application corresponding to the first SDP offer.
[0144] In an alternative implementation, the second SDP response can be carried by a SIP 200 OK message.
[0145] In the embodiments of the present application, the called terminal device can receive a first SDP offer for an initial session from a calling terminal device; send a first SDP response when it is determined at the local end that the data channel application corresponding to the first SDP offer has not been downloaded; the first SDP response includes information that the local end has not downloaded the corresponding data channel application; receive a second SDP offer for updating the application data channel media information of the same session from the calling terminal device; the second SDP offer includes the identification of the corresponding data channel application; and send a second SDP response. In this way, it is beneficial for the called terminal device to download the corresponding data channel application based on the second SDP offer including the identification of the data channel application, thereby solving the problem of IMS session failure based on independent data channels in the scenario where the called terminal device has not downloaded the independent data channel application, and further improving the user experience of IMS real-time communication services based on independent data channels.
[0146] Please refer to FIG. 3, which is a flow diagram of a session processing method applied to a calling terminal device according to an embodiment of the present application. As shown in FIG. 3, the method can include but is not limited to the following steps:
[0147] S301, send a first SDP offer for an initial session, the first SDP offer including the identification of a data channel application.
[0148] The related description of the first SDP offer can be referred to the description in the aforementioned step S201, which will not be repeated here.
[0149] S302, receive a first SDP response from a called terminal device; when the called UE determines that the corresponding data channel application has not been downloaded, the first SDP response includes information that the local end has not downloaded the data channel application.
[0150] The related description of the first SDP response can be referred to the description in the aforementioned step S202, which will not be repeated here.
[0151] S303, sending a second SDP offer for updating application data channel media information of the same session; the second SDP offer containing the identification of the data channel application.
[0152] The related description of the second SDP offer can refer to the description in the foregoing step S201, and will not be repeated here.
[0153] S304, receiving a second SDP answer of the called terminal device.
[0154] In an optional implementation, if the called terminal device has not completed the downloading of the data channel application when receiving the second SDP offer, the second SDP answer contains information that the local end has not downloaded the data channel application corresponding to the first SDP offer; if the downloading of the data channel application is completed, the second SDP answer contains information that the local end has downloaded the data channel application corresponding to the first SDP offer.
[0155] In the embodiments of the present application, the calling terminal device can send a first SDP offer for an initial session, the first SDP offer containing the identification of the data channel application; receive a first SDP answer of the called terminal device; when the called UE determines that the corresponding data channel application has not been downloaded, the first SDP answer contains information that the local end has not downloaded the data channel application; send a second SDP offer for updating application data channel media information of the same session; the second SDP offer containing the identification of the data channel application; and receive a second SDP answer of the called terminal device. In this way, after the calling terminal device sends the first SDP offer for the initial session, if the first SDP answer received contains information that the called terminal device has not downloaded the data channel application, the calling terminal device can again send the second SDP offer for updating application data channel media information of the same session containing the identification of the corresponding data channel application, thereby facilitating the solution to the problem of IMS session failure based on independent data channel in the scenario where the called terminal device has not downloaded the independent data channel application, and further improving the user experience of IMS real-time communication service based on independent data channel.
[0156] Please refer to FIG. 4, which is a flow diagram of a session processing method applied to a core network device according to an embodiment of the present application. As shown in FIG. 4, the method can include but is not limited to the following steps:
[0157] S401, receiving a first SDP offer for an initial session of a calling terminal device, and forwarding to a called terminal device; the first SDP offer containing the identification of a data channel application.
[0158] The related description of the first SDP offer can refer to the description in the foregoing step S201, and will not be repeated here.
[0159] S402, receiving a first SDP answer of the called terminal device and forwarding to the calling terminal device; the first SDP answer contains information of a local undownloaded data channel application when the called terminal device determines not to download the data channel application.
[0160] The related description of the first SDP answer can refer to the description in the foregoing step S202, and will not be repeated here.
[0161] S403, receiving a second SDP offer of the calling terminal device for updating application data channel media information of the same session and forwarding to the called terminal device; the second SDP offer contains an identifier of the data channel application.
[0162] The related description of the second SDP offer can refer to the description in the foregoing step S201, and will not be repeated here.
[0163] S404, receiving a second SDP answer of the called terminal device and forwarding to the calling terminal device.
[0164] In the embodiment of the application, the core network device can receive a first SDP offer of the calling terminal device for an initial session and forward to the called terminal device; the first SDP offer contains an identifier of a data channel application; receive a first SDP answer of the called terminal device and forward to the calling terminal device; the first SDP answer contains information of a local undownloaded data channel application when the called terminal device does not download the corresponding data channel application; receive a second SDP offer of the calling terminal device for updating application data channel media information of the same session and forward to the called terminal device; the second SDP offer contains the identifier of the data channel application contained in the first SDP offer; receive a second SDP answer of the called terminal device and forward to the calling terminal device. By using the method, the called terminal device can download the corresponding data channel application based on the second SDP offer for updating application data channel media information of the same session containing the identifier of the corresponding data channel application, so that the problem of IMS session failure based on an independent data channel in the scenario where the called terminal device does not download an independent data channel application can be effectively solved, and the user experience of IMS real-time communication service based on an independent data channel can be improved.
[0165] Please refer to FIG. 5, which is a flow diagram of a method for processing a multi-terminal interactive session according to an embodiment of the application. As shown in FIG. 5, the method can include but is not limited to the following steps:
[0166] S501. The calling terminal device sends a first SDP proposal for initiating a session to the core network device. Correspondingly, the core network device receives the first SDP proposal from the calling terminal device. The first SDP proposal contains the identifier of the data channel application.
[0167] In one alternative implementation, the first SDP proposal includes a set of Bootstrap data channel (BDC) media information and Application data channel (ADC) media information, wherein the Application data channel media information includes an identifier of the data channel application. The identifier of the data channel application can be carried through a label in the attribute row.
[0168] Here, BDC media information can refer to boot data channel media information, which can be used to describe the media resource information in the boot data channel. ADC media information can refer to application data channel media information, which includes the media resource information in the application data channel.
[0169] Examples of BDC media information and ADC media information are as follows:
[0170] m=application XXX UDP / DTLS / SCTP webrtc-datachannel
[0171] b = AS:500
[0172] a = sctp-port:5000
[0173] a = tls-id:XXX
[0174] a = fingerprint:
[0175] a=dcmap:0subprotocol="http"; priority=256
[0176] a=dcmap:100subprotocol="http"; priority=256; ordered=true
[0177] a = setup:actpass
[0178] m=application XXX UDP / DTLS / SCTP webrtc-datachannel
[0179] b = AS:500
[0180] a=sctp-port:5002
[0181] a=tls-id:XXX
[0182] a=fingerprint:XXX
[0183] a=dcmap:1002 label="local_ApplicationName_1_Control"
[0184] a=setup:actpass
[0185] In the "m=application XXX UDP / DTLS / SCTP webrtc-datachannel", m represents a media line; application represents an application media type; XXX represents a transport port number or a placeholder; UDP / DTLS / SCTP represents a transport protocol of User Datagram Protocol (UDP) or Datagram Transport Layer Security (DTLS) or Stream Control Transmission Protocol (SCTP); and webrtc-datachannel represents a Web Real-Time Communication (WebRTC) data channel.
[0186] In the "b=AS:500", b represents bandwidth information; and AS:500 represents that the bandwidth of an application server is 500 kilobits per second (kbps).
[0187] In the "a=sctp-port:5000", a represents an attribute line; and sctp-port:5000 represents that the used SCTP port number is 5000.
[0188] In the "a=tls-id:XXX", a represents an attribute line; and tls-id:XXX represents a unique identifier of a Transport Layer Security (TLS) session.
[0189] In "a=fingerprint:XXX", a represents an attribute line; fingerprint represents a fingerprint of a Datagram Transport Layer Security (DTLS) certificate, used to verify the security of the connection.
[0190] In "a=dcmap:0 subprotocol="http"; priority=256", a represents an attribute line; dcmap represents a data channel mapping; 0 represents an identity (ID) of the data channel; subprotocol="http" represents that a subprotocol used is a Hyper Text Transfer Protocol (HTTP); priority=256 represents that a priority of the data channel is 256.
[0191] In "a=dcmap:100 subprotocol="http"; priority=256; ordered=true", 100 represents an ID of another data channel; ordered=true represents that transmission of the data channel is ordered.
[0192] In "a=set up:actpass", set up represents setting a role of DTLS, wherein common values of the set up attribute include: active, representing that the end initiates a DTLS handshake actively; passive, representing that the end receives a DTLS handshake passively; actpass, representing that the end can be an active or passive role, depending on a setting of the opposite end.
[0193] In "a=sctp-port:5002", sctp-port:5002 represents that an SCTP port number used is 5002.
[0194] In "a=dcmap:1002 label="local_ApplicationName_1_Control", 1002 represents an ID of the data channel; label="local_ApplicationName_1_Control" represents a label of the data channel, used to identify a use of the channel.
[0195] In an optional implementation, the first SDP offer can be carried through a SIP INVITE message.
[0196] S502, the core network device sends a first SDP offer to the called terminal device, and correspondingly, the called terminal device receives the first SDP offer from the core network device.
[0197] S503, the called terminal device sends a first SDP answer to the core network device in a case where it is determined that the corresponding data channel application is not downloaded, and correspondingly, the core network device receives the first SDP answer; the first SDP answer contains information that the local end does not download the data channel application.
[0198] In an optional embodiment, the called terminal device sends the first SDP answer to the core network device in a case where it is determined that the data channel application corresponding to the first SDP offer is not downloaded, which can include that the called terminal device sends the first SDP answer to the core network device in a case where it is determined that the data channel application identified by the lable in the ADC media information in the first SDP offer is not downloaded.
[0199] In a specific example, if the called terminal device has not downloaded the corresponding application, the called terminal device will respond to the first SDP answer of the first SDP offer of the guide data channel, and set the port of the application data channel to zero in the first SDP answer, and download the application after the guide data channel is established.
[0200] In an optional embodiment, the first SDP answer can be carried by a SIP 200 OK message.
[0201] In an optional embodiment, after the called terminal device receives the first SDP offer for the initial session, it also downloads the data channel application after the guide data channel is established.
[0202] In a specific embodiment, the manner in which the called terminal device downloads the data channel application after the guide data channel can include that after the media information channel of the guide data channel is established with the first media function, the data channel application is downloaded to the first data channel signaling function.
[0203] In another specific embodiment, the manner in which the called terminal device downloads the data channel application after the guide data channel can include that after the media information channel of the guide data channel is established with the second media function, the data channel application is downloaded to the second data channel signaling function.
[0204] In other embodiments, if the called terminal device has downloaded the corresponding application, and the user accepts the session initiated by the calling terminal device for the application, the called terminal device will return the SDP answer of the application data channel in response to the first SDP offer.
[0205] S504, the core network device sends a first SDP answer to the calling terminal device, and correspondingly, the calling terminal device receives the first SDP answer from the core network device.
[0206] S505, the calling terminal device sends a second SDP offer for updating application data channel media information of the same session to the core network device, and correspondingly, the core network device receives the second SDP offer for updating application data channel media information of the same session from the calling terminal device; wherein the second SDP offer contains the identifier of the data channel application contained in the first SDP offer.
[0207] In an optional implementation, the second SDP offer contains ADC media information, and the ADC media information contains the identifier of the data channel application contained in the first SDP offer.
[0208] Optionally, the second SDP offer can be carried by a SIP re-INVITE or UPDATE message. The second SDP offer is carried by the UPDATE message, that is, the UPDATE message contains the message type corresponding to the second SDP offer.
[0209] S506, the core network device sends the second SDP offer to the called terminal device, and correspondingly, the called terminal device receives the second SDP offer from the core network device.
[0210] S507, the called terminal device sends a second SDP answer to the core network device, and correspondingly, the core network device receives the second SDP answer from the called terminal device.
[0211] Optionally, the second SDP answer can be carried by a SIP 200 OK message.
[0212] S508, the core network device sends the second SDP answer to the calling terminal device, and correspondingly, the calling terminal device receives the second SDP answer from the core network device.
[0213] In the embodiment of the present application, the calling terminal device can send a first SDP offer for an initial session to the called terminal device through the core network device. Correspondingly, the called terminal device receives the first SDP offer for the initial session, and the first SDP offer contains the identification of the data channel application program. When the called terminal device determines that the corresponding data channel application program has not been downloaded, the called terminal device sends a first SDP response to the calling terminal device through the core network device. Correspondingly, the calling terminal device receives the first SDP response, and the first SDP response contains the information that the local end has not downloaded the data channel application program. The calling terminal device sends a second SDP offer for updating the application data channel media information of the same session to the called terminal device through the core network device. Correspondingly, the called terminal device receives the second SDP offer, and the second SDP offer contains the identification of the corresponding data channel application program. The called terminal device sends a second SDP response to the calling terminal device through the core network device. Correspondingly, the calling terminal device receives the second SDP response. By using the method, the problem of IMS session failure based on the independent data channel in the scenario where the called terminal device has not downloaded the independent data channel application program can be effectively solved, thereby the user experience of the IMS real-time communication service based on the independent data channel can be improved.
[0214] Please refer to FIG. 6, which is a flow diagram of another session processing method of multi-end interaction provided by the embodiment of the present application. The difference between the session processing method shown in FIG. 6 and the session processing method shown in FIG. 5 is that the session processing method shown in FIG. 6 further illustrates whether the calling terminal device determines whether the first SDP response contains the first timer T1 information and whether the called terminal device determines whether the download of the data channel application program has been completed. As shown in FIG. 6, the session processing method can include but is not limited to the following steps:
[0215] S601, the calling terminal device sends a first SDP offer for an initial session to the core network device. Correspondingly, the core network device receives the first SDP offer for the initial session from the calling terminal device, and the first SDP offer contains the identification of the data channel application program.
[0216] The related description of step S601 can be referred to the description in the aforementioned step S201, and will not be repeated here.
[0217] S602, the core network device sends the first SDP offer to the called terminal device. Correspondingly, the called terminal device receives the first SDP offer from the core network device.
[0218] S603, when the called terminal device determines that the data channel application program has not been downloaded, the called terminal device sends a first SDP response to the core network device. Correspondingly, the core network device receives the first SDP response. The first SDP response contains the information that the local end has not downloaded the data channel application program.
[0219] In an optional implementation, the information indicating that the local terminal device does not download the data channel application program included in the first SDP response comprises at least one of the following: the application port value of the ADC media information is 0 or NULL; information indicating that the local terminal device does not download the data channel application program is added in the ADC media information; and the first timer T1 information.
[0220] Optionally, the application port can be an SCTP port, a UDP port, a TCP port, etc., which is not limited herein. It should be noted that in the scenario of independent application data channel, the specific selection of the application port depends on the requirements of the application and the network environment.
[0221] In this implementation, if the application port is an SCTP port, the application port value of the ADC media information is 0 or NULL, that is, the SCTP port value is 0 or NULL.
[0222] For example, the called terminal device can configure the ADC media information in the first SDP response as “a=sctp-port:0 / NULL”, wherein sctp-port indicates that the application port used is an SCTP port, and 0 / NULL indicates that the SCTP port value is 0 or NULL.
[0223] In this implementation, the called terminal device can also add information indicating whether the local terminal device has downloaded the data channel application program in the ADC media information. For example, the called terminal device adds “a=dcmp:XXXX lable=“remote_applicationID_1_Control_downloadstatus”” in the ADC media information, wherein “downloadstatus” is used to identify the download status of the application program; for example, the identification “downloadstatus” is set to 02, indicating that the data channel application program is not downloaded and waiting for download; and the identification “downloadstatus” is set to 01, indicating that the data channel application program has been downloaded.
[0224] Optionally, the called terminal device adds information indicating that the local terminal device does not download the data channel application program in the ADC media information, for example, the called terminal device adds “a=dcmp:XXXX lable=“remote_applicationID_1_Control_02”” in the ADC media information.
[0225] S604, the core network device sends the first SDP response to the calling terminal device, and correspondingly, the calling terminal device receives the first SDP response from the core network device.
[0226] S605, the calling terminal device determines whether the first timer T1 information is included in the first SDP answer, if yes, steps S606 and S608 to S614 are executed; if no, steps S607 and S608 to S614 are executed.
[0227] Optionally, the first timer T1 information includes a timing duration of the first timer T1, which can be a duration estimated by the called terminal device for downloading the data channel application corresponding to the first SDP offer.
[0228] S606, the calling terminal device starts the first timer T1.
[0229] S607, the calling terminal device starts the second timer T2.
[0230] Optionally, the timing duration of the second timer T2 can be a duration determined by the calling terminal device for waiting for the called terminal device to download the corresponding data channel application.
[0231] S608, the calling terminal device sends, in a case where the first timer T1 or the second timer T2 expires, a second SDP offer for updating the application data channel media information of the same session to the core network device, and correspondingly, the core network device receives the second SDP offer.
[0232] In other embodiments, the calling terminal device can also periodically send the second SDP offer for updating the application data channel media information of the same session to the core network device. In this embodiment, the period of sending the second SDP offer for updating the application data channel media information of the same session to the core network device can be predefined. In this embodiment, the calling terminal device can also, in a case where the number of times of sending the second SDP offer for updating the application data channel media information of the same session reaches a set number of times, send a SIP BYE message if the second SDP answer received from the called terminal device carries information that the local end has not completed downloading the application data application. That is, in a case where the calling terminal device sends the second SDP offer for updating the application data channel media information of the same session a number of times that reaches a set number of times, but the called terminal device still does not complete the downloading of the corresponding application, the calling terminal device can end this independent application data channel session. The set number of times can be determined based on experience.
[0233] S609, the core network device sends, to the called terminal device, a second SDP offer for updating the application data channel media information of the same session, and correspondingly, the called terminal device receives the second SDP offer for updating the application data channel media information of the same session from the core network device.
[0234] S610, the called terminal device determines whether the download of the data channel application is completed, if yes, step S611, S614 are executed; if no, steps S612, S613 and S614 are executed.
[0235] S611, the called terminal device sends a second SDP answer to the core network device, and in the second SDP answer, information that the local end has not downloaded the data channel application is updated to information that the local end has downloaded the data channel application.
[0236] In an optional embodiment, the information indicating that the local end has downloaded the data channel application corresponding to the first SDP offer can include at least one of the following: updating the application port value of the ADC media information in the SDP answer to a normal value; updating the label in the ADC media information indicating the download state of the data channel application to a value that the local end has downloaded.
[0237] That is, the second SDP answer sent by the called terminal device does not contain information indicating that the local end has not downloaded the data channel application in the case of determining that the download of the corresponding data channel application is completed, for example, the application port value of the ADC media information is a normal value, and the label in the ADC media information indicating whether the data channel application has been downloaded is configured to the local end has downloaded the data channel application. For example, in the second SDP answer, the ADC media information includes "a=sctp-port:5000", "a=dcmp:XXXX lable="remote_applicationID_1_Control_01", wherein 01 indicates that the data channel application has been downloaded. Or delete the application download state label added in the ADC media information.
[0238] S612, the called terminal device determines that the second SDP answer contains information that the local end has not completed the download of the data channel application.
[0239] Optionally, the called terminal device can take the first SDP answer as the second SDP answer in the case of determining that the download of the data channel application is not completed.
[0240] S613, the called terminal device sends a second SDP answer to the core network device, and correspondingly, the core network device receives the second SDP answer from the called terminal device.
[0241] S614, the core network device sends a second SDP answer to the calling terminal device, and correspondingly, the calling terminal device receives the second SDP answer from the core network device.
[0242] In an alternative implementation, after step S611, the calling terminal device can determine that the IMS session based on the independent data channel is successfully established with the called terminal device, if the second SDP answer contains information that the local device has downloaded the data channel application; or the calling terminal device can send a SIP BYE message to end the independent data channel session, if the second SDP answer contains information that the local device has not completed downloading the data channel application.
[0243] In this implementation, the SIP BYE message sent by the calling terminal device can include that the calling terminal device sends the SIP BYE message to the core network device, and correspondingly, the core network device receives the SIP BYE message from the calling terminal device.
[0244] Optionally, the core network device can also send a SIP BYE message to the called terminal device, and correspondingly, the called terminal device receives the SIP BYE message.
[0245] In the embodiments of the present application, the calling terminal device can determine whether the first timer T1 information is contained in the first SDP answer, if yes, the first timer T1 is started, and if the first timer T1 expires, the second SDP offer for updating the application data channel media information of the same session is sent; if not, the second timer is started, and if the second timer expires, the second SDP offer for updating the application data channel media information of the same session is sent. In this way, by timing the IMS session based on the independent data channel, the efficiency of determining whether the IMS session based on the independent data channel is successfully established can be improved.
[0246] Please refer to FIG. 7, which is a flow diagram of another method for processing a multi-terminal interaction session according to an embodiment of the present application. The difference between the method shown in FIG. 7 and the method shown in FIG. 5 is that the internal interaction between the calling terminal device (UE1) and the called terminal device (UE2) of the IMS session and the core network device is specifically described in the method shown in FIG. 7. As shown in FIG. 7, the core network device mainly includes IMS AS1, DCSF1, MF1, APP AS, MF2, DCSF2 and IMS AS2. Among them, IMS AS1, DCSF1 and MF1 are related network elements of the network where the calling terminal device UE1 is located, MF2, DCSF2 and IMS AS2 are related network elements of the called terminal device UE2; and APP AS is an application server. As shown in FIG. 7, the method for processing a session can include but is not limited to the following steps:
[0247] S701, UE1 sends a SIP INVITE to IMS AS1, and the IMS AS1 receives an initial SDP offer from the UE1, wherein the SIP INVITE includes the initial SDP offer, and the initial SDP offer includes a set of BDC media information and ADC media information.
[0248] The ADC media information can include an identifier (streamID) of a data channel and label information, and the label information includes an identifier of a corresponding application.
[0249] S702, the IMS AS1 sends an initial SDP offer to the DCSF1 according to user subscription information, and the DCSF1 receives the initial SDP offer from the IMS AS1.
[0250] Optionally, the initial SDP offer can be sent by the IMS AS1 to the DCSF1 in the form of HTTP (Hypertext Transfer Protocol) signaling.
[0251] S703, the DCSF1 sends an application event related to label data channel information carried in the ADC media information in the initial SDP offer to the APP AS, and the APP AS receives the application event related to the label data channel information from the DCSF1.
[0252] S704, the APP AS sends an ADC policy of the application event to the DCSF1, and the DCSF1 receives the ADC policy from the APP AS.
[0253] The ADC policy, i.e., application data channel policy, can be used to manage and control media resources used by media streams transmitted through an application data channel, so as to ensure efficient and orderly transmission of the application data channel media streams.
[0254] S705, the DCSF1 sends a BDC policy and an ADC policy to the IMS AS1, and the IMS AS1 receives the BDC policy and the ADC policy from the DCSF1; wherein the BDC policy includes an indication of establishing a guide data channel; and the ADC policy includes a request for establishing a new application data channel.
[0255] The BDC policy, i.e., guide data channel policy, includes rules for establishing a guide data channel, and can be used to establish a guide data channel, so as to ensure reasonable allocation and use of network resources.
[0256] S706, the IMS AS 1 sends a media resource application message to the MF 1 based on the BDC policy and the ADC policy, and the MF 1 receives the media resource application message from the IMS AS 1; wherein the media resource application message comprises DC media resource information of the UE 1.
[0257] The media resource application message is used to indicate a request for allocation of necessary media resources for supporting the UE 1 to perform media communication.
[0258] Optionally, the DC media resource information of the UE 1 can comprise an IP address and a port of the UE 1; and the DC media resource information is used to establish and manage a media stream.
[0259] S707, the MF 1 determines media resources allocated to the UE 1 in response to the media resource application message, and sends media information required for establishing a DC to the IMS AS 1, and the IMS AS 1 receives the media information from the MF 1.
[0260] In an optional implementation, the UE 1 can also establish a BDC media information channel with the MF 1 to update a data channel application list.
[0261] S708, the IMS AS 1 updates the ADC media information in the initial SDP offer based on the media information, and obtains an updated SDP offer, wherein the application identifier in the ADC media information remains unchanged in the updated SDP offer.
[0262] S709, the IMS AS 1 sends the updated SDP offer to an IMS AS 2 corresponding to the UE 2, and the IMS AS 2 receives the updated SDP offer from the IMS AS 1.
[0263] In an optional implementation, the IMS AS 1 can send the updated SDP offer to the IMS AS 2 corresponding to the UE 2 by means of a SIP INVITE message.
[0264] S710, the IMS AS 2 sends the updated SDP offer to the UE 2, and the UE 2 receives the updated SDP offer from the IMS AS 2.
[0265] In an optional implementation, the IMS AS 2 can send a SIP INVITE message to the UE 2, and the SIP INVITE message carries the updated SDP offer of the calling UE.
[0266] S711, a related network element of a network where the UE 2 is located reports a DC session event, issues the BDC policy and the ADC policy, and applies for BDC media resources and ADC media resources.
[0267] In an optional implementation, the specific process of step S711 can refer to the description of steps S702 to S707, which will not be repeated here.
[0268] S712, UE2 identifies the DC application program in the label in the ADC media data based on the updated SDP offer, and sends an initial SDP response to IMS AS2 in the case that the local end does not download the data channel application program, and correspondingly, IMS AS2 receives the initial SDP response from UE2; the initial SDP response contains information about the local end not downloading the data channel application program.
[0269] In an optional implementation, the initial SDP response sent to IMS AS2 can be carried by a SIP 200 OK message.
[0270] In an optional implementation, in the case that the local end does not download the corresponding data channel application program, UE2 can also establish a BDC media information channel with MF2, and then download the data channel application program contained in the updated SDP offer to DCSF2. In another optional implementation, UE2 can also establish a BDC media information channel with MF1, and then download the data channel application program contained in the updated SDP offer to DCSF1.
[0271] In an optional implementation, after step S712, the relevant network element of the network where UE2 is located can also update the media information in the initial response based on the initial SDP response, wherein the initial SDP response includes BDC media information and ADC media information, and the ADC media information includes information indicating that UE2 does not download the data channel application program.
[0272] In an optional implementation, IMS AS2 can start a third timer Tas when it identifies that the initial SDP response of UE2 includes information indicating that the local end does not download the data channel application program; and when the third timer Tas ends, if it does not receive an SDP response updated by UE2 to include ADC media information, it sends a notification message to MF2, and correspondingly, MF2 receives the notification message from IMS AS2, which is used to instruct to delete the ADC media information established for UE2. The timing duration of the third timer Tas is greater than or equal to the timing duration of the first timer T1.
[0273] In this implementation, IMS AS2 can also end the third timer Tas after sending the notification message to MF2.
[0274] S713, the IMS AS 2 sends an initial SDP answer to the IMS AS 1, and correspondingly, the IMS AS 1 receives the initial SDP answer from the IMS AS 1.
[0275] S714, the IMS AS 1 updates the ADC media information of the UE 1 based on the initial SDP answer, and obtains updated ADC media information of the UE 1, wherein the updated ADC media information of the UE 1 comprises information of the data channel application program not downloaded by the UE 2.
[0276] S715, the IMS AS 1 sends the initial SDP answer to the UE 1, and correspondingly, the UE 1 receives the initial SDP answer from the IMS AS 1.
[0277] S716, the UE 1 starts a first timer T1 in a case where the initial SDP answer comprises first timer T1 information.
[0278] Optionally, the first timer T1 information comprises a timing duration of the first timer T1, and the timing duration can be a duration estimated by the UE 2 for downloading the corresponding data channel application program.
[0279] In an optional embodiment, the UE 1 can further establish a BDC media information channel with the MF 1, and update the data channel application program list.
[0280] S717, the UE 1 sends another SDP offer for updating the data channel media information of the same session to the IMS AS 1 in a case where the first timer T1 expires, and correspondingly, the IMS AS 1 receives the other SDP offer from the UE 1, wherein the other SDP offer comprises an identification of the corresponding data channel application program.
[0281] In an optional embodiment, after the step S717, the UE 1 can end the first timer T1.
[0282] In an optional embodiment, the step S716 can further be that the UE 1 starts a second timer T2 in a case where the initial SDP answer does not comprise the first timer T1 information. Optionally, a timing duration of the second timer T2 can be a duration set by the UE 1 by default for waiting for the peer to download the data channel application program. In this case, the step S717 can be described as that the UE 1 sends the other SDP offer to the IMS AS 1 in a case where the second timer T2 expires, and correspondingly, the IMS AS 1 receives the other SDP offer from the UE 1, wherein the other SDP offer comprises the identification of the corresponding data channel application program. After the UE 1 sends the other SDP offer to the IMS AS 1 in the case where the second timer T2 expires, the UE 1 can further end the second timer T2.
[0283] S718, the IMS AS 1 sends another SDP offer to the IMS AS 2, and correspondingly, the IMS AS 2 receives the another SDP offer from the IMS AS 1.
[0284] S719, the IMS AS 2 sends another SDP offer to the UE 2, and correspondingly, the UE 2 receives the another SDP offer from the IMS AS 2.
[0285] S720, the UE 2 determines whether the data channel application related to the SDP offer is downloaded; if yes, the step S721 and the steps S723 to S724 are executed; if no, the step S722 and the steps S723 to S724 are executed.
[0286] S721, the UE 2 sends another SDP answer, and updates the information indicating that the data channel application is not downloaded to the information indicating that the data channel application is downloaded.
[0287] S722, the UE 2 sends another SDP answer, and the information indicating that the data channel application is not downloaded is included in the another SDP answer.
[0288] Optionally, the UE 2 can take the initial SDP answer as the another SDP answer in the case that the data channel application is not downloaded.
[0289] S723, the IMS AS 2 sends another SDP answer to the IMS AS 1, and correspondingly, the IMS AS 1 receives the another SDP answer from the IMS AS 2.
[0290] S724, the IMS AS 1 sends the another SDP answer of the UE 2 to the UE 1, and correspondingly, the UE 1 receives the another SDP answer from the IMS AS 1.
[0291] In the embodiments of the present application, the UE 1 and the UE 2 interact with each other through the network elements in the core network device, and the problem of the IMS session failure based on the independent data channel in the case that the UE 2 does not download the independent data channel application can be effectively solved, so that the user experience of the IMS real-time communication service based on the independent data channel can be improved.
[0292] It should be understood that although each step in the flowcharts shown in FIGS. 2-7 is shown in sequence according to the direction of the arrow, these steps are not necessarily executed in the order indicated by the arrow. Unless otherwise explicitly stated herein, there is no strict order limitation for the execution of these steps, and these steps can be executed in other orders. Moreover, at least some of the steps of FIGS. 2-7 can include multiple steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily sequential, but can be executed alternately or alternately with at least part of other steps or steps or stages in other steps.
[0293] Based on the same inventive concept, the embodiments of the present application also provide a session processing apparatus for implementing the session processing method described above. The implementation scheme for solving the problem provided by the apparatus is similar to the implementation scheme described in the above method, and therefore the specific limitations in one or more session processing apparatus embodiments provided below can refer to the limitations of the session processing method described above, which will not be repeated here.
[0294] Please refer to FIG. 8, which is a structural schematic diagram of a session processing apparatus applied to a called terminal device according to an embodiment of the present application. As shown in FIG. 8, the apparatus includes but is not limited to the following modules: an offer receiving module 801 and a response sending module 802.
[0295] The offer receiving module 801 is configured to receive a first SDP offer of a calling UE for an initial session; the first SDP offer contains the identification of the data channel application.
[0296] The response sending module 802 is configured to send a first SDP response when it is determined at the local end that the data channel application is not downloaded; the first SDP response contains information that the data channel application is not downloaded at the local end.
[0297] The offer receiving module 801 is further configured to receive a second SDP offer of the calling UE for updating the application data channel media information for the same session; the second SDP offer contains the identification of the data channel application.
[0298] The response sending module 802 is further configured to send a second SDP response.
[0299] It can be understood that the steps that can be implemented by each module in the apparatus and the beneficial effects that can be achieved can refer to the description of the called terminal device in the foregoing session processing method embodiments, which will not be repeated here.
[0300] Please refer to Figure 9, which is a structural schematic diagram of a session processing apparatus applied to a called terminal device according to an embodiment of the present application. As shown in Figure 9, the apparatus includes but is not limited to the following modules: a proposal sending module 901 and a response receiving module 902. Wherein:
[0301] The proposal sending module 901 is configured to send a first SDP proposal for an initial session; the first SDP proposal contains the identification of the data channel application program;
[0302] The response receiving module 902 is configured to receive a first SDP response of the called UE; when the called UE determines not to download the data channel application program, the first SDP response contains the information that the local end does not download the data channel application program;
[0303] The proposal sending module 901 is further configured to send a second SDP proposal for updating the application data channel media information of the same session; the second SDP proposal contains the identification of the data channel application program;
[0304] The response receiving module 902 is further configured to receive a second SDP response of the called UE.
[0305] It can be understood that the steps that can be implemented by each module in the apparatus and the beneficial effects that can be achieved can refer to the description of the calling terminal device in the foregoing session processing method embodiments, and will not be described here in detail.
[0306] Please refer to Figure 10, which is a structural schematic diagram of a session processing apparatus applied to a core network device according to an embodiment of the present application. As shown in Figure 10, the apparatus includes but is not limited to the following modules: a first receiving and forwarding module 1001 and a second receiving and forwarding module 1002. Wherein:
[0307] The first receiving and forwarding module is configured to receive a first SDP proposal for an initial session of a calling UE, and forward to a called UE; the first SDP proposal contains the identification of the data channel application program;
[0308] The second receiving and forwarding module is configured to receive a first SDP response of the called UE, and forward to the calling UE; when the called UE determines not to download the data channel application program, the first SDP response contains the information that the local end does not download the data channel application program;
[0309] The first receiving and forwarding module is further configured to receive a second SDP proposal for updating the application data channel media information of the same session of the calling UE, and forward to the called UE; the second SDP proposal contains the identification of the data channel application program;
[0310] The second receiving and forwarding module is further configured to receive a second SDP response of the called UE, and forward to the calling UE.
[0311] It can be understood that the steps and the beneficial effects that can be achieved by the modules in the apparatus can be referred to the description of the core network device in the foregoing session processing method embodiments, and will not be described here again.
[0312] In an embodiment, the present application further provides a terminal device. Please refer to FIG. 11, which is a structural schematic diagram of a terminal device provided by an embodiment of the present application. The terminal device can be a called terminal device or a calling terminal device. As shown in FIG. 11, the terminal device comprises at least one processor 1101, a memory 1102, at least one network interface 1104 and a user interface 1103. The various components in the terminal device are coupled together through a bus system 1105. It can be understood that the bus system 1105 is used to realize the connection and communication between the components. The bus system 1105 includes not only a data bus, but also a power supply bus, a control bus and a status signal bus. However, in order to clearly illustrate, all kinds of buses are marked as the bus system 1105 in FIG. 11. In addition, the embodiment of the present application further comprises a transceiver 1106, which can be multiple elements, i.e. comprising a transmitter and a receiver, and providing a unit for communicating with various other devices on a transmission medium.
[0313] The user interface 1103 can include a display, a keyboard or a clicking device (for example, a mouse, a trackball, a touchpad or a touch screen, etc.).
[0314] It is to be appreciated that the memory 1102 in embodiments of the application can be volatile, nonvolatile, or a combination of both. By way of example, the nonvolatile memory can include read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically EP read-only memory (EEPROM), or flash memory. The volatile memory can include random access memory (RAM), which acts as external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), SyncLink DRAM (SLDRAM), and direct Rambus RAM (DRRAM). The memory 1102 of the system and method described herein are intended to include, without being limited to, these and any other suitable types of memory.
[0315] In some embodiments, the memory 1102 stores data, elements, or modules, or a subset thereof, or their extensions, including an operating system 1102a and application programs 1102b.
[0316] The operating system 1102a includes various system programs, such as a framework layer, a core library layer, a driver layer, and the like, for implementing various basic services and processing hardware-based tasks. The application programs 1102b include various application programs, such as a media player, a browser, and the like, for implementing various application services. Optionally, the programs implementing the methods provided in the embodiments of the present application can be included in the application programs 1102b.
[0317] In one embodiment, the operations performed by the called terminal device in the method provided in the embodiments of the present application are implemented by calling the programs or instructions stored in the memory 1102, specifically, the programs or instructions stored in the application programs 1102b. The receiver is configured to receive a first SDP offer for an initial session from a calling UE, the first SDP offer including an identifier of a data channel application; the transmitter is configured to send a first SDP answer when it is determined at the local end that the data channel application is not downloaded; the first SDP answer including information that the data channel application is not downloaded at the local end; the receiver is further configured to receive a second SDP offer for updating application data channel media information for the same session from the calling UE, the second SDP offer including the identifier of the data channel application; and the transmitter is further configured to send a second SDP answer.
[0318] In one embodiment, the operations performed by the called terminal device in the method provided in the embodiments of the present application are implemented by calling the programs or instructions stored in the memory 1102, specifically, the programs or instructions stored in the application programs 1102b. The transmitter is configured to send a first SDP offer for an initial session, the first SDP offer including an identifier of a data channel application; the receiver is configured to receive a first SDP answer from a called UE, the first SDP answer including information that the data channel application is not downloaded at the local end when it is determined at the called UE that the data channel application is not downloaded; the transmitter is further configured to send a second SDP offer for updating application data channel media information for the same session, the second SDP offer including the identifier of the data channel application; and the receiver is further configured to receive a second SDP answer from the called UE.
[0319] It can be understood that the embodiments described in the present application can be implemented by hardware, software, firmware, middleware, microcode or combination thereof. For hardware implementation, the processing unit can be implemented in one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), general purpose processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described in the present application, or a combination thereof.
[0320] For software implementation, the technology described in the terminal device in the present application can be implemented by modules (such as processes, functions, etc.) that perform the functions described in the embodiments of the present application. The software code can be stored in the memory and executed by the processor 1101. The memory can be implemented in the processor 1101 or outside the processor 1101.
[0321] In one embodiment, the present application also provides a core network device. Please refer to FIG. 12, which is a structural schematic diagram of a core network device provided by an embodiment of the present application. The access network device can include a receiver 1201, a memory 1202, a processor 1203, at least one communication bus 1204 and a transmitter 1205. The communication bus 1204 is used to realize the communication connection between the elements. The memory 1202 can contain a high-speed RAM memory and can also include a non-volatile storage NVM, such as at least one disk memory. The memory 1202 can store various programs for completing various processing functions and implementing the method steps of the present embodiment. In the present embodiment, the transmitter 1205 can be a radio frequency processing module or a baseband processing module in the core network device, and the receiver 1201 can also be a radio frequency processing module or a baseband processing module in the core network device. The transmitter 1205 and the receiver 1201 can be integrated together to realize a transceiver. The transmitter 1205 and the receiver 1201 can be coupled to the processor 1203, which can realize the receiving or transmitting action under the indication or control action of the processor 1203.
[0322] In an alternative implementation, the transceiver composed of the transmitter 1205 and the receiver 1201 is configured to receive a first SDP offer for an initial session from a calling UE and forward to a called UE; the first SDP offer contains an identification of the data channel application; the transceiver is further configured to receive a first SDP answer from the called UE and forward to the calling UE; the first SDP answer contains information of a local end not downloading the data channel application when the called UE determines not to download the data channel application; the transceiver is further configured to receive a second SDP offer for updating application data channel media information for the same session from the calling UE and forward to the called UE; the second SDP offer contains the identification of the data channel application; the transceiver is further configured to receive a second SDP answer from the called UE and forward to the calling UE.
[0323] In one embodiment, the present application also provides a computer readable storage medium having a computer program stored thereon.
[0324] In an alternative implementation, the computer program, when executed by a processor, implements the steps performed by the called terminal device in the session processing method described above, for example:
[0325] receiving a first SDP offer for an initial session from a calling terminal device; the first SDP offer contains an identification of a data channel application; sending a first SDP answer when a local end determines not to download the data channel application; the first SDP answer contains information of the local end not downloading the data channel application; receiving a second SDP offer for updating application data channel media information for the same session from the calling terminal device; the second SDP offer contains the identification of the data channel application; sending a second SDP answer.
[0326] In another alternative implementation, the computer program, when executed by a processor, implements the steps performed by the calling terminal device in the session processing method described above, for example:
[0327] sending a first SDP offer for an initial session; the first SDP offer contains an identification of a data channel application; receiving a first SDP answer from a called terminal device; the first SDP answer contains information of a local end not downloading the data channel application when the called UE determines not to download the data channel application; sending a second SDP offer for updating application data channel media information for the same session; the second SDP offer contains the identification of the data channel application; receiving a second SDP answer from the called terminal device.
[0328] In yet another alternative implementation, the computer program, when executed by a processor, implements the steps performed by the core network device in the session processing method described above, for example:
[0329] receiving a first SDP offer for an initial session from a calling terminal device, and forwarding to a called terminal device; the first SDP offer containing an identification of the data channel application; receiving a first SDP answer from the called terminal device, and forwarding to the calling terminal device; the first SDP answer containing information that the local end does not download the data channel application when the called terminal device does not download the data channel application; receiving a second SDP offer for updating the data channel media information of the same session from the calling terminal device, and forwarding to the called terminal device; the second SDP offer containing the identification of the data channel application; receiving a second SDP answer from the called terminal device, and forwarding to the calling terminal device.
[0330] In one embodiment, the application also provides a computer program product containing instructions.
[0331] In an alternative implementation, when the computer program product is run on the called terminal device, the called terminal device is caused to perform the following steps:
[0332] receiving a first SDP offer for an initial session from a calling terminal device; the first SDP offer containing an identification of the data channel application; sending a first SDP answer when it is determined at the local end that the data channel application is not downloaded; the first SDP answer containing information that the local end does not download the data channel application; receiving a second SDP offer for updating the data channel media information of the same session from the calling terminal device; the second SDP offer containing the identification of the data channel application; sending a second SDP answer.
[0333] In another alternative implementation, when the computer program product is run on the calling terminal device, the calling terminal device is caused to perform the following steps:
[0334] sending a first SDP offer for an initial session; the first SDP offer containing an identification of the data channel application; receiving a first SDP answer from a called terminal device; the first SDP answer containing information that the local end does not download the data channel application when it is determined at the called UE that the data channel application is not downloaded; sending a second SDP offer for updating the data channel media information of the same session; the second SDP offer containing the identification of the data channel application; receiving a second SDP answer from the called terminal device.
[0335] In yet another alternative implementation, when the computer program product is run on the core network device, the core network device is caused to perform the following steps:
[0336] receive a first SDP offer of a calling terminal device for an initial session and forward to a called terminal device; the first SDP offer contains an identification of a data channel application; receive a first SDP answer of the called terminal device and forward to the calling terminal device; the first SDP answer contains information that the local end does not download the data channel application when the called terminal device does not download the data channel application; receive a second SDP offer of the calling terminal device for updating data channel media information of the same session and forward to the called terminal device; the second SDP offer contains the identification of the data channel application; receive a second SDP answer of the called terminal device and forward to the calling terminal device.
[0337] Those skilled in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by a computer program instructing related hardware, and the computer program can be stored in a non-volatile computer readable storage medium. When the computer program is executed, it can include the processes of the above-mentioned embodiments of the method. In the embodiments provided in the present application, any reference to memory, storage, database or other medium can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (Read-Only Memory, ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (Random Access Memory, RAM) or external cache memory. As an illustration but not limitation, RAM can be in various forms, such as static random access memory (Static Random Access Memory, SRAM) or dynamic random access memory (Dynamic Random Access Memory, DRAM), etc.
[0338] The technical features of the above embodiments can be combined in any way. In order to make the description concise, not all possible combinations of the technical features in the above embodiments are described, but as long as the combinations of the technical features do not exist contradictory, they should be considered as the scope of the present application.
[0339] The above embodiments only express several implementation manners of the present application, and the description is more specific and detailed, but it should not be understood as a limitation on the scope of the patent. It should be noted that for ordinary skilled in the art, without departing from the concept of the present application, some modifications and improvements can be made, which are within the scope of the present application. Therefore, the scope of the patent of the present application should be subject to the appended claims.
Claims
1. A method for handling a session, applied to a called UE, the method comprising: receiving a first SDP offer of a calling UE for an initial session; the first SDP offer containing an identifier of a data channel application; sending a first SDP answer when it is determined at the local end that the data channel application is not downloaded; the first SDP answer containing information that the data channel application is not downloaded at the local end; receiving a second SDP offer of the calling UE for the same session, the second SDP offer containing an identifier of the data channel application; and sending a second SDP answer. The first SDP offer contains a set of bootstrap data channel media information and application data channel media information; the application data channel media information contains the identifier of the data channel application. The second SDP offer contains application data channel media information; the application data channel media information contains the identifier of the data channel application. 4.The method of claim 1, wherein: the information that the data channel application is not downloaded at the local end contained in the first SDP answer comprises at least one of: an application port value of the application data channel media information being 0 or null; information indicating that the data channel application is not downloaded at the local end being added in the application data channel media information; and first timer information. The application port value of the application data channel media information being 0 or null comprises an SCTP port value of the application data channel media information being 0 or null. The receiving of the first SDP offer of the calling UE for the initial session comprises: receiving a SIP INVITE message forwarded by a second IP multimedia subsystem application server, the SIP INVITE message carrying the first SDP offer. The method further comprises: after the bootstrap data channel is established, the called UE downloading the data channel application.
2. The method of claim 1, wherein, The downloading of the data channel application by the called UE after the bootstrap data channel is established comprises: after the called UE establishes a media information channel of the bootstrap data channel with a first media function, the called UE downloading the data channel application to a first data channel signaling function.
3. The method of claim 2, wherein, The downloading of the data channel application by the called UE after the bootstrap data channel is established further comprises: after the called UE establishes a media information channel of the bootstrap data channel with a second media function, the called UE downloading the data channel application to a second data channel signaling function. 10.The method of claim 1, wherein: when the second SDP offer is received, if the data channel application is downloaded at the local end, the second SDP answer sent does not contain information that the data channel application is not downloaded at the local end. 11.The method of claim 10, wherein: when the second SDP offer is received, if the data channel application is downloaded at the local end, an application port value of the application data channel media information in the second SDP answer sent is updated to a normal value. 5. The method of claim 4, wherein: 6. The method of claim 1, wherein, 7. The method of claim 1, wherein, 8. The method of claim 7, wherein, 9. The method of claim 7, wherein, 12. The method of claim 1, wherein: when the second SDP offer is received, if the local end has not completed downloading the data channel application, the second SDP answer sent carries information that the local end has not completed downloading the data channel application.
13. The method of any one of claims 1-12, wherein, the first SDP offer is carried in a SIP INVITE message, and the first SDP answer is carried in a SIP 200 OK message.
14. The method of any one of claims 1-12, wherein, the second SDP offer is carried in a SIP re-INVITE or UPDATE message, and the second SDP answer is carried in a SIP 200 OK message.
15. A session processing method applied to a calling UE, the method comprising: sending a first SDP offer for an initial session; the first SDP offer containing an identifier of a data channel application; receiving a first SDP answer of a called UE; when the called UE determines not to download the data channel application, the first SDP answer containing information that the local end has not downloaded the data channel application; sending a second SDP offer for updating application data channel media information for the same session; the second SDP offer containing the identifier of the data channel application; receiving a second SDP answer of the called UE.
16. The method of claim 15, wherein, the first SDP offer containing a set of pilot data channel media information and application data channel media information; the application data channel media information containing the identifier of the data channel application.
17. The method of claim 16, wherein, the second SDP offer containing application data channel media information; the application data channel media information containing the identifier of the data channel application.
18. The method of claim 15, wherein, the information that the local end has not downloaded the data channel application contained in the first SDP answer comprises at least one of the following: an application port value of the application data channel media information being 0 or null; adding information indicating that the local end has not downloaded the data channel application in the application data channel media information; first timer information.
19. The method of claim 18, wherein, the application port value of the application data channel media information being 0 or null comprises an SCTP port value of the application data channel media information being 0 or null.
20. The method of claim 18, wherein, the method further comprising: if the first SDP answer of the called UE received contains the first timer information, the calling UE starts a first timer; if the first SDP answer of the called UE received does not contain the first timer information, the calling UE starts a second timer.
21. The method of claim 20, wherein, the sending of the second SDP offer for updating application data channel media information for the same session comprises: if the first timer expires or the second timer expires, sending the second SDP offer for updating application data channel media information for the same session.
22. The method of claim 15, wherein, the method further comprising: if the second SDP answer of the called UE received carries information that the local end has not completed downloading the data channel application, the calling UE sends a SIP BYE message.
23. The method of claim 15, wherein, the sending of the second SDP offer for updating application data channel media information for the same session comprises: periodically sending a second SDP offer for updating application data channel media information of the same session.
24. The method of claim 23, wherein, The method further comprises: if the second SDP answer from the called UE carries information that the local end has not completed downloading the data channel application, sending a SIP BYE message when the number of times of sending the second SDP offer for updating application data channel media information of the same session reaches a set number of times.
25. The method of claim 15, wherein, The method further comprises: if the second SDP answer from the called UE does not carry information that the local end has not completed downloading the data channel application, establishing an independent application data channel with the called UE.
26. The method of claim 15, wherein, The method further comprises: updating a data channel application list after the calling UE establishes a media information channel of a pilot data channel with a first media function.
27. The method of any one of claims 15-26, wherein, The first SDP offer is carried in a SIP INVITE message, and the first SDP answer is carried in a SIP 200 OK message.
28. The method of any one of claims 15-26, wherein, The second SDP offer is carried in a SIP re-INVITE or UPDATE message, and the second SDP answer is carried in a SIP 200 OK message. 29.A session processing method applied to a core network, the method comprising: receiving a first SDP offer of a calling UE for an initial session and forwarding to a called UE; the first SDP offer containing an identifier of a data channel application; receiving a first SDP answer of the called UE and forwarding to the calling UE; when the called UE determines not to download the data channel application, the first SDP answer containing information that the local end has not downloaded the data channel application; receiving a second SDP offer of the calling UE for updating application data channel media information of the same session and forwarding to the called UE; the second SDP offer containing the identifier of the data channel application; receiving a second SDP answer of the called UE and forwarding to the calling UE.
30. The method of claim 29, wherein, The first SDP offer contains a set of pilot data channel media information and application data channel media information; the application data channel media information contains the identifier of the data channel application.
31. The method of claim 30, wherein, The second SDP offer contains application data channel media information; the application data channel media information contains the identifier of the data channel application.
32. The method of claim 26, wherein, The information that the local end has not downloaded the data channel application contained in the first SDP answer includes at least one of the following: an application port value of the application data channel media information is 0 or null; adding information indicating that the local end has not downloaded the data channel application in the application data channel media information; first timer information. 33.The method of claim 26, wherein: when the second SDP offer is received, if the called UE has not completed downloading the data channel application, the second SDP answer of the called UE carries information that the local end has not completed downloading the application data application. 34.The method of claim 26, wherein: If the second SDP offer is received when the called UE has completed the download of the data channel application, the second SDP answer of the called UE does not contain information that the local end has not completed the download of the data channel application.
35. The method of claim 34, wherein: If the second SDP offer is received when the called UE has completed the download of the data channel application, the second SDP answer of the called UE updates an application port value in application data channel media information to a normal value.
36. The method of claim 26, wherein, The method further comprises: The second IP multimedia subsystem application server starts a third timer when it identifies that the first SDP answer of the called UE contains information that the local end has not downloaded the data channel application.
37. The method of claim 36, wherein, The method further comprises: The second IP multimedia subsystem application server informs a second media function to delete data channel information reserved for the called UE when the third timer expires and the second SDP answer of the called UE that does not carry information that the local end has not downloaded the data channel application is not received.
38. The method of claim 26, wherein, The method further comprises: A first media function establishes a media information channel for guiding a data channel with the calling UE to update a data channel application list of the calling UE.
39. The method of claim 26 or 38, wherein, The method further comprises: A second media function establishes a media information channel for guiding a data channel with the called UE to enable the called UE to download the data channel application.
40. The method of claim 26, wherein, The first SDP offer is carried in a SIP INVITE message and the first SDP answer is carried in a SIP 200 OK message.
41. The method of claim 26, wherein, The second SDP offer is carried in a SIP re-INVITE or UPDATE message and the second SDP answer is carried in a SIP 200 OK message.
42. A session processing apparatus applied to a called UE, the apparatus comprising: an offer receiving module configured to receive a first SDP offer for an initial session from a calling UE; the first SDP offer containing an identification of a data channel application; an answer sending module configured to send a first SDP answer when it is determined at the local end that the data channel application has not been downloaded; the first SDP answer containing information that the local end has not downloaded the data channel application; the offer receiving module is further configured to receive a second SDP offer for updating application data channel media information for the same session from the calling UE; the second SDP offer containing the identification of the data channel application; the answer sending module is further configured to send a second SDP answer.
43. A session processing apparatus applied to a calling UE, the apparatus comprising: an offer sending module configured to send a first SDP offer for an initial session; the first SDP offer containing an identification of a data channel application; an answer receiving module configured to receive a first SDP answer from a called UE; the first SDP answer containing information indicating that the local end has not downloaded the data channel application when it is determined at the called UE that the data channel application has not been downloaded; The proposal sending module is further configured to send a second SDP proposal for updating application data channel media information of the same session, and the second SDP proposal contains the identification of the data channel application; The response receiving module is further configured to receive a second SDP response of the called UE. 44.A session processing apparatus applied to a core network, the apparatus comprising: a first receiving and forwarding module configured to receive a first SDP proposal of a calling UE for an initial session, and forward to a called UE; the first SDP proposal contains the identification of a data channel application; a second receiving and forwarding module configured to receive a first SDP response of the called UE, and forward to the calling UE; when the called UE determines not to download the data channel application, the first SDP response contains information that the local end does not download the data channel application; the first receiving and forwarding module is further configured to receive a second SDP proposal of the calling UE for updating application data channel media information of the same session, and forward to the called UE; the second SDP proposal contains the identification of the data channel application; the second receiving and forwarding module is further configured to receive a second SDP response of the called UE, and forward to the calling UE. 45.A terminal device comprising a transmitter and a receiver: the receiver is configured to receive a first SDP proposal of a calling UE for an initial session; the first SDP proposal contains the identification of a data channel application; the transmitter is configured to send a first SDP response when the local end determines not to download the data channel application; the first SDP response contains information that the local end does not download the data channel application; the receiver is further configured to receive a second SDP proposal of the calling UE for updating application data channel media information of the same session; the second SDP proposal contains the identification of the data channel application; the transmitter is further configured to send a second SDP response. 46.A terminal device comprising a transmitter and a receiver: the transmitter is configured to send a first SDP proposal for an initial session; the first SDP proposal contains the identification of a data channel application; the receiver is configured to receive a first SDP response of a called UE; when the called UE determines not to download the data channel application contained in the first SDP proposal, the first SDP response contains information that the local end does not download the data channel application; the transmitter is further configured to send a second SDP proposal for updating application data channel media information of the same session; the second SDP proposal contains the identification of the data channel application; the receiver is further configured to receive a second SDP response of the called UE. 47.A core network device comprising a transceiver: the transceiver is configured to receive a first SDP proposal of a calling UE for an initial session, and forward to a called UE; the first SDP proposal contains the identification of a data channel application; The transceiver is further configured to receive a first SDP answer of the called UE and forward to the caller UE; the first SDP answer contains information that the local end does not download the data channel application when the called UE determines not to download the data channel application. The transceiver is further configured to receive a second SDP offer of the caller UE for updating application data channel media information of the same session and forward to the called UE; the second SDP offer contains the identification of the data channel application. The transceiver is further configured to receive a second SDP answer of the called UE and forward to the caller UE. 48.A computer storage medium having stored thereon a computer program, the computer program being executable by a processor to implement the steps of the method of any one of claims 1-41. 49.A computer program product comprising a computer program, the computer program being executable by a processor to implement the steps of the method of any one of claims 1-41.
Citation Information
Patent Citations
Data channel establishment method and communication device
CN105227418A
IMS session media re-negotiation method and device, communication equipment and storage medium
CN117749767A
Application program determination method and device, terminal and server
CN117812056A
Communication method and device, and storage medium
CN117938815A
Session processing method and device, equipment, storage medium and program product
CN119865489A