[asterisk-users] CDR on transfers of called ZAP channel

Gunnar Schaller linux at nowin.de
Mon Jun 11 07:26:06 CDT 2007


Hello list,
I have a problem with called ZAP channels making an attended-transfer
or blind-xfer. Signalling at the phones is ok, but the CDR of Asterisk
is wrong.
At the moment there is a bristuffed Asterisk 1.2.18 running with
bristuff-0.3.0-PRE-1y-g. Here is my dialplan, I simplified it a bit:

[default]
exten => 0123456789,1,Macro(dialpstn,${EXTEN})

[macro-dialpstn]
exten => s,1,Set(TRANSFER_CONTEXT=transfer)
exten => s,2,Set(FORWARD_CONTEXT=transfer)
exten => s,3,Set(CIDNUMORIG=${CALLERID(num)}) ; save callerid-num
exten => s,4,Set(CALLERID(num)=98765) ; dial out using msn 98765
exten => s,5,Dial(Zap/g1/${ARG1}|30|t)

exten => h,1,Set(CALLERID(num)=${CIDNUMORIG}) restore callerid-num for
CDR

[transfer]
exten => _X.,1,Set(CALLERID(all)="External" <0123456789>)
exten => _X.,1,Dial(SIP/${EXTEN})


So I call 0123456789 with SIP phone 10. The callee dials *1 20 for
attended transfer and SIP phone 20 (I have *1 for attended transfer in
features.conf). The called SIP-phone shows the caller-information I
set in context "transfer". But the CDR is wrong, it has 98765 in MySQL
field src. So it seems I can't overwrite the ${CALLERID(num)} for cdr,
but for the called channel.
Anybody who can explain that? Or any solution for called Zap channels
making an attended transfer?

-- 
Best regards,
 Gunnar Schaller



More information about the asterisk-users mailing list