From d3fc9fcf13911d5641998a2b78f56e40f799247e Mon Sep 17 00:00:00 2001 From: markster Date: Mon, 19 Jan 2004 02:30:02 +0000 Subject: Update CDR README git-svn-id: http://svn.digium.com/svn/asterisk/trunk@2051 f38db490-d61c-443f-a65b-d21fe96a405b --- doc/README.cdr | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 55 insertions(+), 6 deletions(-) diff --git a/doc/README.cdr b/doc/README.cdr index c2a63ed81..d6c9c0398 100755 --- a/doc/README.cdr +++ b/doc/README.cdr @@ -1,9 +1,55 @@ -Asterisk now generates Call Detail Records. See include/asterisk/cdr.h for -all the fields which are recorded. By default, records in comma-separated -values will be created in /var/log/asterisk/cdr-csv. You can specify -account codes and AMA (Automated Machine Accounting) flags on a per-channel -(Zaptel et al) or per-user (IAX) basis to help with accounting. Look -at the top of cdr/cdr_csv.c to see the format for the records. +Asterisk billing support - Call Detail Records +---------------------------------------------- +Asterisk generates Call Detail Records in a database or in a comma +separated text file. + * cdr_csv supports comma separated text file storage, this is the + default driver + * cdr_odbc supports UnixODBC databases, see http://www.unixodbc.org + for an updated list of supported databases, from MySQL to MsSQL + and text files. + + + +Applications +------------ + + * Asterisk cmd setaccount: Set accound code for billing + * Asterisk cmd NoCDR: Make sure no CDR is saved for a specific call + * Asterisk cmd resetCDR: Reset CDR + * Asterisk cmd authenticate - Authenticates and sets the account code + * Asterisk cmd SetCDRUserField - Set CDR user field + * Asterisk cmd AppendCDRUserField - Append data to CDR User field + +For more information, use the "show application" command. + + +Fields of the CDR in Asterisk +----------------------------- + + 1. accountcode: What account number to use, (string, 20 characters) + 2. src: Caller*ID number (string, 80 characters) + 3. dst: Destination extension (string, 80 characters) + 4. dcontext: Destination context (string, 80 characters) + 5. clid: Caller*ID with text (80 characters) + 6. channel: Channel used (80 characters) + 7. dstchannel: Destination channel if appropriate (80 characters) + 8. lastapp: Last application if appropriate (80 characters) + 9. lastdata: Last application data (arguments) (80 characters) + 10. start: Start of call (date/time) + 11. answer: Anwer of call (date/time) + 12. end: End of call (date/time) + 13. duration: Total time in system, in seconds (integer), from dial to hangup + 14. billsec: Total time call is up, in seconds (integer), from answer to hangup + 15. disposition: What happened to the call: ANSWERED, NO ANSWER, BUSY + 16. amaflags: What flags to use: DOCUMENTATION, BILL, IGNORE etc, + specified on a per channel basis like accountcode. + 17. user field: A user-defined field, maximum 255 characters + +In some cases, uniqueid is appended: + + * uniqueid: Unique Channel Identifier (32 characters) + This needs to be enabled in the source code at compile time + ONE IMPORTANT NOTE: If you are trying to collect records on IAX to IAX calls you need to be aware that by default, IAX will attempt to transfer calls @@ -12,3 +58,6 @@ the call is dumped from the middle machine and thus the call detail records will report a short call time. If you want detailed records you must turn off IAX transfer, but unless your servers are very close together, you will definitely get a latency hit from doing so. + +---------------- +2004-01-17/v0.7.1 -- cgit v1.2.3