Summary:ASTERISK-10330: [patch] updatecdr option for queues.conf
Reporter:Alexandre Snarskii (snar)Labels:
Date Opened:2007-09-18 07:19:05Date Closed:2007-09-18 10:58:55
Versions:Frequency of
Environment:Attachments:( 0) app-queue-cdr-1.4.11.patch
( 1) app-queue-cdr-trunk.patch
( 2) queues.conf.patch
When dynamic queue member accepts call, dstchannel logged to cdr as tech/channel.
Using this patch it's possible to update cdr dstchannel field to agent name,
set with AddQueueMember attribute membername or, if name not set, with interface agent logged on. That option mimics chan_agent default behaviour.
By default this option is off.


For example, agent logged to queue support from SIP/5464 using command
With current behaviour, cdr dstchannel will be something like
SIP/5464-08715000, not representing agent name.
With this option, dstchannel will be logged as Agent/1001, and that allows us
to easily find cdr's for calls accepted by specified agent.

Comments:By: Jason Parker (jparker) 2007-09-18 10:22:01

I looked at this, and compared it to what chan_agent does.  I noticed that you're using cdr->dstchannel rather than cdr->channel - can you explain why that is?

By: Alexandre Snarskii (snar) 2007-09-18 10:51:21

That's because in case of chan_agent, cdr directly updated when agent originates
call (within AgentMonitorOutgoing dialplan function, line 2374 of chan_agent.c)
or when he logs in (lines 1994 and 2064).
There are also "indirect" cdr update - when call gets answered on channel
Agent/NNNN, that channel set as dstchannel.

For app_queue.c intended behaviour to update existing call cdr record with
name of agent _answering_ the call. So, dstchannel is right place to store
this information, as it mimics indirect update..

By: Digium Subversion (svnbot) 2007-09-18 10:57:55

Repository: asterisk
Revision: 82800

r82800 | qwell | 2007-09-18 10:57:55 -0500 (Tue, 18 Sep 2007) | 9 lines

(closes issue ASTERISK-10330)
Reported by: snar
     app-queue-cdr-trunk.patch uploaded by snar (license 245)
     queues.conf.patch uploaded by snar (license 245)

Add an updatecdr option to queues.conf, so that if a "member name" is specified,
the cdr record will be updated with that, rather than the channel.


By: Jason Parker (jparker) 2007-09-18 10:58:55

Note that since this was a new feature, it could only go into svn trunk.