IP Library Granted Patent US 10,129,404
Granted Patent B2
US 10,129,404 · App. 15/464,266 · Granted Nov 13, 2018

Systems and methods for managing multi-tenant callback services

Inventors: Wesley Smith (Sandy, UT); Derek Burdick (Provo, UT); Wayne Sheppard (Lakewood, CO); Dennis Empey (Santa Clara, CA); David Tso (Milpitas, CA)
H04M3/5231H04M3/424H04M3/42229H04M3/5141H04M3/5158H04M3/5175H04M3/5183H04M3/5191H04M3/5233H04M3/5238
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,129,404
App. No.
15/464,266
Granted
Nov 13, 2018
Kind
B2
Abstract

Systems and methods for managing multi-tenant callback services may be provided via a multi-tenant services integration platform. Several multi-tenant software as a service applications may be offered as a hosted software solution via the multi-tenant services integration platform. Various applications may deploy and support a shared tenant and shared services environment where there can be many different customers (companies and users) running in their own virtual partition from a single application instance. The applications may be multi-tenant aware and integrated into an administration portal which integrates several shared tenant services. The tenant model may allow for customized application configurations to be run from a single application instance. Further, improved methods for providing callback management, calculating estimated wait times and providing for callback initiation may be integrated in such multi-tenant services.

Claims (41)

1. A system for managing multi-tenant callback services for customer contact centers comprising:

a processor;

a memory, wherein the memory has stored therein instructions that, when executed by the processor, cause the processor to:

receive configuration data for first and second contact center tenants;

associate the configuration data with a contact center application, wherein the contact center application is configured to support the first and second contact center tenants via a shared installation of the contact center application, wherein each tenant has a virtual partition on which instances of the shared installation of the contact center application is run;

receive first and second requests from first and second customers for respectively first and second resources of the first and second contact center tenants;

monitor position of the first customer in a first queue instance associated with the first tenant, and position of the second customer in a second queue instance associated with a second tenant, the first and second queue instances each running in the virtual partition provided for respectively the first and second tenants; and

provide via one of the instances of the contact center application, a first command to contact the first customer in response to the monitoring of the position of the first customer in the first queue instance;

provide via another one of the instances of the contact center application, a second command to contact the second customer in response to the monitoring of the position of the second customer in the second queue instance; and

a communication device coupled to the processor and adapted to contact the first and second customers in response to respectively the first and second commands.

2. The system of claim 1 , wherein the processor is further configured to identify configuration data for the first and second contact center tenants, the configuration data including information on agent skills.

3. The system of claim 1 , wherein the instructions further cause the processor to:

calculate an expected wait time for the first customer.

4. The system of claim 3 , wherein a first formula is used to calculate the expected wait time if at least one call was answered during a particular sampling window, and a second formula different from the first formula is used to calculate the expected wait time if no call was answered during the particular sampling window.

5. The system of claim 4 , wherein the first formula is configured to compute the expected wait time as a sum of an average speed of answer during the particular sampling window plus a number of calls currently in the first queue instance for a specific skill group.

6. The system of claim 4 , wherein the second formula is configured to compute the expected wait time based on an average speed of answer computed across a plurality of queues during the particular sampling window.

7. The system of claim 1 , wherein the instructions further cause the processor to:

adjust the first queue instance in real time without affecting the second queue instance.

8. The system of claim 1 , wherein the virtual partitions are configured to provide separation between the first and second queue instances.

9. The system of claim 1 , wherein the contact of the first and second customers are callback calls to the first and second customers.

10. The system of claim 1 , wherein the resources of the first and second contact center tenants include agents associated with the first and second contact center tenants.

11. A method for managing multi-tenant callback services for customer contact centers comprising:

receiving, by a processor, configuration data for first and second contact center tenants;

associating, by the processor, the configuration data with a contact center application, wherein the contact center application supports the first and second contact center tenants via a shared installation of the contact center application, wherein each tenant has a virtual partition on which instances of the shared installation of the contact center application is run;

receiving, by the processor, first and second requests from first and second customers for respectively first and second resources of the first and second contact center tenants;

monitoring, by the processor, position of the first customer in a first queue instance associated with the first tenant, and position of the second customer in a second queue instance associated with a second tenant, the first and second queue instances each running in the virtual partition provided for respectively the first and second tenants; and

providing, by the processor, via one of the instances of the contact center application, a first command to contact the first customer in response to the monitoring of the position of the first customer in the first queue instance;

providing, by the processor, via another one of the instances of the contact center application, a second command to contact the second customer in response to the monitoring of the position of the second customer in the second queue instance;

establishing, by a communication device coupled to the processor, contact with the first and second customers; and

establishing, by a media device, contact of the first and second customers in response to respectively the first and second commands.

12. The method of claim 11 further comprising identifying, by the processor, configuration data for the first and second contact center tenants, the configuration data including information on agent skills.

13. The method of claim 11 further comprising:

calculating, by the processor, an expected wait time for the first customer.

14. The method of claim 13 , wherein a first formula is used to calculate the expected wait time if at least one call was answered during a particular sampling window, and a second formula different from the first formula is used to calculate the expected wait time if no call was answered during the particular sampling window.

15. The method of claim 14 , wherein the first formula is configured to compute the expected wait time as a sum of an average speed of answer during the particular sampling window plus a number of calls currently in the first queue instance for a specific skill group.

16. The method of claim 14 , wherein the second formula is configured to compute the expected wait time based on an average speed of answer computed across a plurality of queues during the particular sampling window.

17. The method of claim 11 , wherein the method further includes:

adjusting the first queue instance in real time without affecting the second queue instance.

18. The method of claim 11 , wherein the virtual partitions are configured to provide separation between the first and second queue instances.

19. The method of claim 11 , wherein the contact of the first and second customers are callback calls to the first and second customers.

20. The method of claim 11 , wherein the resources of the first and second contact center tenants include agents associated with the first and second contact center tenants.

Assignments (5)
NOTICE OF SUCCESSION OF SECURITY INTERESTS AT REEL/FRAME 04814/0387 Recorded Feb 5, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR AGENT
Reel/Frame 070115/0445 →
MERGER Recorded Aug 7, 2024
From: ECHOPASS CORPORATION
To: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.
Reel/Frame 068206/0728 →
CHANGE OF NAME Recorded Aug 7, 2024
From: GENESYS TELECOMMUNICATIONS LABORATORIES, INC
To: GENESYS CLOUD SERVICES, INC.
Reel/Frame 068207/0085 →
SECURITY AGREEMENT Recorded Feb 22, 2019
From: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.; ECHOPASS CORPORATION; GREENEDEN U.S. HOLDINGS II, LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 048414/0387 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2017
From: SMITH, WES; BURDICK, DEREK; SHEPPARD, WAYNE; EMPEY, DENNIS; TSO, DAVID
To: ECHOPASS CORPORATION
Reel/Frame 041686/0990 →
Continuity (4)
Continuation 14683041 · Apr 9, 2015
Continuation 13480195 · May 24, 2012
Provisional Application 61490035 · May 25, 2011
Related Publication 20170195490A1 · Jul 6, 2017