Abnormity processing method based on IPPBX call queue, medium, device and IPPBX

By filtering available agents in the IPPBX call queue and setting timeouts and thresholds, IPPBX call queue anomalies were resolved, resource release was ensured, and system operating efficiency was improved.

CN119299571APending Publication Date: 2025-01-10XIAMEN XINGZONG DIGITAL TECH CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411179691.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-27
Publication Date
2025-01-10

AI Technical Summary

Technical Problem

In special circumstances, the IPPBX call queue may experience looping or dialing errors, causing the system CPU to be unable to release resources and resulting in abnormal CPU usage.

Method used

By obtaining the status of all agents in the call queue, available agents are filtered out, the start time and round of the call are recorded, and the maximum timeout time and call count thresholds are set. If the timeout or the threshold is reached, system resources are released to avoid abnormal loops.

Benefits of technology

The IPPBX call queue anomaly was resolved, ensuring the normal release of system resources, reducing abnormal loop logs, and improving server operating efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119299571A_ABST
    Figure CN119299571A_ABST
Patent Text Reader

Abstract

The invention provides an exception handling method based on an IPPBX call queue, a medium, equipment and IPPBX.The method comprises the steps that when a call request enters the call queue, the states of all seats in the call queue are obtained, and available seats in the queue are screened out; recording dialing starting time and reading a dialing round of the current call in the queue; starting to dial available seats in the queue, and if the available seats in the queue are all in a non-response state, quitting dialing waiting; if the current time exceeds the preset maximum timeout time, resetting the dialing round and recording the dialing starting time again; otherwise, the dialing round + 1; judging whether the dialing round is greater than or equal to a preset dialing time threshold value or not; if yes, the current call enters a dormant state, and system resources occupied by the current call are released. By using the technical scheme, the normal operation of the IPPBX is ensured by solving the problem that the system resources cannot be released when the IPPBX call queue is in the abnormal scene.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of communication technology, and in particular to an exception handling method, medium, device and IPPBX based on an IPPBX call queue. Background Art

[0002] IPPBX (Internet Protocol Private Branch Exchange) is a telephone exchange system based on IP protocol. This system integrates the functions of traditional telephone exchange and Internet communication technology, and is used to manage telephone communications within the enterprise. However, there are still some problems with IPPBX call queues: when the transfer object of the queue is configured to itself, if there are special situations such as call failure, the agent client turns off call waiting and turns on do not disturb, there will be abnormal states of looping jumps to the current queue or looping dialing agents, which will cause the system CPU to be unable to release resources, resulting in abnormal CPU usage. Summary of the invention

[0003] The embodiments of the present invention provide an exception handling method, medium, device and IPPBX based on an IPPBX call queue, so as to ensure the normal operation of the IPPBX by solving the problem that the IPPBX call queue cannot release system resources when it is in an abnormal scenario.

[0004] In order to achieve the above object, on the one hand, a method for handling exceptions based on an IPPBX call queue is provided, comprising:

[0005] When a call request enters a call queue, the status of all agents in the call queue is obtained, and available agents in the queue are screened out;

[0006] Record the start time of the call and read the dialing turn of the current call in the queue;

[0007] Start dialing the available seats in the queue. If all the available seats in the queue are in a non-answering state, exit the dialing waiting state;

[0008] If the current time exceeds the preset maximum timeout, the dialing round is reset and the dialing start time is re-recorded; otherwise, the dialing round is increased by 1;

[0009] Determine whether the dialing round is greater than or equal to a preset dialing number threshold; if so, the current call enters a dormant state and releases system resources occupied by the current call.

[0010] Preferably, in the exception handling method, the step of determining whether the current time exceeds a preset maximum timeout period comprises:

[0011] Determine whether the current time is greater than the dialing start time + the maximum timeout time.

[0012] Preferably, in the exception handling method, if all available seats in the queue are in a no-response state, the method further comprises:

[0013] Determine whether the current round of call waiting time is greater than the preset queue maximum waiting time;

[0014] If yes, exit the current call queue.

[0015] Preferably, the exception handling method further comprises, after resetting the dialing round and re-recording the dialing start time:

