Call processing method and related apparatus

By selecting and indicating a unified encoding method or redial session on the terminal device, the problem of no sound after the call is connected is solved, improving user experience and voice call quality.

CN120768883BActive Publication Date: 2026-06-26HONOR DEVICE CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HONOR DEVICE CO LTD
Filing Date
2024-06-28
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

When making calls using a SIM card or eSIM card, terminal devices often experience a situation where there is no sound after the call is connected, resulting in a poor user experience.

Method used

Upon receiving the 183 session progress message, select an encoding method supported by the terminal device and indicate through the message that the encoding method will be used for encoding, or end the current session and redial, to ensure that the encoding methods are consistent between terminal devices and realize audio data transmission.

Benefits of technology

It reduces the probability of no sound after a call is connected, improving user experience and voice call efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120768883B_ABST
    Figure CN120768883B_ABST
Patent Text Reader

Abstract

Embodiments of the present application provide a call processing method and related device, which are applied to the technical field of terminal. The method comprises: in response to a first operation for dialing a phone, a first terminal device can invite a second terminal device to participate in a first session; if the first terminal device receives a 183 session progress message, the 183 session progress message carries multiple encoding modes and does not carry a resource for negotiating the encoding mode, the first terminal device can end the first session after receiving the 183 session progress message, and invite the second terminal device to participate in a second session. When inviting the second terminal device to participate in the second session, the first terminal device can carry one of the multiple encoding modes to represent that the audio data will be encoded by using the encoding mode. In this way, it is beneficial to encode the audio data by using a unified encoding mode between the first terminal device and the second terminal device, thereby reducing the probability that there is no sound after the phone is connected.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of terminal technology, and in particular to a call processing method and related apparatus. Background Technology

[0002] Terminal devices can use a subscriber identity module (SIM) card or an embedded SIM (eSIM) card to make phone calls.

[0003] Currently, when making calls using a SIM card or eSIM card on a terminal device, there is a situation where there is no sound after the call is connected, resulting in a poor user experience. Summary of the Invention

[0004] This application provides a call processing method and related apparatus, which are applied in the field of terminal technology and are beneficial to improving call quality and enhancing user experience.

[0005] In a first aspect, embodiments of this application propose a call processing method, which can be applied to a first terminal device. The method includes: in response to a first operation for making a phone call, sending a first invitation message, the first invitation message being used to invite a second terminal device to participate in a first session; receiving a 183 session progress message, the 183 session progress message being used in response to the first invitation message, the 183 session progress message carrying N encoding methods but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, and N being an integer greater than or equal to 2; after receiving the 183 session progress message, sending a first message, the first message carrying the first encoding method among the N encoding methods, the first message being used to indicate that the first terminal device will use the first encoding method for encoding; before sending the first message, no second message is received, the second message being used to indicate that the second terminal device has accepted the first invitation message.

[0006] The first terminal device can also be called the calling device, and the second terminal device can also be called the called device. This application does not limit this.

[0007] The first encoding method can be any one of the N encoding methods, or it can be selected from the N encoding methods based on specific rules. This application does not limit this.

[0008] The second message indicates that the first session has been established. If the second message is not received before the first message is sent, it means that the first session was not established before the first message was sent. Whether the first session is established after the first message is not limited in this embodiment.

[0009] The 183 session progress message did not carry resources for negotiating the encoding method, but instead carried N encoding methods. This indicates that there are no resources available for negotiating the encoding method between the first and second terminal devices, and there is no unified encoding method. This will prevent the first and second terminal devices from transmitting audio data.

[0010] Based on this, after receiving the 183 session progress message, the first terminal device can select the first encoding method from the N encoding methods carried in the 183 session progress message, and indicate through the first message that the first encoding method will be used for encoding. In this way, the first encoding method is an encoding method supported by the second terminal device, which is beneficial for both the first and second terminal devices to use the first encoding method. The first and second terminal devices can unify the encoding method, which is beneficial for using the first encoding method for audio data transmission, thereby reducing the probability of no sound after the call is connected.

[0011] In one possible implementation, after receiving the 183 session progress message, a first message is sent, including: in response to the 183 session progress message, sending a message indicating the end of the first session; after sending the message indicating the end of the first session, sending the first message, which is also used to invite a second terminal device to participate in a second session.

[0012] The 183 session progress message did not carry resources for negotiating the encoding method, but instead carried N encoding methods. This indicates that there are no resources available for negotiating the encoding method between the first and second terminal devices, and there is no unified encoding method. This will prevent the first and second terminal devices from transmitting audio data. Based on this, the first terminal device can end the first session and initiate a second session via the first message.

[0013] The first terminal device terminates the first session and initiates a second session via the first message, which can also be referred to as redialing after session cancellation. The redialing can be performed manually by the user or automatically by the first terminal device; this application embodiment does not limit this method.

[0014] In one example, the first message can be referenced. Figure 7 Invitation message 1.

[0015] If the 183 session progress message does not carry resources for negotiating the encoding method, but carries N encoding methods, it indicates that the first session is highly likely to result in no sound after connection. The first terminal device can respond to the 183 session progress message by sending a message indicating the end of the first session, which helps to end the first session quickly and reduce user waiting time. The first terminal device initiates a second session through the first message. The first encoding method carried in the first message is an encoding method supported by the second terminal device. This allows both the first and second terminal devices to use the first encoding method, ensuring a unified encoding method between them. This facilitates the use of the first encoding method for audio data transmission after the second session is connected, thereby reducing the probability of no sound after the call is connected.

[0016] In one possible implementation, sending a first message after sending a message indicating the end of the first session includes: sending the first message in response to a second operation for making a phone call after sending the message indicating the end of the first session.

[0017] The first message is also used to invite the second terminal device to participate in the second session. This indicates that the second operation used to make a phone call dials the same phone number as the first operation used to make a phone call. Therefore, the first terminal device sends an invitation to the same terminal device.

[0018] In one example, in response to a second operation for making a phone call, a first message is sent, which can be referenced. Figure 6 S603 and S604 are not discussed further here.

[0019] In this way, when a user tries to dial the same number a second time, the first terminal device sends a first message. The first encoding method carried in the first message is the encoding method supported by the second terminal device. This is beneficial because both the first and second terminal devices use the first encoding method, and the encoding method between the first and second terminal devices can be unified. This is beneficial because when the user dials the same number again, the first encoding method is used for audio data transmission after the session is connected, thereby reducing the probability of no sound after the call is connected.

[0020] In one possible implementation, after receiving the 183 session progress message, a first message is sent, including: in response to the 183 session progress message, sending a message to a first network device to indicate the end of the first session, the first network device being the device that sent the 183 session progress message; sending a message to a second network device to request access; receiving a message from the second network device indicating successful access; and sending a first message to the second network device, the first message also being used to invite the second terminal device to participate in the second session.

[0021] The process of switching from initiating a first session through a first network device to initiating a second session through a second network device can be found in [reference needed]. Figure 8 S801 to S811 in the series.

[0022] If the 183 session progress message does not carry resources for negotiating the encoding method, but carries N encoding methods, it indicates that the first session is highly likely to experience a situation where there is no sound after the call is connected. This may be caused by the first network device. The first terminal device can cancel the first session and initiate a second session through the second network device, which helps reduce the probability of no sound after the call is connected. Furthermore, when the first terminal device initiates the second session, the first message should carry the first encoding method supported by the second terminal device. This encourages both the first and second terminal devices to use the first encoding method, facilitating audio data transmission using the first encoding method after the second session is connected, thereby reducing the probability of no sound after the call is connected.

[0023] In one possible implementation, after sending the first message, the method further includes: if no audio data is received within a preset time period, sending a third message, wherein the third message carries the second encoding method among N encoding methods, and the third message is used to indicate that the first terminal device will use the second encoding method for encoding, and the second encoding method is different from the first encoding method.

[0024] If no audio data is received after sending the first message, the first terminal device can select the second encoding method from the N encoding methods carried in the 183 session progress message, and indicate through a third message that the second encoding method will be used for encoding. In this way, through multiple attempts, the encoding method can be unified between the first terminal device and the second terminal device, thereby reducing the probability of no sound after the call is connected.

[0025] In one possible implementation, after sending the first message, the method further includes: receiving audio data; and in response to a third operation for making a phone call, sending a fourth message, the fourth message carrying the first encoding method, the fourth message being used to invite a second terminal device to participate in a third session.

[0026] After sending the first message, receiving audio data indicates that both the first and second terminal devices can use the same encoding method. When dialing the same number again, i.e., inviting the second terminal device to participate in the conversation again, the first encoding method can be included, which helps to quickly unify the encoding method and improve voice call efficiency.

[0027] In one possible implementation, the first encoding method is any one of the N encoding methods; or, the first encoding method is the encoding method that is selected most frequently among the N encoding methods; or, the first encoding method is the encoding method with the highest priority among the N encoding methods. This is beneficial for selecting a better encoding method.

[0028] In one possible implementation, the first message includes M encoding methods, each of which is an encoding method supported by the first terminal device. The M encoding methods include N encoding methods, where N is an integer greater than or equal to 2 and less than or equal to M, and M is an integer greater than or equal to 2.

[0029] In this way, the encoding method selected by the first terminal device from N encoding methods is both the encoding method supported by the first terminal device and the encoding method supported by the first terminal device, which is conducive to unifying the encoding method as soon as possible.

[0030] In one possible implementation, the telephone is a Network Protocol IP telephone, and in response to a first operation for making a telephone call, a first invitation message is sent, including: in response to the first operation for making a telephone call, sending a first invitation message to an IP telephone server, the IP telephone server being used to select a second terminal device from a plurality of second terminal devices and invite the second terminal device to participate in a first session.

[0031] The method provided in this application is applicable to scenarios involving making IP calls, and helps to reduce the probability of no sound after the call is connected in such scenarios.

[0032] In one possible implementation, the first invitation message is an INVITE message, the 183 session progress message is a 183SESSIONPROGRESS message, and the second message is an INVITE 200 OK message.

[0033] Secondly, this application proposes a call processing method applied to a first terminal device. The method includes: in response to a first operation for making a phone call, sending a first invitation message to invite a second terminal device to participate in a first session; receiving a 183 session progress message in response to the first invitation message, the 183 session progress message carrying N encoding methods but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, and N being an integer greater than or equal to 2; receiving a second message indicating that the second terminal device has accepted the first invitation message; if no audio data is received within a preset time period, sending a message indicating the end of the first session; and in response to the second operation for making a phone call, sending a first message carrying an encoding method of the first encoding method among the N encoding methods, indicating that the first terminal device will use the first encoding method for encoding.

[0034] This method can be referenced. Figure 6 S601 to S605. The first message can be referenced in invitation message 1, and the first encoding method can be referenced in encoding method A.

[0035] In this way, when a call is connected but there is no sound, when the user dials the same number again, the first terminal device can select one of the N encoding methods carried in the 183 session progress message so that the first terminal device and the second terminal device can use the encoding method to transmit audio data, which helps to reduce the probability of the call being connected but there is no sound again.

[0036] In one possible implementation, the preset duration is less than 20 seconds. This helps to shorten the user's waiting time.

[0037] In one possible implementation, the preset duration is less than 10 seconds. This would help to further reduce the user's waiting time.

