Message processing method, communication device, storage medium and product

By identifying and releasing invalid paging requests or testing the network device status when the terminal device receives multiple paging requests, the problem of the terminal device being unable to identify invalid paging requests is solved, the call success rate and accuracy are improved, and the processing efficiency of the network device is optimized.

CN115884374BActive Publication Date: 2025-09-12HUAWEI TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111130382.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-26
Publication Date
2025-09-12
Estimated Expiration
2041-09-26

AI Technical Summary

Technical Problem

In the prior art, terminal equipment cannot identify invalid paging requests, resulting in call establishment failure and missed calls when network equipment is abnormal.

Method used

Before establishing a call connection, when the terminal device receives multiple paging requests, it identifies invalid paging requests and releases the resources occupied by them by sending response messages and waiting for feedback from the network device within a preset time, or it modifies the response message to test the status of the network device to determine a valid paging request.

Benefits of technology

It improves the call success rate and the accuracy of call establishment, avoids the processing of invalid paging requests, and optimizes the processing efficiency of network equipment.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115884374B_ABST
    Figure CN115884374B_ABST
Patent Text Reader

Abstract

The embodiment of the present application provides a message processing method, communication device, storage medium and product, wherein the method includes: before establishing a call connection, receiving at least two paging requests from a network device; performing call connection processing on the paging request; sending a first response message to the network device, wherein the first response message is used to indicate the call progress of the paging request; within a first preset time period, if a rejection message for the paging request is received from the network device, or no feedback for the paging request is received from the network device, the paging request is determined to be an invalid paging request; and the resources occupied by the invalid paging request are released. By adopting the embodiment of the present application, invalid paging requests among multiple paging requests can be identified and the resources occupied by the invalid paging request can be released, which is conducive to improving the success rate of calls.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a message processing method, communication device, storage medium and product. Background Art

[0002] The IP Multimedia Subsystem (IMS) is a network system based on the Internet Protocol (IP) that provides multimedia services. IMS can provide terminal devices with a variety of multimedia services, such as voice and video calls. The Session Initiation Protocol (SIP) is the control layer protocol of the IMS and an application layer protocol used to establish, change, or end multimedia sessions. It works in conjunction with protocols such as the Real-time Transport Protocol (RTP), the RTP Control Protocol (RTCP), the Session Description Protocol (SDP), and the Domain Name System (DNS) resolution protocol to complete session establishment and media negotiation in the IMS.

[0003] Please refer to Figure 1 , Figure 1 The figure is a flow chart of a terminal device processing a multi-channel paging request in the prior art. Figure 1 As shown, after the user terminal (UE) in the IMS domain receives the first paging request (for example, an INVITE request) from the network device, it will perform call connection processing on the first paging request. For example, a 100Trying message (which can be simply referred to as a 100 message) is sent to the network device to inform the network device that the first paging request has been received and is in the next step of processing. Before the UE and the calling terminal corresponding to the first paging request establish a call connection, other paging requests (for example, second paging requests and third paging requests, etc.) may be received. The terminal device will process the first paging message received, and for the subsequent second paging messages, third paging messages, etc. received, the terminal device will reply with a rejection message (for example, a 486BusyHere message (which can be simply referred to as a 486 message)).

[0004] However, network device anomalies can cause SIP signaling congestion, resulting in valid paging requests being sent only after the third or subsequent call. Terminal devices, unaware of network anomalies, may simply reject subsequent paging requests, potentially rejecting valid (or correct) paging requests while processing invalid (or erroneous) ones. This can lead to call setup failures and missed calls. Therefore, handling multiple paging requests remains a challenge for those skilled in the art. Summary of the Invention

[0005] The embodiments of the present application disclose a message processing method, a communication device, a storage medium and a product, which can identify invalid paging requests among multiple paging requests and release the resources occupied by the invalid paging requests, thereby improving the success rate of calls.

[0006] In the first aspect, the present application discloses a first message processing method, which is applied to a called terminal, including: before establishing a call connection, receiving at least two paging requests from a network device; performing call connection processing on the paging requests; sending a first response message to the network device; within a first preset time period, if a rejection message for the paging request is received from the network device, or no feedback for the paging request is received from the network device, determining that the paging request is an invalid paging request; and releasing the resources occupied by the invalid paging request.

[0007] The paging request includes an IMS paging request, the call connection process includes allocating resources, the first response message is used to indicate the call progress of the paging request, and the feedback includes at least one of the rejection message and a temporary response message.

[0008] It is understood that before the called terminal establishes a call connection, if the called terminal receives at least two paging requests from a network device, it can assume that the network device supports each paging request and then perform call connection processing on each paging request to obtain the resources allocated for each paging request. Response messages indicating the call progress of each paging request are then sent to the network device. Within a first preset time period after sending the response messages, it is determined whether feedback from the network device regarding the paging request has been received. If the called terminal receives a rejection message from the network device regarding the paging request, this may indicate that the network device corresponding to the paging request does not support the call connection steps corresponding to the paging request, and the paging request may be determined to be an invalid paging request. If the called terminal does not receive feedback from the network device regarding the paging request, this may indicate that the network device has experienced an anomaly or that the network device does not support the call connection steps corresponding to the paging request, making normal communication difficult, and the paging request may be determined to be an invalid paging request. After determining that the paging request is invalid, the resources occupied by the invalid paging request can be released, thereby avoiding the occurrence of processing invalid paging requests, which is beneficial to improving the success rate of calls and the accuracy of establishing calls.

[0009] In a possible example, after sending the first response message to the network device, the method further includes: within the first preset time period, if a temporary response message from the network device to the paging request is received, determining that the paging request is a valid paging request.

[0010] It can be understood that within the first preset time period after the first response message is sent, if the called terminal receives a temporary response message from the network device to the paging request, it can indicate that there is no abnormality in the network device and communication can be normal, and the paging request can be determined to be a valid paging request, so that the call connection processing steps for the unfinished valid paging request can be executed, which is conducive to improving the success rate of the call.

[0011] In a possible example, after determining that the paging request is a valid paging request, it also includes: if the number of the valid paging requests is equal to 1, executing the call connection processing steps for the unfinished valid paging requests; or if the number of the valid paging requests is greater than 1, determining the target paging request received first among the valid paging requests; releasing the resources occupied by the valid paging requests other than the target paging request in the valid paging requests, and executing the call connection processing steps for the unfinished target paging requests.

[0012] It will be appreciated that after valid paging requests are identified, the number of valid paging requests is first determined. This number should be greater than or equal to 1. If the number of valid paging requests is equal to 1, call connection processing for the uncompleted valid paging request can be performed. If the number of valid paging requests is greater than 1, it indicates that there are multiple valid paging requests. The earliest received target paging request among the multiple valid paging requests can be selected, and the call connection processing steps for the uncompleted target paging request can be performed. The resources occupied by valid paging requests other than the target paging request can be released. This prevents subsequent valid paging requests from being retransmitted messages of previously received valid paging requests, resulting in duplicate call connection establishment. The call connection for the first received valid paging request is established first, ensuring call order and improving call success rate and call establishment accuracy.

[0013] In a possible example, after releasing the resources occupied by the invalid paging request, the method further includes: sending a second response message to the network device.

[0014] The second response message is used to indicate that the called terminal is busy for the invalid paging request and may include a 486 message, etc., which is not limited here. It is understood that after the resources occupied by the invalid paging request are released, the call connection step for the invalid paging request is no longer executed, and thus the call connection for the invalid paging request will not be achieved. The called terminal can send an indication to the network device that the called terminal is busy for the invalid paging request, prompting the network device not to respond to the invalid paging request, which is beneficial to improving the processing efficiency of the network device. The network device can also notify the calling terminal corresponding to the invalid paging request, prompting information such as later communication.

[0015] It should be noted that after releasing the resources occupied by the valid paging requests except the target paging request, the method may further include sending to the network device that the called terminal is busy for the valid paging requests except the target paging request.

[0016] In the second aspect, the present application discloses a second message processing method, which is applied to the called terminal, including: before establishing a call connection, receiving a paging request from a network device; performing call connection processing on the paging request; sending a first response message to the network device; within a second preset time period, if no feedback from the network device to the paging request is received, modifying the first response message to obtain at least one third response message; sending the third response message to the network device; within the second preset time period, if a temporary response message from the network device to the paging request is received, executing the call connection processing steps for the unfinished paging request.

[0017] The paging request includes an IMS paging request, the call connection process includes allocating resources, the first response message is used to indicate the call progress of the paging request, and the feedback includes at least one of the following: a temporary response message and a rejection message.

[0018] It will be appreciated that before establishing a call connection, if the called terminal receives a paging request from the network device, call connection processing can be performed. A response message indicating the call progress of the paging request is then sent to the network device. If no feedback is received from the network device regarding the paging request within a second preset period of time after sending the response message, the response message can be modified and the modified response message sent to test whether the network device supports the modified response message. If a provisional response message is received from the network device regarding the paging request within a second preset period of time after sending the modified response message, the call connection processing steps for the unfinished paging request can be performed. In this way, testing the network device through different response messages helps improve the success rate of calls.

[0019] In a possible example, modifying the first response message to obtain at least one third response message includes: modifying a target parameter of the first response message to obtain at least one third response message.

[0020] Among them, the target type of the target parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource reservation parameter; if the first response message is based on the User Datagram Protocol UDP, the target type includes the protocol type, and the third response message is based on the Transmission Control Protocol TCP.

[0021] It is understood that within the same conversation, after modifying the target parameters of the first response message, a different third response message may be obtained. Using the modified third response message to probe the network device and, if the probe is successful, completing the remaining call processing steps, helps improve the success rate of call connections.

[0022] In a possible example, after sending the third response message to the network device, it also includes: within the second preset time period, if no feedback from the network device to the paging request is received, and there is a next third response message, sending the next third response message to the network device.

[0023] It is understood that when there are multiple third response messages, the order of sending the third response messages can be pre-set. That is, when no feedback is received for the third response message, the next third response message is sent, which can further improve the success rate of the call connection.

[0024] In a possible example, before modifying the first response message to obtain at least one third response message, it also includes: returning to execute the step of performing call connection processing according to the paging request to obtain a newly allocated first resource; determining the first tag parameter reaching the To header field based on the first resource; modifying the first response message to obtain at least one third response message includes: modifying the first parameter and the first tag parameter of the first response message to obtain a third response message.

[0025] The type of the first parameter is the target type.

[0026] It can be understood that returning to execute the step of performing call connection processing according to the paging request will establish a new dialogue and the called terminal will reallocate resources. The first tag parameter of the To header field of the first response message is determined based on the newly allocated first resource. The first parameter and the first tag parameter of the first response message are then modified to obtain a third response message. The first tag parameter of the To header field of the first response message is determined based on the newly allocated first resource. The first parameter and the first tag parameter of the first response message are then modified to obtain a third response message. After sending the third response message, it can be understood that another terminal virtualized by the called terminal sends the third response message. Based on whether the network device has feedback for the terminal, it is determined whether the network device can support the unfinished call connection step. In this way, by virtualizing a new terminal and a modified response message, the network device is tested in different dialogues, which is conducive to improving the success rate of the call connection.

[0027] In a possible example, after sending the third response message to the network device, it also includes: within the second preset time period, if no feedback from the network device regarding the paging request is received, returning to execute the step of performing call connection processing according to the paging request to obtain a newly allocated second resource; determining the second tag parameter of the To header field based on the second resource; modifying the second parameter and the second tag parameter of the first response message to obtain a fourth response message; and sending the fourth response message to the network device.

[0028] The type of the second parameter is the target type.

[0029] It is understood that if the called terminal does not receive feedback from the network device regarding the paging request within the second preset duration, the process returns to the call connection processing step based on the paging request, reestablishes a new session, and obtains newly allocated second resources. The second tag parameter of the To header field of the first response message is determined based on the newly allocated second resources. The second parameter and the second tag parameter of the first response message are then modified to obtain a fourth response message. After sending the fourth response message, a new session is established, which can be understood as another terminal virtualized by the called terminal sending the fourth response message. Based on whether the network device has provided feedback to the terminal, it is determined whether the network device can support the unfinished call connection step. If no feedback is received, the process continues based on this example until feedback is received from the network device or a preset condition is met, at which point the modification step ends. In this way, within the same session, after modifying the target type parameter in the first response message, a different third response message can be obtained. By modifying the response message to test the network device, the success rate of call connections can be improved.

[0030] In the embodiment of the present application, the preset conditions may include no more modifiable response messages, or a time interval between the sending time of the first response message and the sending time exceeds a preset duration (which may be a first preset duration, or a duration greater than a second preset duration), etc., which are not limited here. When the preset conditions are met, the resources occupied by the invalid paging request may also be released.

[0031] In one possible example, the method further includes releasing resources occupied by the paging request if the called terminal does not receive a rejection message from the network device regarding the paging request within the second preset time period. This avoids processing invalid paging requests, thereby improving the call success rate and call establishment accuracy.

