How get average time of agent?

how get that’s information by AMI?


What do you mean by “average time”?

What do you mean by “agent”? Do you really mean a queue member?

sorry, i do made a bad question, i need know how get the talk time, pause time of agents, each.

thanks and sorry for my english, i don’s speak very well!! i’m from Chile

What do you mean by agent ? do you mean an asterisk queue agent ?
I guess you mean sip extension . you can find it in Master.csv in /var/log/asterisk/cdr-csv
If you are using MYSQL or another database for CDR you can find it in BillSec field of table .

i need know thats information by agent conected to X queue, the agent information, thats information a wanna get by AMI (Action: Agents)

If you know the AMI action you need, you don’t need to ask here!

However, I would point out that the Agent action and chan_agent don’t know anything about queues.

Whilst it is true that app_queue has some special logic to deal with agents as queue members, Asterisk agents, in general, are just a way for a telephony device to login and logout of receiving calls directed at a virtual telephoney device, the agent channel.

when I talk to agents I refer to members of a queue, I am not a philosopher of asterisk, just wondering if you might know, I do not know, I wonder why, I can know how many calls via AMI entered the queue, how many answered and how many abandoned, for each member I can tell the time of connection, the time of the call in process but not the total time of talk of such member, if you can not know, so I wonder, I’m new is asterisk and you may be a silly question, or I be a fool for you, but know this not because I am.

thanks for the replies and willingness to help

I do not believe that Asterisk maintains Agent/Member average stats within itself. It does store peg counts and the time since the last call.

I store the queue_logs into an MySQL db and summaries the stats on a nightly basis.

If you are looking to display ‘live’ stats, you could parse the queue_log, either file or table, and generate the averages on a regular basis.

You could also do so using AMI and parsing events as they happen. You would need to maintain the total talk time for each Agent/Member and calculate the numbers you want. You may also need to track the total number of calls to a particular Agent/Member as Asterisk resets their call counters when they logout and back in.

If it were me, I would probably go for the database query as long as I was not updating my displayed stats very second. That also depends on system load and other factors.