[0038] Thirdly, this application proposes a call processing method applied to a first terminal device. The method includes: in response to a first operation for making a phone call, sending a first invitation message to invite a second terminal device to participate in a first session; receiving a 183 session progress message from a first network device, the 183 session progress message responding to the first invitation message, the 183 session progress message carrying N encoding methods but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, and N being an integer greater than or equal to 2; in response to the 183 session progress message, sending a message to the first network device indicating the end of the first session; sending a message to the second network device requesting access; receiving a message from the second network device indicating successful access; and sending a second invitation message to the second network device to invite the second terminal device to participate in a second session, the second invitation message carrying P encoding methods, where P is an integer greater than or equal to 2.

[0039] The P encoding methods and N encoding methods can be the same or different, and this application embodiment does not limit this. P can be greater than N or less than N, and this application embodiment does not limit this.

[0040] In one example, the method can be referenced Figure 8 S801 to S811 in the series.

[0041] In this way, when the first terminal device receives the 183 session progress message, which does not carry resource reservation but carries N encoding methods, the first terminal device can end the first session and perform domain-switching redial, that is, communicate with the second terminal device through the second network device, which helps to reduce the probability of no sound after the call is connected.

[0042] In one possible implementation, the P encoding methods are the same as the N encoding methods.

[0043] In this way, the encoding method carried by the first message is the same as the encoding method supported by the second terminal device, which is beneficial for the second terminal device to choose the encoding method to use, thus achieving a unified encoding method.

[0044] In one possible implementation, the P encoding methods are one or more of the N encoding methods.

[0045] If P encoding methods are one of N encoding methods, this will facilitate the rapid unification of encoding methods.

[0046] If P encoding methods are multiple of N encoding methods, then selecting from the multiple encoding methods supported by the second terminal device is advantageous for the second terminal device in choosing the encoding method to use, providing greater flexibility.

[0047] Fourthly, embodiments of this application provide a call processing apparatus, which may be an electronic device or a chip or chip system within an electronic device. The call processing apparatus may include a transmitting unit and a receiving unit.

[0048] In one example, the sending unit is configured to send a first invitation message in response to a first operation for making a phone call, the first invitation message being used to invite a second terminal device to participate in a first session; the receiving unit is configured to receive a 183 session progress message, the 183 session progress message being used in response to the first invitation message, the 183 session progress message carrying N encoding methods but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, and N being an integer greater than or equal to 2; the sending unit is further configured to: after receiving the 183 session progress message, send a first message, the first message carrying the first encoding method among the N encoding methods, the first message being used to indicate that the call processing device will use the first encoding method for encoding; before sending the first message, if no second message is received, the second message being used to indicate that the second terminal device has accepted the first invitation message.

[0049] In one possible implementation, the sending unit is further configured to: in response to the 183 session progress message, send a message indicating the end of the first session; and send a first message, which is further configured to invite a second terminal device to participate in the second session.

[0050] In one possible implementation, the sending unit is further configured to: after sending a message indicating the end of the first session, send a first message in response to a second operation for making a phone call.

[0051] In one possible implementation, the sending unit is further configured to: in response to the 183 session progress message, send a message to the first network device indicating the end of the first session, the first network device being the device that sent the 183 session progress message; send a message to the second network device requesting access; the receiving unit is further configured to: receive a message from the second network device indicating successful access; the sending unit is further configured to: send a first message to the second network device, the first message also being used to invite the second terminal device to participate in the second session.

[0052] In one possible implementation, the sending unit is further configured to: send a third message if no audio data is received within a preset time period, wherein the third message carries the second encoding method among N encoding methods, and the third message is used to indicate that the call processing device will use the second encoding method for encoding, and the second encoding method is different from the first encoding method.

[0053] In one possible implementation, the receiving unit is further configured to: receive audio data; the sending unit is further configured to: in response to a third operation for making a phone call, send a fourth message, the fourth message carrying the encoding method of the first encoding method, the fourth message being used to invite a second terminal device to participate in a third session.

[0054] In one possible implementation, the first encoding method is any one of the N encoding methods; or, the first encoding method is the encoding method that is selected most frequently among the N encoding methods; or, the first encoding method is the encoding method with the highest priority among the N encoding methods. This is beneficial for selecting a better encoding method.

[0055] In one possible implementation, the first message includes M encoding methods, each of which is an encoding method supported by the call processing device. The M encoding methods include N encoding methods, where N is an integer greater than or equal to 2 and less than or equal to M, and M is an integer greater than or equal to 2.

[0056] In one possible implementation, the telephone is a Network Protocol IP telephone; the sending unit is further configured to: in response to a first operation for making a telephone call, send a first invitation message to an IP telephone server, the IP telephone server being configured to select a second terminal device from a plurality of second terminal devices and invite the second terminal device to participate in a first session.

[0057] In one possible implementation, the first invitation message is an INVITE message, the 183 session progress message is a 183SESSIONPROGRESS message, and the second message is an INVITE 200 OK message.

[0058] In another example, the sending unit is configured to: in response to a first operation for making a phone call, send a first invitation message, the first invitation message being used to invite a second terminal device to participate in a first session; the receiving unit is configured to: receive a 183 session progress message, the 183 session progress message being used to respond to the first invitation message, the 183 session progress message carrying N encoding methods, but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, and N being an integer greater than or equal to 2; receive a second message, the second message being used to indicate that the second terminal device has accepted the first invitation message; the sending unit is further configured to: if no audio data is received within a preset time period, send a message indicating the end of the first session; in response to a second operation for making a phone call, send a first message, the first message carrying an encoding method of the first encoding method among the N encoding methods, the first message being used to indicate that the call processing device will use the first encoding method for encoding.

[0059] In one possible implementation, the preset duration is less than 20 seconds.

[0060] In one possible implementation, the preset duration is less than 10 seconds.

[0061] In another example, the sending unit is configured to send a first invitation message in response to a first operation for making a phone call, the first invitation message being used to invite a second terminal device to participate in a first session; the receiving unit is configured to receive a 183 session progress message from a first network device, the 183 session progress message being used in response to the first invitation message, the 183 session progress message carrying N encoding methods but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, where N is an integer greater than or equal to 2; the sending unit is further configured to: in response to the 183 session progress message, send a message to the first network device indicating the end of the first session; send a message to the second network device requesting access; the receiving unit is further configured to: receive a message from the second network device indicating successful access; the sending unit is further configured to: send a second invitation message to the second network device, the second invitation message being used to invite the second terminal device to participate in a second session, the second invitation message carrying P encoding methods, where P is an integer greater than or equal to 2.

[0062] In one possible implementation, the P encoding methods are the same as the N encoding methods.

[0063] In one possible implementation, the P encoding methods are one or more of the N encoding methods.

[0064] Fifthly, embodiments of this application provide an electronic device including one or more processors and a memory; the memory is coupled to one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and one or more processors call the computer instructions to cause the electronic device to perform the methods described in any aspect or any possible implementation of any aspect.

[0065] In a sixth aspect, embodiments of this application provide a computer-readable storage medium storing a computer program or instructions that, when executed on an electronic device, cause the electronic device to perform the methods described in any aspect or any possible implementation of any aspect.

[0066] In a seventh aspect, embodiments of this application provide a computer program product including computer program code, which, when executed on an electronic device, causes the electronic device to perform the methods described in any aspect or any possible implementation of any aspect.

[0067] Eighthly, this application provides a chip or chip system applied to an electronic device, the chip or chip system including at least one or more processors, the one or more processors being configured to invoke computer instructions to perform the methods described in any aspect or any possible implementation of any aspect.

[0068] In one possible implementation, the chip or chip system described above in this application further includes at least one memory storing instructions. The memory can be an internal storage unit of the chip, such as a register or cache, or it can be a storage unit of the chip itself (e.g., read-only memory, random access memory, etc.).

[0069] It should be understood that the fifth to eighth aspects of this application correspond to the technical solutions of any aspect of the embodiments of this application, and the beneficial effects achieved by each aspect and the corresponding feasible implementation are similar, and will not be described again. Attached Figure Description

[0070] Figure 1 This is a schematic diagram of a network architecture provided in an embodiment of this application;

[0071] Figure 2 This is a scene diagram of a voice call provided in an embodiment of this application;

[0072] Figure 3 This is a schematic flowchart illustrating a call method provided in an embodiment of this application;

[0073] Figure 4This is a schematic diagram of the hardware structure of a terminal device provided in an embodiment of this application;

[0074] Figure 5 This is a schematic diagram of the software architecture of a terminal device provided in an embodiment of this application;

[0075] Figure 6 This is a schematic flowchart of a call processing method provided in an embodiment of this application;

[0076] Figure 7 This is a schematic flowchart of another call processing method provided in an embodiment of this application;

[0077] Figure 8 This is a schematic flowchart illustrating another call processing method provided in the embodiments of this application;

[0078] Figure 9 This is a schematic diagram of an interface display provided in an embodiment of this application;

[0079] Figure 10 This is a schematic flowchart of another call processing method provided in an embodiment of this application;

[0080] Figure 11 This is a schematic diagram of the structure of a chip system provided in an embodiment of this application. Detailed Implementation

[0081] To facilitate a clear description of the technical solutions in the embodiments of this application, the following explanation is provided first:

[0082] In the embodiments of this application, terms such as "first" and "second" are used to distinguish identical or similar items with essentially the same function and purpose. For example, "first message" and "second message" are used only to distinguish different messages and do not limit their order. Those skilled in the art will understand that terms such as "first" and "second" do not limit the quantity or execution order, and that "first" and "second" do not necessarily imply that they are different.

[0083] It should be noted that, in the embodiments of this application, the terms "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design scheme described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or design schemes. Specifically, the use of terms such as "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.

[0084] In this application embodiment, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, a--c, bc, or abc, where a, b, and c can be single or multiple.

[0085] It should be noted that the phrase "at...time" in the embodiments of this application can refer to the instant at which a certain situation occurs, or it can refer to a period of time before or after the occurrence of a certain situation. The embodiments of this application do not impose a specific limitation on this. In addition, the display interface provided in the embodiments of this application is only an example, and the display interface may include more or less content.

[0086] It should be noted that the capitalization of letters and spaces in the signaling in this application are for illustrative purposes only, and the specific provisions in the standard protocol shall prevail.

[0087] Terminal equipment can use SIM cards or eSIM cards to make phone calls. Currently, SIM cards and eSIM cards are compatible with fourth-generation (4G) and fifth-generation (5G) mobile communication technology network standards. This allows SIM cards or eSIM cards to support multiple network standards, ensuring users receive a stable and efficient communication experience in various network environments.

[0088] To better understand the call function of terminal devices, the following will combine... Figure 1 Describe the network architecture in which the terminal device is located.

[0089] For example, Figure 1 A schematic diagram of a network architecture provided by an embodiment of this application is shown. For example... Figure 1 As shown, this network architecture may include terminal devices, Long Term Evolution (LTE), New Radio (NR), a core network, and the Internet Protocol Multimedia Subsystem (IMS) or the Internet. A detailed description follows:

[0090] (1) Terminal equipment: also known as user equipment (UE), user terminal, mobile station (MS), mobile terminal (MT), etc. Terminal equipment can be mobile phones or wearable devices (such as smartwatches), etc.