[0032] In one possible example, after sending the first response message to the network device, it also includes: within a third preset time period, if no feedback from the network device regarding the paging request is received, returning to execute the step of sending the first response message to the network device.

[0033] The third preset duration is shorter than the second preset duration.

[0034] It can be understood that since the tag parameter of the To header field is modified and a new dialogue is created, the first response message can be resent in the dialogue corresponding to the first response message to confirm whether the lack of feedback is caused by a network abnormality. And within the third preset time after the first response message, if a temporary response message from the network device is received, the unfinished call connection processing steps can be executed. If a rejection message from the network device is received, the resources occupied by the paging request can be released. If no feedback from the network device is received, it can be resent when the third preset time is reached, or when other time periods such as 2 times the third preset time are reached. In this way, by resending the first response message, the success rate of the call connection can be improved.

[0035] In a possible example, the method further includes: determining the second preset duration according to the protocol type of the paging request. In this way, the accuracy of determining whether the first response message is invalid can be improved, which is conducive to improving the success rate of communication.

[0036] In a possible example, if the protocol type of the paging request is UDP, the second preset duration is greater than 3*T1 and less than 4*T1, where T1 is the preset duration of the first timer.

[0037] In a possible example, if the protocol type of the paging request is TCP, the second preset time length is greater than 5 seconds and less than 6 seconds.

[0038] On the third aspect, the present application also discloses a third message processing method, which is applied to a network device, including: before establishing a call connection, sending at least two paging requests to the called terminal, the paging requests including IMS paging requests; receiving a first response message from the called terminal, the first response message being used to indicate the call progress of the paging request.

[0039] In a possible example, after receiving the first response message from the called terminal, the method further includes: sending feedback regarding the paging request to the called terminal, where the feedback includes at least one of the following: a rejection message and a temporary response message.

[0040] In a fourth aspect, the present application further discloses a fourth message processing method, which is applied to a calling terminal and includes: sending a paging request to a network device, wherein the paging request includes an IMS paging request.

[0041] In the fifth aspect, the present application discloses a first communication device, which is applied to a called terminal, including: a transceiver unit for receiving at least two paging requests from a network device before establishing a call connection; a processing unit for performing call connection processing on the paging request; the transceiver unit is also used to send a first response message to the network device; the processing unit is also used to determine that the paging request is an invalid paging request if a rejection message for the paging request is received from the network device within a first preset time period, or no feedback from the network device for the paging request is received; and release the resources occupied by the invalid paging request.

[0042] The paging request includes an IMS paging request, the call connection process includes allocating resources, the first response message is used to indicate the call progress of the paging request, and the feedback includes at least one of the rejection message and a temporary response message.

[0043] It is understood that before the called terminal establishes a call connection, if the called terminal receives at least two paging requests from a network device, it can assume that the network device supports each paging request and then perform call connection processing on each paging request to obtain the resources allocated for each paging request. Response messages indicating the call progress of each paging request are then sent to the network device. Within a first preset time period after sending the response messages, it is determined whether feedback from the network device regarding the paging request has been received. If the called terminal receives a rejection message from the network device regarding the paging request, this may indicate that the network device corresponding to the paging request does not support the call connection steps corresponding to the paging request, and the paging request may be determined to be an invalid paging request. If the called terminal does not receive feedback from the network device regarding the paging request, this may indicate that the network device has experienced an anomaly or that the network device does not support the call connection steps corresponding to the paging request, making normal communication difficult, and the paging request may be determined to be an invalid paging request. After determining that the paging request is invalid, the resources occupied by the invalid paging request can be released, thereby avoiding the occurrence of processing invalid paging requests, which is beneficial to improving the success rate of calls and the accuracy of establishing calls.

[0044] In a possible example, the processing unit is further configured to determine that the paging request is a valid paging request if a temporary response message from the network device to the paging request is received within the first preset time period.

[0045] It can be understood that within the first preset time period after the first response message is sent, if the called terminal receives a temporary response message from the network device to the paging request, it can indicate that there is no abnormality in the network device and communication can be normal, and the paging request can be determined to be a valid paging request, so that the call connection processing steps for the unfinished valid paging request can be executed, which is conducive to improving the success rate of the call.

[0046] In a possible example, the processing unit is further used to, if the number of the valid paging requests is equal to 1, execute the call connection processing steps for the unfinished valid paging requests; or if the number of the valid paging requests is greater than 1, determine the target paging request received first among the valid paging requests; release the resources occupied by the valid paging requests other than the target paging request in the valid paging requests, and execute the call connection processing steps for the unfinished target paging requests.

[0047] It will be appreciated that after valid paging requests are identified, the number of valid paging requests is first determined. This number should be greater than or equal to 1. If the number of valid paging requests is equal to 1, call connection processing for the uncompleted valid paging request can be performed. If the number of valid paging requests is greater than 1, it indicates that there are multiple valid paging requests. The earliest received target paging request among the multiple valid paging requests can be selected, and the call connection processing steps for the uncompleted target paging request can be performed. The resources occupied by valid paging requests other than the target paging request can be released. This prevents subsequent valid paging requests from being retransmitted messages of previously received valid paging requests, resulting in duplicate call connection establishment. The call connection for the first received valid paging request is established first, ensuring call order and improving call success rate and call establishment accuracy.

[0048] In a possible example, the transceiver unit is further configured to send a second response message to the network device, where the second response message is configured to indicate that the called terminal is in a busy state for the invalid paging request.

[0049] The second response message is used to indicate that the called terminal is busy with respect to the invalid paging request and may include a 486 message, etc., which is not limited here. It is understood that after the resources occupied by the invalid paging request are released, the call connection step for the invalid paging request is no longer executed, thereby preventing the call connection for the invalid paging request from being established. The called terminal may send an indication to the network device that the called terminal is busy with respect to the invalid paging request, prompting the network device not to respond to the invalid paging request, thereby improving the processing efficiency of the network device. The network device may also inform the calling terminal of the invalid paging request, prompting information such as a later communication.

[0050] In the sixth aspect, the present application discloses a second communication device, which is applied to a called terminal, including: a transceiver unit for receiving a paging request from a network device before establishing a call connection; a processing unit for performing call connection processing on the paging request; the transceiver unit is also used to send a first response message to the network device, and the first response message is used to indicate the call progress of the paging request; the processing unit is also used to modify the first response message if no feedback from the network device to the paging request is received within a second preset time period, and obtain at least one third response message, and the feedback includes at least one of the following: a temporary response message and a rejection message; the transceiver unit is also used to send the third response message to the network device; the processing unit is also used to execute the call connection processing steps for the incomplete paging request if a temporary response message from the network device to the paging request is received within the second preset time period.

[0051] The paging request includes an IMS paging request, the call connection process includes allocating resources, the first response message is used to indicate the call progress of the paging request, and the feedback includes at least one of the following: a temporary response message and a rejection message.

[0052] It will be appreciated that before establishing a call connection, if the called terminal receives a paging request from the network device, call connection processing can be performed. A response message indicating the call progress of the paging request is then sent to the network device. If no feedback is received from the network device regarding the paging request within a second preset period of time after sending the response message, the response message can be modified and the modified response message sent to test whether the network device supports the modified response message. If a provisional response message is received from the network device regarding the paging request within a second preset period of time after sending the modified response message, the call connection processing steps for the unfinished paging request can be performed. In this way, testing the network device through different response messages helps improve the success rate of calls.

[0053] In a possible example, the processing unit is specifically configured to modify a target parameter of the first response message to obtain at least one third response message.

[0054] Among them, the target type of the target parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource reservation parameter; if the paging request is based on the User Datagram Protocol UDP, the target type includes the protocol type, and the third response message is based on the Transmission Control Protocol TCP.

[0055] It is understood that within the same conversation, after modifying the target parameters of the first response message, a different third response message may be obtained. Using the modified third response message to probe the network device and, if the probe is successful, completing the remaining call processing steps, helps improve the success rate of call connections.

[0056] In a possible example, the transceiver unit is further used to send the next third response message to the network device within the second preset time period if no feedback from the network device to the paging request is received and there is a next third response message.

[0057] It is understood that when there are multiple third response messages, the order of sending the third response messages can be pre-set. That is, when no feedback is received for the third response message, the next third response message is sent, which can further improve the success rate of the call connection.

[0058] In a possible example, the processing unit is specifically used to return to execute the step of performing call connection processing according to the paging request to obtain a newly allocated first resource; determine the first tag parameter of the To header field based on the first resource; modify the first parameter and the first tag parameter of the first response message to obtain a third response message.

[0059] The type of the first parameter is the target type.

[0060] It can be understood that returning to execute the step of performing call connection processing according to the paging request will establish a new dialogue and the called terminal will reallocate resources. The first tag parameter of the To header field of the first response message is determined based on the newly allocated first resource. The first parameter and the first tag parameter of the first response message are then modified to obtain a third response message. The first tag parameter of the To header field of the first response message is determined based on the newly allocated first resource. The first parameter and the first tag parameter of the first response message are then modified to obtain a third response message. After sending the third response message, it can be understood that another terminal virtualized by the called terminal sends the third response message. Based on whether the network device has feedback for the terminal, it is determined whether the network device can support the unfinished call connection step. In this way, by virtualizing a new terminal and a modified response message, the network device is tested in different dialogues, which is conducive to improving the success rate of the call connection.

[0061] In a possible example, the processing unit is also used to, if no feedback from the network device regarding the paging request is received within the second preset time period, return to execute the step of performing call connection processing according to the paging request, and obtain a newly allocated second resource; determine the second tag parameter of the To header field based on the second resource; modify the second parameter and the second tag parameter of the third response message to obtain a fourth response message; and send the fourth response message to the network device.

[0062] The type of the second parameter is the target type.

[0063] It is understood that if the called terminal does not receive feedback from the network device regarding the paging request within the second preset duration, the process returns to the call connection processing step based on the paging request, reestablishes a new session, and obtains newly allocated second resources. The second tag parameter of the To header field of the first response message is determined based on the newly allocated second resources. The second parameter and the second tag parameter of the first response message are then modified to obtain a fourth response message. After sending the fourth response message, a new session is established, which can be understood as another terminal virtualized by the called terminal sending the fourth response message. Based on whether the network device has provided feedback to the terminal, it is determined whether the network device can support the unfinished call connection step. If no feedback is received, the process continues based on this example until feedback is received from the network device or a preset condition is met, at which point the modification step ends. In this way, within the same session, after modifying the target type parameter in the first response message, a different third response message can be obtained. By modifying the response message to test the network device, the success rate of call connections can be improved.

[0064] In the embodiment of the present application, the preset conditions may include no more modifiable response messages, or a time interval between the sending time of the first response message and the sending time exceeds a preset duration (which may be a first preset duration, or a duration greater than a second preset duration), etc., which are not limited here. When the preset conditions are met, the resources occupied by the invalid paging request may also be released.

[0065] In one possible example, the processing unit is further configured to release resources occupied by the paging request if the called terminal does not receive a rejection message from the network device regarding the paging request within a second preset time period. This avoids processing invalid paging requests, thereby improving the success rate of calls and the accuracy of call establishment.

[0066] In a possible example, the processing unit is also used to return to the step of sending the first response message to the network device if no feedback from the network device regarding the paging request is received within a third preset time period after the first response message is sent.

[0067] The third preset duration is shorter than the second preset duration.

[0068] It can be understood that since the tag parameter of the To header field is modified and a new dialogue is created, the first response message can be resent in the dialogue corresponding to the first response message to confirm whether the lack of feedback is caused by a network abnormality. And within the third preset time after the first response message, if a temporary response message from the network device is received, the unfinished call connection processing steps can be executed. If a rejection message from the network device is received, the resources occupied by the paging request can be released. If no feedback from the network device is received, it can be resent when the third preset time is reached, or when other time periods such as 2 times the third preset time are reached. In this way, by resending the first response message, the success rate of the call connection can be improved.

[0069] In a possible example, the processing unit is further configured to determine the second preset duration according to the protocol type of the paging request. In this way, the accuracy of determining whether the first response message is invalid can be improved, which is conducive to improving the success rate of communication.

[0070] In a possible example, if the paging request is based on UDP, the second preset duration is greater than 3*T1 and less than 4*T1, where T1 is the preset duration of the first timer.

[0071] In a possible example, if the paging request is based on TCP, the second preset time length is greater than 5 seconds and less than 6 seconds.

[0072] In the seventh aspect, the present application discloses a third communication device, which is applied to a network device, including: a transceiver unit for sending at least two paging requests to a called terminal before establishing a call connection, wherein the paging request includes an IMS paging request; and receiving a first response message from the called terminal, wherein the first response message is used to indicate the call progress of the paging request.

[0073] In a possible example, the transceiver unit is further configured to send feedback regarding the paging request to the called terminal, where the feedback includes at least one of the following: a rejection message and a temporary response message.

