One Way to Stop Overloading Your Telephony Server

Too much traffic can bring down your call center

There is a subset of your staff doing most of the work. This is the well-known Pareto Principle, where 80% of results are achieved by 20% of causes. 20% of your employees are doing 80% of the work. 20% of your clients are responsible for 80% of your profits. Understanding how this works in your cloud-based call center can help you be more efficient. Having 20% of your telephony servers handling 80% of the calls can be a recipe for disaster.

You may have one number that comes in on one trunk, and use smart IVR routing to get calls to the right spot. That’s pretty common. Your SIP provider may only allow one IP to communicate with it. That’s also pretty common. If you just point it to the first of many telephony servers, though, that server is going to be doing a lot of work. One strategy is to have agents distributed across multiple servers to spread things out. Another is to have multiple trunks. None of these solutions is ideal for heavy usage cases. On commodity or Cloud hardware, you will reach the capacity of a server, and be stuck. It’s worse if you have occasional bursts of activity over one trunk or another.

Load balancing is very important under heavy call volumes. For telephony, this is usually accomplished by having a load-balancing SIP Proxy in front of your telephony servers. Handling the media (voice, usually) is the hard part of a Voice over IP (VoIP) call. Signalling is fairly lightweight. Telling the server a call is coming in, accepting it, saying “Yes, I’m still here” is really just some text being passed back and forth. Taking the audio, encoding it, breaking it into packets and sending it off, possibly recording it, is the hard part.

One interesting fact about most VoIP traffic, such as SIP, is the signalling and media can happen on different servers. In the case where only one server is allowed to connect to the provider, this almost always means the signalling. The media can, and often does, connect to a different server.

On inbound, a SIP proxy handles the easy part. It can also decide which of the available servers will take the next call, and arrange the details between your server and your service provider. This way, there’s not one single server in a multi-server call center that’s struggling with 80% of the call volume.

For outbound, the usual solution is to have your trunk proxied, and the outbound load distributed evenly. This usually means spreading your agents out so the outbound call volume doesn’t overwhelm the server. Again, your SIP proxy looks like the trunk provider to each of the servers using the proxy. The call gets dialed, then the media is processed as normal.

In either case, whether inbound or outbound, you can avoid having the Pareto Principle cause disruption. The better you do with call distribution, the fewer complaints you’ll have with call problems.

One Number, One Big Problem

Where do you want your IVR to take the call

If you have one public toll free number you advertise broadly, you may have a problem. It’s something we’ve seen several times in the past. Giving the client one number to call solves their problem of deciding which number to call you at. The problem of taking that call and getting it to the right place now becomes yours. If you only ever have one type of call, then you can probably figure it out pretty quickly. Otherwise, you’re going to need help from your Interactive Voice Response (IVR) builder. Continue reading “One Number, One Big Problem”

Call Center Load Balancing with Kamailio

Call center load balancing with Kamailio

Session Initiation Protocol (SIP) hasn’t officially been crowned king of call center technologies, but it has become ubiquitous. The wide availability of SIP service providers and the way Asterisk is pushing Open Source technologies into the call center has made it undeniable. Especially now with the widespread adoption of Cloud-based call center software and remote agents, SIP is cementing its importance. Continue reading “Call Center Load Balancing with Kamailio”

Populating Client Information to Agents in Your ACD – Part 2

In Populating Client Information to Agents in Your ACD – Part 1 I talked about getting your client data into your call center ACD software. That’s an important step, but it doesn’t complete the task. Today I want to address the topic of finding the particular contact who is calling in and presenting that information to the call center agent. Continue reading “Populating Client Information to Agents in Your ACD – Part 2”

Trunk Selection and Cost Control – Simple Least Cost Routing

A priority for any new call center installation, once calls are being successfully dialed, is making those calls at the lowest cost.  Trunk usage charges are a very visible number, and a tempting target for savings.  It is vital that call center software offer a means of ensuring that calls get dialed in an economical manner.  An Asterisk Cloud-based call center should be no different. Continue reading “Trunk Selection and Cost Control – Simple Least Cost Routing”