[0091] (2) LTE: This can be understood as the radio access network of a 4G network. In an LTE network (commonly known as a 4G network), due to evolution, the access network portion is called the evolved UMTS terrestrial radio access network (E-UTRAN). In this application, LTE has the same meaning as E-UTRAN, both referring to the access network portion of a 4G network. Terminal devices can access LTE through 4G base stations.

[0092] (3) NR: This can be understood as the radio access network of a 5G network. In a 5G network, the access network portion is called the next generation radio access network (NG-RAN or NG RAN). In this application, NR has the same meaning as NG-RAN (or NG RAN), both referring to the access network portion of a 5G network.

[0093] As is understandable, both LTE and NR are access networks. The access network is responsible for using wired or wireless connection and communication technologies to connect a large number of end users, level by level, to the core network (also known as the backbone network), thus achieving network connectivity. The access network is the edge of the entire network, the part closest to the user, and is often referred to as the "last mile."

[0094] (4) Core Network: Its main functions are to provide user connections, manage users, and carry out services, serving as the bearer network and providing an interface to external networks. The establishment of user connections includes functions such as mobility management (MM), call management (CM), switching / routing, and recording notification (which, in conjunction with intelligent network services, establishes connections to intelligent network peripheral devices).

[0095] It's understandable that the core network of a 4G network is an evolved packet core (EPC) network. The EPC network is the core network of a 4G mobile communication network. It falls under the core network category and possesses traditional mobile network capabilities such as user subscription data storage, mobility management, and data exchange, while providing users with an ultra-high-speed internet experience. The core network of a 5G network is the 5G Core (which can be abbreviated as 5GC). 5GC will use general-purpose network function virtualization equipment to replace the dedicated communication equipment of 4G networks.

[0096] It should be noted that, Figure 1 The core network in the network architecture shown can be obtained by merging EPC and 5GC. That is, the core network in this network architecture can include network elements from both EPC and 5GC. For example, the core network in this network architecture can include access and mobility management function (AMF) network elements, mobility management entity (MME) network elements, serving gateway (SGW) network elements, packet data network gateway (PGW) network elements, session management function (SMF) network elements, user plane function (UPF) network elements, unified data management (UDM) network elements, and home subscriber server (HSS) network elements, etc.

[0097] In some embodiments of this application, the core network in this network architecture may include fused network elements derived from network elements in EPC and 5GC. Examples include SMF+PGW-C, UPF+PGW-U, UDM+HSS, etc. Here, PGW-C is the control plane node of the PGW network element, and PGW-U is the user plane node of the PGW network element.

[0098] In some embodiments of this application, Figure 1The core network in the illustrated network architecture may include a proxy session border control (PSBC) network element, which is a combined network element integrating session border control (SBC), proxy call session control function (P-CSCF), access transfer control function (ATCF), and access transfer gateway (ATGW). As an SBC network element, it connects the IMS core network / softswitch network with the external user access area, enabling IMS / softswitch user service access, facilitating interoperability of user services in different network environments, ensuring IMS / softswitch network security, supporting quality of service (QoS) management, call admission control (CAC) traffic control, media management, and call detail record (CDR) media call detail records, among other functions.

[0099] Each network element in the core network can also be called a functional entity. It can be a network element implemented on dedicated hardware, a software instance running on dedicated hardware, or an instance of virtualized function on an appropriate platform.

[0100] It should be understood that all network element names in this application are merely examples. In future communications, such as sixth-generation (6G) mobile communication technology, they may be referred to by other names. Alternatively, in future communications, such as 6G, the network elements involved in this application may be replaced by other entities or devices with the same function, and this application does not limit their use. This is a unified explanation here and will not be repeated later. Optionally, the various network elements in the embodiments of this application may be communication devices, or chips or chip systems that can be used in such communication devices, and this application does not limit their use.

[0101] Understandable Figure 1 The core network in the network architecture shown may also include other devices, network elements, network entities, or network subsystems, such as policy control function (PCF) network elements, which are not limited in this application. It should be noted that this application does not limit the distribution of each network element in the core network; the specific distribution method can be found in relevant technical documents, which will not be elaborated here.

[0102] (5) IMS is a network architecture that provides voice and multimedia communication services (e.g., voice, video, and text messaging) over an Internet Protocol (IP) network. IMS enables secure and reliable multimedia communication between different devices on different networks. The architecture model provides a unified infrastructure and common mechanisms for controlling, operating, routing, and managing sessions, as well as implementing authentication, authorization, and accounting controls. The IMS specification incorporates widely used Internet Engineering Task Force (IETF) recommendations. For example, the Session Initialization Protocol (SIP) is used for session control signaling.

[0103] The Internet, also known as the international network, refers to a vast network of interconnected networks linked by a set of common protocols, forming a logically single, enormous international network. From a network communication perspective, the Internet is a data communication network that uses Transmission Control Protocol (TCP) / IP to connect computer networks in various countries, regions, and organizations around the world.

[0104] It should be noted that, Figure 1 The network architecture shown is not limited to the devices and networks shown in the figure, but may also include other devices not shown in the figure. This application will not provide examples of these devices.

[0105] Based on the above Figure 1 The architecture shown allows terminal devices to access LTE or NR networks and use these networks to make voice calls via the core network, the Internet, and IMS.

[0106] The following is combined with Figure 2 The voice call function of the terminal device is explained.

[0107] For example, Figure 2 This illustration shows a scenario of a voice call according to an embodiment of this application. Figure 2 As shown, terminal device 210 can transmit audio data to terminal device 240 through network device 220 and server 230. Among them, network device 220 may include network device 221 and network device 222.

[0108] Network device 221 is the network device corresponding to the cell where terminal device 210 is currently camped, and network device 222 is the network device corresponding to the cell where terminal device 240 is currently camped. In some embodiments of this application, network device 221 and network device 222 may also be the same network device, and this application embodiment does not limit this. If network device 221 and network device 222 are different network devices, then network device 221 and network device 222 can transmit audio data through IMS voice bearer.

[0109] In some examples, network device 221 and / or network device 222 can be access network devices, for example, network device 221 and / or network device 222 can be the aforementioned Figure 1 The architecture shown supports devices that support LTE or NR networks.

[0110] In other examples, network device 221 and / or network device 222 may include access network devices and core network devices. For example, network device 221 and / or network device 222 may include: the above-mentioned Figure 1 The architecture shown supports devices that support LTE or NR networks and the aforementioned Figure 1 The architecture shown supports devices for the core network.

[0111] Network device 220 and terminal device 240 can communicate directly or through server 230; however, this embodiment does not limit the communication. Therefore, server 230 is optional.

[0112] In some examples, terminal device 210 can be the party initiating a voice call, requesting to conduct a voice call with terminal device 240. Thus, terminal device 210 can also be referred to as the calling device or mobile-rigged (MO), and this embodiment does not limit this. Terminal device 240 can be the party receiving the voice call, or the called device. Terminal device 240 can be a mobile phone or a landline, and this embodiment does not limit this.

[0113] In other examples, terminal device 240 may be the party initiating a voice call, requesting to conduct a voice call with terminal device 210. Thus, terminal device 240 may also be referred to as the calling device or MO, and this embodiment of the application does not limit this. Terminal device 210 may be the party receiving the voice call, or the called device. Terminal device 210 may be a mobile phone or a landline, and this embodiment of the application does not limit this.

[0114] If terminal device 210 and terminal device 240 communicate via network device 220 and server 230, the call made by terminal device 210 can be called an IP phone, and server 230 can be called an IP phone server.

[0115] In this context, IP telephony can be understood as a public telephone with multiple terminal devices. When terminal device 210 makes an IP call, multiple terminal devices can answer the call, and the specific terminal device that answers can be determined by server 230. For example, when terminal device 210 makes an IP call, network device 220 can send a message to server 230 indicating that terminal device 210 has made an IP call. After receiving the message from network device 220, server 230 selects one terminal device, such as terminal device 240, from among the multiple terminal devices to answer the call based on a preset strategy.

[0116] For example, an IP phone can be a bank's phone number. Terminal device 210 dials the bank's phone number, and server 230 can receive the message indicating that the bank's phone number has been dialed via network device 220. In response to the message indicating that the bank's phone number has been dialed, server 230 can select terminal device 240 to answer the call based on the caller's region and location.

[0117] If terminal device 210 and terminal device 240 communicate via network device 220, the call made by terminal device 210 can be called a regular telephone call.

[0118] Currently, in scenarios where terminal device 210 makes regular or IP phone calls, there are instances where there is no sound after the call is connected, resulting in a poor user experience. Furthermore, the probability of this happening is relatively high when terminal device 210 makes IP phone calls.

[0119] The following example uses terminal device 210 to make an IP phone call to illustrate the call method.

[0120] For example, Figure 3 A schematic flowchart of a call method is shown. This method can be applied to the above. Figure 2 The scene shown. (As shown) Figure 3 As shown, the method may include the following steps:

[0121] S301, Terminal device 210 detected an operation to make a phone call.

[0122] Terminal device 210 may include a calling application. Users can find the phone number they want to dial in the calling application and make the call by triggering the dial control. When the user triggers the dial control, terminal device 210 can detect the operation used to make the call.

[0123] S302. In response to the operation of making a phone call, the terminal device 210 may send an invitation message to the network device 220. The invitation message is used to invite the terminal device 240 to participate in the session. The invitation message includes M encoding methods supported by the terminal device 210, where M is an integer greater than or equal to 2.

[0124] The invitation message may include the phone number corresponding to terminal device 240. In some examples, the invitation message may be represented as an INVITE message.

[0125] M encoding schemes are used to represent the encoding method of audio. In some examples, the M encoding schemes may include one or more of the following: adaptive multi-rate wideband (AMR-WB), adaptive multi-rate (AMR), adaptive multi-rate narrowband (AMR-NB), or free lossless audio codec (FLAC).

[0126] In some possible implementations, the invitation message may also include messages such as the audio sample rate and / or the number of audio channels.

[0127] For example, an invitation message may include the following:

[0128] IMS SIP Message--IMS_SIP_INVITE / INFORMAL_RESPONSE

[0129] Direction = UE_TO_NETWORK

[0130] Message ID = IMS_SIP_INVITE

[0131] a = rtpmap:104AMR-WB / 16000 / 1

[0132] a = rtpmap:102AMR / 8000 / 1

[0133] a=rtpmap:105telephone-event / 16000

[0134] a=rtpmap:96telephone-event / 8000

[0135] These messages indicate that the invitation message is an IMS signaling message sent by the terminal device to the network device. The invitation message is used to invite the called party to participate in the session, and the encoding methods carried in the invitation message include AMR-WB and AMR. Specifically, AMR-WB corresponds to an audio payload type of 104, an audio sampling rate of 16000, and 1 audio channel. AMR corresponds to an audio payload type of 102, an audio sampling rate of 8000, and 1 audio channel.

[0136] For telephone-related events, the audio payload type can be 105, and the audio sampling rate can be 16000. Alternatively, for telephone-related events, the audio payload type can be 96, and the audio sampling rate can be 8000.

[0137] Understandably, in response to an operation to make a phone call, terminal device 210 may display a dialing interface.

[0138] S303. In response to the invitation message, network device 220 may send a 100 attempt message to terminal device 210, which indicates an attempt to connect to terminal device 240.

