We have done the following;
We have a call centre with AgentLogin() method for having Agents logged on to some queue and ready to take calls once the calls gets connected to the queue and there are ready Agents.
Agents receiving the calls hears “U have a Call” and the caller gets connected to the agent automatically after the agents announcement.
we have built an AGI script to collect the CLID (calling line identification) or calling number and search through customers table with numbers, name, etc from a DB, and if a match is found the script displays or popup the caller’s name to the Agents screen or popup the caller’s number if its doesn’t match any name in the DB so the Agents can update the DB with the number, so it can be displayed next time the caller called.
We’ve been able to achieve the screen popup so that the Agents can Greet or call the customer by the name once connected to the customer. It makes so much sense for frequent customers.
Now, draw back is that, the popup comes a bit late for the Agents to see whats the name is before attending to the customer, so MOST of the time that does not happen.
We want to put some delay between when the AGI script runs and when the call enters the queue, but we need the call to enter the queue first, so that the AGI can pick up some variable that will be set (e.g UNIQUE_ID of the call) when the call enters the queue.
We have the following code snipped;
… some codes…
exten => 4000,n,AGI(cid.php)
exten => 4000,n,Queue(4000,t,custom/Uhaveacall)
… other codes…
So, how or where can we put this delay inside the Queue() command, since the call MUST enter the queue before our cid.php worked correctly?
We use Asterisk version 1.4.26 and it support calling AGI scripts inside the Queue(). We have tried calling the cid.php script inside the Queue() with AGI with no success.
Any idea on how to achieve the delay as explained and needed above will be appreciated.
Cheers to All.