[0074] In an eighth aspect, the present application discloses a fourth communication device, which is applied to a network device and includes: a transceiver unit for sending a paging request to the network device.

[0075] In a ninth aspect, the present application discloses a sixth communication device, comprising a processor, a memory connected to the processor, and a communication interface, wherein the memory is used to store one or more programs and is configured to execute the steps of any of the above aspects by the processor.

[0076] In a tenth aspect, an embodiment of the present application discloses a computer-readable storage medium, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer executes any of the methods described above.

[0077] In an eleventh aspect, an embodiment of the present application discloses a computer program product, which is used to store a computer program. When the computer program is run on a computer, the computer executes any of the methods described above.

[0078] In the twelfth aspect, an embodiment of the present application discloses a first chip, comprising a processor and a memory, wherein the processor is used to call and execute instructions stored in the memory, so that a device equipped with the chip executes any of the methods described above.

[0079] In the thirteenth aspect, an embodiment of the present application discloses a second chip, comprising: an input interface, an output interface and a processing circuit, wherein the input interface, the output interface and the processing circuit are connected through an internal connection path, and the processing circuit is used to execute any of the above methods.

[0080] In the fourteenth aspect, an embodiment of the present application discloses a third chip, including: an input interface, an output interface, a processor, and optionally, a memory. The input interface, the output interface, the processor and the memory are connected through an internal connection path. The processor is used to execute the code in the memory. When the code is executed, the processor is used to execute the method in any of the above aspects.

[0081] In the fifteenth aspect, an embodiment of the present application discloses a chip system, comprising at least one processor, a memory and an interface circuit, wherein the memory, the transceiver and the at least one processor are interconnected through lines, and a computer program is stored in the at least one memory; the computer program is executed by the processor according to any of the methods in the above aspects.

[0082] By implementing an embodiment of the present application, before a called terminal establishes a call connection, if the called terminal receives at least two paging requests from a network device, it can assume that the network device supports each paging request and then perform call connection processing on each paging request to obtain the resources allocated for each paging request. Response messages indicating the call progress of each paging request are then sent to the network device. Within a first preset time period after sending the response messages, it is determined whether feedback from the network device regarding the paging request has been received. If the called terminal receives a rejection message from the network device regarding the paging request, it can indicate that the network device corresponding to the paging request does not support the call connection steps corresponding to the paging request, and the paging request can be determined to be invalid. If the called terminal does not receive feedback from the network device regarding the paging request, it can indicate that the network device has experienced an anomaly or that the network device does not support the call connection steps corresponding to the paging request, making normal communication difficult, and the paging request can be determined to be invalid. After determining that the paging request is invalid, the resources occupied by the invalid paging request can be released, thereby avoiding the need to process invalid paging requests. If the called terminal receives a provisional response message from the network device to the paging request, it indicates that the network device is normal and communication is possible, and the paging request can be determined to be a valid paging request. The unfinished call connection steps of the valid paging request can then be executed. This helps to improve the success rate of calls.

[0083] On the other hand, after the called terminal receives a paging request from the network device, it performs call connection processing on the paging request and sends a response message to the network device. If no response is received from the network device regarding the paging request within a second preset time period, the called terminal may modify the response message and send the modified response message to test whether the network device supports the modified response message. This method of testing the network device with different response messages helps improve the success rate of calls. BRIEF DESCRIPTION OF THE DRAWINGS

[0084] The following is an introduction to the drawings used in the embodiments of this application.

[0085] Figure 1 This is a flow chart of a terminal device processing a multi-channel paging request provided in the prior art;

[0086] Figure 2 This is a schematic diagram of the structure of a communication system provided by an embodiment of the present application;

[0087] Figure 3 This is a schematic diagram of the structure of a terminal device provided in an embodiment of the present application;

[0088] Figure 4 This is a schematic diagram of the structure of a network device provided in an embodiment of the present application;

[0089] Figure 5 This is a schematic diagram of the structure of an IMS provided in an embodiment of the present application;

[0090] Figure 6 This is a flow chart of a message processing method provided by an embodiment of the present application;

[0091] Figure 7 This is a flowchart of another message processing method provided by an embodiment of the present application;

[0092] Figure 8 This is a flowchart of another message processing method provided by an embodiment of the present application;

[0093] Figure 9 This is a flow chart of another terminal device processing a multi-way paging request provided in an embodiment of the present application;

[0094] Figure 10 This is a schematic diagram of a process for a terminal device to process a multi-way paging request according to another embodiment of the present application;

[0095] Figure 11 This is a schematic structural diagram of a communication device provided in an embodiment of the present application;

[0096] Figure 12 It is a structural diagram of another communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0097] The embodiments of the present application are described below in conjunction with the drawings in the embodiments of the present application.

[0098] See Figure 2 , Figure 2It is a structural diagram of a communication system provided in an embodiment of the present application. The communication system in the embodiment of the present application may be a communication system supporting second generation (2G) mobile communication technology, for example, global system for mobile communication (GSM) access technology, code division multiple access (CDMA) access technology; or, the communication system may be a communication system supporting third generation (3G) mobile communication technology, for example, wideband code division multiple access (WCDMA) access technology, etc.; or, the communication system may be a communication system supporting fourth generation (4G) mobile communication technology, for example, long term evolution (LTE) access technology; or, the communication system may be a communication system supporting fifth generation (5G) mobile communication technology, for example, NR access technology; or, the communication system may be a communication system supporting multiple wireless technologies, for example, a communication system supporting LTE technology and NR technology. In addition, the communication system may be applicable to future-oriented communication technologies. Communication systems that use IMS as a voice solution may adopt the message processing method provided in the embodiment of the present application.

[0099] like Figure 2 As shown, the communication system may include at least one terminal device (e.g., terminal device 201), at least one access network device (e.g., access network device 202), at least one core network device (e.g., core network device 203) and an IP multimedia subsystem (IMS) (e.g., IMS204).

[0100] In an embodiment of the present application, a terminal device is a device with wireless transceiver capabilities. The terminal device can be deployed on land, including indoors or outdoors, handheld, wearable or vehicle-mounted. The terminal device can also be deployed on water (such as ships, etc.) or in the air (such as airplanes, balloons and satellites, etc.). The terminal device can be a mobile phone, a tablet computer, a computer with wireless transceiver capabilities, a virtual reality (VR) terminal device, an augmented reality (AR) terminal device, a wireless terminal in industrial control, a wireless terminal in self-driving, a wireless terminal in remote medical care, a wireless terminal in smart grid, a wireless terminal in transportation safety, a wireless terminal in smart city, a wireless terminal in smart home, etc.

[0101] The embodiments of the present application do not limit the application scenarios. Terminal devices may also sometimes be referred to as user equipment (UE), terminal, access terminal, UE unit, UE station, mobile device, mobile station, mobile station, mobile terminal, mobile client, mobile unit, remote station, remote terminal device, remote unit, wireless unit, wireless communication device, user agent or user device, etc. Among them, the access terminal can be a cellular phone, a cordless phone, a session initiation protocol (SIP) phone, a wireless local loop (WLL) station, a personal digital assistant (PDA), a handheld device with wireless communication function, a computing device or other processing device connected to a wireless modem, a vehicle-mounted device, a wearable device, a terminal device in the future 5G or a terminal device in the future evolved public land mobile network (PLMN) network, etc. The following description often uses the terminal as an example for explanation.

[0102] Please refer to Figure 3 , Figure 3 This is a schematic diagram of the structure of a terminal device provided in an embodiment of the present application. It can be understood that, Figure 3 The terminal device 300 in can be Figure 2The terminal device 201 in the communication system shown. Figure 3 As shown, the terminal device 300 may include an input and output module (including an audio input and output module 318, a key input module 316, and a display 320, etc.), a user interface 302, one or more processors 304, a transmitter (transmit, TX) 306, a receiver (receive, RX) 308, a coupler 310, an antenna 314, and a memory 312. These components may be connected via a bus or other means. Figure 3 Take the connection via bus 305 as an example.

[0103] The antenna 314 can be used to convert electromagnetic energy into electromagnetic waves in free space, or convert electromagnetic waves in free space into electromagnetic energy in a transmission line. The coupler 310 is used to split the mobile communication signal received by the antenna 314 into multiple paths and distribute them to multiple receivers 308.

[0104] The transmitter 306 may be configured to transmit the signal output by the processor 304 .

[0105] The receiver 308 may be configured to receive and process the mobile communication signal received by the antenna 314 .

[0106] In the embodiment of the present application, the transmitter 306 and the receiver 308 can be regarded as a wireless modem. In the terminal device 300, the number of the transmitter 306 and the number of the receiver 308 can be one or more.

[0107] Apart from Figure 3 In addition to the transmitter 306 and receiver 308 shown, the terminal device 300 may also include other communication components, such as a global positioning system (GPS) module, a Bluetooth module, a wireless fidelity (Wi-Fi) module, etc. The terminal device 300 is not limited to the wireless communication signals described above, and may also support other wireless communication signals, such as satellite signals, shortwave signals, etc. The terminal device 300 is not limited to wireless communication, and may also be configured with a wired network interface (such as a local area network (LAN) interface) 301 to support wired communication.

[0108] The input / output module can be used to implement interaction between the terminal device 300 and the user / external environment, and can mainly include an audio input / output module 318, a key input module 316, and a display 320. The input / output module can also include a camera, a touch screen, and sensors. The input / output module can communicate with the processor 304 through the user interface 302.

[0109] The memory 312 can be coupled to the processor 304 via a bus or input / output ports, or the memory 312 can be integrated with the processor 304. The memory 312 is used to store various software programs and / or multiple sets of instructions. The memory 312 may include high-speed random access memory, or may include non-volatile memory. For example, one or more disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. The memory 312 can store an operating system (hereinafter referred to as "system"), for example, an embedded operating system such as ANDROID, IOS, WINDOWS, or LINUX. The memory 312 can also store a network communication program that can be used to communicate with one or more additional devices, one or more terminal devices, or one or more network devices. The memory 312 can also store a user interface program that can realistically display the content of the application through a graphical operating interface, or receive user control operations on the application through input controls such as menus, dialog boxes, and buttons. In an embodiment of the present application, the memory 312 can be used to store an implementation program of the message processing method provided in one or more embodiments of the present application on the terminal device 300 side.

[0110] The processor 304 can be used to read and execute computer-readable instructions. Specifically, the processor 304 can be used to call a program stored in the memory 312, for example, an implementation program of the message processing method provided in one or more embodiments of the present application on the terminal device 300 side, and execute the instructions contained in the program to implement the methods involved in subsequent embodiments. The processor 304 can support one or more communication technologies such as 2G communication, 3G communication, 4G communication, and 5G communication. Optionally, when the processor 304 sends any message or data, it specifically drives or controls the transmitter 306 to perform the sending. Optionally, when the processor 304 receives any message or data, it specifically drives or controls the receiver 308 to perform the receiving. Therefore, the processor 304 can be regarded as a control center for performing sending or receiving, and the transmitter 306 and the receiver 308 are the specific executors of the sending and receiving operations.

[0111] Need to explain, Figure 3 The terminal device 300 shown is an implementation of an embodiment of the present application. In actual applications, the terminal device 300 may also include more or fewer components, which is not limited here.

[0112] In an embodiment of the present application, the access network device may be a device on the access network side for supporting the terminal to access the communication system. The access network device may be referred to as a base station (BS), for example, an evolved node base station (eNB) in a 4G access technology communication system, a next generation node base station (gNB) in a 5G access technology communication system, a transmission reception point (TRP), an access point (AP), etc., or the access network device may be referred to as a host node, an IAB donor, a host IAB, a host or donor gNB (DgNB), etc.

[0113] It should be understood that the network device in the embodiment of the present application may be the above-mentioned access network device, core network device or IMS. Figure 4 , Figure 4 This is a schematic diagram of the structure of a network device provided in an embodiment of the present application. Figure 4 As shown, the network device 400 may include: one or more processors 401, memory 402, network interface 403, transmitter 405, receiver 406, coupler 407 and antenna 408. These components may be connected via bus 404 or other means. Figure 4 Take bus connection as an example.

[0114] The network interface 403 may be used for the network device 400 to communicate with other communication devices (eg, other network devices). Specifically, the network interface 403 may be a wired interface.

[0115] The transmitter 405 can be used to perform transmission processing on the signal output by the processor 401, for example, signal modulation. The receiver 406 can be used to perform reception processing on the mobile communication signal received by the antenna 408. For example, signal demodulation. In some embodiments of the present application, the transmitter 405 and the receiver 406 can be regarded as a wireless modem. In the network device 400, the number of transmitters 405 and receivers 406 can be one or more. The antenna 408 can be used to convert electromagnetic energy in the transmission line into electromagnetic waves in free space, or convert electromagnetic waves in free space into electromagnetic energy in the transmission line. The coupler 407 can be used to divide the mobile communication signal into multiple paths and distribute them to multiple receivers 406.

