mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-30 07:41:39 +00:00 
			
		
		
		
	git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2175 65c4cc65-6c06-0410-ace0-fbb531ad65f3
		
			
				
	
	
		
			64 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			2.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| 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 account 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: 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.
 | |
| 
 | |
| ----------------
 | |
| 2004-01-17/v0.7.1
 |