[0016] The step of starting to dial an available agent in the queue is performed.

[0017] Preferably, in the exception handling method, resetting the dialing round is: setting the dialing round to the initial dialing round+1.

[0018] Preferably, the exception handling method further includes:

[0019] The step of starting to dial available agents in the queue is executed in a loop.

[0020] Preferably, in the call queue configuration generation stage, the exception handling method, when there is a situation where the new destination of the call transfer in case of failure is the call queue itself and the end waiting when no seat is available is enabled or the allow incoming calls when no seat is available is disabled, the configured end waiting when no seat is available or the allow incoming calls when no seat is available is reversed.

[0021] On the other hand, a computer-readable storage medium is also provided, wherein the computer-readable storage medium is used to store a computer program, and the at least one section of the program is executed by a processor to implement the steps of any of the above-mentioned exception handling methods based on IPPBX call queues.

[0022] On the other hand, there is also provided an exception handling terminal device based on an IPPBX call queue, comprising a processor, a memory, and a computer program stored in the memory and running on the processor, wherein when the processor executes the computer program, the steps of the exception handling method based on the IPPBX call queue as described above are implemented.

[0023] On the other hand, an IPPBX is provided, which uses any of the above-described IPPBX call queue exception handling methods to handle call queue exceptions.

[0024] The above technical solution has the following technical effects:

[0025] The technical solution of the embodiment of the present invention obtains the status of all agents when the call request enters the queue, and filters out the available agents, records the dialing start time and reads the dialing round of the current call in the queue, and starts dialing the available agents in the queue. If all the available agents in the queue are in a no-answer state, the dialing waiting is exited. If the current time exceeds the preset maximum timeout time, the dialing round is reset and the dialing start time is re-recorded; otherwise, the dialing round + 1 is dialed, and it is continued to be determined whether the dialing round is greater than or equal to the preset dialing number threshold. If so, the current call enters a dormant state and releases the system resources occupied by the current call. While solving the abnormal CPU occupation, the abnormal cycle log generated by the call queue can be reduced to ensure the normal operation of the server. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 The present invention is a flowchart of an exception handling method based on an IPPBX call queue according to an embodiment of the present invention. DETAILED DESCRIPTION

[0027] To further illustrate the various embodiments, the present invention provides drawings. These drawings are part of the disclosure of the present invention, which are mainly used to illustrate the embodiments and can be used in conjunction with the relevant descriptions in the specification to explain the operating principles of the embodiments. With reference to these contents, a person of ordinary skill in the art should be able to understand other possible implementations and advantages of the present invention. The components in the figures are not drawn to scale, and similar component symbols are generally used to represent similar components.

[0028] The present invention will now be further described with reference to the accompanying drawings and specific implementation methods.

[0029] Embodiment 1:

[0030] IPPBX (Internet Protocol Private Branch Exchange) is a telephone exchange system based on IP protocol, which is used to manage telephone communications within the enterprise.

[0031] The call queue function of IPPBX is responsible for evenly distributing incoming calls to the system. The system tracks the agent status in real time and generates an effective agent queue. It connects the call to the most suitable agent based on the queuing algorithm. At this time, the caller needs to wait for a while, and the operator answers the call according to the order of the users in the queue.

[0032] The call queue determines whether to maintain call waiting based on the agent status. For example, it ends the waiting when there is no agent (LeaveEmpty) and allows incoming calls when there is no agent (Join Empty). It also provides a function of transferring to a new destination upon failure (failover), which can ensure that the customer is transferred to a new destination for processing in a timely manner when the call queue is not answered or the agent is in the above status.

[0033] The inventor of the present invention found in the process of studying the abnormal handling of IPPBX call queue that some IPPBXs have the following situations when calling the queue:

[0034] Case 1: When the call queue is generated, if the queue configuration fails, the new destination is the call queue itself, and Leave Empty is turned on or Join Empty is turned off. Therefore, when a call request enters the queue, if there is no available agent in the queue, the current call request will be repeatedly entered into the current queue.

