[asterisk-dev] Attended transfers in queue_log

Mark Michelson mmichelson at digium.com
Mon Jun 16 10:10:18 CDT 2008


lenz wrote:
> Hello Mark,
> I have been working on the developement of QueueMetrics for a few years  
> now, and I'd say that this is one feature everybody wants in the  
> *-call-center world. I am sure that people would love it to be backported  
> to 1.2 as well  :)
> 
> About compatibility, I would sugget using a different set of verbs from  
> the one unattended transfers use, so it is easy to add that feature but  
> there is no confusion about existing logs. One thing comes to my mind:  
> what happens if you transfer from a queue to a second-level queue? this is  
> a quite-common scenario in small or hybrid call centers.

I suppose it depends on how the transfer is carried out. Let's say that the 
transfer is carried out like this:

1) Caller calls queue 1 and Member A picks up.
2) Member A initiates an attended transfer to queue 2.
3) Member A hangs up before anyone answers queue 2.
4) Caller hears MOH in queue 2.
5) Member B picks up and talks to Caller.

In this scenario, after step 3, a TRANSFER will be logged for queue 1. After 
step 5, either a COMPLETECALLER or COMPLETEAGENT will be logged for queue 2 
depending on who hangs up first.

Now let's say that the transfer to the second queue were done like this:

1) Caller calls queue 1 and Member A picks up.
2) Member A initiates an attended transfer to queue 2.
3) Member A waits for Member B of queue 2 to answer.
4) Member A hangs up.
5) Caller talks to Member B.

In this scenario, after step 4, a TRANSFER is logged for queue 2 instead of 
queue 1. This is due to a pre-existing problem when local channels are used to 
call into a queue. When the caller is bridged with the queue member, the result 
is that the local channel is optimized out and so to app_queue, it appears as 
though the call has completed as soon as it starts. As an example, if you call 
into a queue using a local channel, you'll see that upon connecting with a queue 
member, both CONNECT and COMPLETECALLER messages are logged at that time. I 
suppose that this is the next correction to attempt to address in the queue_log.

> Thanks for your work anyway - where can I find the patch?

The changes have been merged into trunk. If you use subversion to check out a 
revision of Asterisk trunk greater than or equal to 122461, you'll have the 
change. Atis Lezdins has posted a patch for 1.4 in another message in this 
thread. Backporting this to 1.2 would be a major task since 1.2 does not have 
channel datastores, which this makes extensive use of.

> Thanks
> l.

Mark Michelson



More information about the asterisk-dev mailing list