Summary:ASTERISK-00134: Flush CDR without closing it
Reporter:Paul Cadach (pcadach)Labels:
Date Opened:2003-10-29 00:43:58.000-0600Date Closed:2011-06-07 14:05:15
Versions:Frequency of
Description:Just to know things and position of * developers...

To track user activity in IVR, I think better to use in dialplan something like FlushCDR function instead of sequence of WriteCDR and Answer because WriteCDR will close current CDR and start new one while FlushCDR just writes out current CDR without closing it.

Also, I think CDR requires something like 'unique call id' to track user activity within single call.
Comments:By: Brian West (bkw918) 2003-10-29 18:12:36.000-0600

cdr does have a uniqueid field but its not on by default.  Check the src and turn it on.. recompile.

By: jerjer (jerjer) 2003-11-05 00:52:50.000-0600

This feature has been implemented. show application ResetCDR

By: Paul Cadach (pcadach) 2003-11-05 01:41:36.000-0600

Sorry, I meant ResetCDR(w) when says WriteCDR in the ticket's description.

I see nothing new about ResetCDR in the current CVS. I don't want to reset (zeroing) CDR but just write it out when user walks through IVR to check what he/she was do there (which menus selects and services was selected).

I.e. my requirements is:
- to see each call with its _real_ duration (ResetCDR will reset duration and "split" single call);
- have a field to uniquely identify each call to track activity within single call.

edited on: 11-05-03 01:39

By: scaredycat (scaredycat) 2003-11-06 07:12:25.000-0600

It's sort of related, I'd like to be able to force * to write the CDR (mysql)too.. particularly from within AGI. At the moment the CDR can get written at (more or lesS) any time, what means I have to hang around until it's written. Being able to force * to do the write immediately so that I can continue my processing...


By: jerjer (jerjer) 2003-11-06 13:22:59.000-0600

Call Detail Records are not for tracking IVR flow. CDRs are to bill people for services rendered. IE A long distance call.

You can collect the information you need using AGI

By: Paul Cadach (pcadach) 2003-11-06 21:03:07.000-0600

IVR can have important information which can cost money too. So, user manipulations with IVR must be tracked as a long distanse calls too for future bills.

I think better is to track entering and _leaving_ specified extensions in specified context.

By: jerjer (jerjer) 2003-11-06 21:05:58.000-0600

Hence AGI

By: Paul Cadach (pcadach) 2003-11-06 21:46:52.000-0600

Why to split billing information between existing CDR and AGI? For billing purposes AGI is bad for next reason:
1) it's external application so on heavily loaded IVR system will spend much time on AGI forks;
2) it's requires to write-out billing information in the same manner as it doing by Asterisk so I don't think AGI is the right place to "clone" asterisk's code for CDR writing.