User Rating: 4 / 5

Star ActiveStar ActiveStar ActiveStar ActiveStar Inactive

First of all, a Call Center is a very specific use case of a FIFO queue. Any respectable call center business must have some kind of implementation for their own use or for their users.

People do not like to wait while listening to your music on hold. Depending on the nature of your business, people could switch to another business or just wait. Because of this, itis very common these days that call centers to offer a call back feature. A call center feature is the one that allows users to hang out without losing its turn in the queue. When it is their turn (or about to be their turn), the system callbacks them.

FusionPBX and FreeSWITCH Approach

Happily, for us, FreeSWITCH and FusionPBX can be configured to let this happen. It is not out of the box and you will require technical FreeSWITCH knowledge. If you are just a FusionPBX WEB UI user, you will need to hire a consultant like myself to make this configuration in your PBX. Ok, here it is the explanation.

In this scenario, you have a call center queue with two agents answering. Both agents are busy at this moment and there are three users waiting in the queue. All the users are listening to your music on hold, and you make them aware if one of them presses the star key, they can be called back.

callback callcenter queue users in the queue 1

The second waiting user gets impatient and decides to press the star key.

callback callcenter queue a user asks for callback 2


Then, the user hangs up. The system uses some algorithm to predict when to call back the off-queued user. The system keeps accepting new users into the call center queue.

callback callcenter queue callback scheduled

The time passed, and the PBX calls the off-queued user. When the user answers, it is placed automátically in a high priority queue. Technically speaking, FreeSWITCH does not give priority to queues, it is just a name. I prefer to put the callback users into a separated queue because the MoH could be different; you could put a message saying "be ready, you are the next". If you do not plan to make a difference, using a single queue could be easier.

callback callcenter queue callback done and waiting for next turn

The user waits, and as soon an agent finishes the call, he will be the next on the line.

callback callcenter queue talking to an agent

Some Thoughts When Implementing Callback Feature

One of the things I can think you are wondering is what happens if the system predicts wrongly the waiting time before doing the callback. The thing is that this is a machine trying to predict the future, it is not 100% accurate. What I suggest is do some maths and get an exponential mean average or (if too difficult, a simple mean average), with that value you could predict more or less. The callback user will wait, but not for long.

Second, what would happen if everybody presses the asterisk button? Well, everybody will be called back and there is no point in doing the callback. However, you can make aware the users of the callback feature only if their waiting time could be more than 30 mins or if there are more than 10 users waiting. The thing here is to establish a policy to let them know about this.

Good luck!

blog comments powered by Disqus