SYSTEM AND METHOD FOR PROVIDING DYNAMIC ELASTICITY OF CONTACT CENTER RESOURCES
A system and method for dynamically scaling up or down, resources of a contact center tenant, based on detected or predicted demands on the contact center tenant. A processor monitors and collects contact center operation data. The processor detects, in response to the monitoring, a condition relating to the operation of the contact center. The processor dynamically adjusts at least one hardware or software resource for the contact center based on the detected condition. Health of a particular deployment may also be monitored to learn over time which deployments are healthy for which conditions. If a current deployment is deemed to be unhealthy, the processor may take action to move the contact center to a healthy state.
1 . A method for providing dynamic elasticity of contact center resources, the method comprising:
monitoring and collecting, by a processor, contact center operation data;
detecting, by the processor, in response to the monitoring, a condition relating to the operation of the contact center; and
dynamically adjusting, by the processor, at least one hardware or software resource for the contact center based on the detected condition.
2 . The method of claim 1 , wherein the monitoring includes monitoring volume of interactions handled by the contact center, wherein the condition is an increased number of interactions when compared to a threshold volume.
3 . The method of claim 1 , wherein the monitoring includes monitoring hardware resources of the contact center, wherein the condition is an increased load on the hardware resources when compared to a threshold load.
4 . The method of claim 1 , wherein the dynamic adjusting adds or removes an instance of the software resource.
5 . The method of claim 1 , wherein the dynamic adjusting moves the software resource from a first computing device to a second computing device.
6 . The method of claim 1 , wherein the dynamic adjusting includes moving from providing a first mix of contact center services, to a second mix of contact center services.
7 . The method of claim 6 , wherein the second mix of contact center services include a contact center service not in the first mix.
8 . The method of claim 1 wherein the method further comprises:
selecting by the processor an adjustment strategy from a plurality of possible adjustment strategies in response to detecting the condition, wherein the dynamic adjusting is based on the selected adjustment strategy.
9 . The method of claim 8 , wherein the adjustment strategy is for generating a particular deployment state having the adjusted at least one hardware or software resource.
10 . The method of claim 9 , wherein the deployment state is selected from an archive of different deployment states.
11 . The method of claim 9 , wherein the selected deployment state is identified as a healthy state.
12 . The method of claim 1 , wherein the dynamically adjusting includes:
retrieving by the processor from an archive, recorded steps for performing the dynamic adjusting; and
executing by the processor the retrieved recorded steps.
13 . The method of claim 1 , wherein the dynamic adjusting includes:
taking by the processor the at least one hardware or software resource allocated to a second contact center and reallocating the resource to the contact center.
14 . The method of claim 1 , wherein the contact center operation data includes historical data.
15 . The method of claim 1 , wherein the detecting the condition includes making a prediction relating to the operation of the contact center.
16 . A system for providing dynamic elasticity of contact center resources, the system comprising:
a processor; and
a memory storing program instructions thereon that, when executed by the processor cause the processor to:
monitor and collect contact center operation data;
detect, in response to the monitoring, a condition relating to the operation of the contact center; and
dynamically adjust at least one hardware or software resource for the contact center based on the detected condition.