I have a freepbx 16 with a sip number registered in and a sip trunk to a contact center. When a call come in the freepbx send it to a call center by sip trunk. Immediately a queue answers the call, after some time an agent answers to the call.
What I need is to know the time when an agent of the remote call center answers to the call (to know the waiting time of the caller).
I thought of the following solution:
I send, in the sip header a channel variable with uniqueid, to call center. When an agent answers, it opens an url and send the uniqueid received. At the url side a php script will record in a db uniqueid and answer_timestamp. When I need to know the waiting time I will run a query with a join on uniqueid on the asteriskcrdb.cdr table and the table of my db with uniqueid and answer_timestamp.
The solution seems complex to me, is there anyone who has a simpler solution?
Are you looking to know the wait time of every single call in a queue or just the average for all calls into a queue?
I need to know the time when the agent answer, thanks
Wouldn’t that information be available under Report → CDR Report?
under cdr report isn’t possible to know the time when the agent answer. When the PBX send the call to the call center the call is answered by a queue and after an agent answer. I need to know when the agent answers.