I have a situation where for certain calls, I wish to suppress the creation of CDR records, specifically when I unpark a call. So in the context where my unparking is routed, I do the following:
[call-unpark]
exten => _7XX, n, NoOp(=-=-=- ${EXTEN}@${CONTEXT} -=-=-=)
exten => _7XX, n, ResetCDR()
exten => _7XX, n, NoCDR()
; following this is the unparking and bookkeeping
exten => _7XX, n, Hangup()
exten => h, 1, Goto(handlers, hangup, 1)
[handlers]
exten => hangup, 1, NoOp(=-=-=- ${EXTEN}@${CONTEXT} -=-=-=)
exten => hangup, n, ResetCDR(w)
exten => hangup, n, NoCDR()
I would thing that calling ResetCDR and NoCDR during the unpark would have prevented a CDR record from getting created, but this is not the case. Are there are other CDR oriented functions I should be using.
[Description]
This application causes the Call Data Record to be reset.
[Syntax]
ResetCDR([options])
[Arguments]
options
w: Store the current CDR record before resetting it.
a: Store any stacked records.
v: Save CDR variables. e: Enable CDR only (negate effects of NoCDR).