Introducing QueueMetrics Espresso
QueueMetrics Espresso is a way to install a fully configured QueueMetrics automatically on the most common Asterisk PBXs that use FreePBX (or a derivative) as their Asterisk configuration GUI.
QueueMetrics Espresso natively works on the following PBXs:
-
FreePBX
You obtain a completely configured system that supports inbound and outbound calling, linking to call recordings, call barging, the Agent’s GUI with logins/logoffs/pauses, call completion statuses and many other fetures.
Turning your PBX into a call-center solution
You probably already know that using one of the above-mentioned Asterisk distributions you can install a fully featured Asterisk-based PBX in a matter of minutes. This PBX is very good for most users as it is preconfigured to handle the most common scenarios one can find in a personal environment or in a small to medium sized office.
However, the common usage patterns of a small call center are quite different from the ones you are likely to find in a typical PBX, because:
-
Agents spend almost their whole working day being available to answer the phone (as opposed to standard PBX users who use the phone occasionally while doing other work); handling and answering calls for them has to be made as easy as possible.
-
A call center is usually a high-density commercial enterprise; therefore it has to be run and monitored using tools that offer immediate visibility on how things are going and that can quickly identify and address bottlenecks.
In our opinion, running a successful call center is more a state of mind than a given set of telephone equipment. What makes a difference is not the number of extensions, queues or agents you may have: it is a mindset where you consider that the customers calling in are very important and you do your best to serve them well within given budget limits.
Maybe you just run a small computer-repair shop and have a couple of lines coming in. What is the cost of having people waiting or calling various times because they cannot talk to anybody within a reasonable time? What will your clients think about you? On the contrary, what will your clients think of your Customer Service Department if it always answers after the very first ring? And how do you know if your technicians actually answer the phone when the calls come in or wait five minutes, because they are doing other things? These are the questions you should ask. If you follow the guidelines in this document, you’ll find an easy way to start answering questions like these.
Running a call-center, therefore, is not a matter of having multiple PRIs or special hardware. In most cases, you will not even need a separate box from your main PBX running Asterisk. You will only need some software and a bit of configuration to set it up correctly.
Call centers 101: the very basics
Before we start building a small call center, we have to focus a bit on the terminology:
-
A campaign is a set of calls that belong to the same scope, e.g. your technical support versus commercial support lines are different campaigns, though they may be staffed by the same agents.
-
An inbound campaign is devoted to answering people calling in, while an outbound campaign is made up by agents dialing out. Call centers often mix inbound and outbound activities in order to optimize the use of available personnel.
-
A queue is the physical implementation of an inbound campaign. The queue receives calls and routes them to the available agents, according to a predefined logic (usually, FIFO for the calls and round-robin for the agents). In call center terminology, this functionality is often referred to as the ACD (Automated Call Distribution).
-
An agent is a person working at a call center. The agent is different from a casual user as an agent logs in and out, in order to tell the system when he is available or not. In this way, the ACD searching logic minimizes agent searching time, as it hardly ever has to ring up an unavailable agent.
An agent can be working on one or more queues: whenever he is available, all calls coming in to any queue he’s working on will be routed to him.
In this tutorial, we will learn how to create both inbound queues and outgoing campaigns and the proper agent setup to handle them successfully.
Prerequisites
To follow this guide, you will need a reasonably modern Asterisk-based PBX installed, running FreePBX. It may be your home or office PBX. This tutorial has been produced for FreePBX 16 and its derivatives, but applying it to different versions should be rather trivial.
You can follow this guide completely while having your PBX running, so there is no need for any prolonged downtime. You will need at least a couple of telephones to test your setup, and a land line you can use.
You should be basically familiar on how to use your PBX: creating extensions, connecting to external lines and so on.
Espresso will install QueueMetrics and Qloaderd on your system by downloading them from the network, so your PBX needs to be connected to the Internet during the installation.
Tutorial organization
This tutorial is split into two separate parts; one for inbound and one for outbound.
For each queue/campaign, for both inbound and outbound, we will show how to:
-
Define it in FreePBX and QueueMetrics
-
Associate agents
-
Have agents use their QueueMetrics' agent page
-
Run statistical reports and real-time monitoring
-
Keep recordings of all calls made and play them back as needed
-
Listen to live calls as they are happening
In our scenario, we have a fictious set of queues and agents that work on them. They are defined as:
Queue code | Campaign name | Direction | Agents working on it | Extensions |
---|---|---|---|---|
300 |
Support EN |
Inbound |
200 and 201 |
400 and 401 |
301 |
Support ES |
Inbound |
200 |
400 |
302 |
Helpdesk |
Inbound |
201 |
401 |
350 |
Callback |
Outbound |
200, 201 and 202 |
400, 401, 402 |
Each agent is defined by his/her agent code; as you can see, extension codes are now separate and linked to the physical extension being used. You can have agents log on from different extensions and still be able to accurately track their activities.