[0116] The memory 402 can be coupled to the processor 401 via the bus 404 or the input / output port, or the memory 402 can be integrated with the processor 401. The memory 402 is used to store various software programs and / or multiple sets of instructions. Specifically, the memory 402 may include a high-speed random access memory, or may include a non-volatile memory. For example, one or more disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. The memory 402 can store an operating system (hereinafter referred to as the system). For example, embedded operating systems such as uCOS, VxWorks, and RTLinux. The memory 402 can also store a network communication program, which can be used to communicate with one or more additional devices, one or more terminal devices, or one or more network devices.

[0117] Processor 401 can be used to manage radio channels, establish and tear down calls and communication links, and provide cell handover control for users within its control area. Specifically, processor 401 may include: a central administration / communication module (AM / CM) for voice and information exchange; a basic module (BM) for performing call processing, signaling processing, radio resource management, radio link management, and circuit maintenance functions; and a transcoder and sub-multiplexer (TCSM) for performing multiplexing, demultiplexing, and transcoding functions.

[0118] In the embodiments of the present application, processor 401 may be configured to read and execute computer-readable instructions. Specifically, processor 401 may be configured to invoke a program stored in memory 402. For example, the data transmission method provided in one or more embodiments of the present application may be implemented as a program on network device 400, and the instructions contained in the program may be executed.

[0119] It should be noted that Figure 4 The network device 400 shown is an implementation of an embodiment of the present application. In actual applications, the network device 400 may also include more or fewer components, which is not limited here.

[0120] In the embodiments of the present application, the core network device may also be referred to as a core network element. The core network device may be connected to one or more access network devices and may provide one or more functions of session management, access authentication, Internet Protocol (IP) address allocation, and data transmission for terminals in the system. For example, the core network device may be a mobile management entity (MME) or a serving gateway (SGW) in a 4G access technology communication system, an access and mobility management function (AMF) network element or a user plane function (UPF) network element in a 5G access technology communication system, and the like.

[0121] IMS is an IP-based network system used to provide multimedia services. Figure 5 , Figure 5 This is a schematic diagram of the structure of a terminal device provided in an embodiment of the present application. It can be understood that, Figure 5 The IMS500 can be Figure 2 The IMS 204 in the communication system shown. Figure 5 As shown, the IMS 500 may include a proxy-call session control function (P-CSCF) entity 501, an interrogating-call session control function (I-CSCF) entity 502, a serving-call session control function (S-CSCF) entity 503, a home subscriber server (HSS) 504, and the like.

[0122] In this embodiment of the present application, the P-CSCF entity can be the initial connection point between the access network device and the IMS. All session messages initiated by and terminated at IMS-supported terminal devices must be forwarded through the P-CSCF entity. The P-CSCF entity can be used to forward registration requests from terminal devices to the S-CSCF entity and forward registration response information to the terminal device.

[0123] The I-CSCF entity connects to the S-CSCF and P-CSCF entities, providing a gateway to the terminal device's home network. During IMS registration, the P-CSCF entity forwards the registration request message from the terminal device to the I-CSCF entity. The I-CSCF entity then queries the HSS in the IMS to select an S-CSCF entity for the terminal device. During a call, a call message destined for the IMS network is first routed to the I-CSCF. The I-CSCF entity then queries the HSS in the IMS to obtain the address information of the S-CSCF entity with which the terminal device is registered, and then routes the message to the S-CSCF.

[0124] The S-CSCF entity is the control core of the IMS, providing functions such as session control and registration for terminal devices. The S-CSCF entity is used to receive registration requests from terminal devices forwarded by the P-CSCF entity, and to authenticate the terminal devices in cooperation with the HSS; and after confirming that the authentication is successful, obtain the contract information of the terminal device from the HSS. The S-CSCF entity is also used to connect to each application server (application server, AP) based on the ISC interface (which is the interface between each application server (application server, AP) and the S-CSCF, and between the gateway function (GWF) of the IMS and the S-CSCF). The S-CSCF entity is also used to trigger the application server to perform operations and route the request message of the terminal device to the corresponding application server.

[0125] The HSS is the main data storage for all user and service-related data in the IMS. The data stored in the HSS mainly includes user identity, subscription information, access information, etc., which are not limited here.

[0126] In an embodiment of the present application, a terminal device is configured to generate a registration request and send the generated registration request to a P-CSCF entity in the IMS via an access network device and a core network device. The terminal device is also configured to receive a registration response message from the IMS via the core network device and the access network device. For example, the registration request may be a challenge registration request, and the registration response message may be an acknowledgement message (e.g., a 200 OK message, which may be referred to as a 200 message).

[0127] It should be noted that Figure 2 The communication system shown is an implementation of an embodiment of the present application. In actual applications, the communication system and the devices in the communication system may also include more or fewer components, which is not limited here.

[0128] The terms "system" and "network" in the embodiments of the present application can be used interchangeably. "Multiple" refers to two or more. In view of this, "multiple" can also be understood as "at least two" in the embodiments of the present application. "And / or" describes the association relationship of associated objects, indicating that three relationships can exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / ", unless otherwise specified, generally indicates that the previous and next associated objects are in an "or" relationship. And in the description of the embodiments of the present application, words such as "first" and "second" are only used to distinguish the purpose of description, and cannot be understood as indicating or implying relative importance, nor can they be understood as indicating or implying order.

[0129] To facilitate understanding of this application, the following describes the Session Initiation Protocol (SIP) involved in the embodiments of this application. SIP is the control layer protocol of the IMS and an application layer protocol that can be used to establish, change, or end multimedia sessions. It works in conjunction with protocols such as the Real-time Transport Protocol (RTP), the RTP Control Protocol (RTCP), the Session Description Protocol (SDP), and the Domain Name System (DNS) resolution protocol to complete session establishment and media negotiation in the IMS.

[0130] SIP is the most commonly used protocol for Voice over IP (VoIP) communications. VoIP is a technology that allows for the delivery of voice and multimedia (video, images) content over IP. It is an important approach for facilitating the convergence of mobile and fixed networks and introducing differentiated services such as triple-play voice, data, and video. VoIP can include communications over LTE (VoLTE), WiFi (VoWiFi), and WiFi (Voice over NR, VoNR). VoLTE is a high-speed wireless communication standard for mobile and data terminals. Based on the IMS network, it uses SIP signaling as the control plane on LTE and the User Datagram Protocol (UDP) / IP protocol as the media plane for voice services. VoNR and VoWiFi have similar processing and implementation mechanisms to VoLTE, with all data interactions carried out over NR and WiFi, respectively.

[0131] SIP can be based on either the Transmission Control Protocol (TCP) or the User Datagram Protocol (UDP). SIP is commonly used for Internet telephony and multimedia distribution between two or more endpoints. For example, one person can use SIP to initiate a phone call to another person, or a person can hold a conference call with multiple participants.

[0132] Each network element in SIP is identified by a SIP uniform resource identifier (URI). SIP can include network elements such as user agents (UAs), proxy servers, registrars, redirect servers, and location servers.

[0133] UA is a port that can be used to invite, modify, and terminate a session. UA is logically divided into a user agent client (UAC) and a user agent server (UAS). A UAC is a device that sends requests and receives responses, while a UAS is a device that receives requests and responds. In other words, the calling terminal (called the calling terminal) is the client, and the called terminal (called the called terminal) is the server.

[0134] A proxy server, located between two UAs, forwards requests from one UA to the other, acting like a router. A registrar server receives registration requests from UAs and helps them authenticate with the network. After receiving the request, a redirect server searches a database created by the registrar server for the intended recipient. The local server provides the proxy and redirect servers with information about the possible locations of the called endpoint.

[0135] SIP headers are a structured sequence of headers that, in most cases, follow the same rules as Hypertext Transfer Protocol (HTTP) headers and are defined in the form of NAME:VALUE, where NAME indicates the name of the header field and VALUE is a token containing the information.

[0136] SIP messages are categorized into two types: requests and responses. A request begins with a method and a URI that specifies the destination for the request. A response message, typically sent by a UAS or SIP server, contains a response code. The table below shows six types of SIP response codes.

[0137]

[0138] SIP request types can include INVITE, REGISTER, BYE, ACK, CANCEL, and OPTIONS requests. They can also include REFER, SUBSCRIBE, NOTIFY, PUBLISH, MESSAGE, UPDATE, INFO, and PRACK requests, among other extended requests, which are not limited here. SIP requests are also referred to as SIP methods, such as the INVITE method.

[0139] A BYE request is used to terminate an established session. A BYE request can be sent by either the calling or called terminal, but not by a proxy server. BYE requests are typically sent end-to-end, bypassing the proxy server. A BYE request cannot be sent to a pending INVITE request or to an unestablished session.

[0140] The ACK request is the final response to the INVITE method. The ACK request may contain an SDP message body. The ACK cannot be used to modify the media description that has been sent in the initial INVITE request. A stateful proxy that receives an ACK request must determine whether the ACK should be forwarded to another proxy or UA. For 2xx responses, the ACK request is end-to-end. For other final responses, the stateful proxy works hop by hop. The CANCEL request is used to terminate an unestablished session. The UA uses the CANCEL request to cancel a previously initiated pending call attempt.

[0141] An INVITE request is used to start a session, that is, an INVITE method is used to establish a media session between UAs. An INVITE request usually carries a message body, which contains the caller's media information. An INVITE request can also contain other session information, such as a resource list. If the INVITE request does not carry media information, it must be carried in the ACK request issued by the UAC. If the media information in the ACK is unacceptable, the calling terminal can send a BYE request to terminate the session. The CANCEL request cannot be used at this time because the session has already been established. The sign of session establishment is that the INVITE request receives a successful response message (for example, 200, etc.) or sends an ACK request, until a BYE request is sent to interrupt the session. Sending an INVITE request again in an established dialog is called a Re-INVITE request, which is used to change the characteristics of the session or refresh the dialog status.

[0142] The REGISTER request is used by the UA to send a registration request and is sent by the UA to the registration server. The OPTIONS request is used to query the capabilities of the UA or proxy server, and the response lists the available capabilities. The proxy server does not generate an OPTIONS request. The SUBSCRIBE request is used to establish a subscription to obtain notifications about specific events. The NOTIFY request is used by the UA to obtain the occurrence of a specific event. Usually, a notification will be triggered when a subscription exists between a subscriber and a notifier. The PUBLISH request is used to send event status information to the server. The REFER request is used by one UA to reference another UA to access the URI of the conversation. The INFO request is used by a UA to send signaling information to another UA to establish a media session with it. The UPDATE request is used to modify the session state. When the session is not established, the user can use the UPDATE request to modify the encoding. The MESSAGE request uses SIP to send instant messages. A MESSAGE request usually contains relatively short content.

[0143] The PRACK request is used to acknowledge receipt of a reliable provisional reply (1XX). It applies to all provisional responses except for 100-Trying messages (abbreviated as 100 messages) received from unreliable transmission. A 100-Trying response indicates that the peer has received the request and is proceeding to the next step, the specific process of which depends on the UAS itself. The PRACK request can contain a message body to reject or accept (offer / answer) the received message.

[0144] The SIP protocol also includes a resource reservation (precondition) step, which is safer than the normal call process. Resource reservation is negotiated twice before the call (invite-183, update-200ok), while the normal process is only negotiated once (invite-200ok), ensuring that the call can be connected only after the resource reservation is successful, avoiding the situation where there is no sound after the call is connected in the normal process. The INVITE request of the calling terminal carries the support: precondition header field and the require: precondition header field. After receiving the INVITE request, the called terminal replies with an "18X" message and carries the header field require: 100rel in the message. Resource precondition parameters may include current status, expected status, confirmation status, precondition processing type, status type, direction flag, etc. Resource precondition parameters are usually described as qos in the standard.

[0145] The SIP header may include a From header field, a To header field, a Via header field, a User-Agent header field, a Require header field, etc. Among them, the From header field and the To header field are header fields included in requests and responses. The From header field indicates the initiator of the request, and the To header field indicates the intended recipient of the request. The From header field can contain a "tag" parameter. If the request contains more than one Via header field, the To header field can add a tag "tag" parameter. The Via header field indicates the path the request has taken so far, which can prevent request loops and ensure that the response (answer) is returned along the same path. The User-Agent header field contains information about the client user agent that sent the initial request. The client uses the Require header field to inform the UAS of the options the client wants the server to support in order to properly process the request.

[0146] Currently, after a user terminal UE in the IMS domain receives a first-channel paging request (for example, an INVITE request) from a network device, it will perform call connection processing on the first-channel paging request. Before the UE establishes a call connection with the calling terminal corresponding to the first-channel paging request, other paging requests (for example, second-channel paging requests and third-channel paging requests, etc.) may be received. The terminal device will process the first-channel paging message received first, and for subsequent second-channel paging messages, third-channel paging messages, etc., the terminal device will reply with a rejection message (for example, a 486 Busy Here message (abbreviated as a 486 message)).

