Cloud computing call centers
AssigneeBolder Thinking Communications, Inc.
InventorsJohn Jasper, James A. Van Vleet, Nicole J. Hushka
Life of this patent
Estimating the term…
Abstract
Embodiments of the present invention generally relate to a cloud computing call center that may provide a multi-tenanted platform for scalable, dynamic allocation of telephony, PBX, and call center capabilities. Embodiments of the invention include implementations of a software telephony switch in a cloud computing environment that may dynamically allocate software based PBXes, virtual interactive voice responses (IVRs), and other system components to particular calls.
Claims26
At least one computer readable medium encoded with instructions that, when executed, cause at least one processing unit to perform actions comprising:
- receiving a call, including a number called;
- routing the call to a call flow service, wherein the call flow service is selected, based at least in part, on a load of the call flow service;
- after receipt of the call at the call flow service, accessing at least one dialplan, wherein the dialplan is selected based, at least in part, by the number called;
- and
- processing the call using the at least one dialplan.
A computer readable medium encoded with instructions that, when executed, cause at least one processing unit to perform actions comprising:
- accessing at least one value representing a total load of a plurality of software instances processing telephony calls;
- when the load is over a total baseline load value, initializing at least one additional software instance for processing telephony calls;
- and
- when at least one of the plurality of software instances is processing less than a threshold number of calls for a period of time, de-allocating the at least one of the plurality of software instances.
A cloud computing call center comprising:
- at least one processing unit and memory encoded with executable instructions coupled to the at least one processing unit;
- a virtual instance configured to utilize at least a portion of the at least one processing unit and memory, the virtual instance configured to execute instructions causing the at least one processing unit to perform actions including:
- receiving a call, including a number called;
- routing the call to a call flow service, wherein the call flow service is selected, based at least in part, on a load of the call flow service;
- after receipt of the call at the selected call flow service, accessing at least one dialplan, wherein the dialplan is selected based, at least in part, on the number called;
- and
- processing the call using the at least one dialplan;
- call control services configured to utilize at least a portion of the at least one processing unit and memory, the call control services and configured to monitor a load on the virtual instance and allocate additional virtual instances based, at least in part, on the load.
A method for processing telephony calls, the method comprising:
- routing an incoming call to one of a plurality of software based telephony switches, based, at least in part, on an individual load of at least one of the plurality of software based telephony switches;
- monitoring a total load of the plurality of software based telephony switches;
- and
- allocating additional software based telephony switches or de-allocating at least one of the plurality of software based telephony switches based, at least in part, on the total load.
A method for peer-to-peer telephony, the method comprising:
- receiving a call including a number called;
- accessing a directory of peer-to-peer telephony customers;
- when the number called is in the directory, routing the call over an Internet to a PBX associated with the number called;
- and
- when the number called is not in the directory, routing the call to a public telephone network.
Dependencies are inferred from the claim text.