Kevin P. Fleming 54727e1851 19 years ago
..
CODING-GUIDELINES 54727e1851 19 years ago
README.cdr 54727e1851 19 years ago
README.cliprompt 54727e1851 19 years ago
README.h323 54727e1851 19 years ago
README.iax 54727e1851 19 years ago
README.ices 54727e1851 19 years ago
README.mp3 54727e1851 19 years ago
README.mysql 54727e1851 19 years ago
README.sms 54727e1851 19 years ago
README.tds 54727e1851 19 years ago
README.variables 54727e1851 19 years ago
apps.txt 54727e1851 19 years ago
cdr.txt 54727e1851 19 years ago
channel.txt 54727e1851 19 years ago
extensions.txt 54727e1851 19 years ago
iax.txt 54727e1851 19 years ago
linkedlists.README 54727e1851 19 years ago
localchannel.txt 54727e1851 19 years ago
manager.txt 54727e1851 19 years ago
model.txt 54727e1851 19 years ago
modules.txt 54727e1851 19 years ago
queuelog.txt 54727e1851 19 years ago

README.cdr

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_manager supports CDR information via the AMI, The Asterisk Manager
interface
* cdr_odbc supports UnixODBC databases, see http://www.unixodbc.org
for an updated list of supported databases, from MySQL to MsSQL
and text files.
* cdr_tds supports FreeTDS databases (Among them MS SQL)
* cdr_sqlite supports SQlite
* cdr_pgsql supports PostgreSQL

In the asterisk-addons cvs archive, there's a cdr_mysql driver for
MySQL.



Applications
------------

* setaccount Set account code for billing
* setAMAflags Sets AMA flags
* NoCDR Make sure no CDR is saved for a specific call
* resetCDR Reset CDR
* forkCDR Save current CDR and start a new CDR for this call
* authenticate Authenticates and sets the account code
* SetCDRUserField Set CDR user field
* AppendCDRUserField Append data to CDR User field

For more information, use the "show application" command.
You can set default account codes and AMA flags for devices in
channel configuration files, like sip.conf, iax.conf etc.


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: Answer 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
in this situation (if DTMF is not required). When the transfer is completed
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.