[0139] In some examples, a 100 Try message can represent a 100 Trying message. A 100 Try message is used to attempt to connect to terminal device 240, that is, to attempt to connect to the called party.

[0140] S304. In response to the invitation message, network device 220 may also send a message to server 230 containing M encoding methods. In response to the message containing M encoding methods, server 230 sends a message to network device 220 carrying N encoding methods, where N is an integer greater than or equal to 2 and less than or equal to M.

[0141] Server 230 sends a message carrying N encoding methods to network device 220. These N encoding methods are the supported encoding methods selected by terminal device 240 from M encoding methods.

[0142] In some examples, M can be 3 and N can be 2. Or, M can be 5 and N can be 3, or M can be 4 and N can be 4.

[0143] S305. In response to a message carrying N encoding methods, network device 220 can send a 183 session progress message to terminal device 210. The 183 session progress message is used to indicate that an invitation message has been received. The 183 session progress message does not carry resource reservation but carries N encoding methods.

[0144] The fact that the 183 session progress message does not carry resource reservations can be understood as the 183 session progress message not carrying reserved resources.

[0145] In some examples, a 183 session progress message can be represented as a 183SESSION PROGRESS message or a 183Session Progress message. If a 183 session progress message does not carry a precondition, it means that resource reservation is not included in the message.

[0146] The 183 session progress message does not carry resource reservations, indicating that there are no resources available for negotiating encoding methods between terminal devices 210 and 240. The 183 session progress message carries N encoding methods, indicating that there is no unified encoding method between terminal devices 210 and 240. This will prevent the transmission of audio data between terminal devices 210 and 240.

[0147] In some examples, the 183 session progress message may include the following messages:

[0148] IMS SIP Message--IMS_SIP_INVITE / SESSION_PROGRESS

[0149] Direction = NETWORK_TO_UE

[0150] Message ID = IMS_SIP_INVITE

[0151] Response Code = SESSION_PROGRESS (183)

[0152] m=audio 33080RTP / AVP 104 105 102 96

[0153] a = rtpmap:104AMR-WB / 16000 / 1

[0154] a = rtpmap:102AMR / 8000 / 1

[0155] a=rtpmap:105telephone-event / 16000

[0156] a=rtpmap:96telephone-event / 8000

[0157] These messages indicate that the 183 session progress message is an IMS signaling message sent by the network device to the terminal device. The 183 session progress message is used to respond to invitation messages. Audio-related configurations include: transport port 33080, transport protocol Real-time Transport Protocol (RTP), transport type Audio Video Profile (AVP), and payload type can include 104, 1054, 102, and 96.

[0158] The encoding method carried in the 183 session progress message can include AMR-WB and AMR. Specifically, AMR-WB corresponds to an audio payload type of 104, an audio sampling rate of 16000, and 1 audio channel. AMR corresponds to an audio payload type of 102, an audio sampling rate of 8000, and 1 audio channel.

[0159] For telephone-related events, the audio payload type can be 105, and the audio sampling rate can be 16000. Alternatively, for telephone-related events, the audio payload type can be 96, and the audio sampling rate can be 8000.

[0160] S306. In response to the invitation message, network device 220 can call terminal device 240 through server 230.

[0161] Network device 220 can communicate with server 230 via IMS, enabling server 230 to call terminal device 240.

[0162] S307, Network device 220 determines through server 230 that terminal device 240 is ringing.

[0163] Server 230 can also communicate with network device 220 via IMS to inform terminal device 240 of its status. If server 230 successfully calls terminal device 240, network device 220 can obtain information from server 230 that terminal device 240 is ringing.

[0164] S308 When terminal device 240 is ringing, network device 220 can send a 180 ringing message to terminal device 210, which indicates that terminal device 240 is ringing.

[0165] When network device 220 determines that terminal device 240 is ringing, it can notify terminal device 210 that the other party is ringing via a 180 ringing message.

[0166] In some examples, a 180 ringing message can be represented as a 180 Ringing message.

[0167] S309. In response to the 180 ringing message, the terminal device 210 may send an acknowledgment response message to the network device 220, which indicates that the 180 ringing message has been received.

[0168] After receiving the 180 ringing message, the terminal device 210 can send an acknowledgment response message to the network device 220, so that the network device 220 can confirm that it has received the 180 ringing message.

[0169] In some examples, an acknowledgment response message can be represented as a PRACK message.

[0170] Understandably, before receiving the 180 ringing message, the terminal device can display a dialing interface. After receiving the 180 ringing message, in response to the 180 ringing message, the terminal device 210 can display an interface indicating that the other party is ringing.

[0171] S310, network device 220 determines through server 230 that terminal device 240 has accepted the session invitation.

[0172] If terminal device 240 accepts the session invitation, server 230 can notify network device 220 via IMS, and network device 220 can then confirm that terminal device 240 has accepted the session invitation.

[0173] S311 When terminal device 240 accepts the session invitation, network device 220 may send an invitation 200 confirmation message to terminal device 210, which indicates that terminal device 240 has accepted the session invitation.

[0174] When terminal device 240 accepts the session invitation, network device 220 can notify terminal device 220 that the called party has accepted the session invitation through invitation 200 confirmation message.

[0175] In some examples, the Invite 200 OK message can be represented as the INVITE 200 OK message.

[0176] S312. In response to the invitation 200 confirmation message, the terminal device 210 may send a confirmation message to the network device 220, which is used to indicate that the invitation 200 confirmation message has been received.

[0177] In response to the Invitation 200 Confirmation Message, the terminal device 210 can use a confirmation message to enable the network device 220 to confirm that it has received the Invitation 200 Confirmation Message.

[0178] In some examples, the acknowledgment message can be an ACK message.

[0179] Before receiving the invitation 200 confirmation message, the terminal device may display an interface indicating that the other party's phone is ringing. After receiving the invitation 200 confirmation message, in response to the invitation 200 confirmation message, the terminal device 210 may display an interface indicating that the other party has answered.

[0180] S313. If no RTP packet is received within 20 seconds, the terminal device 210 may trigger a timeout call drop mechanism.

[0181] Audio data transmitted via the RTP protocol can be called an RTP packet.

[0182] Terminal device 210 and terminal device 240 are in a call state. Terminal device 240 can encode audio data using a negotiated encoding method and send the encoded audio data to terminal device 210 via server 230 and network device 220. However, as indicated by the aforementioned 183 session progress message, there are no resources available between terminal devices 210 and 240 for negotiating the encoding method, and there is no unified encoding method. Therefore, terminal device 240 cannot encode the audio data and thus cannot send audio data to terminal device 210. Consequently, terminal device 210 cannot receive RTP packets.

[0183] If no RTP packet is received within 20 seconds, the terminal device 210 can trigger a timeout call drop mechanism. This timeout call drop mechanism indicates that the call will be automatically disconnected after a certain duration, such as 20 seconds. It should be noted that 20 seconds is merely an example; it could also be 23 seconds or 25 seconds, etc., and this embodiment does not limit the duration.

[0184] S314. Terminal device 210 can send a message to network device 220 to indicate the end of the session.

[0185] When terminal device 210 detects that the timeout call drop mechanism has been triggered, it can send a message to network device 220 to indicate the end of the session.

[0186] S315. In response to a message indicating the end of the session, network device 220 may terminate the call with terminal device 240 via server 230.

[0187] Network device 220 can communicate with server 230 via IMS to instruct server 230 to terminate the call with terminal device 240.

[0188] The above Figure 3 It can be seen that there will be a situation where there is no sound after the call is connected between terminal device 210 and terminal device 240. If there is no sound for 20 seconds, the call will be disconnected.

[0189] If the aforementioned 183 session progress message carries an encoding method, terminal device 210 and terminal device 240 can use that encoding method to transmit audio data. If the 183 session progress message carries resource reservation, terminal device 210 and terminal device 240 can use the reserved resources to negotiate the encoding method.

[0190] However, when the 183 session progress message does not carry resource reservation but carries multiple encoding methods, it will result in terminal device 210 and terminal device 240 having no resources available for negotiating the encoding method and no unified encoding method. This will prevent terminal device 210 and terminal device 240 from transmitting audio data.

[0191] In view of this, embodiments of this application provide a call processing method and related apparatus. Terminal device 210 receives a 183 session progress message. This 183 session progress message does not carry resource reservation but carries multiple encoding methods. In response to the 183 session progress message, terminal device 210 can select one encoding method from the multiple encoding methods and indicate that it will use that encoding method for encoding. In this way, terminal device 210 selects one encoding method to communicate with terminal device 240, which facilitates the transmission of audio data between terminal device 240 and terminal device 210 based on that encoding method, thereby reducing the probability of no sound after the call is connected and improving the user experience.

[0192] The call processing method provided in this application can be applied to terminal devices that support voice calls, such as mobile phones or tablets. For ease of understanding, the terminal devices provided in this application will first be described.

[0193] Figure 4 This is a schematic diagram of the hardware structure of a terminal device provided in an embodiment of this application. Figure 4 As shown, the terminal device may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headphone jack 170D, a sensor module 180, buttons 190, a motor 191, an indicator 192, a camera 193, and a display screen 194, etc.

[0194] Optionally, the aforementioned sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an accelerometer sensor 180E, a distance sensor 180F, a proximity sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0195] It is understood that the structures illustrated in the embodiments of this application do not constitute a specific limitation on the terminal device. In other embodiments of this application, the terminal device may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0196] Processor 110 may include one or more processing units, such as: application processor (AP), modem, graphics processing unit (GPU), image signal processor (ISP), controller, memory, video codec, digital signal processor (DSP), and / or neural network processing unit (NPU), etc. Different processing units may be independent devices or integrated into one or more processors. Figure 4 In the present invention, only the AP and the Modem are shown in the processor 110. This embodiment of the application focuses on the AP and the Modem.

[0197] The wireless communication function of the terminal device can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, and modem, etc. For example, the voice call between the terminal device and the network device involved in this application embodiment can be implemented through antenna 1, antenna 2, mobile communication module 150, wireless communication module 160, and modem, etc., in the terminal device.

[0198] An operating system can run on the AP. The operating system running on the AP can adopt a layered architecture, event-driven architecture, microkernel architecture, microservice architecture, or cloud architecture. The layered architecture can use Android, iOS, or other operating systems; this application embodiment does not limit this. The AP can detect and respond to a user's phone call, and can communicate with the Modem to make the call.

[0199] The modem may include an IMS module and a network attached storage (NAS) module. In this embodiment, the IMS module and the NAS module can perform the following... Figures 6 to 8 The steps are shown. The NAS module can perform... Figures 6 to 8 The steps related to sending and receiving are handled by the IMS module. Figures 6 to 8 The process excludes steps related to sending and receiving.

[0200] In some implementations, the AP and modem can be integrated on a system-on-chip (SoC). The SoC can use user information provided by the SIM card through the radio frequency (RF) components and antenna (e.g., as described above) in the mobile communication module 150. Figure 4 The antenna 1 shown enables cellular communication. SoC, also known as a system-on-a-chip, integrates the chips required for the operating system of a terminal device onto a single chip.

[0201] The following example uses the Android operating system running on the AP to illustrate the software architecture of the terminal device.