[0147] However, network device anomalies can cause SIP signaling congestion, resulting in valid paging requests being sent only after the third or later route. The terminal device is unaware of the network anomaly and directly rejects subsequent paging requests, potentially rejecting valid (or correct) paging requests while processing invalid (or incorrect) ones. This can lead to call setup failures and missed calls.

[0148] Based on this, an embodiment of the present application proposes a message processing method that can identify invalid paging requests among multiple paging requests and release the resources occupied by the invalid paging requests, thereby improving the success rate of calls.

[0149] For details, see Figure 6 , Figure 6 This is a message processing method provided by the embodiment of the present application. This method can be applied to Figure 2 In the communication system shown, the following is an example of a network device and a called terminal. The method includes but is not limited to the following steps:

[0150] S601: Before establishing a call connection, the called terminal receives at least two paging requests from a network device.

[0151] Accordingly, after receiving a paging request from a calling terminal, the network device sends the paging request to the called terminal. Furthermore, before a call connection is established between the called terminal and the calling terminal, the network device can forward the paging request to the called terminal. If the called terminal does not respond to the paging request within a preset time period, the network device can resend the paging request or related messages to the called terminal.

[0152] It should be noted that the paging requests received by the called terminal from the network device are sequential. Generally, the first paging request received is called the first paging request. The paging request received after the first paging request is called the second paging request. The paging request received after the second paging request is called the third paging request, and so on.

[0153] In the embodiment of the present application, a paging request is used to instruct the called terminal to perform call connection processing with the calling terminal corresponding to the paging request to achieve a call connection. The paging request may include an IMS paging request. In other words, the paging request may be a paging request based on the SIP protocol. The paging request may also include other types of paging requests, which are not limited here.

[0154] S602: The called terminal performs call connection processing on the paging request.

[0155] In an embodiment of the present application, call connection processing may include allocating resources, that is, allocating resources for calls between the called terminal and the calling terminal. Call connection processing may also include ringing and answering, etc., which are not limited here. After the called terminal performs ringing processing, the called terminal may ring or vibrate based on user settings, and the user can choose to answer or hang up. After the user chooses to answer, the called terminal performs answering processing to achieve call connection. During the call connection processing, the called terminal may send a 100 message, a dialing message (180Ringing, which may be referred to as a 180 message), a call progress message (183Session Progress, which may be referred to as a 183 message), etc. to the network device.

[0156] S603: The called terminal sends a first response message to the network device.

[0157] Accordingly, the network device receives a first response message from the called terminal.

[0158] In an embodiment of the present application, the first response message is used to indicate the call progress of the paging request. The first response message can be at least one of the 18X messages. Optionally, the first response message is a 183 message.

[0159] S604: Within the first preset time period, if the called terminal receives a rejection message from the network device for the paging request, or does not receive any feedback from the network device for the paging request, it is determined that the paging request is an invalid paging request.

[0160] If the called terminal's peer terminal supports the PRACK procedure, after the called terminal sends the first response message to the network device, the called terminal may use a timer to count based on a first preset duration. This application does not impose any restrictions on the first preset duration, and it may be a fixed value, such as 3 seconds. Alternatively, the first preset duration may be determined based on parameters of the network device, such as quality of service parameters, path loss factor, transmit power, and power adjustment factor, and is not limited here.

[0161] In the embodiment of the present application, the feedback includes but is not limited to at least one of the following: a rejection message and a temporary response message (e.g., a PRACK message). The rejection message indicates that the network device refuses to respond to the call progress of the first response message, and the temporary response message indicates that the network device allows the call connection processing step corresponding to the first response message to be executed.

[0162] It is understood that after receiving the first response message, the network device may reject or respond to the call progress of the first response message. If the network device responds with a provisional response message to indicate receipt of the first response message and is currently processing the next step of the call progress corresponding to the first response message, this further indicates that the network device is normal and the call connection can be completed. The paging request can be determined to be a valid paging request, and the unfinished call connection processing steps of the valid paging request can be executed. If the network device responds with a rejection message to indicate that the network device does not support the call connection steps corresponding to the paging request, making it difficult to complete the call connection, the paging request can be determined to be an invalid paging request, and the resources occupied by the invalid paging request can be released. Alternatively, if the network device does not respond with any message, i.e., does not respond with at least one of a rejection message or a provisional response message, this may indicate that the network device has experienced an abnormality or that the network device does not support the call connection steps corresponding to the paging request, making it difficult to complete the call connection. The paging request can be determined to be an invalid paging request, and the resources occupied by the invalid paging request can be released.

[0163] In an embodiment of the present application, the situation where the network device does not support continuing to execute the call connection steps corresponding to the paging request may include the network device failing to parse the first response message and the network device determining that the first response message meets the discard condition, etc., which are not limited here. For example, after the network device is upgraded, it may fail to parse the User-Agent header field in the terminal's 183 message, resulting in the network device not replying to the called terminal with feedback on the 183 message. For another example, if the network device receives a UDP-based INVITE request, the called terminal will typically respond to the INVITE request and send a UDP-based 183 message to the network device. However, due to the maximum transmission unit (MTU) limit, the evolved packet data gateway in the network device directly discards messages that exceed the preset capacity. In this way, if the network device determines that the capacity of the 183 message is greater than the preset capacity, it will directly discard the 183 message, resulting in the network device not replying to the called terminal with feedback on the 183 message.

[0164] It should be noted that the called terminal sends a first response message indicating the call progress of each paging request for each paging request. After sending it to the network device, it is timed separately. For example, the first response message of the first paging request in the paging request is sent at 10:24:00 seconds, the first response message of the second paging request is sent at 10:24:02 seconds, and the first response message of the third paging request is sent at 10:24:03 seconds. Assuming that the first preset time length is 3 seconds, it is determined whether the feedback of the first paging request is received within 10:24:00 seconds to 10:24:03 seconds. It is determined whether the feedback of the third paging request is received within 10:24:03 seconds to 10:24:06 seconds.

[0165] S605: The called terminal releases the resources occupied by the invalid paging request.

[0166] exist Figure 6 In the described method, before a called terminal establishes a call connection, if the called terminal receives at least two paging requests from a network device, it can assume that the network device supports each paging request and then perform call connection processing on each paging request to obtain the resources allocated for each paging request. Response messages indicating the call progress of each paging request are then sent to the network device. Within a first preset time period after sending the response messages, it is determined whether feedback from the network device regarding the paging request has been received. If the called terminal receives a rejection message from the network device regarding the paging request, it can indicate that the network device corresponding to the paging request does not support the call connection steps corresponding to the paging request, and the paging request can be determined to be invalid. If the called terminal does not receive feedback from the network device regarding the paging request, it can indicate that the network device has experienced an anomaly or that the network device does not support the call connection steps corresponding to the paging request, making normal communication difficult, and the paging request can be determined to be invalid. After determining that the paging request is invalid, the resources occupied by the invalid paging request can be released, thereby avoiding the need to process invalid paging requests and improving call success rates.

[0167] In a possible example, after step S605, the following step may be further included: the called terminal sends a second response message to the network device.

[0168] Correspondingly, the network device receives a second response message from the called terminal.Then, the network device sends a second response message to the calling terminal corresponding to the paging request to inform the calling terminal that the called terminal is busy.

[0169] In an embodiment of the present application, the second response message is used to indicate that the called terminal is busy with respect to the invalid paging request and may include a 486 message, etc., which is not limited herein. It is understood that after the resources occupied by the invalid paging request are released, the call connection step for the invalid paging request is no longer executed, thereby preventing the call connection for the invalid paging request from being established. The called terminal may send an indication to the network device that the called terminal is busy with respect to the invalid paging request, thereby prompting the network device not to respond to the invalid paging request, thereby improving the processing efficiency of the network device. The network device may also inform the calling terminal of the invalid paging request, prompting information such as a later communication.

[0170] See Figure 7 , Figure 7 This is another message processing method provided by the embodiment of the present application. This method can also be applied to Figure 2 In the communication system shown, the following is an example of a network device and a called terminal. The method includes but is not limited to the following steps:

[0171] S701: Before a call is connected, the called terminal receives at least two paging requests from a network device.

[0172] S702: The called terminal performs call connection processing on the paging request.

[0173] S703: The called terminal sends a first response message to the network device.

[0174] S704: Within the first preset time period, if the called terminal receives a temporary response message from the network device to the paging request, the paging request is determined to be a valid paging request.

[0175] In this embodiment of the present application, the paging request may include an IMS paging request. Call connection processing may include allocating resources. The first response message is used to indicate the call progress of the paging request. Feedback includes, but is not limited to, at least one of the following: a rejection message and a provisional response message. Steps S701 to S704 are described in detail with reference to steps S601 to S604 and are not further described here.

[0176] It should be noted that step S704 and step S604 can be performed based on the order in which the called terminal sends the first response message of the paging request to the network device and the feedback received. For example, the first response message of the first paging request in the paging request is sent at 10:24:00, and the first response message of the second paging request is sent at 10:24:02. If the first preset time length is 3 seconds, then within 10:24:00 to 10:24:03, it is determined whether feedback on the first paging request is received. Within 10:24:02 to 10:24:05, it is determined whether feedback on the second paging request is received. Assuming that a temporary response message for the first paging request is received at 10:24:02, it is determined that the first paging request is a valid paging request. Assume that at 10:24:03, no provisional response message of the second paging request is received, or a rejection message of the second paging request is received, then the second paging request is determined to be an invalid paging request.

[0177] exist Figure 7 In the described method, before the called terminal establishes a call connection, if the called terminal receives at least two paging requests from the network device, it can be assumed that the network device supports each paging request, and then call connection processing can be performed on each paging request to obtain the resources allocated to each paging request. Response messages indicating the call progress of the paging request are then sent to the network device respectively. Within a first preset time period after sending the response message, it is determined whether feedback from the network device regarding the paging request is received. If the called terminal receives a temporary response message from the network device regarding the paging request, it can indicate that the network device is normal and can communicate normally, and the paging request can be determined to be a valid paging request, so that the call connection processing steps for the unfinished valid paging request can be executed, which is conducive to improving the success rate of the call.

[0178] In a possible example, after step S704, the following two cases are also included, where:

[0179] The first method: if the number of valid paging requests is equal to 1, then executing the call connection processing step of the called terminal executing the valid paging request that is not completed.

[0180] Second method: If the number of valid paging requests is greater than 1, the called terminal determines the target paging request received first among the valid paging requests; the called terminal releases the resources occupied by the valid paging requests other than the target paging request, and executes the call connection processing steps for the unfinished target paging request.

[0181] It will be appreciated that after valid paging requests are determined, the number of valid paging requests is first determined. This number should be greater than or equal to 1. If the number of valid paging requests is equal to 1, call connection processing for the uncompleted valid paging request can be performed. If the number of valid paging requests is greater than 1 (or the number of valid paging requests is an integer greater than or equal to 2), this indicates that there are multiple valid paging requests. The earliest received target paging request among the multiple valid paging requests can be selected, and the call connection processing steps for the uncompleted target paging request can be performed, and the resources occupied by valid paging requests other than the target paging request can be released. This prevents subsequent valid paging requests from being retransmitted messages of previously received valid paging requests, resulting in repeated call connection establishment. The call connection for the first received valid paging request is established first, ensuring call order and improving call success rate and call establishment accuracy.

[0182] In an embodiment of the present application, the subsequent unfinished call connection process may include: the network device sends an UPDATE request to the called terminal, and the called terminal responds to the UPDATE request with a 200 message. The called terminal rings again and sends a 180 message to the network device to inform the network device that it is dialing. After the user of the called terminal answers the call, the called terminal may send a 200 message to the network device to confirm that the call is successfully established. The network device may respond to the 200 message with an ACK request. After the user hangs up, the called terminal may send a BYE request to the network device, and the network device may respond to the BYE request with a 200 message to confirm that the call has ended.

[0183] It should be noted that after releasing the resources occupied by valid paging requests other than the target paging request, the process may also include sending a notification to the network device indicating that the called terminal is busy with respect to the valid paging requests other than the target paging request. This notifies the network device that it no longer needs to respond to the invalid paging request, thereby improving its processing efficiency. The network device may also notify the calling terminal corresponding to the invalid paging request, prompting it to communicate later.

[0184] See Figure 8 , Figure 8 This is another message processing method provided by the embodiment of the present application. This method can also be applied to Figure 2 In the communication system shown, the following is an example of a network device and a called terminal. The method includes but is not limited to the following steps:

[0185] S801: Before establishing a call connection, the called terminal receives a paging request from a network device.

[0186] S802: The called terminal performs call connection processing on the paging request.

[0187] S803: The called terminal sends a first response message to the network device.

