[asterisk-users] CDR

Atis Lezdins atis at iq-labs.net
Wed Oct 17 04:24:32 CDT 2007


On 10/17/07, Andrew Kohlsmith <aklists at mixdown.ca> wrote:
> On Tuesday 16 October 2007 15:25:13 Philipp Kempgen wrote:
> > Michael Collins wrote:
> > > I don't know if it's relevant or not, but I do know that at least one
> > > legacy PBX vendor (NEC) has a 'solution' that helps with some of the
> > > sillier CDR's that could get generated.  They have what they call a
> > > "pseudo-answer timer" which is basically just a way of saying, "If a
> > > call doesn't last for at least X number of seconds then it really isn't
> > > a call and no CDR should be generated."  It is a bit of a case of
> > > throwing away all really short phone calls, even legit ones, but it does
> > > also get rid of the silly stuff: I pick up, get dial tone, then hang up
> > > or I pick up, dial ext 1234, let it ring for two seconds and then hang
> > > up.
> >
> > I would definitely want a CDR record in this case.
>
> Out of curiosity... why? Both you and Atis seem to want to see CDRs for
> non-calls, and I'm unable to see why.

Hmm, i wanted to post a link on my mail to -dev list, but it's not
delivered there.. Ok, i'll paste it from my sent box:

------
The problem is that i don't get CDRs from IVR and from queue (if nobody
answered). I'm quite certain that the options for not-posting CDR should be
extended. For example if i'm setting userfield in dialplan - i might want
that CDR. Also, if i'm calling ResetCDR(w) i would really want that CDR (and
probably also next one).

I suppose, i could put Answer() in IVR, but i don't want it there, as nobody
actually picked that up (easier for accounting). And i defineately don't want
to do Answer() in queue's CDR (i want to know if somebody answered customer)

Can you please explain what was the cause of those fake CDRs? As i have
noticed - they couldn't be controlled from dialplan (no userfields, etc).
It's a good thing that they got removed, but those rules should be smarter.

Regards,
Atis


/* My dialplan */
context external {
1234 => {
       Set(CDR(userfield)=incoming)
       Answer()
       goto ivr|1|1
}
}

context ivr {
1=> {
       ResetCDR(w)
       Set(CDR(userfield)=ivr)
       ...
       goto queue|2|1
}
}

context queue {
2 => {
       ResetCDR(w)
       Set(CDR(userfield)=queue)
       Queue(2);
}
}

context agent {
_X. => {
       Set(CDR(userfield)=agent)
       Dial(SIP/${EXTEN});
}
}


-- 
Atis Lezdins
VoIP Developer,
IQ Labs Inc.
atis at iq-labs.net
Skype: atis.lezdins
Cell Phone: +371 28806004
Work phone: +1 800 7502835



More information about the asterisk-users mailing list