[0202] Figure 5 A schematic diagram of the software architecture of a terminal device is shown. (For example...) Figure 5 As shown, the Android system uses a layered architecture, which divides the application processing unit (AP) of a terminal device into several layers, each with a clear role and function. Layers communicate with each other through software interfaces. In some embodiments, the Android system can be divided into four layers, from top to bottom: applications, application framework, Android runtime and system libraries, hardware abstraction layer (HAL), and kernel.

[0203] The application layer can include a series of application packages. The application layer runs applications by calling the application programming interface (API) provided by the application framework layer. For example... Figure 5 As shown, the application package can include applications such as camera, calendar, WLAN, music, SMS, gallery, phone, map, Bluetooth, and video. The application layer can also include the system UI, which is used to display the interface of the terminal device, such as displaying the signal icon corresponding to the SIM card, displaying the call interface, etc.

[0204] The application framework layer provides application programming interfaces and a programming framework for applications within the application layer. The application framework layer includes some predefined functions. For example... Figure 5 As shown, the application framework layer may include a phone manager, window manager, content provider, resource manager, notification manager, and view system. The phone manager provides call functionality for the terminal device, such as call status management (including connection and disconnection). In some examples, the phone manager can be represented by a telephony. The application framework layer may also include a radio interface layer (RIL). The modem can interact with the phone manager through the RIL.

[0205] The Android system runtime consists of core libraries and a virtual machine. System libraries can contain modules with multiple functions, such as a surface manager, a 3D graphics processing library, a 2D image engine, and a media library.

[0206] The purpose of HAL is to abstract hardware, providing a unified interface for upper-layer applications to query hardware devices, or to provide data storage services for upper-layer applications. For example... Figure 5 As shown, the HAL layer may include a display HAL, a camera HAL, an audio HAL, and a sensor HAL.

[0207] The kernel layer is the layer between hardware and software. For example... Figure 5 As shown, the kernel layer can include display drivers, camera drivers, audio drivers, and sensor drivers, etc.

[0208] A modem may include an IMS module and a NAS module. A modem can also interact with network devices via an antenna.

[0209] In this embodiment, the telephone application in the AP receives a call command in response to an operation to make a phone call. In response to the call command, the telephone application can instruct the system UI to display a dialing interface. The telephone application can also transmit the call command to the telephone manager. The telephone manager can transmit the call command to the modem via the RIL. The IMS module in the modem, in response to the call command, can instruct the NAS module to send an invitation message to the network device. If the NAS module receives a 183 session progress message, which does not carry resource reservation but carries multiple encoding methods, the NAS module can transmit the 183 session progress message to the IMS module. The IMS module can select one encoding method from the multiple encoding methods included in the 183 session progress message and instruct the NAS module to send that encoding method to the network device, indicating that the first encoding method will be used for encoding.

[0210] To better understand the methods provided in the embodiments of this application, the following uses a call scenario as an example to illustrate the call processing method provided in the embodiments of this application.

[0211] This application provides various examples in its embodiments, which are described below in conjunction with... Figure 6 The first example, combined with Figure 7 Introducing the second example, combined with Figure 8 The third example is introduced. In these examples, the terminal device initiating the voice call is called the calling device, and the terminal device receiving the voice call is called the called device.

[0212] For example, Figure 6 A schematic flowchart illustrating a call processing method provided in an embodiment of this application is shown. This method can be applied to the above-mentioned... Figure 2 The communication system shown is not limited to this embodiment. Figure 6 As shown, the method may include the following steps:

[0213] S601, The calling device detected an operation to make a phone call.

[0214] The calling device's access point (AP) may include a telephone application, and the calling device's modem may include an IMS module and a NAS module. In one example, the telephone application can provide a user interface for making calls. When a user makes a call, the telephone application can detect the operation used to make the call and, in response, receive a call command. The telephone application can transmit the call command to the IMS module. The IMS module can instruct the NAS module to send an invitation message to the network device. For specific implementation details, please refer to the above. Figure 5 This will not be elaborated upon here.

[0215] The calling device can refer to terminal device 210 as described above, and the network device can refer to network device 220 as described above. The NAS module in the calling device sends an invitation message to the network device, as described in S302 above. Communication between the calling device and the network device can refer to S303 and S312 above. In this way, the calling device can communicate with the called device through the network device and the server.

[0216] S602. If the calling device does not receive an RTP packet within X seconds, the calling device may trigger a hang-up mechanism, where X is less than or equal to 20.

[0217] X is less than or equal to 20. In some examples, X can be 3, 5, 7, 10, 12, 15, 18 or 20, etc., and this application does not limit this.

[0218] If the calling device does not receive an RTP packet within X seconds, meaning it does not receive audio data about the called device, the user will not be able to hear the other party. In this case, the hang-up mechanism is triggered.

[0219] If X equals 20, the hang-up mechanism can also be called a timeout hang-up mechanism, as described above. Figure 3 S313 in the above. This continues the use of the above. Figure 3 The proposed solution requires the least modification to the existing solution.

[0220] If X is less than 20, the timeout hang-up mechanism is not triggered. Instead, the calling device triggers the hang-up mechanism, but the duration of this trigger is shorter than the duration of the timeout hang-up mechanism. Thus, if no RTP packet is received within X seconds, the calling device can automatically disconnect from the called device, which helps shorten the user's waiting time.

[0221] The steps after the calling device triggers the hang-up mechanism can be referred to above. Figure 3 S314 and S315 in the text will not be elaborated here.

[0222] S603, The calling device detected an operation used to make the same call.

[0223] If a user dials a number and there is no answer from the called party, the user can dial the number again. When the user dials the number again, the calling device can detect the operation used to dial the same number.

[0224] S604. In response to an operation to dial the same phone number, the calling device may select encoding method A from the N encoding methods carried in the 183 session progress message.

[0225] In step S305 above, the calling device can obtain a 183 session progress message. This 183 session progress message does not carry resource reservations but carries N encoding methods. In response to an operation to dial the same phone number, the calling device can obtain these N encoding methods from the 183 session progress message and select encoding method A from these N encoding methods.

[0226] The calling device selecting encoding method A from the 183 session progress message in response to the operation of dialing the same phone number is just one example. In other examples, after S305, the calling device may, in response to the 183 session progress message, obtain these N encoding methods from the 183 session progress message and select encoding method A from these N encoding methods. The calling device may obtain encoding method A in response to the operation of dialing the same phone number.

[0227] In this way, in response to the operation of dialing the same phone number, the calling device reduces the steps of obtaining these N encoding methods from the 183 session progress message and selecting encoding method A from these N encoding methods, which helps to improve processing efficiency. The calling device's selection of encoding method A from these N encoding methods can include a variety of possible implementations.

[0228] In one possible implementation, the calling device can randomly select one encoding method from N encoding methods to obtain encoding method A. This approach is simple to implement.

[0229] In another possible implementation, the calling device can record the historical number of times each encoding method has been selected. The calling device can sort the N encoding methods according to their historical selection frequency and select the encoding method with the highest historical selection frequency to obtain encoding method A. This is beneficial for selecting a better encoding method.

[0230] In another possible implementation, various encoding methods have preset priorities. The calling device can sort the N encoding methods according to their priorities and select the encoding method with the highest priority, resulting in encoding method A. This facilitates the selection of a better encoding method.

[0231] In another possible implementation, a machine learning model can be deployed in the calling device. The training data for the machine learning model can include phone numbers and the encoding scheme used for voice calls with those numbers. The calling device can obtain the phone number dialed by the user and input it into the machine learning model, which can output an encoding scheme. If the encoding scheme is among N possible schemes, it is selected, resulting in encoding scheme A. If the encoding scheme is not among these N schemes, it is randomly selected, or a similar encoding scheme is selected, resulting in encoding scheme A. This approach facilitates the selection of a superior encoding scheme while increasing flexibility.

[0232] S605. The calling device sends an invitation message 1 to the network device. The invitation message 1 is used to invite the called device to participate in the session. The invitation message 1 carries the encoding method A.

[0233] The difference between Invitation Message 1 and the Invitation Message in S302 above is that Invitation Message 1 includes one of the encoding formats among N encoding methods.

[0234] In one example, S603 to S605 above may include: when the user dials the phone again, the phone application can detect the operation used to dial the same phone and obtain a call command. The phone application can transmit the call command to the IMS module. The IMS module can obtain N encoding methods from the 183 session progress message and select encoding method A from these N encoding methods. The IMS module can instruct the NAS module to send an invitation message 1 including the encoding format to the network device.

[0235] S606. In response to Invitation Message 1, the network device may send a 100 Attempt Message to the calling device, which indicates an attempt to connect to the called device.

[0236] The 100 attempt message has the same function as the 100 attempt message in S303 above.

[0237] In some examples, the NAS module in the calling device can receive 100 attempt messages from the network device.

[0238] S607. In response to invitation message 1, the network device can also send information carrying encoding method A to the server. The server, in response to the information carrying encoding method A, sends information carrying encoding method A to the network device.

[0239] Carrying information about encoding method A can be used to indicate that the calling device will use encoding method A for encoding.

[0240] S608. In response to the information carrying encoding method A, the network device may send a 183 session progress message 1 to the calling device. The 183 session progress message 1 is used to indicate that the invitation message 1 has been received. The 183 session progress message 1 carries encoding method A.

[0241] Since the encoding method A carried in the invitation message 1 is the encoding format that the calling device will use, and the called device also supports encoding method A, the called device can choose encoding method A to transmit audio data with the calling device. Thus, the 183 session progress message 1 can carry encoding method A, indicating that the called device has selected encoding method A. In this way, the calling device and the called device use the same encoding method.

[0242] In some examples, the NAS module in the calling device can receive 183 session progress messages from the network device.

[0243] In response to invitation message 1, the network device can also call the called device through the server, wait for the called device to ring, and after the called device accepts the session invitation, inform the calling device that the called device has accepted the session invitation, thus enabling a voice call between the calling and called devices. See S306 to S312 above for details.

[0244] S609. The network device receives audio data from the called device and can send RTP packets encoded using encoding method A to the calling device.

[0245] Network devices can receive audio data from the called device, obtain RTP packets, and send RTP packets encoded using encoding method A to the calling device.

[0246] In some examples, the NAS module in the calling device receives RTP packets encoded using encoding method A and can transmit these packets to the telephone application. The telephone application can then play the packets, decode them using encoding method A, and obtain audio data so that the user can hear the called party's voice.

[0247] The call processing method provided in this application embodiment allows the calling device to select one of the N encoding methods carried in the 183 session progress message when the user cannot hear the called party's voice after the call is connected. This enables the calling device and the called device to use the encoding method to transmit audio data, which helps reduce the probability of the user being unable to hear the called party's voice after the call is connected again.

[0248] Optionally, in the above Figure 6In the method shown, after S605, if the calling device receives an error message, or if the calling device receives a 183 session progress message including multiple encoding methods, or if the calling device does not receive RTP packets for a period of time (e.g., X seconds or 20 seconds), then it can select one encoding method other than encoding method A from the N encoding methods and repeat the above S605 until the calling device can receive RTP packets.

[0249] This helps reduce the probability of a user being unable to hear the called party after the call is connected.

[0250] Optionally, in the above Figure 6 The method described above further includes: the calling device recording the phone number and encoding method A. When the calling device detects that the same phone number has been dialed again, it can send an invitation message carrying encoding method A to the network device. This eliminates the need to repeatedly select encoding method A from multiple encoding methods, thus improving voice call efficiency.

