Actions

Call detail record: Difference between revisions

 
(13 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:Call Detail Record}}
==Applies To==
{| class="wikitable" style="width: 80%;"
|-
|'''Product'''
|'''Version'''
|-
|Tmedia
|2.9, 3.0, 3.2
|-
|SBC
|3.0, 3.1
|}
==Definition==
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:
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
*Incoming Network
Line 6: Line 23:
*Start time
*Start time
*End Time
*End Time
See this link from more details [http://en.wikipedia.org/wiki/Call_detail_record Wikipedia - Call Retail Record]


== TelcoBridges and call detail records ==
== TelcoBridges and call detail records ==
TelcoBridges [[TMG800]], [[TMG3200]] and [[TMG7800]] products support the generation of call detail records in [[Text Call Detail Records (CDR)|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.
TelcoBridges [[TMG800]], [[TMG3200]], [[TMG7800]] and [[ProSBC]] products support the generation of call detail records in [[Text Call Detail Records (CDR)|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 Call Detail Records (CDR)|Text CDRs ]] are stored locally on the TMG units and must be extracted from the system either manually, or automatically.  
[[Text Call Detail Records (CDR)|Text CDRs ]] are stored locally on the devices 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.  
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.  
Line 46: Line 62:


== Call Detail Records in High Availability (HA) Environment ==
== 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)
The term HA refers to a system equipped with primary and secondary host controllers (i.e. A 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
* '''Text CDR only''' Mode
Line 67: Line 83:
*** Each CDR record will only be present either on the primary or on the secondary host
*** 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
*** The user needs to merge the CDR records from both the primary and secondary hosts to get all the data
<br>
Click here for instructions on [[CDR:Customer_defined_CDR_Records|Customer defined CDR records]]


== Links on Call Detail Records==
*[[Text_Call_Detail_Records|Text CDR]]
*[[RADIUS|Radius CDR]]
*[http://en.wikipedia.org/wiki/Call_detail_record Wikipedia - Call Retail Record]


== Customer defined CDR records  ==
From release 3.1.101.1, 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, look at the list below to see the sip call headers that are not supported by this new feature. And from release 3.1.114.1, you can use the accounting header defined in sip_headers_manipulation.rb
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 16 , 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"
If you want to use accounting header with this feature, you need to add the accounting header in script sip_headers_manipulation.rb , for example:
def filter_sip_headers_manipulation params
  call[:manipulation][:accounting] = {}
  call[:manipulation][:accounting]["header1"] = "value1"
  call[:manipulation][:accounting]["header2"] = "value2"
end
The header1 and header2 are the accounting headers name you defined for your cdr purpose. After adding them in sip_headers_manipulation.rb, in text-area box "Customer CDR headers settings", you add :
HISTORY-INFO=header1:all
ruri=header2:all
Limitation:
1. The maximal number of Customer defined CDR records is 16.
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:
Accept
Accept-Contact
Accept-Encoding
Accept-Language
Alert-Info
Allow
Allow-Events
Also
Anonymity
Authentication-Info
Authorization
Call-ID
Call-Info
Contact
Content-Disposition
Content-Encoding
Content-Language
Content-Length
Content-Type
CSeq
Date
Encryption
Error-Info
Event
Expires
From
In-Reply-To
Max-Forwards
MIME-version
Min-Expires
Min-SE
Organization
P-Asserted-Identity
P-Media-Authorization
P-Preferred-Identity
Priority
Privacy
Proxy-Authenticate
Proxy-Authorization
Proxy-Require
RAck
Reason
Record-Route
Refer-To
Referred-By
Reject-Contact
Remote-Party-ID
Replaces
Reply-To
Request-Disposition
Require
Response-Key
Retry-After
Route
RPID-Privacy
RSeq
Security-Client
Security-Server
Security-Verify
Server
Service-Route
Session-Expires
Subject
Subscription-State
Supported
Timestamp
To
Unsupported
User-Agen
Via
Warning
WWW-Authenticate





Latest revision as of 12:58, 19 March 2024


Applies To

Product Version
Tmedia 2.9, 3.0, 3.2
SBC 3.0, 3.1

Definition

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

TelcoBridges and call detail records

TelcoBridges TMG800, TMG3200, TMG7800 and ProSBC 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 devices 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

RADIUS

Call Detail Records in High Availability (HA) Environment

The term HA refers to a system equipped with primary and secondary host controllers (i.e. A 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


Click here for instructions on Customer defined CDR records

Links on Call Detail Records