[0188] In the embodiment of the present application, the paging request may include an IMS paging request. The present application does not limit the type and number of paging requests, that is, the called terminal may receive one paging request, or may receive one paging request as follows: Figure 6 and Figure 7 In the illustrated method, at least two paging requests are received. Call connection processing may include allocating resources, and the first response message is used to indicate the call progress of the paging request. Steps S801 to S803 can refer to the description of steps S601 to S603 and will not be repeated here.

[0189] In one possible example, after step S803, the following step is further included: if the called terminal receives a rejection message from the network device regarding the paging request within the second preset time period, the resources occupied by the paging request are released. This avoids processing invalid paging requests, thereby improving the success rate of calls and the accuracy of call establishment.

[0190] In a possible example, after releasing the resources occupied by the paging request, the following step may be further included: the called terminal sends a busy response message to the network device.

[0191] Accordingly, the network device receives a busy response message from the called terminal. Then, the network device sends a busy response message to the calling terminal corresponding to the paging request to inform the calling terminal that the called terminal is busy for the paging request for which the called terminal receives a rejection message from the network device within the second preset time period.

[0192] In this example, the busy response message may include a 486 message, etc., which is not limited here. It will be understood that after the resources occupied by the paging request are released, the call connection steps for the paging request are no longer executed, and thus the call connection for the paging request will not be completed. The called terminal can send an indication to the network device that the called terminal is busy for the paging request, prompting the network device to no longer respond to the paging request, which is beneficial for improving the processing efficiency of the network device. The network device can also notify the calling terminal of the paging request, prompting information such as a later communication.

[0193] S804: If the called terminal does not receive any feedback from the network device regarding the paging request within the second preset time period, the first response message is modified to obtain at least one third response message.

[0194] In an embodiment of the present application, the feedback includes, but is not limited to, at least one of the following: a rejection message and a provisional response message. The present application does not limit the second preset duration, which may be equal to or different from the first preset duration. The second preset duration may be a fixed value, for example, 5 seconds. Alternatively, in one possible example, the second preset duration is determined based on the protocol type of the paging request.

[0195] This application does not limit the protocol type of the paging request. When the paging request is an IMS paging request, the protocol type of the paging request can be UDP or TCP. It can be understood that the parsing time of paging requests of different protocol types is different. For example, since the data packet corresponding to UDP is larger than the data packet corresponding to TCP, the parsing time of the paging request based on UDP should be longer than the parsing time of the paging request based on TCP, so that the second preset time of the paging request based on UDP can be set to be longer than the second preset time of the paging request based on TCP. In this way, determining the second preset time of different paging requests according to the protocol type of the paging request can improve the accuracy of determining whether the first response message is invalid, which is conducive to improving the success rate of communication.

[0196] Optionally, if the protocol type of the paging request is UDP, the second preset duration is greater than 3*T1 and less than 4*T1, where T1 is the preset duration of the first timer.

[0197] The first timer is used to resend messages, and T1 is typically 500 milliseconds. The preset duration for each message retransmission can be T1, 2*T1, 4*T1, 8*T1, and so on. The maximum duration for a message retransmission can be less than the preset duration T2 of the second timer, which is typically 4 seconds. For example, after the called terminal sends a response message to the network device, if no response is received from the network device within the preset duration of the first timer, the response message is repeated.

[0198] It can be understood that in this example, determining the second preset duration based on the UDP protocol type can improve the accuracy of whether the first response message is invalid, which is conducive to improving the success rate of communication.

[0199] Optionally, if the protocol type of the paging request is TCP, the second preset duration is greater than 5 seconds and less than 6 seconds. In this way, determining the second preset duration based on the TCP protocol type can improve the accuracy of whether the first response message is invalid, which is conducive to improving the success rate of communication.

[0200] As previously described, if the network device does not respond after the called terminal sends a first response message to the network device, this may indicate a network device anomaly or that the network device does not support continuing the call connection steps corresponding to the paging request, making it difficult to complete the call connection. The paging request may be determined to be invalid, and the resources occupied by the invalid paging request may be released. Therefore, if no response to the paging request from the network device is received within a second preset time period, the first response message may be modified to obtain a third response message. The third response message may then be sent to the network device to test whether the network device has responded to the third response message. Within a second preset time period after sending the third response message, it is determined whether the called terminal has received any response to the paging request. If the called terminal receives a provisional response message from the network device to the paging request, the call connection processing steps for the uncompleted paging request are executed. If the called terminal receives a rejection message from the network device to the paging request, the resources occupied by the paging request may be released. If the called terminal does not receive feedback from the network device regarding the paging request, it may modify the third response message and then send the modified third response message until it receives feedback from the network device regarding the third response message, or ends the modification step when a preset condition is met.

[0201] In the embodiment of the present application, the preset condition may include that there is no modifiable third response message, or that the time interval between the sending time of the first response message exceeds a preset duration (which may be the first preset duration, or may be a duration greater than the second preset duration), etc., which are not limited here. When the preset condition is met, the resources occupied by the invalid paging request may also be released.

[0202] This application does not limit the method for modifying the first response message, which may include the following two cases:

[0203] In the first method, the called terminal modifies the target parameter of the first response message to obtain at least one third response message.

[0204] In an embodiment of the present application, the target type of the target parameter includes at least one of the following: User-Agent header field, Require header field, audio and video media parameter type, resource preset parameter; if the first response message is based on UDP, the target type includes a protocol type, and the third response message is based on TCP.

[0205] For example, assume the first response message is a 183 message. After a network device upgrade, the User-Agent header in the terminal's 183 message may fail to parse. Therefore, the User-Agent header in the 183 message is modified, resulting in a third response message. If a provisional response message from the network device is received within the second preset duration of the third response message, the subsequent unfinished call connection process can be executed.

[0206] As another example, assume the first response message is a 183 message. As previously described, after receiving the UDP-based 183 message, the network device may discard it due to MTU limitations. Therefore, the UDP-based 183 message is modified to a TCP-based 183 message, resulting in a third response message. If a provisional response message from the network device is received within the second preset duration of the third response message, the subsequent unfinished call connection process can be executed.

[0207] It is understood that within the same conversation, after modifying the target parameters of the first response message, a different third response message may be obtained. Using the modified third response message to probe the network device and, if the probe is successful, completing the remaining call processing steps, helps improve the success rate of call connections.

[0208] In the first modification method, the number of third response messages may be one or more. In one possible example, after step S805, the following step is further included: within the second preset time period, if no feedback from the network device to the paging request is received and there is a next third response message, sending the next third response message to the network device.

[0209] It is understood that when there are multiple third response messages, the order in which they are sent can be pre-set. That is, if no feedback is received on a third response message, the next third response message can be sent, further improving the success rate of the call connection. This application does not impose any restrictions on the order in which the third response messages are sent; the order can be determined based on the success rate of modifying the target parameters in the network device, etc.

[0210] For example, if Figure 9As shown, after the called terminal receives a paging request (e.g., an INVITE request in an IMS paging request) sent by a network device, the called terminal sends a 100 message to the network device to inform the network device that it has received the INVITE request and is proceeding to the next step of processing. The called terminal then sends a first response message (e.g., a 183 message) to the network device. Within a second preset time period after the first response message is sent, no feedback is received from the network device. The called terminal may send a modified message of the first response message, i.e., a modified third response message, to the network device. Within a second preset time period after the third response message is sent, no feedback is received from the network device. The called terminal may send another modified message of the first response message, i.e., the next third response message, to the network device. Within a second preset time period after the next third response message is sent, a provisional response message sent by the network device is received. The called terminal may reply to the provisional response message of the network device with a 200 message to confirm a successful response. In other words, without modifying the tag parameter in the To header field, the network is successfully probed by modifying the parameters in the response message, so that the network device and the called terminal can complete the subsequent call connection steps.

[0211] The second method includes the following steps A1 to A3, wherein:

[0212] A1: Return to step S802 to obtain a newly allocated first resource.

[0213] A2: The called terminal determines the first tag parameter of the To header field according to the first resource.

[0214] A3: The called terminal modifies the first parameter and the first tag parameter of the first response message to obtain a third response message.

[0215] In the embodiment of the present application, the type of the first parameter is a target type, which can be referred to the above description and will not be repeated here.

[0216] It can be understood that re-executing step S802 will establish a new dialogue and the called terminal will reallocate resources. The first tag parameter of the To header field of the first response message is determined based on the newly allocated first resource. The first parameter and the first tag parameter of the first response message are then modified to obtain a third response message. The first tag parameter of the To header field of the first response message is determined based on the newly allocated first resource. The first parameter and the first tag parameter of the first response message are then modified to obtain a third response message. After sending the third response message, it can be understood that another terminal virtualized by the called terminal sends the third response message. Based on whether the network device has feedback for the terminal, it is determined whether the network device can support the unfinished call connection step. In this way, by virtualizing a new terminal and a modified response message, the network device is tested in different dialogues, which is conducive to improving the success rate of the call connection.

[0217] It should be noted that the number of the third response message in the second method is 1, that is, there is no next third response message.

[0218] After step S805, in a possible example, the following steps A4 to A7 are further included, wherein:

[0219] A4: If the called terminal does not receive any feedback from the network device regarding the paging request within the second preset time period, the process returns to step S802 to obtain a newly allocated second resource.

[0220] A5: The called terminal determines the second tag parameter of the To header field according to the second resource.

[0221] A6: The called terminal modifies the second parameter and the second tag parameter of the third response message to obtain a fourth response message.

[0222] A7: The called terminal sends a fourth response message to the network device.

[0223] In the embodiments of the present application, the type of the second parameter is the target type, which can be referred to the above description and will not be repeated here. It should be noted that the type of the second parameter can be the same as or different from the type of the first parameter. When the type of the second parameter can be the same as the type of the first parameter, the value of the second parameter should be different from the value of the first parameter.

[0224] It can be understood that within the second preset time period, if the called terminal does not receive feedback from the network device regarding the paging request, step S802 is executed again, and a new dialogue is established to obtain the newly allocated second resource. The second tag parameter of the To header field of the first response message is determined based on the newly allocated second resource. The second parameter and the second tag parameter of the first response message are then modified to obtain a fourth response message. After sending the fourth response message, a new dialogue can be obtained, which can be understood as another terminal virtualized by the called terminal sending the fourth response message. Based on whether the network device has feedback for the terminal, it is determined whether the network device can support the unfinished call connection step. If no feedback is received, steps A4 to A7 are executed again until feedback from the network device is received or the preset conditions are met, and the modification step is ended. In this way, by testing the network device by modifying the response message, the success rate of the call connection is improved.

[0225] In a possible example, after step S803, the following steps are further included: if no feedback from the network device regarding the paging request is received within a third preset time period, returning to the step of sending a first response message to the network device.

[0226] Among them, the third preset time length is less than the second preset time length, and the third preset time length can be the above-mentioned T1. It can be understood that in the second modification method, since the tag parameter of the To header field is modified and a new dialogue is created, the first response message can also be resent in the dialogue corresponding to the first response message to confirm whether the lack of feedback is caused by a network abnormality. And within the third preset time length after the first response message, if a temporary response message from the network device is received, the unfinished call connection processing steps can be executed. If a rejection message from the network device is received, the resources occupied by the paging request can be released. If no feedback is received from the network device, it can be resent when the third preset time length arrives, or when other time lengths such as twice the third preset time length arrives. In this way, by resending the first response message, the success rate of the call connection is improved.

[0227] For example, if Figure 10As shown, after the called terminal receives a paging request (e.g., an INVITE request) sent by the network device, the called terminal sends a 100 message to the network device to inform the network device that it has received the paging request and is proceeding to the next step of processing. Then, the called terminal sends a first response message (e.g., a 183 message) to the network device. Within the third preset time period after the first response message is sent, if no feedback is received from the network device, the called terminal can retransmit the first response message to the network device. That is, the network device does not respond to the first dialog, and the called terminal retransmits the first response message. Within the second preset time period after the first first response message is sent, if no feedback is received from the network device. The called terminal can establish a new dialog, obtain the tag parameter of the new To header field, and modify the first parameter in the first response message to obtain a modified third response message. Within the second preset time period after the third response message is sent, if a temporary response message is received from the network device. The called terminal can reply to the temporary response message of the network device with a 200 message to confirm a successful response. That is, the network device responds normally in the second dialog. In this way, based on the first modification of the tag parameter of the To header field, the network is successfully probed by modifying the parameters in the response message, so that the network device and the called terminal can complete the subsequent call connection steps ( Figure 10 not shown).

[0228] S805: The called terminal sends a third response message to the network device.

[0229] In one possible example, after step S805, the following step is further included: if the called terminal receives a rejection message from the network device regarding the paging request within the second preset duration, the resources occupied by the paging request are released. This avoids processing invalid paging requests, thereby improving the call success rate and call establishment accuracy.

[0230] In one possible example, after releasing the resources occupied by the paging request, the process may further include the following steps: the called terminal sends a busy response message to the network device. This allows the called terminal to send an indication to the network device that the paging request is busy, prompting the network device to no longer respond to the paging request, thereby improving the network device's processing efficiency. The network device may also notify the calling terminal of the paging request, prompting a later communication request.

[0231] S806: Within the second preset time period, if the called terminal receives a temporary response message from the network device to the paging request, and performs a call connection processing step for an uncompleted paging request.

[0232] exist Figure 8In the illustrated method, before establishing a call connection, if the called terminal receives a paging request from a network device, call connection processing can be performed. A response message indicating the call progress of the paging request is then sent to the network device. If no feedback is received from the network device regarding the paging request within a second preset time period after sending the response message, the response message can be modified and the modified response message sent to test whether the network device supports the modified response message. If a provisional response message is received from the network device regarding the paging request within a second preset time period after sending the modified response message, the call connection processing steps for the unfinished paging request can be executed. In this way, testing the network device through different response messages helps improve the success rate of calls.

[0233] The above describes in detail the method of the embodiment of the present application, and the following provides an apparatus of the embodiment of the present application.

[0234] See Figure 11 , Figure 11 1 is a schematic structural diagram of a communication device provided in an embodiment of the present application, wherein the communication device 1100 may include a transceiver unit 1101 and a processing unit 1102. The communication device 1100 may be at least one of a called terminal, a network device, or a calling terminal.

[0235] When the communication device 1100 is a called terminal, in one embodiment, the transceiver unit 1101 is configured to receive at least two paging requests from a network device before establishing a call connection, wherein the paging requests include IMS paging requests;

[0236] The processing unit 1102 is configured to perform call connection processing on the paging request, where the call connection processing includes allocating resources;

[0237] The transceiver unit 1101 is further configured to send a first response message to the network device, where the first response message is used to indicate the call progress of the paging request;

[0238] The processing unit 1102 is also used to, within a first preset time period, if a rejection message is received from the network device for the paging request, or no feedback is received from the network device for the paging request, determine that the paging request is an invalid paging request, and the feedback includes at least one of the rejection message and a temporary response message; and release the resources occupied by the invalid paging request.

[0239] In a possible example, the processing unit 1102 is further configured to determine that the paging request is a valid paging request if a temporary response message from the network device to the paging request is received within the first preset time period.

[0240] In a possible example, the processing unit 1102 is also used to, if the number of the valid paging requests is equal to 1, execute the call connection processing steps for the unfinished valid paging requests; or if the number of the valid paging requests is greater than 1, determine the target paging request received first among the valid paging requests; release the resources occupied by the valid paging requests other than the target paging request in the valid paging requests, and execute the call connection processing steps for the unfinished target paging requests.

[0241] In a possible example, the transceiver unit 1101 is further configured to send a second response message to the network device, where the second response message is configured to indicate that the called terminal is busy with respect to the invalid paging request.

[0242] When the communication device 1100 is a called terminal, in another embodiment, the transceiver unit 1101 is configured to receive a paging request from a network device before establishing a call connection, wherein the paging request includes an IMS paging request;

[0243] The processing unit 1102 is configured to perform call connection processing on the paging request, where the call connection processing includes allocating resources;

[0244] The transceiver unit 1101 is further configured to send a first response message to the network device, where the first response message is used to indicate the call progress of the paging request;

[0245] The processing unit 1102 is further configured to, if no feedback from the network device regarding the paging request is received within a second preset time period, modify the first response message to obtain at least one third response message, wherein the feedback includes at least one of the following: a provisional response message and a rejection message;

[0246] The transceiver unit 1101 is further configured to send the third response message to the network device;

[0247] The processing unit 1102 is further configured to, if a provisional response message to the paging request is received from the network device within the second preset time period, execute a call connection processing step for the unfinished paging request.

[0248] In a possible example, the processing unit 1102 is specifically used to modify the target parameters of the first response message to obtain at least one third response message, and the target type of the target parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource reservation parameter; if the paging request is based on the User Datagram Protocol UDP, the target type includes a protocol type, and the third response message is based on the Transmission Control Protocol TCP.

[0249] In a possible example, the transceiver unit 1101 is also used to send the next third response message to the network device within the second preset time period if no feedback from the network device to the paging request is received and there is a next third response message.

[0250] In a possible example, the processing unit 1102 is specifically used to return to execute the step of performing call connection processing according to the paging request to obtain a newly allocated first resource; determine the first tag parameter of the To header field based on the first resource; modify the first parameter and the first tag parameter of the first response message to obtain a third response message, and the target type of the first parameter includes at least one of the following: User-Agent header field, Require header field, audio and video media parameter type, resource preset parameter; if the paging request is based on UDP, the target type includes a protocol type, and the third response message is based on TCP.

[0251] In a possible example, the processing unit 1102 is also used to, if no feedback from the network device regarding the paging request is received within the second preset time period, return to execute the step of performing call connection processing according to the paging request, and obtain a newly allocated second resource; determine the second tag parameter of the To header field based on the second resource; modify the second parameter and the second tag parameter of the third response message to obtain a fourth response message, the type of the second parameter being the target type; and send the fourth response message to the network device.

[0252] In a possible example, the processing unit 1102 is further configured to release resources occupied by the paging request if the called terminal does not receive a rejection message from the network device for the paging request within a second preset time period.

[0253] In a possible example, the processing unit 1102 is also used to return to the step of sending the first response message to the network device if no feedback from the network device regarding the paging request is received within a third preset time period after the first response message is sent, and the third preset time period is less than the second preset time period.

[0254] In a possible example, the processing unit 1102 is further configured to determine the second preset duration according to a protocol type of the paging request.

[0255] In a possible example, if the paging request is based on UDP, the second preset duration is greater than 3*T1 and less than 4*T1, where T1 is the preset duration of the first timer.

[0256] In a possible example, if the paging request is based on TCP, the second preset time length is greater than 5 seconds and less than 6 seconds.

[0257] When the communication device 1100 is a network device, the transceiver unit 1101 is used to send at least two paging requests to the called terminal before establishing a call connection, wherein the paging requests include IMS paging requests; and receive a first response message from the called terminal, wherein the first response message is used to indicate the call progress of the paging request.

[0258] In a possible example, the transceiver unit 1101 is further configured to send feedback regarding the paging request to the called terminal, where the feedback includes at least one of the following: a rejection message and a temporary response message.

[0259] When the communication device 1100 is a calling terminal, the transceiver unit 1101 is configured to send a paging request to a network device.

[0260] It should be noted that the implementation of each unit can also refer to Figure 6 、 Figure 7 or Figure 8 The corresponding description of the method embodiment shown.

[0261] See Figure 12 , Figure 12 1 is a schematic diagram of the structure of another communication device 1200 provided in an embodiment of the present application. The communication device 1200 includes a processor 1201, a memory 1202, and a communication interface 1203, wherein the processor 1201, the memory 1202, and the communication interface 1203 are interconnected via a bus 1204.

[0262] Memory 1202 includes, but is not limited to, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), or compact disc read-only memory (CD-ROM). Memory 1202 is used for storing computer programs and data. Communication interface 1203 is used to receive and send data.

[0263] The processor 1201 may be one or more central processing units (CPUs). When the processor 1201 is a CPU, the CPU may be a single-core CPU or a multi-core CPU.

[0264] The processor 1201 in the communication device 1200 is configured to read the computer program code stored in the memory 1202. The communication device 1200 may be at least one of a called terminal, a network device, or a calling terminal. When the communication device 1200 is a called terminal, in one embodiment, the processor 1201 may perform the following operations:

[0265] Before establishing the call connection, receiving at least two paging requests from the network device, the paging requests including IMS paging requests;

[0266] performing call connection processing on the paging request, wherein the call connection processing includes allocating resources;

[0267] Sending a first response message to the network device, where the first response message is used to indicate a call progress of the paging request;

[0268] If, within a first preset time period, a rejection message for the paging request is received from the network device, or no feedback for the paging request is received from the network device, determining that the paging request is an invalid paging request, wherein the feedback includes at least one of the rejection message and a provisional response message;

[0269] The resources occupied by the invalid paging request are released.

[0270] In a possible example, the processor 1201 is further configured to perform the following operations:

[0271] If a temporary response message of the network device to the paging request is received within the first preset time period, the paging request is determined to be a valid paging request.

[0272] In a possible example, the processor 1201 is further configured to perform the following operations:

[0273] If the number of the valid paging requests is equal to 1, executing the call connection processing step of the incomplete valid paging requests; or

[0274] If the number of the valid paging requests is greater than 1, the target paging request received first among the valid paging requests is determined; resources occupied by the valid paging requests other than the target paging request among the valid paging requests are released, and the call connection processing steps for the unfinished target paging request are executed.

[0275] In a possible example, the processor 1201 is further configured to perform the following operations:

[0276] A second response message is sent to the network device, where the second response message is used to indicate that the called terminal is in a busy state for the invalid paging request.

[0277] In another embodiment, the processor 1201 may perform the following operations:

[0278] Before establishing the call connection, receiving a paging request from a network device, wherein the paging request includes an IMS paging request;

[0279] performing call connection processing on the paging request, wherein the call connection processing includes allocating resources;

[0280] Sending a first response message to the network device, where the first response message is used to indicate a call progress of the paging request;

[0281] If no feedback from the network device regarding the paging request is received within a second preset time period, modifying the first response message to obtain at least one third response message, wherein the feedback includes at least one of the following: a provisional response message and a rejection message;

[0282] Sending the third response message to the network device;

[0283] If a temporary response message of the network device to the paging request is received within the second preset time period, the call connection processing step of the unfinished paging request is executed.

[0284] In a possible example, the processor 1201 is specifically configured to perform the following steps:

[0285] The target parameters of the first response message are modified to obtain at least one third response message, where the target type of the target parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource reservation parameter; if the first response message is based on the User Datagram Protocol UDP, the target type includes a protocol type, and the third response message is based on the Transmission Control Protocol TCP.

[0286] In a possible example, the processor 1201 is further configured to perform the following steps:

[0287] If no feedback from the network device regarding the paging request is received within the second preset time period, and there is a next third response message, the next third response message is sent to the network device.

[0288] In a possible example, the processor 1201 is specifically configured to perform the following steps:

[0289] Returning to the step of performing call connection processing according to the paging request to obtain a newly allocated first resource;

[0290] Determine, based on the first resource, a first tag parameter of the To header field;

[0291] The first parameter and the first tag parameter of the first response message are modified to obtain a third response message, where the target type of the first parameter includes at least one of the following: User-Agent header field, Require header field, audio and video media parameter type, and resource preset parameter; if the first response message is based on UDP, the type of the first parameter includes the protocol type, and the third response message is based on TCP.

[0292] In a possible example, the processor 1201 is further configured to perform the following steps:

[0293] If no feedback from the network device regarding the paging request is received within the second preset time period, returning to the step of performing call connection processing according to the paging request to obtain a newly allocated second resource;

[0294] Determine a second tag parameter of the To header field according to the second resource;

[0295] Modify the second parameter and the second tag parameter of the first response message to obtain a fourth response message, where the type of the second parameter is the target type;

[0296] Send the fourth response message to the network device.

[0297] In a possible example, the processor 1201 is further configured to perform the following steps:

[0298] If no feedback from the network device regarding the paging request is received within a third preset time period, the method returns to executing the step of sending a first response message to the network device, and the third preset time period is less than the second preset time period.

[0299] In a possible example, the processor 1201 is further configured to perform the following steps:

[0300] The second preset duration is determined according to the protocol type of the paging request.

[0301] In a possible example, if the protocol type of the paging request is UDP, the second preset duration is greater than 3*T1 and less than 4*T1, where T1 is the preset duration of the first timer.

[0302] In a possible example, if the protocol type of the paging request is TCP, the second preset time length is greater than 5 seconds and less than 6 seconds.

[0303] When the communication apparatus 1200 is a network device, the processor 1201 may be configured to perform the following steps:

[0304] Before establishing a call connection, at least two paging requests are sent to the called terminal, wherein the paging requests include IP Multimedia Subsystem (IMS) paging requests; and a first response message is received from the called terminal, wherein the first response message is used to indicate the call progress of the paging request.

[0305] In a possible example, the processor 1201 is further configured to perform the following steps:

[0306] Sending feedback regarding the paging request to the called terminal, where the feedback includes at least one of the following: a rejection message and a temporary response message.

[0307] When the communication device is a calling terminal, the processor 1201 may be configured to perform the following steps:

[0308] Send a paging request to a network device.

[0309] It should be noted that the implementation of each operation can also refer to Figure 6 、 Figure 7 or Figure 8 The corresponding description of the method embodiment shown.

[0310] The embodiment of the present application also provides a first chip, comprising a processor and a memory, wherein the processor is configured to call and execute instructions stored in the memory, so that a device equipped with the chip executes Figure 6 、 Figure 7 or Figure 8 The method shown.