[0251] The first example has been introduced above; the second example will be introduced below.

[0252] For example, Figure 7 A schematic flowchart of a voice call method is shown. This method can be applied to the above-mentioned... Figure 2 The scene shown. (As shown) Figure 7 As shown, the method may include the following steps:

[0253] S701, The calling device detected an operation to make a phone call.

[0254] S702, In response to an operation for making a phone call, the calling device may send an invitation message to the network device.

[0255] S703 In response to an invitation message, a network device can send a 100 Attempt message to the calling device.

[0256] S704. In response to the invitation message, the network device can also send a message carrying M encoding methods to the server. The server, in response to the message carrying M encoding methods, sends a message carrying N encoding methods to the network device.

[0257] S705 In response to a message carrying N encoding methods, the network device can send a 183 session progress message to the calling device.

[0258] S701 to S705 can be referred to as S301 to S305 above, and will not be repeated here.

[0259] S706 In response to the 183 session progress message, the calling device can send a message to the network device to indicate the end of the session.

[0260] Messages used to indicate the end of a session can be used to instruct network devices not to respond to invitation messages.

[0261] In some examples, in response to a 183 session progress message, the calling device's IMS module can instruct the NAS module to send a message to the network device indicating the end of the session.

[0262] In response to an operation to make a phone call, the calling device can display a dialing interface. Even when the calling device sends a message to the network device indicating the end of the session, the calling device still displays the dialing interface. This way, the interface does not show a hang-up message, eliminating the need for the user to redial, thus reducing user operations.

[0263] S707, In response to a message indicating the end of a session, the network device cancels the call to the called device.

[0264] The network device cancels the call to the called device, so the called device does not ring.

[0265] S708. In response to the 183 session progress message, the calling device can select encoding method A from the N encoding methods included in the 183 session progress message.

[0266] S709. The calling device sends an invitation message 1 to the network device. The invitation message 1 is used to invite the called device to participate in the session. The invitation message 1 carries the encoding method A.

[0267] The calling device executes S706 to S709, which can be understood as the host device canceling the session and then redialing.

[0268] The above S708 and S709 may include: the calling device's IMS module can select encoding method A from the N encoding methods included in the 183 session progress message, and instruct the NAS module to send invitation message 1 to the network device.

[0269] S710, in response to invitation message 1, the network device may send a 100 attempt message to the calling device, which indicates an attempt to connect to the called device.

[0270] S711. In response to invitation message 1, the network device can also send a message carrying encoding method A to the server. The server, in response to the message carrying encoding method A, sends a message carrying encoding method A to the network device.

[0271] S712. In response to a message carrying encoding method A, the network device may send a 183 session progress message 1 to the calling device. The 183 session progress message 1 is used to indicate that the invitation message 1 has been received. The 183 session progress message 1 carries encoding method A.

[0272] In response to invitation message 1, the network device can also call the called device, wait for the called device to ring, and after the called device accepts the session invitation, inform the calling device that the called device has accepted the session invitation, thus realizing a voice conversation between the calling device and the called device. For details, please refer to S306 to S312 above, which will not be repeated here.

[0273] S713. When a network device receives audio data from a called device, it can send an RTP packet encoded using encoding method A to the calling device.

[0274] S708 to S713 can be referenced from S604 to S609 above, and will not be repeated here.

[0275] The call processing method provided in this application embodiment involves the calling device receiving a 183 session progress message. This message does not carry resource reservation information but carries N encoding methods. In response to the 183 session progress message, the calling device can cancel the session and select one of the N encoding methods carried in the message for redialing. This allows the calling and called devices to use the same encoding method for audio data transmission, reducing the probability of the user not being able to hear the called party's voice after the call is connected. Compared to the first example described above, this eliminates the need for the user to dial the same number again, reducing user operations and improving the user experience.

[0276] Optionally, in the above Figure 7 In the method shown, after S709, if the calling device receives an error message, or if the calling device receives a 183 session progress message including multiple encoding methods, or if the calling device does not receive an RTP packet within a certain period of time (e.g., X seconds or 20 seconds), the calling device can select one encoding method other than encoding method A from the N encoding methods and repeat the above S709 until the calling device can receive RTP packets.

[0277] This helps reduce the probability that the user cannot hear the called party's voice after the call is connected.

[0278] Optionally, in the above Figure 7 The method described above further includes: the calling device recording the phone number and encoding method A. When the calling device detects that the same phone number has been dialed again, it can send an invitation message carrying encoding method A to the network device. This eliminates the need to repeatedly select encoding method A from multiple encoding methods, thus improving the efficiency of voice conversations.

[0279] The above combination Figure 6 and Figure 7 Two examples were introduced, and the following will combine them. Figure 8The third example is introduced.

[0280] For example, Figure 8 A schematic flowchart of a voice conversation method is shown. This method can be applied to the above-mentioned... Figure 2 The scenario is illustrated. In this method, the calling device can be within the coverage area of ​​both the first and second network devices.

[0281] like Figure 8 As shown, the method may include the following steps:

[0282] S801, The calling device detected an operation to make a phone call.

[0283] S802, In response to an operation for making a phone call, the calling device may send an invitation message to the first network device.

[0284] The calling device connects to the first network device. In response to an operation used to make a phone call, the calling device can send an invitation message to the first network device.

[0285] In this embodiment of the application, the first network device may refer to the above. Figure 2 Network device 220.

[0286] S803. In response to the invitation message, the first network device may send a 100 Attempt message to the calling device.

[0287] S804. In response to the invitation message, the first network device may also send a message to the server containing M encoding methods. In response to the message containing M encoding methods, the server sends a message to the first network device carrying N encoding methods.

[0288] S805, In response to a message carrying N encoding methods, the first network device may send a 183 session progress message to the calling device.

[0289] S806, In response to the 183 session progress message, the calling device may send a message to the first network device to indicate the end of the session.

[0290] S807, In response to a message indicating the end of a session, the first network device cancels the call to the called device.

[0291] S801 to S807 can be referred to as S701 to S707 above, and will not be repeated here.

[0292] S808, in response to the 183 session progress message, the calling device can perform a network search action.

[0293] In response to the 183 session progress message, the calling device can search its range for other network devices besides the first network device. These other network devices support different networks than the first network device.

[0294] The calling device is within the coverage area of ​​the first network device and the second network device. The first network device supports a different network than the second network device, and the calling device can find the second network device.

[0295] The first network device supports different networks than the second network device.

[0296] In some examples, the first network device may support 5G networks, and the second network device may support 4G networks. Alternatively, the first network device may support 4G networks, and the second network device may support 5G networks.

[0297] In some examples, in response to a 183 session progress message, the NAS module in the calling device can perform a network search action.

[0298] S809. If a second network device is found, the calling device may send an access request message to the second network device, which is used to request access to the second network device.

[0299] In some examples, the access request message may include access request information. Optionally, the access request message may also carry information such as the calling device's identity.

[0300] In some examples, when a second network device is found, the NAS module in the calling device can send an access request message to the second network device.

[0301] S810. In response to the access request message, the second network device may send an access acceptance message to the calling device, which is used to indicate that the access was successful.

[0302] In some examples, the access acceptance message may include an Access accept message to indicate successful access.

[0303] In some examples, in response to an access request message, the NAS module in the calling device can receive an access acceptance message from a second network device.

[0304] S811. In response to the access acceptance message, the calling device may send an invitation message to the second network device.

[0305] In this step, the message and function of the invitation message are the same as those in S802 above.

[0306] In some examples, in response to an access acceptance message, the NAS module in the calling device can send an invitation request to the second network device.

[0307] The calling device executing S808 to S811 can be understood as performing a domain-switching redial. Domain switching can refer to changing the mobile communication technology, such as switching from 6G to 5G, or from 5G to 4G. Domain switching can also refer to changing the communication standard, such as switching from an NR network to an LTE network, or vice versa. LTE networks can meet the standards of 4G networks, and NR networks can meet the standards of 5G networks.

[0308] In some examples, the IMS module in the calling device, in response to the 183 session progress message, can instruct the NAS module to perform a domain change redial, i.e., execute S808 to S811 as described above.

[0309] S812. In response to the invitation message, the second network device may send a 100 Attempt message to the calling device, which indicates an attempt to connect to the called device.

[0310] S813. In response to the invitation message, the second network device can also send a message to the server that includes M encoding methods. In response to the message carrying encoding method B, the server sends a message carrying encoding method B to the second network device.

[0311] S814. In response to a message carrying encoding method B, the second network device may send a 183 session progress message 2 to the calling device. The 183 session progress message 2 is used to indicate that the invitation message has been received. The 183 session progress message 2 carries encoding method B.

[0312] Encoding method B can be any of the various encoding methods supported by the calling device. Encoding method A can be the same as or different from the aforementioned encoding method A, and this application embodiment does not limit this.

[0313] In some examples, in response to an invitation message, the NAS module in the calling device can receive a 183 session progress message 2 from the second network device.

[0314] In response to the invitation message, the second network device can also call the called device, wait for the called device to ring, and after the called device accepts the session invitation, inform the calling device that the called device has accepted the session invitation, thus realizing a voice call between the calling device and the called device. For details, please refer to S306 to S312 above, which will not be repeated here.

[0315] S815. When the second network device receives the audio data from the called device, it can send an RTP packet encoded using encoding method B to the calling device.

[0316] The second network device can receive audio data from the called device, obtain RTP packets, and send RTP packets encoded using encoding method B to the calling device.

[0317] In some examples, during execution Figure 8 During the process shown, the interface of the calling device can change as follows: Figure 9 As shown. In response to an action used to open the phone application, the calling device can display the phone interface, such as... Figure 9 As shown in interface a. In Figure 9 In the interface 'a', the phone interface includes a phone keypad, call information, and three controls. The call information includes the call date and caller's name, for example, a call with An'an on October 14th and a call with Afa on October 8th. The three controls can include a phone control, a contact control, and a favorites control. Figure 9 In interface 'a', the calling device displays an HD icon, indicating that the calling device has a SIM card installed and can use that SIM card to make calls. Figure 9 In the interface 'a', the calling device also displays the 5G identifier 901, which indicates that the calling device is on a 5G network and can communicate with the first network device through the 5G network.

[0318] When a user triggers the "AnAn" option, the calling device can detect the action to make a call and, in response, display the dialer interface, such as... Figure 9 As shown in interface b. Figure 9 In interface b, the dialer displays "An'an," "Dialing 902," and eight controls. These eight controls may include recording, waiting, adding a call, video call, muting, contacts, keyboard, hanging up, and speakerphone controls. The dialer interface can also be referred to as the "Dialing in Progress" interface; this embodiment does not limit the terminology.

[0319] The calling device is displaying Figure 9 During the process in interface b, steps S802 to S809 can be executed. If the second network device is successfully connected and supports 4G network, the calling device can display the 4G network on the interface, such as... Figure 9 As shown in the c interface. In Figure 9 In the c interface, the dialer includes the 4G identifier 903.

[0320] The calling device is displaying Figure 9During the process in the c interface, steps S811 to S814 can be executed. When the calling device receives a 190 ringing message, it can display an interface indicating that the other party is ringing, such as... Figure 9 As shown in the d interface. In Figure 9 In the d interface, the interface includes the message "The other party has been ringing 904".