[0035] Case 2: When the call queue is generated and the queue configuration fails, the new destination is the call queue itself. When a call request enters the queue, there is an available agent in the queue. However, when the call is made, the available agent's client turns off call waiting or turns on do not disturb, and the immediate reply fails, causing the current call to repeatedly dial the available agent.

[0036] The abnormal situations of Case 1 and Case 2 both make the retry interval time 0, and the CPU cannot release resources, resulting in abnormal CPU usage. Therefore, the inventor of the present invention proposes an exception handling method based on IPPBX call queue to ensure the normal operation of IPPBX by solving the problem that the IPPBX call queue cannot release system resources when it is in an abnormal scenario.

[0037] Figure 1 FIG. 1 is a flow chart of an exception handling method based on an IPPBX call queue according to an embodiment of the present invention. Figure 1 The exception handling method based on the IPPBX call queue of this embodiment includes the following steps:

[0038] When a call request enters the call queue, obtain the status of all agents in the call queue and filter out the available agents in the queue;

[0039] In a specific implementation, available seats in the filtered queue are added to a container to be dialed.

[0040] Record the start time of the call and read the dialing turn of the current call in the queue;

[0041] In a specific implementation, when a call request enters a queue, the available seats in the queue are dialed one by one. When all the available seats in the queue are in a no-answer state, the call waiting is exited, which is a dialing round.

[0042] In a specific implementation, when a call request enters a queue for the first time, the dialing round of the current call in the queue, ie, the initial dialing round, is usually configured as 0.

[0043] Start dialing available seats in the queue. If all available seats in the queue are in the unanswered state, exit the dialing waiting state.

[0044] In a specific implementation, after exiting the dial waiting, a predetermined queue retry interval time is entered.

[0045] In a specific implementation, if all available agents in the queue are in a no-answer state, the method further includes:

[0046] Determine whether the current round of call waiting time is greater than the preset queue maximum waiting time;

[0047] If yes, exit the current call queue.

[0048] In a specific implementation, when calling an available agent in the queue, the call fails to be replied immediately due to the agent client turning off call waiting or turning on do not disturb, etc., so that the call waiting time approaches 0. Therefore, at the same set time, the number of calls dialed in the queue under abnormal circumstances is greater than the number of calls dialed in the queue under normal circumstances.

[0049] In a specific implementation, when the call queue is in a normal state, the queue retry interval is defined by the user, and usually defaults to 30s.

[0050] In a specific implementation, when the call queue is in an abnormal situation, the queue retry interval is 0s.

[0051] If the current time exceeds the preset maximum timeout, the dialing round is reset and the dialing start time is re-recorded; otherwise, the dialing round is increased by 1;

[0052] In a specific implementation, the step of determining whether the current time exceeds a preset maximum timeout period includes:

[0053] Determine whether the current time is greater than the dial start time + the maximum timeout time.

[0054] In a specific implementation, when the current time is greater than the dialing start time + the maximum timeout time, the current time exceeds the preset maximum timeout time; when the current time is less than or equal to the dialing start time + the maximum timeout time, the current time does not exceed the preset maximum timeout time.

[0055] In a specific implementation, resetting the dialing round is: setting the dialing round to the initial dialing round + 1.

[0056] In a specific implementation, after resetting the dialing round and re-recording the dialing start time, the following steps are further included:

[0057] Follow the steps to start dialing an available agent in the queue.

[0058] Determine whether the dialing round is greater than or equal to a preset dialing number threshold; if so, the current call enters a dormant state and releases the system resources occupied by the current call.

[0059] In a specific implementation, the method further includes:

[0060] Loop through the steps to start dialing available agents in the queue.

[0061] In a specific implementation, during the call queue generation phase, when the configuration fails and the new destination is the call queue itself and the end waiting when no seat is available or the allow incoming call when no seat is available is enabled, the end waiting when no seat is available or the allow incoming call when no seat is available is reversed. This can avoid the abnormal situations caused by the above-mentioned situation 1 and situation 2, which makes the CPU unable to release resources and causes abnormal CPU usage.

[0062] In a specific implementation, the negation of ending waiting when there is no seat means continuing to wait when there is no seat, and the negation of allowing incoming calls when there is no seat means prohibiting incoming calls when there is no seat.

