IP Library Granted Patent US 10,063,705
Granted Patent B2
US 10,063,705 · App. 15/188,355 · Granted Aug 28, 2018

Systems and methods for selectively routing calls to a call center

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,063,705
App. No.
15/188,355
Granted
Aug 28, 2018
Kind
B2
Abstract

Systems and methods of routing calls may include receiving a plurality of calls, and for each of the plurality of calls, determining a threshold time that may be a maximum service time for the call, estimating an expected service time for the call, comparing the threshold time with the expected service time for the call, and assigning the call into one of a plurality of queues based upon the comparing. The method of routing may further include prioritizing the plurality of queues based upon the expected service time for each call in each of the plurality of queues, directing each call in a first queue of the plurality of queues to a first group of agents, and providing a callback prompt to each call in a second queue of the plurality of queues, wherein a priority of the first queue is higher than a priority of the second queue.

Claims (104)

1. A method of routing calls in a call center, comprising:

forecasting, by call activity forecaster, an anticipated call volume for each of a plurality of time intervals, wherein the forecasting is based upon historic call volume information;

receiving, by a communication port in the call center, a plurality of calls;

for each of the plurality of calls:

determining, by a threshold comparator, a threshold time as an indication of a maximum service time for the call, wherein the threshold time is based upon at least:

a first time interval during which the call was received, the forecasted anticipated call volume for the first time interval,

a number of agents in each of a plurality of queues, the agents being assigned to answer incoming calls, and

average wait times in each of the plurality of queues;

estimating, by a duration estimator, an expected service time for the call,

comparing, by the threshold comparator, the threshold time with the expected service time for the call, and

assigning, by a router, the call into one of the plurality of queues based upon the comparing;

prioritizing, by the router, the plurality of queues based upon the expected service time for each call in each of the plurality of queues;

directing, by the router, each call in a first queue of the plurality of queues to a first group of agents by determining a number of agents in the first group using a dynamic queue split algorithm, wherein the dynamic queue split algorithm comprises:

Minimize {T,S1,S2} ( J ),

subject to

S 1 +S 2 =S

W R ≤Max( W R )

W c ≤Max( W c ),

wherein T is the threshold time, S 1 is the number of agents in the first group, S 2 is a number of agents in a second queue, S is a total number of agents, W R is an average wait time in the first queue, Max(W R ) is a tolerable average wait time for the first queue, We is an average wait time for in the second queue and Max(W C ) is a tolerable average duration before callback; and

providing, by the communication port, a callback prompt to each call in a the second queue of the plurality of queues, wherein a priority of the first queue is higher than a priority of the second queue.

2. The method of claim 1 , further comprising:

directing a second group of agents to place a return call to each caller that placed the call assigned to the second queue.

3. The method of claim 2 , wherein directing the second group of agents to place the return call comprises determining a number of agents in the second group by the dynamic queue split algorithm.

4. The method of claim 1 , wherein estimating the expected service time further comprises:

using an interactive voice response system to obtain an input from a caller placing the call;

determining the nature of the call based upon the input;

comparing the nature of the call to a statistical database; and

based upon the comparing, estimating the expected service time for the call.

5. The method of claim 1 , wherein determining the threshold time comprises using the dynamic queue split algorithm in determining the threshold time.

6. The method of claim 1 , wherein directing each call in the first queue of the plurality of queues to the first group of agents comprises determining a number of agents in the first group based, at least in part, on a total number of agents, the forecasted anticipated call volume for the first time interval, and an expected total service time for a plurality of calls received in the first time interval.

7. The method of claim 6 , further comprising determining a number of agents in a second group based, at least in part, on a total number of agents, the forecasted anticipated call volume for the first time interval, a total volume of a plurality of calls received in the first time interval, and the number of agents in the first group.

8. The method of claim 1 , wherein determining the threshold time further comprises confirming that each of the average wait times in each of the plurality of queues is less than or equal to a predetermined maximum wait time for each of the plurality of queues.

9. The method of claim 1 , wherein determining the threshold time comprises determining that the threshold time has a higher value during periods of regular call activity compared to a threshold time value during periods of increased call activity.

10. A system for routing calls, comprising:

a processor;

a non-transitory, processor-readable storage medium in operable communication with the processor;

a duration estimator in operable communication with the processor;

a call activity forecaster in operable communication with the processor;

a router in operable communication with the processor, wherein the router comprises a threshold comparator;

wherein the storage medium comprises one or more programming instructions that, when executed, cause the processor to:

direct the call activity forecaster to forecast an anticipated call volume for each of a plurality of time intervals, wherein the forecasting is based upon historic call volume information;

direct a communication port to receive a plurality of calls;

for each of the plurality of calls:

direct the threshold comparator to determine a threshold time as an indication of a maximum service time for the call, wherein the threshold time is based upon at least:

a first time interval during which the call was received,

the forecasted anticipated call volume for the first time interval,

a number of agents in each of a plurality of queues, the agents being assigned to answer incoming calls, and

average wait times in each of the plurality of queues,

direct the duration estimator to estimate an expected service time for the call,

direct the threshold comparator to compare the threshold time with the expected service time for the call, and

direct the router to assign the call into one of the plurality of queues based upon the comparing,

direct the router to prioritize the plurality of queues based upon the expected service time for each call in each of the plurality of queues;

direct, using the router, each call in a first queue of the plurality of queues to a first group of agents by determining a number of agents in the first group using a dynamic queue split algorithm, wherein the dynamic queue split algorithm comprises:

Minimize {T,S1,S2 }( J ),

subject to