[0321] When the calling device receives the invitation 200 confirmation message, it can display the call interface, such as... Figure 9 As shown in the 'e' interface. Figure 9 In the "e" interface, the call duration is displayed.

[0322] The call processing method provided in this application embodiment allows the calling device to receive a 183 session progress message. The 183 session progress message does not carry resource reservation but carries N encoding methods. The calling device can cancel the session and perform domain-switching redial, that is, access other network devices and communicate with the called device through other network devices. This helps to reduce the probability that the user cannot hear the called party's voice after the call is connected.

[0323] Optionally, in the above Figure 8 The method described above further includes: the calling device recording the phone number and encoding method B. When the calling device detects that the same phone number has been dialed again, it can send an invitation message carrying encoding method B to the first network device. This eliminates the need to repeatedly perform the process of selecting encoding method B from multiple encoding methods, thus improving voice call efficiency.

[0324] Optionally, in the above Figure 8 In the method shown, after S811, if the calling device receives an error message, or if the calling device receives an 183 session progress message including multiple encoding methods, or if the calling device does not receive RTP packets within a certain period of time (e.g., X seconds or 20 seconds), the calling device can select one encoding method from N encoding methods, such as encoding method A, and send an invitation message 1 to the second network device. This invitation message 1 carries encoding method A. This helps to reduce the probability that the user cannot hear the called party's voice after the call is connected.

[0325] The above Figure 8As just one possible example, in another example, the calling device receives a 183 session progress message. This message does not carry resource reservation but carries N encoding methods. The calling device can cancel the session and perform a domain-switching redial, i.e., execute S806 to S811 as described above. In response to the invitation message, the second network device can send a 183 session progress message 3 to the calling device. This message indicates receipt of the invitation message and includes resource reservation. The calling device and the second network device can negotiate the encoding method through resource reservation. This allows access to other network devices and communication with the called device through these devices, reducing the probability of the user not being able to hear the called party's voice after the call is connected.

[0326] In another example, the calling device receives a 183 session progress message. This message does not carry resource reservation information but carries N encoding methods. The calling device can then execute steps S806 to S810 as described above. The calling device can also send an invitation message 1 to a second network device, carrying encoding method A. This allows for access to other network devices and the sending of an encoding method supported by the called device, facilitating rapid negotiation of the encoding method and reducing the probability of the user not being able to hear the called party after the call is connected.

[0327] The above Figure 7 The method shown can be described as a redial of the original system, as described above. Figure 8 The method shown can be described as domain-switching redial. Figure 7 and Figure 8 The methods shown can be deployed separately on different terminal devices or on the same type of terminal device. This application does not limit this.

[0328] If the above Figure 7 and Figure 8 The method shown is deployed on the same type of terminal device. After receiving the 183 session progress message, the terminal device can determine whether the currently used network is a 5G network. If the currently used network is a 5G network, it will perform a domain switching redial, that is, execute the above-mentioned steps. Figure 8 As shown in S808 to S811, you can switch to a 4G network for redialing. If the current network is 4G, then redialing will be performed using the original network standard, i.e., the above steps will be executed. Figure 7 The S706 to S709 shown can continue to use the 4G network.

[0329] If the current network is 5G and the user cannot hear the called party after the call is connected, switching network devices is likely to resolve the issue. If the current network is 4G, it indicates that the 5G network may be unstable. Switching to 5G is less likely to resolve the issue in this case; therefore, redialing using the original network type is preferable. This approach offers greater flexibility and helps reduce the likelihood of the user not being able to hear the called party after the call is connected.

[0330] The above Figures 6 to 8 One or more methods may exist in the same terminal device, and this application embodiment does not limit this.

[0331] The above passed Figures 6 to 8 The method provided in this application embodiment has been introduced from the perspective of a communication system. The method will now be described from the perspective of the calling device. The calling device will be referred to as the first terminal device, and the called device as the second terminal device.

[0332] For example, / 10 illustrates a schematic diagram of a communication method provided in an embodiment of this application. As... Figure 10 As shown, the method includes the following steps:

[0333] S1001, In response to a first operation for making a phone call, a first invitation message is sent, the first invitation message being used to invite a second terminal device to participate in a first session.

[0334] S1002. Receive 183 session progress message. The 183 session progress message is used to respond to the first invitation message. The 183 session progress message carries N encoding methods, but does not carry resources for negotiating encoding methods. The N encoding methods are used to encode audio data. Each of the N encoding methods is an encoding method supported by the second terminal device. N is an integer greater than or equal to 2.

[0335] S1003. After receiving the 183 session progress message, a first message is sent. The first message carries the first encoding method among N encoding methods. The first message is used to indicate that the first terminal device will use the first encoding method for encoding. Before sending the first message, no second message is received. The second message is used to indicate that the second terminal device has accepted the first invitation message.

[0336] The 183 session progress message did not carry resources for negotiating the encoding method, but instead carried N encoding methods. This indicates that there are no resources available for negotiating the encoding method between the first and second terminal devices, and there is no unified encoding method. This will prevent the first and second terminal devices from transmitting audio data.

[0337] Based on this, after receiving the 183 session progress message, the first terminal device can select the first encoding method from the N encoding methods carried in the 183 session progress message, and indicate through the first message that the first encoding method will be used for encoding. In this way, the first encoding method is an encoding method supported by the second terminal device, which is beneficial for both the first and second terminal devices to use the first encoding method. The first and second terminal devices can unify the encoding method, which is beneficial for using the first encoding method for audio data transmission, thereby reducing the probability of no sound after the call is connected.

[0338] Optionally, after receiving the 183 session progress message, a first message is sent, including: in response to the 183 session progress message, sending a message indicating the end of the first session; after sending the message indicating the end of the first session, sending the first message, which is also used to invite the second terminal device to participate in the second session.

[0339] If the 183 session progress message does not carry resources for negotiating the encoding method, but carries N encoding methods, it indicates that the first session is highly likely to result in no sound after connection. The first terminal device can respond to the 183 session progress message by sending a message indicating the end of the first session, which helps to end the first session quickly and reduce user waiting time. The first terminal device initiates a second session through the first message. The first encoding method carried in the first message is an encoding method supported by the second terminal device. This allows both the first and second terminal devices to use the first encoding method, ensuring a unified encoding method between them. This facilitates the use of the first encoding method for audio data transmission after the second session is connected, thereby reducing the probability of no sound after the call is connected.

[0340] Optionally, after sending a message indicating the end of the first session, sending a first message includes: after sending a message indicating the end of the first session, in response to a second operation for making a phone call, sending a first message.

[0341] In this way, when a user tries to dial the same number a second time, the first terminal device sends a first message. The first encoding method carried in the first message is the encoding method supported by the second terminal device. This is beneficial because both the first and second terminal devices use the first encoding method, and the encoding method between the first and second terminal devices can be unified. This is beneficial because when the user dials the same number again, the first encoding method is used for audio data transmission after the session is connected, thereby reducing the probability of no sound after the call is connected.

[0342] Optionally, after receiving the 183 session progress message, a first message is sent, including: in response to the 183 session progress message, sending a message to a first network device to indicate the end of the first session, the first network device being the device that sent the 183 session progress message; sending a message to a second network device to request access; receiving a message from the second network device indicating successful access; and sending a first message to the second network device, the first message also being used to invite the second terminal device to participate in the second session.

[0343] If the 183 session progress message does not carry resources for negotiating the encoding method, but carries N encoding methods, it indicates that the first session is highly likely to experience a situation where there is no sound after the call is connected. This may be caused by the first network device. The first terminal device can cancel the first session and initiate a second session through the second network device, which helps reduce the probability of no sound after the call is connected. Furthermore, when the first terminal device initiates the second session, the first message should carry the first encoding method supported by the second terminal device. This encourages both the first and second terminal devices to use the first encoding method, facilitating audio data transmission using the first encoding method after the second session is connected, thereby reducing the probability of no sound after the call is connected.

[0344] Optionally, after sending the first message, the method further includes: if no audio data is received within a preset time period, sending a third message, wherein the third message carries the encoding method of the second encoding method among N encoding methods, and the third message is used to indicate that the first terminal device will use the second encoding method for encoding, and the second encoding method is different from the first encoding method.

[0345] If no audio data is received after sending the first message, the first terminal device can select the second encoding method from the N encoding methods carried in the 183 session progress message, and indicate through a third message that the second encoding method will be used for encoding. In this way, through multiple attempts, the encoding method can be unified between the first terminal device and the second terminal device, thereby reducing the probability of no sound after the call is connected.

[0346] Optionally, after sending the first message, the method further includes: receiving audio data; and in response to a third operation for making a phone call, sending a fourth message, the fourth message carrying the first encoding method, the fourth message being used to invite a second terminal device to participate in a third session.

[0347] After sending the first message, receiving audio data indicates that both the first and second terminal devices can use the same encoding method. When dialing the same number again, i.e., inviting the second terminal device to participate in the conversation again, the first encoding method can be included, which helps to quickly unify the encoding method and improve voice call efficiency.

[0348] Optionally, the first encoding method can be any one of the N encoding methods; or, the first encoding method can be the encoding method that is selected most frequently among the N encoding methods; or, the first encoding method can be the encoding method with the highest priority among the N encoding methods. This is beneficial for selecting a better encoding method.

[0349] Optionally, the first message includes M encoding methods, each of which is an encoding method supported by the first terminal device. The M encoding methods include N encoding methods, where N is an integer greater than or equal to 2 and less than or equal to M, and M is an integer greater than or equal to 2.

[0350] In this way, the encoding method selected by the first terminal device from N encoding methods is both the encoding method supported by the first terminal device and the encoding method supported by the first terminal device, which is conducive to unifying the encoding method as soon as possible.

[0351] Optionally, the telephone is a Network Protocol IP telephone, and in response to the first operation for making a telephone call, a first invitation message is sent, including: in response to the first operation for making a telephone call, sending a first invitation message to an IP telephone server, the IP telephone server being used to select a second terminal device from a plurality of second terminal devices and invite the second terminal device to participate in a first session.

[0352] The method provided in this application is applicable to scenarios involving making IP calls, and helps to reduce the probability of no sound after the call is connected in such scenarios.

[0353] Optionally, the first invitation message is an INVITE message, the 183 session progress message is a 183SESSION PROGRESS message, and the second message is an INVITE 200 OK message.

[0354] This application also provides a call processing method applied to a first terminal device. The method may include: in response to a first operation for making a phone call, sending a first invitation message, the first invitation message inviting a second terminal device to participate in a first session; receiving a 183 session progress message, the 183 session progress message responding to the first invitation message, the 183 session progress message carrying N encoding methods but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, and N being an integer greater than or equal to 2; receiving a second message, the second message indicating that the second terminal device has accepted the first invitation message; if no audio data is received within a preset time period, sending a message indicating the end of the first session; in response to the second operation for making a phone call, sending a first message, the first message carrying an encoding method of the first encoding method among the N encoding methods, the first message indicating that the first terminal device will use the first encoding method for encoding.

[0355] In this way, when a call is connected but there is no sound, when the user dials the same number again, the first terminal device can select one of the N encoding methods carried in the 183 session progress message so that the first terminal device and the second terminal device can use the encoding method to transmit audio data, which helps to reduce the probability of the call being connected but there is no sound again.

[0356] Optionally, the preset duration can be less than 20 seconds. This helps to shorten the user's waiting time.

