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