Blog · How to gather caller information before answering?

How to gather caller information before answering?

The ideal solution for call centres and multiple businesses on one phone system

Many call centers provide services for several companies at a time. Entrepreneurs often have several businesses on the same PBX. Crucial is that the person answering the phone needs to know for which company the call came in for, in order to answer the phone with the right company name and give callers the feel that they are calling a sole company. Some phone systems play a recording to let the callee know for which company the call came in for. However, I believe it is even better to display the name of the company together with the caller ID, as this saves the callee the time to listen to the recording.

Some time ago, I already posted how to archive this with AskoziaPBX. However, this scenario described was meant for small companies sharing the same phone system. The call flow editor helps you to archive this much easier and even allows you to collect more user details on the way. In the first step, we are going to add the name of the company the caller called to the caller ID. This way agents can answer the phone with the right company name.

To get started, create a new call flow and add the modules like shown on the screen shot below. You need to duplicate this call flow for every company you want to manipulate the caller ID for. In this example we are forwarding to a central call flow with a queue where all calls are handled centralized. This also has the advantage that agents only need to sign into one queue, even though they might be answering calls for multiple businesses.


set caller id with extension

For call flow A you need put the following line into the Command module:
Set(CallerID(name)=Company_A:)

for call flow B:
Set(CallerID(name)=Company_B:)

and so on.

After prepending the company name, all calls are forwarded to a second call flow with one queue (screen shot below). This keeps things easy to maintain. Of course you can also create an individual queue per company.


pbx welcome message

Now, that we know for what company the call came in for, we can enhance the caller ID. Wouldn’t it be nice to add the information we’ve collected from the customer on the way through the call flow and make them available to the agent too?


collect pre-call information

To add more information to the caller ID, we use the Command module again, this time with the following command:

Set(CALLERID(name)=${CALLERID(name)} more_Information)

It adds any string to the caller ID. You can do this at various points in the call flow.

This way you can already ask for things like the preferred language or a customer number and the agent already has access to all these things before even answering the call.

Have fun playing with this. :)