Call detail record
Call detail records, or CDR for short, are the foundation of subscriber billing activities by telecom service providers. They are data records containing call-related information such as:
- Incoming Network
- Outgoing Network
- Calling number
- Called number
- Start time
- End Time
See this link from more details Wikipedia - Call Retail Record
Contents |
TelcoBridges and call detail records
TelcoBridges TMG800, TMG3200 and TMG7800 products support the generation of call detail records in text format. They also support the ability to export call detail records to a RADIUS server for accounting purposes. Both methods can be used simultaneously.
Text CDRs are stored locally on the TMG units and must be extracted from the system either manually, or automatically.
If the network supports RADIUS, this method is preferred as each record will be sent in a timely manner to an external database for storage.
Call Detail Records Generation
TelcoBridges CDRs are generated on a per-leg bases when the call is answered and when the call is terminated.
In the cases illustrated below:
Id is a 128 bits unique identifier for all the records of a same call.
- h323-conf-id for RADIUS and @{SessionId} for Text CDR
'Original Id is a 128 bits unique identifier used for Call Transfer records. Each call transfer outgoing legs has its own unique Id with its Original Id associated call legs (incoming+outgoing).
- h323-incoming-conf-id for RADIUS and @{OriginalSessionId} for Text CDR
Case 1: Call Answered
Case 2: Call Unanswered
Case 3: Call Transferred
Text-based Call Detail Records
Text-based call detail records
RADIUS Call Detail Records
Call Detail Records in High Availability (HA) Environment
The term HA refers to a system equipped with primary and secondary host controllers (i.e. An SBC deployed in a 1+1 configuration, a TMG7800 gateway with redundant controllers or Tmedia gateways deployed in a 1+1 configuration)
- Text CDR only Mode
- The active gateway application is storing text-based CDR records on the active host (i.e. non-zero bytes of CDR log file)
- Each CDR record will only be present either on the primary or on the secondary host
- The user needs to merge the CDR records from both the primary and secondary hosts to get all the data
- RADIUS CDR only Mode
- CDR records will be sent out to the RADIUS server(s) from the gateway application on the active host only
- No CDR records are stored on the HA system
- Text and RADIUS CDR Mode
- CDR records will be sent out to RADIUS server(s) from the gateway application on the active host
- The active gateway application is also storing text-based CDR records on the active host (i.e. non-zero bytes of CDR log file)
- Also, each text-based CDR record will only be present either on the primary or on the secondary host
- The user needs to merge the CDR records from both the primary and secondary hosts to get all the data
- RADIUS CDR with text CDR fallback Mode
- If the RADIUS server(s) is(are) in service
- CDR records will be sent out to the RADIUS server(s) from the gateway application on the active host only
- If the RADIUS server(s) is(are) out of service
- The active gateway application is storing text-based CDR records on the active host (i.e. non-zero bytes of CDR log file)
- Each CDR record will only be present either on the primary or on the secondary host
- The user needs to merge the CDR records from both the primary and secondary hosts to get all the data
- If the RADIUS server(s) is(are) in service
Customer defined CDR records
From release *******, The Customer defined CDR records is supported, you can select the SIP generic headers and their parameters as a CDR records used in TextCdr and Radius CDR, see the list below to see the headers that are not supported by this new feature.
For activating the feature, log on the web portal of SBC and go to Gateway->CDR Options->Use Customer CDR header, enter the CDR records you want in text-area box "Customer CDR headers settings" with the format like "cdr record"="sip header":"header parameter", for example:
TERM-IOI=P-Charging-Vector:term-ioi
P-CHARGE-INFO=P-CHARGE-INFO:all
This example means that 2 CDR records are needed, one is TERM-IOI and other one is P-CHARGE-INFO. Each line represents a CDR record and lines are separated by a line return. In this example, CDR record TERM-IOI comes from the received SIP header "P-Charging-Vector" and use its param "term-ioi" as the value of CDR record TERM-IOI. For the second line, CDR record is P-CHARGE-INFO and it comes from received SIP header "P-CHARGE-INFO", the parameter "all" means all of the content of sip header "P-CHARGE-INFO" will be used as the value of CDR record P-CHARGE-INFO. If Radius CDR is used, the attribute name will be like Telcob-generic-cdr-nameX (X will be from 1 to 8 , depends on the number of Customer defined CDR records ).
Usage example:
Text CDR: Test='@{TERM-IOI}',PCV='@{P-CHARGE-INFO}'
Radius CDR: Telcob-generic-cdr-name1 TERM-IOI=xxxxxxxxxxxx , Telcob-generic-cdr-name2 P-CHARGE-INFO=xxxxxxxxxxx
Radius server needs to parse the received value like "TERM-IOI=xxxxxxxxxxxx" for attribute "Telcob-generic-cdr-name1"
Limitation:
1. The maximal number of Customer defined CDR records is 8.
2. All of sip header in the the following list are not supported by the feature.
3. List of SIP header that are not supported: