Call control method and device, electronic equipment and storage medium
By setting the timer after the called terminal is connected to the electric call, and hanging up the phone when the SIP ACK signaling is not received when the timer expires, the call cannot be established normally and the user cannot hang up due to the IMS exception on the network side. The phone problem has improved the user experience.
Patent Information
- Application Number
- CN202311031633.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-15
- Publication Date
- 2025-02-21
AI Technical Summary
When the IP multimedia subsystem (IMS) on the network side is abnormal, the called terminal cannot receive the session initiation protocol (SIP) acknowledgement (ACK) signaling, resulting in the call between the calling terminal and the called terminal being unable to be established normally. Users of the called terminal cannot hang up the phone, which affects the user experience.
After the terminal is connected to the electric call, set the timer. If the terminal does not receive SIP ACK signaling from the IMS on the network side when the timer expires, the incoming call will be hung up.
By actively hanging up the phone, the called terminal is avoided from being waiting for a reply state, and the user can hang up the phone and call back in time, greatly improving the user's experience.
Smart Images

Figure CN119496766A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communications, and in particular, to a call control method and device, an electronic device, and a storage medium. Background Art
[0002] With the increasing popularity of mobile terminals, telephones have become an indispensable part of our daily communication. However, when the IP Multimedia Subsystem (IMS) on the network side is abnormal, the following situation may occur: the called terminal receives an incoming call and picks up the call, but the called terminal is unable to receive the Session Initiation Protocol (SIP) acknowledgment (ACK) signaling replied by the IMS on the network side, resulting in the inability to establish a call between the calling terminal and the called terminal. In this case, the called terminal is always waiting for a reply, and there is no hang-up button on its user interface (UI), so the user of the called terminal cannot hang up the call. This greatly affects the user experience and may even cause the user to miss important calls.
[0003] Therefore, how to effectively solve the above problems and better meet user needs is a technical problem that technicians in this field have been working hard to study. Summary of the invention
[0004] In order to at least solve the above problems existing in the prior art, the present invention provides a call control method and device, an electronic device and a storage medium.
[0005] According to the first aspect of an embodiment of the present application, a call control method is provided, comprising: setting a timer after a terminal answers an incoming call; if the terminal does not receive a Session Initiation Protocol SIP confirmation ACK signaling from the IP Multimedia Subsystem IMS on the network side when the timer expires, hanging up the incoming call.
[0006] Optionally, after the terminal receives and answers the incoming call, the step of setting the timer includes: after the terminal answers the incoming call and sends a SIP 200OK signaling to the IMS on the network side, setting the timer.
[0007] Optionally, the step of hanging up the incoming call includes: transmitting a first status value to a call application; and the call application sending a BYE message to an IMS on the network side according to the first status value to hang up the incoming call.
[0008] Optionally, the step of transmitting the first status value to the call application includes: transmitting the first status value to the call application by updating a call profile CallProfile or by an Intent.
[0009] Optionally, the call control method further comprises: if the terminal does not receive the SIP ACK signaling from the IMS on the network side when the timer expires, prompting the user that the incoming call is abnormal.
[0010] Optionally, the step of prompting the user that the incoming call is abnormal includes: the call application prompting the user that the incoming call is abnormal by sound or a pop-up window according to the first state value.
[0011] According to the second aspect of an embodiment of the present application, a call control device is provided, comprising: a setting module, configured to: set a timer when a terminal answers an incoming call; a processing module, configured to: hang up the incoming call if the terminal does not receive a Session Initiation Protocol SIP confirmation ACK signaling from the IP Multimedia Subsystem IMS on the network side when the timer expires.
[0012] Optionally, the setting module sets a timer after the terminal answers the call and sends a SIP 200OK signaling to the IMS on the network side.
[0013] Optionally, the processing module hangs up the incoming call by: transmitting a first status value to a call application; and the call application sends a BYE message to an IMS on the network side according to the first status value to hang up the incoming call.
[0014] Optionally, the processing module transmits the first status value to the call application through the following operation: transmitting the first status value to the call application by updating a call profile CallProfile or by an Intent.
[0015] Optionally, the processing module is further configured to: if the terminal does not receive the SIP ACK signaling from the IMS on the network side when the timer expires, prompt the user that the incoming call is abnormal.
[0016] Optionally, the processing module prompts the user that the incoming call is abnormal by the following operation: the call application prompts the user that the incoming call is abnormal by sound or pop-up window according to the first state value.
[0017] According to a third aspect of an embodiment of the present application, an electronic device is provided, comprising: at least one processor; and at least one memory storing computer executable instructions, wherein the computer executable instructions, when executed by the at least one processor, prompt the at least one processor to execute the call control method as described above.
[0018] According to a fourth aspect of an embodiment of the present application, a computer-readable storage medium storing instructions is provided, wherein when the instructions are executed by at least one processor, the at least one processor is prompted to execute the call control method as described above.
[0019] The technical solution provided by the embodiments of the present disclosure brings at least the following beneficial effects: after the called terminal answers the incoming call, the called terminal actively sets a timer so that it can actively hang up the call if it does not receive the SIP ACK signaling when the timer expires, thereby avoiding the problem that when the incoming call cannot be answered normally due to an IMS abnormality on the network side, the called terminal is always in a state of waiting for a reply, and there is no hang-up button on its UI, so that the user of the called terminal cannot hang up the call. Therefore, the user can hang up the call and call back in time, which greatly improves the user experience.
[0020] It is to be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] In order to more clearly and easily illustrate and understand the technical solutions in the embodiments of the present application, the following is a brief introduction to the drawings required for use in describing the embodiments of the present application.
[0022] Figure 1 The diagram shows abnormal interaction between the called terminal and the IMS on the network side.
[0023] Figure 2 is a flowchart illustrating a call control method according to an exemplary embodiment of the present application.
[0024] Figure 3 is a block diagram illustrating a call control apparatus according to an exemplary embodiment of the present application. DETAILED DESCRIPTION
[0025] The embodiments of the present application are described below in conjunction with the drawings in the present application. It should be understood that the implementation methods described below in conjunction with the drawings are exemplary descriptions for explaining the technical solutions of the embodiments of the present application and do not constitute a limitation on the technical solutions of the embodiments of the present application.
[0026] It will be understood by those skilled in the art that, unless specifically stated, the singular forms "one", "an", "said" and "the" used herein may also include plural forms. It should be further understood that the terms "including" and "comprising" used in the embodiments of the present application refer to that the corresponding features can be implemented as the presented features, information, data, steps, operations, elements and / or components, but do not exclude the implementation as other features, information, data, steps, operations, elements, components and / or combinations thereof supported by the technical field. It should be understood that when we say that an element is "connected" or "coupled" to another element, the one element may be directly connected or coupled to the other element, or it may refer to that the one element and the other element establish a connection relationship through an intermediate element. In addition, the "connection" or "coupling" used herein may include wireless connection or wireless coupling. The term "and / or" used herein indicates at least one of the items defined by the term, for example, "A and / or B" may be implemented as "A", or as "B", or as "A and B". When describing multiple (two or more) items, if the relationship between the multiple items is not clearly defined, the multiple items may refer to one, multiple or all of the multiple items. For example, the description of "parameter A includes A1, A2, A3" can be implemented as parameter A including A1 or A2 or A3, and can also be implemented as parameter A including at least two of the three items A1, A2, A3.
[0027] like Figure 1 As shown in , first, when the calling terminal initiates a call, the IMS on the network side sends an INVITE signaling to the called terminal. Then, the called terminal rings and sends a 180Ringing signaling to the IMS on the network side. Thereafter, when the called terminal picks up the call, the called terminal sends a SIP 200OK signaling to the IMS on the network side. At this time, if the IMS on the network side is abnormal, so that the network side cannot successfully forward the SIP 200OK signaling to the calling terminal, the calling terminal cannot reply with an ACK signaling to the IMS on the network side, and then the IMS on the network side cannot reply with an ACK signaling to the called terminal. In this case, Figure 1 As shown in the figure, the call between the calling terminal and the called terminal is not established normally. Although the called terminal has answered the call and started counting, the called terminal is still waiting for the IMS reply from the network side. There is no button for hanging up the call on the UI interface. Therefore, the user of the called terminal cannot hang up the call at this time. This greatly affects the user experience and even results in the failure to answer important calls.
[0028] In this application, a timer is set after the called terminal answers the call, and it is determined whether the called terminal receives the SIP ACK signaling from the IMS on the network side within the timer. If the called terminal does not receive the SIP ACK signaling from the IMS on the network side when the timer expires, the call is actively hung up. Figures 2 to 3 Describe this.
[0029] Figure 2 is a flowchart illustrating a call control method according to an exemplary embodiment of the present application.
[0030] like Figure 2 As shown in FIG. 1 , in step S210 , the called terminal receives an incoming call.
[0031] Specifically, when the calling terminal initiates an incoming call to the called terminal through the network or IMS, the IMS on the network side sends an INVITE signaling to the called terminal. Thereafter, the called terminal rings and sends a 180Ringing signaling to the IMS on the network side.
[0032] In step S220, after the called terminal picks up the incoming call, a timer is set.
[0033] Specifically, after the called terminal answers the call and sends a SIP 200OK signaling to the IMS on the network side, a timer is set, wherein the timer is used to determine whether a SIP ACK signaling is received from the IMS on the network side within the timing time of the timer (i.e., before the timer expires). In addition, the timer can be set during system development or after the system development is completed.
[0034] In step S230, it is determined whether the called terminal receives the SIP ACK signaling from the IMS on the network side within the timing time of the timer (ie before the timer expires).
[0035] If the called terminal does not receive the SIP ACK signaling from the IMS on the network side when the timer expires, the process proceeds to step S240 to hang up the incoming call.
[0036] In an exemplary embodiment of the present application, if the called terminal has not received the SIP ACK signaling of the IMS reply from the network side when the timer expires (for example, within 3 seconds), it indicates that the current call for the incoming call has not been established normally due to an IMS problem on the network side, wherein the timing duration of the timer can be set according to statistical data, or can be set by the developer or user based on experience, and the present application does not make specific limitations on this.
[0037] In an exemplary embodiment of the present application, the step of hanging up an incoming call includes: transmitting a first status value to a call application Call App; and the call application sends a BYE message to the IMS on the network side according to the first status value to hang up the incoming call. Specifically, the first status value can be transmitted to the call application by updating the call profile CallProfile or by the intent Intent method, wherein the first status value can be in any form recognizable by the call application, and the present application does not specifically limit this. After receiving the first status value, the call application sends a BYE message to the IMS on the network side according to the first status value to notify the IMS on the network side to end the incoming call.
[0038] In addition, if the terminal does not receive the SIP ACK signaling from the IMS on the network side when the timer expires, the user is also prompted that the incoming call is abnormal in step S240. Specifically, the calling application prompts the user that the incoming call is abnormal by sound or pop-up window according to the first status value, for example, by playing a local ring tone or popping up a pop-up window to prompt the user, for example, prompting the user that "the current call cannot be connected due to network reasons".
[0039] If the called terminal receives the SIP ACK signaling from the IMS on the network side within the timing time of the timer (i.e. before the timer expires), the process proceeds to step S250 to establish a call connection normally for the incoming call. That is, within the timing time of the timer, once the called terminal receives the SIP ACK signaling from the IMS on the network side, the call connection is established normally for the incoming call, and the timer can be reset at this time.
[0040] Through the above method, the called terminal actively sets a timer after answering the incoming call, so that it can actively hang up the call when the SIP ACK signaling is not received when the timer expires, thereby avoiding the problem that when the incoming call cannot be normally answered due to an IMS abnormality on the network side, the called terminal is always in a state of waiting for a reply, and there is no hang-up button on its UI, so that the user of the called terminal cannot hang up the call. Therefore, the user can hang up the call in time and call back, which greatly improves the user experience.
[0041] Figure 3 is a block diagram illustrating a call control apparatus according to an exemplary embodiment of the present application.
[0042] like Figure 3As shown, the call control device 300 may include a setting module 310 and a processing module 320. The setting module 310 may be configured to set a timer when the terminal receives an incoming call. The processing module 320 may be configured to hang up the incoming call if the terminal does not receive a Session Initiation Protocol SIP ACK signaling from the IP Multimedia Subsystem IMS on the network side when the timer expires.
[0043] In an exemplary embodiment of the present application, the setting module 310 may set a timer after the terminal answers the incoming call and sends a SIP 200 OK signaling to the IMS on the network side.
[0044] In an exemplary embodiment of the present application, the processing module 320 hangs up the incoming call by: transmitting a first status value to a call application; and the call application sends a BYE message to the IMS on the network side according to the first status value to hang up the incoming call.
[0045] In an exemplary embodiment of the present application, the processing module 320 transmits the first status value to the call application through the following operations: transmitting the first status value to the call application by updating a call profile CallProfile or by an Intent.
[0046] In an exemplary embodiment of the present application, the processing module 320 is further configured to: if the terminal does not receive the SIP ACK signaling from the IMS on the network side when the timer expires, prompt the user that the incoming call is abnormal.
[0047] In an exemplary embodiment of the present application, the processing module 320 notifies the user that the incoming call is abnormal by the following operation: the call application notifies the user that the incoming call is abnormal by sound or pop-up window according to the first state value.
[0048] According to an exemplary embodiment of the present application, an electronic device may also be provided, comprising: at least one processor; and at least one memory storing computer executable instructions, wherein the computer executable instructions, when executed by the at least one processor, enable the at least one processor to execute any one of the above-mentioned call control methods.
[0049] As an example, the electronic device may be a PC, a tablet device, a personal digital assistant, a smart phone, or other device capable of executing the above-mentioned instruction set. Here, the electronic device is not necessarily a single electronic device, but may also be any device or circuit capable of executing the above-mentioned instruction (or instruction set) individually or jointly. The electronic device may also be part of an integrated control system or a system manager, or may be configured as a portable electronic device interconnected with a local or remote interface (e.g., via wireless transmission). The processor may include one or more processors. At this time, one or more processors may be general-purpose processors, such as a central processing unit (CPU), an application processor (AP), etc., a processor only for graphics (e.g., a graphics processing unit (GPU), a visual processing unit (VPU), and / or an AI-specific processor (e.g., a neural processing unit (NPU)). One or more processors control the processing of input data according to predefined operating rules or AI models stored in non-volatile memory and volatile memory. The predefined operating rules or AI models may be provided by training or learning. Here, providing by learning means that by applying a learning algorithm to multiple learning data, a predefined operating rule or AI model with desired characteristics is formed. Learning can be performed in the device itself that performs AI according to the embodiment, and / or can be implemented by a separate server / device / system.
[0050] The processor can execute instructions or codes stored in the memory, wherein the memory can also store data. Instructions and data can also be sent and received through the network via the network interface device, wherein the network interface device can adopt any known transmission protocol.
[0051] The memory may be integrated with the processor, for example, RAM or flash memory is arranged within an integrated circuit microprocessor or the like. In addition, the memory may include a separate device, such as an external disk drive, a storage array, or any other storage device that can be used by a database system. The memory and the processor may be operatively coupled, or may communicate with each other, such as through an I / O port, a network connection, etc., so that the processor can read files stored in the memory.
[0052] In addition, the electronic device may also include a video display (such as a liquid crystal display) and a user interaction interface (such as a keyboard, a mouse, a touch input device, etc.) All components of the electronic device may be connected to each other via a bus and / or a network.
[0053] According to an embodiment of the present application, a computer-readable storage medium storing instructions may also be provided, wherein when the instructions are executed by at least one processor, the at least one processor is prompted to execute the above-mentioned call control method according to the exemplary embodiment of the present application. Examples of computer-readable storage media here include: read-only memory (ROM), random access programmable read-only memory (PROM), electrically erasable programmable read-only memory (EEPROM), random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), flash memory, non-volatile memory, CD-ROM, CD-R, CD+R, CD-RW, CD+RW, DVD-ROM, DVD-R, DVD+R, DVD-RW, DVD+RW, DVD-RAM, BD-ROM, BD-R, BD-R LTH, BD-RE, Blu-ray or optical disk storage, hard disk drive (HDD), solid state drive (SSD), card storage (such as, multimedia card, secure digital (SD) card or extreme digital (XD) card), magnetic tape, floppy disk, magneto-optical data storage device, optical data storage device, hard disk, solid state disk and any other device, any other device is configured to store computer programs and any associated data, data files and data structures in a non-transitory manner and provide the computer programs and any associated data, data files and data structures to a processor or computer so that the processor or computer can execute the computer program. The instructions or computer programs in the above-mentioned computer-readable storage medium can be run in an environment deployed in a computer device such as a client, a host, an agent device, a server, etc. In addition, in one example, the computer program and any associated data, data files and data structures are distributed on a networked computer system, so that the computer program and any associated data, data files and data structures are stored, accessed and executed in a distributed manner by one or more processors or computers.
[0054] It should be noted that the terms "first", "second", "third", "fourth", "1", "2", etc. (if any) in the specification and claims of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchangeable where appropriate, so that the embodiments of the application described herein can be implemented in an order other than that shown or described in the drawings.
[0055] It should be understood that, although each operation step is indicated by arrows in the flowchart of the embodiment of the present application, the implementation order of these steps is not limited to the order indicated by the arrows. Unless clearly stated herein, in some implementation scenarios of the embodiment of the present application, the implementation steps in each flowchart can be performed in other orders according to demand. In addition, some or all of the steps in each flowchart may include multiple sub-steps or multiple stages based on actual implementation scenarios. Some or all of these sub-steps or stages may be executed at the same time, and each sub-step or stage in these sub-steps or stages may also be executed at different times respectively. In different scenarios of execution time, the execution order of these sub-steps or stages may be flexibly configured according to demand, and the embodiment of the present application does not limit this.
[0056] The above is only an optional implementation method for some implementation scenarios of the present application. It should be pointed out that for ordinary technicians in this technical field, without departing from the technical concept of the solution of the present application, other similar implementation methods based on the technical ideas of the present application are also within the protection scope of the embodiments of the present application.
Claims
1. A call control method, comprising: After the terminal picks up the incoming call, a timer is set; If the terminal does not receive a Session Initiation Protocol SIP ACK signaling from the IP Multimedia Subsystem IMS on the network side when the timer expires, the incoming call is hung up.
2. The call control method according to claim 1, wherein: After the terminal receives and answers the incoming call, the steps of setting the timer include: After the terminal picks up the incoming call and sends a SIP 200OK signaling to the IMS on the network side, a timer is set.
3. The call control method according to claim 1, wherein: The steps of hanging up the incoming call include: transmitting a first state value to a calling application; The calling application sends a BYE message to the IMS on the network side according to the first status value to hang up the incoming call.
4. The call control method according to claim 3, wherein: The step of transmitting the first status value to the calling application comprises: The first status value is transmitted to the calling application by updating a calling profile CallProfile or by using an intent Intent.
5. The call control method according to claim 3, further comprising: If the terminal does not receive the SIP ACK signaling from the IMS on the network side when the timer expires, the user is prompted that the incoming call is abnormal.
6. The call control method according to claim 5, wherein: The steps of notifying the user of the abnormal incoming call include: The calling application prompts the user that the incoming call is abnormal by sound or pop-up window according to the first status value.
7. A call control device, comprising: A setting module is configured to: set a timer when the terminal receives an incoming call; The processing module is configured to: if the terminal does not receive a Session Initiation Protocol SIP ACK signaling from an IP Multimedia Subsystem IMS on the network side when the timer expires, hang up the incoming call.
8. An electronic device comprising: at least one processor; as well as at least one memory storing computer executable instructions, Wherein, when the computer executable instructions are executed by the at least one processor, the at least one processor is prompted to execute the call control method according to any one of claims 1 to 6.
9. A computer-readable storage medium storing instructions, wherein: When the instructions are executed by at least one processor, the at least one processor is prompted to execute the call control method according to any one of claims 1 to 6.