[0311] The embodiment of the present application also provides a second chip, comprising: an input interface, an output interface and a processing circuit, wherein the input interface, the output interface and the processing circuit are connected through an internal connection path, and the processing circuit is used to execute Figure 6 、 Figure 7 or Figure 8 The method shown.

[0312] The embodiment of the present application also provides a third chip, comprising: an input interface, an output interface, a processor, and optionally, a memory, wherein the input interface, the output interface, the processor, and the memory are connected via an internal connection path, the processor is used to execute the code in the memory, and when the code is executed, the processor is used to execute Figure 6 、 Figure 7 or Figure 8 The method shown.

[0313] The embodiment of the present application further provides a chip system, the chip system comprising at least one processor, a memory and an interface circuit, the memory, the transceiver and the at least one processor being interconnected via a line, the at least one memory storing instructions; when the instructions are executed by the processor, Figure 6 、 Figure 7 or Figure 8 The method flow shown is realized.

[0314] The embodiment of the present application further provides a computer-readable storage medium having instructions stored therein. When the instructions are executed on a computer, Figure 6 、 Figure 7 or Figure 8 The method flow shown is realized.

[0315] The embodiment of the present application further provides a computer program product, wherein the computer program product is used to store a computer program. When the computer program is run on a computer, Figure 6 、 Figure 7 or Figure 8 The method flow shown is realized.

[0316] The embodiment of the present application further provides a chip system, the chip system comprising at least one processor, a memory and an interface circuit, the memory, the transceiver and the at least one processor being interconnected via a line, the at least one memory storing instructions; when the instructions are executed by the processor, Figure 6 、 Figure 7 or Figure 8 The method flow shown is realized.

[0317] In summary, by implementing the embodiments of the present application, before a called terminal establishes a call connection, if the called terminal receives at least two paging requests from a network device, it can assume that the network device supports each paging request and then perform call connection processing on each paging request to obtain the resources allocated for each paging request. Response messages indicating the call progress of each paging request are then sent to the network device. Within a first preset time period after sending the response messages, it is determined whether feedback from the network device regarding the paging request has been received. If the called terminal receives a rejection message from the network device regarding the paging request, this may indicate that the network device corresponding to the paging request does not support the call connection steps corresponding to the paging request, and the paging request may be determined to be invalid. If the called terminal does not receive feedback from the network device regarding the paging request, this may indicate that the network device has experienced an anomaly or that the network device does not support the call connection steps corresponding to the paging request, making normal communication difficult, and the paging request may be determined to be invalid. After determining that the paging request is invalid, the resources occupied by the invalid paging request may be released, thereby avoiding the need to process invalid paging requests. If the called terminal receives a provisional response message from the network device to the paging request, it indicates that the network device is normal and communication is possible, and the paging request can be determined to be a valid paging request. The unfinished call connection steps of the valid paging request can then be executed. This helps to improve the success rate of calls.

[0318] On the other hand, after the called terminal receives a paging request from the network device, it performs call connection processing on the paging request and sends a response message to the network device. If no response is received from the network device regarding the paging request within a second preset time period, the called terminal may modify the response message and send the modified response message to test whether the network device supports the modified response message. This method of testing the network device with different response messages helps improve the success rate of calls.

[0319] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by a computer program or computer program-related hardware. The computer program can be stored in a computer-readable storage medium. When executed, the computer program can include the processes in the above-described method embodiments. The aforementioned storage medium includes various media capable of storing computer program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A message processing method, characterized in that: include: Before establishing the call connection, receiving at least two paging requests from the network device, wherein the paging requests include Internet Protocol Multimedia Subsystem (IMS) paging requests; performing call connection processing on each of the at least two paging requests, wherein the call connection processing includes allocating resources; Sending a first response message for each of the at least two paging requests to the network device, where the first response message is used to indicate a call progress of the paging request; If, within a first preset time period, a rejection message for the paging request is received from the network device, or no feedback for the paging request is received from the network device, determining that the paging request is an invalid paging request, wherein the feedback includes at least one of the rejection message and a provisional response message; The resources occupied by the invalid paging request are released.

2. The method according to claim 1, characterized in that After sending the first response message to the network device, the method further includes: If a temporary response message of the network device to the paging request is received within the first preset time period, the paging request is determined to be a valid paging request.

3. The method according to claim 2, characterized in that The method further comprises: If the number of the valid paging requests is equal to 1, executing the call connection processing step of the incomplete valid paging requests; or If the number of the valid paging requests is greater than 1, the target paging request received first among the valid paging requests is determined; resources occupied by the valid paging requests other than the target paging request among the valid paging requests are released, and the call connection processing steps for the unfinished target paging request are executed.

4. The method according to any one of claims 1 to 3, characterized in that After releasing the resources occupied by the invalid paging request, the method further includes: A second response message is sent to the network device, where the second response message is used to indicate that the called terminal is in a busy state for the invalid paging request.

5. A message processing method, characterized in that: include: Before establishing the call connection, receiving a paging request from a network device, wherein the paging request includes an Internet Protocol Multimedia Subsystem (IMS) paging request; performing call connection processing on the paging request, wherein the call connection processing includes allocating resources; Sending a first response message to the network device, where the first response message is used to indicate a call progress of the paging request; If no feedback from the network device regarding the paging request is received within a second preset time period, modifying the first response message to obtain at least one third response message, wherein the feedback includes at least one of the following: a provisional response message and a rejection message; Sending the third response message to the network device; If a temporary response message of the network device to the paging request is received within the second preset time period, the call connection processing step of the unfinished paging request is executed.

6. The method according to claim 5, characterized in that The modifying the first response message to obtain at least one third response message includes: The target parameters of the first response message are modified to obtain at least one third response message, where the target type of the target parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource reservation parameter; if the first response message is based on the User Datagram Protocol UDP, the target type includes a protocol type, and the third response message is based on the Transmission Control Protocol TCP.

7. The method according to claim 5, characterized in that After sending the third response message to the network device, the method further includes: If no feedback from the network device regarding the paging request is received within the second preset time period, and there is a next third response message, the next third response message is sent to the network device.

8. The method according to claim 5, characterized in that Before modifying the first response message to obtain at least one third response message, the method further includes: Returning to the step of performing call connection processing according to the paging request to obtain a newly allocated first resource; Determine, based on the first resource, a first tag parameter of the To header field; The modifying the first response message to obtain at least one third response message includes: The first parameter of the first response message and the first tag parameter are modified to obtain a third response message, where the target type of the first parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource preset parameter; if the first response message is based on the User Datagram Protocol UDP, the type of the first parameter includes the protocol type, and the third response message is based on the Transmission Control Protocol TCP.

9. The method according to claim 8, characterized in that After sending the third response message to the network device, the method further includes: If no feedback from the network device regarding the paging request is received within the second preset time period, returning to the step of performing call connection processing according to the paging request to obtain a newly allocated second resource; Determine a second tag parameter of the To header field according to the second resource; Modify the second parameter and the second tag parameter of the first response message to obtain a fourth response message, where the type of the second parameter is the target type; Send the fourth response message to the network device.

10. The method according to claim 8, characterized in that After sending the first response message to the network device, the method further includes: If no feedback from the network device regarding the paging request is received within a third preset time period, the method returns to executing the step of sending a first response message to the network device, and the third preset time period is less than the second preset time period.

11. The method according to any one of claims 5 to 10, characterized in that The method further comprises: The second preset duration is determined according to the protocol type of the paging request.

12. The method according to claim 11, characterized in that If the protocol type of the paging request is User Datagram Protocol (UDP), the second preset duration is greater than 3*T1 and less than 4*T1, where T1 is the preset duration of the first timer.

13. The method according to claim 11, characterized in that If the protocol type of the paging request is Transmission Control Protocol TCP, the second preset time length is greater than 5 seconds and less than 6 seconds.

14. A communication device, characterized in that: include: a transceiver unit, configured to receive at least two paging requests from a network device before establishing a call connection, wherein the paging requests include Internet Protocol Multimedia Subsystem IMS paging requests; a processing unit, configured to perform call connection processing on each of the at least two paging requests, wherein the call connection processing includes allocating resources; The transceiver unit is further configured to send a first response message of each of the at least two paging requests to the network device, where the first response message is used to indicate a call progress of the paging request; The processing unit is further configured to, within a first preset time period, determine that the paging request is an invalid paging request if a rejection message is received from the network device for the paging request, or no feedback is received from the network device for the paging request, and the feedback includes at least one of the rejection message and a temporary response message; and release the resources occupied by the invalid paging request.

15. The communication device according to claim 14, wherein: The processing unit is further configured to determine that the paging request is a valid paging request if a temporary response message is received from the network device to the paging request within the first preset time period. The communication device according to claim 15 , wherein: The processing unit is further configured to, if the number of the valid paging requests is equal to 1, execute a call connection processing step for the uncompleted valid paging requests; or, if the number of the valid paging requests is greater than 1, determine a target paging request received first among the valid paging requests; The resources occupied by the valid paging requests other than the target paging request in the valid paging requests are released, and the call connection processing step of the unfinished target paging request is executed.

17. The communication device according to any one of claims 14 to 16, characterized in that: The transceiver unit is further configured to send a second response message to the network device, where the second response message is used to indicate that the called terminal is in a busy state for the invalid paging request.

18. A communication device, characterized in that: include: a transceiver unit, configured to receive a paging request from a network device before establishing a call connection, wherein the paging request includes an Internet Protocol Multimedia Subsystem IMS paging request; a processing unit, configured to perform call connection processing on the paging request, wherein the call connection processing includes allocating resources; The transceiver unit is further configured to send a first response message to the network device, where the first response message is used to indicate the call progress of the paging request; The processing unit is further configured to, if no feedback from the network device regarding the paging request is received within a second preset time period, modify the first response message to obtain at least one third response message, wherein the feedback includes at least one of the following: a provisional response message and a rejection message; The transceiver unit is further configured to send the third response message to the network device; The processing unit is further configured to, if a temporary response message to the paging request is received from the network device within the second preset time period, execute a call connection processing step for the unfinished paging request.

19. The communication device according to claim 18, wherein: The processing unit is specifically used to modify the target parameters of the first response message to obtain at least one third response message, where the target type of the target parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource reservation parameter; if the paging request is based on the User Datagram Protocol UDP, the target type includes a protocol type, and the third response message is based on the Transmission Control Protocol TCP.

20. The communication device according to claim 18, wherein The transceiver unit is further configured to, if no feedback from the network device to the paging request is received within the second preset time period and there is a next third response message, send the next third response message to the network device.

21. The communication device according to claim 18, wherein The processing unit is specifically used to return to execute the step of performing call connection processing according to the paging request to obtain a newly allocated first resource; determine the first tag parameter reaching the To header field based on the first resource; modify the first parameter of the first response message and the first tag parameter to obtain a third response message, and the target type of the first parameter includes at least one of the following: user agent User-Agent header field, request Require header field, audio and video media parameter type, resource preset parameter; if the paging request is based on the User Datagram Protocol UDP, the target type includes a protocol type, and the third response message is based on the Transmission Control Protocol TCP.

22. The communication device according to claim 21, wherein: The processing unit is further configured to, if no feedback from the network device regarding the paging request is received within the second preset time period, return to the step of performing call connection processing according to the paging request to obtain a newly allocated second resource; Determine the second tag parameter of the To header field according to the second resource; modify the second parameter of the third response message and the second tag parameter to obtain a fourth response message, where the type of the second parameter is the target type; Send the fourth response message to the network device.

23. The communication device according to claim 21, wherein: The processing unit is also used to return to the step of sending the first response message to the network device if no feedback from the network device regarding the paging request is received within a third preset time period after the first response message is sent, and the third preset time period is less than the second preset time period.

24. The communication device according to any one of claims 18 to 23, characterized in that: The processing unit is further configured to determine the second preset duration according to a protocol type of the paging request.

25. The communication device according to claim 24, characterized in that If the paging request is based on UDP, the second preset duration is greater than 3*T1 and less than 4*T1, where T1 is the preset duration of the first timer.

26. The communication device according to claim 24, characterized in that If the paging request is based on TCP, the second preset time length is greater than 5 seconds and less than 6 seconds.

27. A communication device, characterized in that: The communication device comprises at least one processor, a memory and a communication interface, wherein the processor is configured to call a computer program stored in the memory so as to enable the communication device to implement the method according to any one of claims 1 to 13.

28. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, and when the computer program is run on one or more processors, the method according to any one of claims 1 to 13 is implemented.

29. A computer program product, characterized in that When the computer program product is run on one or more processors, the computer program product implements the method according to any one of claims 1 to 13.

Citation Information

Patent Citations

  • Call management method and device for IP (Internet Protocol) multimedia subsystem

    CN101997850A

  • Responding to paging requests while waiting to request a connection to a wireless network

    CN105684533A