Each CDR (Call Detail Record) is a RTP (Real-time Transport Protocol) ticket. The CDR client uses the RTP ticket writer to write the ticket (CDR) in a ticket file on local disk (/software/twlocal) in binary format. Ticket files are node-specific; their file name includes the node ID, which means they are unique cluster-wide.
When certain conditions are met (for example, every 5 minutes, or every 5000 records, or every 5600256 bytes), the ticket manager closes the ticket file and all subsequent ticket data is written to a new ticket file. The ticket manager then copies the ticket file to a ticket pool located on a local node-specific directory (/tpa/CDR). Using the 'remote copy' function of the operating system, an additional copy will be created in the other cluster node ticket pool directory (backup). This procedure guarantees that all ticket data is stored on both cluster nodes at any time. The ticket pools provide storage of “primary” billing data, that is, data not yet sent to an external billing collection system.
The ticket manager then notifies the active CDR handler that a ticket file is available for processing in the ticket pool. The CDR handler also periodically audits the DB to see if any ticket files exist in the ticket pool that it was not notified of for whatever reason.
The CDR handler then converts the binary ticket file to an ASCII CDR BF (Billing File), assigns to it a cluster-wide file sequence number. The BF is now ready to be transferred to/from the billing collection system.
Parent topic: Call Detail Record (CDR)