[0063] By utilizing the technical solution of the embodiment of the present invention, customers can cope with different call queue business situations by configuring the maximum timeout period, the threshold of the number of dialing times and the maximum waiting time of the queue. This is highly flexible, and the solution has less invasive code and low introduction complexity. While solving the CPU occupancy problem, it also reduces the abnormal cycle logs generated by the call queue, thereby ensuring the efficient operation of the overall server and call queue service.

[0064] Embodiment 2:

[0065] The present invention also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the above method in the embodiment of the present invention are implemented.

[0066] If the module / unit integrated in the computer unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present invention implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory) and software distribution medium, etc. It should be noted that the content contained in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.

[0067] Embodiment three:

[0068] The present invention also provides an exception handling terminal device based on an IPPBX call queue, comprising a processor, a memory, and a computer program stored in the memory and running on the processor. When the processor executes the computer program, the steps of the exception handling method based on the IPPBX call queue in the embodiment of the present invention are implemented.

[0069] Embodiment 4:

[0070] The present invention also provides an IPPBX, which uses the above-mentioned IPPBX call queue exception processing method according to the embodiment of the present invention to process call queue exceptions.

[0071] Although the present invention has been specifically shown and described in conjunction with the preferred embodiments, it should be understood by those skilled in the art that various changes may be made to the present invention in form and details without departing from the spirit and scope of the present invention as defined by the appended claims, all of which are within the scope of protection of the present invention.

Claims

1. An exception handling method based on IPPBX call queue, characterized in that: include: When a call request enters a call queue, the status of all agents in the call queue is obtained, and available agents in the queue are screened out; Record the start time of the call and read the dialing turn of the current call in the queue; Start dialing the available seats in the queue. If all the available seats in the queue are in a non-answering state, exit the dialing waiting state; If the current time exceeds the preset maximum timeout, the dialing round is reset and the dialing start time is re-recorded; otherwise, the dialing round is increased by 1; Determine whether the dialing round is greater than or equal to a preset dialing number threshold; if so, the current call enters a dormant state and releases system resources occupied by the current call.

2. The exception handling method according to claim 1, characterized in that: The steps of determining whether the current time exceeds the preset maximum timeout period include: Determine whether the current time is greater than the dialing start time + the maximum timeout time.

3. The exception handling method according to claim 1, characterized in that: If all available agents in the queue are in a no-answer state, the method further includes: Determine whether the current round of call waiting time is greater than the preset queue maximum waiting time; If yes, exit the current call queue.

4. The exception handling method according to claim 1, characterized in that: After resetting the dialing round and re-recording the dialing start time, the method further includes: The step of starting to dial an available agent in the queue is performed.

5. The exception handling method according to claim 1, characterized in that: Resetting the dialing round is: setting the dialing round to the initial dialing round + 1.

6. The exception handling method according to claim 1, characterized in that: Also includes: The step of starting to dial available agents in the queue is executed in a loop.

7. The exception handling method according to claim 1, characterized in that: During the call queue configuration generation stage, when there is a situation where the new destination for forwarding upon failure is the call queue itself and ending waiting when no agents are available or allowing incoming calls when no agents are available is enabled or disabled, the configuration generated for ending waiting when no agents are available or allowing incoming calls when no agents is available is reversed.

8. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store a computer program, and the at least one section of the program is executed by a processor to implement the steps of the exception handling method based on an IPPBX call queue as described in any one of claims 1 to 7.

9. An exception handling terminal device based on IPPBX call queue, characterized in that: The method comprises a processor, a memory and a computer program stored in the memory and running on the processor. When the processor executes the computer program, the steps of the exception handling method based on the IPPBX call queue as claimed in any one of claims 1 to 7 are implemented.

10. An IPPBX, characterized in that: Use the IPPBX call queue exception handling method as described in any one of claims 1 to 7 to handle call queue exceptions.

Citation Information

Cited By

  • Custom call flow implementation system and method based on IPPBX (Internet Protocol Private Branch Exchange)

    CN120434335A

  • A system and method for implementing custom call flow based on IPPBX

    CN120434335B