cdr-demoCall Detail Record Generator

Our call detail records (CDR) generator is developed with GEDIS Studio and is available on-line. To use it, you need to register for an account at and import into your private workspace the Telecom project available from the shared workspace.

Long Story Short:

  1. The CDR Generator is freely available online for evaluation,
  2. Generated CDR are controlled from an XML configuration file
  3. The configuration decribes usage profiles for a set of customers
  4. You can define your own patterns of usages (voice, sms, etc.)

Now if you want to know more on how it works you can read further...

Our CDR Generator produces records for a set of customer IDs by intantiating a usage profile. A profile describes how a customer consumes the services such as voice call, SMS, international calls, etc. You can configure your own profiles into dedicated configuration XML file.

For example, a profile can say that customers will call between 3 and 7 correspondents for a total duration of 27 minutes among which 50% of calls are for international correspondents.

The generator instantiates the profile into a sequence of CDR that match the constraints described in the profile. Thus, each customer sharing a same profile will still have a different sequence of CDR, but each sequence being compatible with the constraints of the associated usage profile.

If you have your own Customer dataset then you can configure the generator to read the data it needs from this dataset instead of randomly generate them.

video 48x48

If you want a quick outlook on how to produce test call data records with GEDIS Studio you can watch our video Call Data Record Generator  

 Beyond the quality of generated CDR, our solution is unique because it provides you with all the data you will need for testing a Telecom Information System component.

cdr rating and billing

Testing the Rating system requires both CDR and customer data in order to charge each CDR according to the customers' tariff plan. Obviously, the part identifying a customer in our generated CDRs must match the customer data defined in the Customer Database the rating refers to.

So, the process of producing test CDR relies on the customer data your tested system already has. In this project, you will have the choice of integrating existing customer data or generate them to inject them in the test environment.

  • Section 2 The generated data (structures and properties)
  • Section 3 is about the production process
    • Section 3.1 Producing the customer data
    • Section 3.2 Producing the profiled customer data
    • Section 3.3 Producing the Call Detail Records

Test Data Production Process

Producing realistic and controlled CDR test data for a set of customers is a multi step process. At each step a new file is generated to be used as input for the next step.

  1. Generate or obtain customer data
  2. Associate each customer to a usage profile
  3. Generate the CDR sequence for each customer according to its profile

cdr process

The two first generated data files are customer data, they can be either extracted from your production / test environment or generated and injected into your test environment. The point is that some of those customer data, we identify as "Telecom Data" will be included in the generated CDR and will ensure the consistency of generated CDR with the other data managed by the tested application.

Without this management of customer data, your test CDR may be just rejected because referring to unknown customers.

Step 1 : Creating Customer data

Customer data are made of business data and telecom data. Business information data are only needed if your customer data are generated (and not extracted from your test environment) and need specific fields for being injected in the customer repository of your test environment. Besides, the business data may also include one or several fields that will be use to select the appropriate profile

cdr generator process step1


In our demonstration we designed a customer data generator that uses a generic Personal Data generator with fields such as: Gender, Salutation, First Name, Last Name, Age, Date of Birth, Marital Status, Address, etc. Then, we add "Telecom" data such as IMSI, IMEI, MS-ISDN, Subscription Plan.

The values generated for the fields MS-ISDN, IMSI and IMEI take into account the international numbering plans. For example, the prefix of the IMSI gives the country code and the network carrier code. Then the MS-ISDN is also formatted according to the country of the customer's carrier.

Our sample file is based on the 3 carriers operating in France (eg. Orange, SFR and Bouygues Telecom). You can have a look at the Customer Sample DataCustomer Data Sample generated by GEDIS Studio.

Step 2 - Maping Customers to Profiles

Then comes the real magic. Because our data generation is profile based, we have to define the profiles and associate each customer to one of those profiles. For the sake of simplicity in this demonstration we have limited ourselves to those usage profiles (value applicable for a 1 day period):

  1. Profile 1 is for 10 Voice calls only, for a total of 30 min. and towards national correspondents
  2. Profile 2 is for 5 to 15 Voice calls for a total 45 min. and for 0 to 5 SMS, towards national correspondents
  3. Profile 3 is for 4 to 17 Voice calls for a total of 1h05 and for 3 to 7 SMS, towards national and a list of foreign countries,

cdr generator process step2

The association between a customer and its profile is achieved by mapping the customer's PLAN field value to a profile. Remember that the PLAN field is to be found in the business data part of the customer data record.

Again to simplify the demonstration we have limited ourselves to 4 different subscription plans in order to illustrate that there's no necessarily a perfect 1 to 1 match between a customer plan and its profile.

The maping table implemented in our demonstration is as follow:

  • All customers with subscription plan PLAN1 will have profile #1
  • All customers with subscription plan PLAN2 will have profile #2
  • 30% of customers with subscription plan PLAN3 will have profile #3
  • 70% of customers with subscription plan PLAN3 will have profile #2
  • All customer with subscription plan PLAN4 will have profile #3

help Want to read more about profiles ? expand

Step 3 - Creating Calls for Each Customer

The third generated file is therefor the CDR file containing the part of the customer data usually available from the network (MS-ISDN,IMSI,IMEI) and some customer data the mediation may get from the CRM (such as the customer plan for example).

cdr generator process step3

The duration of each call is computed from the total duration of the call of the usage pattern. Each duration is randomly chosen around the mean so that the sum of those durations exactly match the duration provided in the usage pattern!

The time of call for each CDR is also computed in order to make sure that two calls for the same customer never overlap!

You can have a look at the CDR Sample DataCDR Data Sample