Mitch Claborn
2012-Oct-18 14:47 UTC
[asterisk-users] Setting CDR fields in "connected" macro of Queue command
Trying to set some CDR fields in the "connected" macro of a queue
command. None of the custom fields I set are stored in the database,
but I can set "userfield" and it does get set. I think that the macro
runs on the agent's channel, not the caller's, and this might contribute
to the problem.
From the sample below "userfield" (and its alias operatorid) are
saved
in the CDR record, but salesqueue_answered is not.
What am I missing?
Asterisk 1.8.10.1~dfsg-1ubuntu1
same =>n,Queue(sales,tc,,,,,QueueConnected)
[macro-QueueConnected]
; this runs on the agent/member's channel
exten =>s,1,NoOp()
same =>n,Set(CDR(salesqueue_answered)=1)
same
=>n,Set(OPERATORID=${ODBC_OPERATORID_FROM_ADDRESS(${MEMBERINTERFACE})})
; userfield is mapped to operatorid in cdr_adaptive_odbc because
setting operatorid directly doesn't work here
same =>n,Set(CDR(userfield)=${OPERATORID})
--
Mitch