S 1 +S 2 =S

W R ≤Max( W R )

W c ≤Max( W c ),

wherein T is the threshold time, S 1 is the number of agents in the first group, S 2 is a number of agents in a second queue, S is a total number of agents, W R is an average wait time in the first queue, Max(W R ) is a tolerable average wait time for the first queue, We is an average wait time for in the second queue and Max(W C ) is a tolerable average duration before callback; and

direct the communication port to provide a callback prompt to each call in a the second queue of the plurality of queues, wherein a priority of the first queue is higher than a priority of the second queue.

11. The system of claim 10 , wherein the one or more programming instructions that, when executed, cause the processor to direct the threshold comparator to determine the threshold time further comprises one or more programming instructions that, when executed, cause the processor to use the dynamic queue split algorithm in determining the threshold time.

12. The system of claim 10 , further comprising one or more programming instructions that, when executed, cause the processor to:

direct a second group of agents to place a return call to each caller that placed the call assigned to the second queue.

13. The system of claim 10 , wherein the one or more programming instructions that, when executed, cause the processor to direct the second group of agents to place the return call further comprise programming instructions that cause the processor to determine a number of agents in the second group by the dynamic queue split algorithm.

14. The system of claim 10 , wherein the one or more programming instructions that, when executed, cause the processor to direct the duration estimator to estimate the expected service time for the call further comprise programming instructions that, when executed, cause the processor to direct the duration estimator to:

use an interactive voice response system to obtain an input from a caller placing the call;

determine the nature of the call based upon the input;

compare the nature of the call to a statistical database; and

based upon the comparing, estimate the expected service time for the call.

15. A system for routing calls, comprising:

a processor;

a non-transitory, processor-readable storage medium in operable communication with the processor;

a duration estimator in operable communication with the processor;

a call activity forecaster in operable communication with the processor;

a router in operable communication with the processor, wherein the router comprises a threshold comparator; and

a communications port in operable communication with the processor;

wherein the storage medium comprises one or more programming instructions that, when executed, cause the processor to:

direct the call activity forecaster to forecast an anticipated call volume for each of a plurality of time intervals, wherein the forecasting is based upon historic call volume information;

direct the communications port to receive a plurality of calls;

for each of the plurality of calls:

direct the threshold comparator to determine a threshold time as an indication of a maximum service time for the call, wherein the threshold time is based upon at least:

a first time interval during which the call was received,

the forecasted anticipated call volume for the first time interval,

a number of agents in each of a plurality of queues, the agents being assigned to answer incoming calls, and

average wait times in each of the plurality of queues;

cause an interactive voice response system to obtain an input from a callers placing the call,

determine the nature of the call based upon the input,

compare the nature of the call to a statistical database,

based upon the comparing, estimate an expected service time for the call,

compare the threshold time to the expected service time, and

direct the router to assign the call into one of the plurality of queues;

prioritize the plurality of queues based upon the expected service time for each call in each queue;

direct each call in a first queue of the plurality of to a first group of agents by determining a number of agents in the first group using a dynamic queue split algorithm, wherein the dynamic queue split algorithm comprises:

Minimize {T,S1,S2 }( J ),

subject to

S 1 +S 2 =S

W R ≤Max( W R )

W c ≤Max( W c ),

wherein T is the threshold time, S 1 is the number of agents in the first group, S 2 is a number of agents in a second queue, S is a total number of agents, W R is an average wait time in the first queue, Max(W R ) is a tolerable average wait time for the first queue, We is an average wait time for in the second queue and Max(W C ) is a tolerable average duration before callback; and

direct the communications port to provide a callback prompt to each call in a the second queue, wherein a priority of the first queue is higher than a priority of the second queue.

16. The system of claim 15 , wherein the one or more programming instructions that, when executed, cause the processor to direct the threshold comparator to determine the threshold time further comprises one or more programming instructions that, when executed, cause the processor to use the dynamic queue split algorithm in determining the threshold time.

17. The system of claim 15 , further comprising one or more programming instructions that, when executed, cause the processor to:

direct a second group of agents to place a return call to each caller that placed the call assigned to the second queue.

18. The system of claim 15 , wherein the one or more programming instructions that, when executed, cause the processor to direct the second group of agents to place the return call further comprise programming instructions that cause the processor to determine a number of agents in the second group by the dynamic queue split algorithm.

Assignments (5)
SECURITY INTEREST Recorded Oct 19, 2021
From: CONDUENT BUSINESS SERVICES, LLC
To: U.S. BANK, NATIONAL ASSOCIATION
Reel/Frame 057969/0445 →
SECURITY INTEREST Recorded Oct 19, 2021
From: CONDUENT BUSINESS SERVICES, LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 057970/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 18, 2021
From: JPMORGAN CHASE BANK, N.A.
To: CONDUENT BUSINESS SERVICES, LLC; CONDUENT STATE & LOCAL SOLUTIONS, INC.; CONDUENT TRANSPORT SOLUTIONS, INC.; ADVECTIS, INC.; CONDUENT COMMERCIAL SOLUTIONS, LLC; CONDUENT BUSINESS SOLUTIONS, LLC; CONDUENT CASUALTY CLAIMS SOLUTIONS, LLC; CONDUENT HEALTH ASSESSMENTS, LLC
Reel/Frame 057969/0180 →
SECURITY AGREEMENT Recorded Apr 23, 2019
From: CONDUENT BUSINESS SERVICES, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 050326/0511 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2017
From: XEROX CORPORATION
To: CONDUENT BUSINESS SERVICES, LLC
Reel/Frame 041542/0022 →