[0357] Optionally, the preset duration can be less than 10 seconds. This helps to further reduce the user's waiting time.

[0358] This application also provides a call processing method applied to a first terminal device. The method may include: in response to a first operation for making a phone call, sending a first invitation message, the first invitation message being used to invite a second terminal device to participate in a first session; receiving a 183 session progress message from a first network device, the 183 session progress message being used in response to the first invitation message, the 183 session progress message carrying N encoding methods but not carrying resources for negotiating encoding methods, the N encoding methods being used to encode audio data, each of the N encoding methods being an encoding method supported by the second terminal device, and N being an integer greater than or equal to 2; in response to the 183 session progress message, sending a message to the first network device indicating the end of the first session; sending a message to the second network device requesting access; receiving a message from the second network device indicating successful access; and sending a second invitation message to the second network device, the second invitation message being used to invite the second terminal device to participate in a second session, the second invitation message carrying P encoding methods, where P is an integer greater than or equal to 2.

[0359] In this way, when the first terminal device receives the 183 session progress message, which does not carry resource reservation but carries N encoding methods, the first terminal device can end the first session and perform domain-switching redial, that is, communicate with the second terminal device through the second network device, which helps to reduce the probability of no sound after the call is connected.

[0360] Optionally, the P encoding methods are the same as the N encoding methods.

[0361] In this way, the encoding method carried by the first message is the same as the encoding method supported by the second terminal device, which is beneficial for the second terminal device to choose the encoding method to use, thus achieving a unified encoding method.

[0362] Optionally, the P encoding methods can be one or more of the N encoding methods.

[0363] If P encoding methods are one of N encoding methods, this will facilitate the rapid unification of encoding methods.

[0364] If P encoding methods are multiple of N encoding methods, then selecting from the multiple encoding methods supported by the second terminal device is advantageous for the second terminal device in choosing the encoding method to use, providing greater flexibility.

[0365] It should be noted that the module names involved in the embodiments of this application can all be defined as other names, as long as they can achieve the function of each module, and no specific restrictions are placed on the module names.

[0366] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) involved in the embodiments of this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of related data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.

[0367] The call processing method according to the embodiments of this application has been described above. The apparatus for performing the above method provided in the embodiments of this application is described below. Those skilled in the art will understand that the methods and apparatus can be combined with and referenced by each other, and the related apparatus provided in the embodiments of this application can perform the steps in the above list sorting method.

[0368] This application also provides a chip system, such as... Figure 11As shown, the chip system 1100 includes at least one processor (such as an application processor AP and a baseband processor Modem) 1101 and at least one interface circuit 1102. The processor 1101 and the interface circuit 1102 are interconnected via lines. For example, the interface circuit 1102 can be used to receive signals from other devices (such as the memory of a terminal). As another example, the interface circuit 1102 can be used to send signals to other devices (such as the processor 1101). Exemplarily, the interface circuit 1102 can read instructions stored in memory and send those instructions to the processor 1101. When the instructions are executed by the processor 1101, the terminal device can perform the steps in the above embodiments. Of course, the chip system may also include other discrete components, which are not specifically limited in this application embodiment.

[0369] The steps of the call processing method disclosed in the embodiments of this application can be directly implemented by a hardware decoding processor, or implemented by a combination of hardware and software modules in the decoding processor. The software modules can be located in mature storage media in the art, such as random access memory, read-only memory, programmable read-only memory, or electrically erasable programmable read-only memory (EEPROM). This storage medium is located in memory 1104, and processor 1101 reads information from memory 1104 and, in conjunction with its hardware, completes the steps of the above method.

[0370] The processor 1101, memory 1104 and communication interface 1103 can communicate with each other via communication line 1102.

[0371] In the above embodiments, the instructions stored in the memory for execution by the processor can be implemented in the form of a computer program product. This computer program product can be pre-written into the memory, or it can be downloaded and installed into the memory as software.

[0372] The call processing method provided in this application can be applied to electronic devices with voice call functionality. The electronic device includes a terminal device; the specific device form of the terminal device can be referred to the above-described related information, and will not be repeated here.

[0373] This application provides a terminal device, which may include one or more processors and a memory; the memory is used to store computer program code, which includes computer instructions, and when one or more processors execute the computer instructions, the terminal device performs the above-described call processing method.

[0374] This application provides a chip system applied to a terminal device. The chip system includes at least one processor and an interface. The interface is used to receive instructions and transmit them to the at least one processor. The at least one processor executes instructions to cause the terminal to perform the aforementioned call processing method. The chip system may be a modem, or a system-on-a-chip (SoC) including a modem, and the aforementioned method may be implemented by a modem.

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

[0376] This application also provides a computer-readable storage medium. The methods described in the above embodiments can be implemented, in whole or in part, by software, hardware, firmware, or any combination thereof. The computer-readable medium may include computer storage media and communication media, and may also include any medium capable of transferring a computer program from one place to another. The storage medium can be any target medium accessible by a computer.

[0377] As one possible design, computer-readable media may include compact disc read-only memory (CD-ROM), RAM, ROM, EEPROM, or other optical disc storage; computer-readable media may also include disk storage or other disk storage devices. Furthermore, any connecting cable may also be appropriately referred to as computer-readable media. For example, if software is transmitted from a website, server, or other remote source using coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave, then coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of media. As used herein, disks and optical discs include optical discs (CD), laser discs, optical discs, digital versatile discs (DVD), floppy disks, and Blu-ray discs, where disks typically reproduce data magnetically, while optical discs optically reproduce data using lasers.

[0378] This application describes embodiments with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processing unit of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processing unit of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

Claims

1. A call processing method, characterized in that, Applied to the first terminal device, including: In response to a first operation for making a phone call, a first invitation message is sent, the first invitation message being used to invite a second terminal device to participate in a first session; Receive 183 session progress message, the 183 session progress message is used to respond to the first invitation message, the 183 session progress message carries N encoding methods, but does not carry resources for negotiating encoding methods, the N encoding methods are used to encode audio data, each of the N encoding methods is an encoding method supported by the second terminal device, and N is an integer greater than or equal to 2; After receiving the 183 session progress message, a first message is sent. The first message carries the first encoding method among the N encoding methods. The first message is used to indicate that the first terminal device will use the first encoding method for encoding. Before sending the first message, no second message was received. The second message indicates that the second terminal device has accepted the first invitation message.

2. The method according to claim 1, characterized in that, After receiving the 183 session progress message, sending the first message includes: In response to the 183 session progress message, a message indicating the termination of the first session is sent; After sending the message indicating the end of the first session, the first message is sent, which is also used to invite the second terminal device to participate in the second session.

3. The method according to claim 1, characterized in that, After receiving the 183 session progress message, sending the first message includes: In response to the 183 session progress message, a message indicating the termination of the first session is sent to a first network device, the first network device being the device that sent the 183 session progress message; Send a message to the second network device requesting access; Receive a message from the second network device indicating successful access; The first message is sent to the second network device, and the first message is also used to invite the second terminal device to participate in the second session.

4. The method according to any one of claims 1 to 3, characterized in that, After sending the first message, the method further includes: If no audio data is received within a preset time period, a third message is sent. The third message carries the second encoding method among the N encoding methods. The third message is used to indicate that the first terminal device will use the second encoding method for encoding. The second encoding method is different from the first encoding method.

5. The method according to any one of claims 1 to 3, characterized in that, After sending the first message, the method further includes: Audio data received; In response to a third operation for making a phone call, a fourth message is sent, the fourth message carrying the first encoding method, the fourth message being used to invite the second terminal device to participate in a third session.

6. The method according to any one of claims 1 to 3, characterized in that, The first encoding method is any one of the N encoding methods; or, The first encoding method is the encoding method that has been selected most frequently among the N encoding methods; or, The first encoding method is the encoding method with the highest priority among the N encoding methods.

7. The method according to any one of claims 1 to 3, characterized in that, The first message includes M encoding methods, each of which is an encoding method supported by the first terminal device. The M encoding methods include the N encoding methods, where N is an integer greater than or equal to 2 and less than or equal to M, and M is an integer greater than or equal to 2.

8. The method according to any one of claims 1 to 3, characterized in that, The telephone is a Network Protocol (IP) telephone, and the first operation in response to making a phone call, sending a first invitation message, includes: In response to the first operation of making a phone call, the first invitation message is sent to an IP phone server, which selects one of a plurality of second terminal devices and invites the second terminal device to participate in the first session.

9. The method according to any one of claims 1 to 3, characterized in that, The first invitation message is an INVITE message, the 183 session progress message is a 183 session progress message, and the second message is an INVITE 200 OK message.

10. A call processing method, characterized in that, Applied to the first terminal device, including: In response to a first operation for making a phone call, a first invitation message is sent, the first invitation message being used to invite a second terminal device to participate in a first session; Receive 183 session progress message, the 183 session progress message is used to respond to the first invitation message, the 183 session progress message carries N encoding methods, but does not carry resources for negotiating encoding methods, the N encoding methods are used to encode audio data, each of the N encoding methods is an encoding method supported by the second terminal device, and N is an integer greater than or equal to 2; Upon receiving a second message, the second message indicates that the second terminal device has accepted the first invitation message; If no audio data is received within a preset time period, a message indicating the end of the first session is sent. In response to a second operation for making a phone call, a first message is sent, the first message carrying an encoding method of the first encoding method among the N encoding methods, the first message indicating that the first terminal device will use the first encoding method for encoding.

11. The method according to claim 10, characterized in that, The preset duration is less than 20 seconds.

12. The method according to claim 11, characterized in that, The preset duration is less than 10 seconds.

13. A call processing method, characterized in that, Applied to the first terminal device, including: In response to a first operation for making a phone call, a first invitation message is sent, the first invitation message being used to invite a second terminal device to participate in a first session; The system receives a 183 session progress message from a first network device. The 183 session progress message is used to respond to the first invitation message. The 183 session progress message carries N encoding methods but does not carry resources for negotiating encoding methods. The N encoding methods are used to encode audio data. Each of the N encoding methods is an encoding method supported by the second terminal device. N is an integer greater than or equal to 2. In response to the 183 session progress message, a message indicating the termination of the first session is sent to the first network device; Send a message to the second network device requesting access; Receive a message from the second network device indicating successful access; Send a second invitation message to the second network device. The second invitation message is used to invite the second terminal device to participate in the second session. The second invitation message carries P encoding methods, where P is an integer greater than or equal to 2.

14. The method according to claim 13, characterized in that, The P encoding methods are the same as the N encoding methods.

15. The method according to claim 13 or 14, characterized in that, The P encoding methods are one or more of the N encoding methods.

16. An electronic device, characterized in that, The electronic device includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory being used to store computer program code, the computer program code including computer instructions, the one or more processors invoking the computer instructions to cause the electronic device to perform the method as claimed in any one of claims 1 to 9, or perform the method as claimed in any one of claims 10 to 12, or perform the method as claimed in any one of claims 13 to 15.

17. A chip system, characterized in that, The chip system is applied to an electronic device, the chip system including one or more processors, the one or more processors being configured to invoke computer instructions to cause the electronic device to perform the method as described in any one of claims 1 to 9, or to perform the method as described in any one of claims 10 to 12, or to perform the method as described in any one of claims 13 to 15.