cdr-demoCall Detail Record Generator

Our call detail records (CDR) generator is implemented with GEDIS Studio and is freely available online. 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,
  2. Generated CDR are controlled from XML configuration files,
  3. The configuration decribes usage profiles for a set of customers,
  4. You can define your own patterns of usages (voice, sms, etc.)

Import the CDR Generator Project

To generate CDR with GEDIS Studio you first need to import the sample project we made available in the shared workspace "GenieLog". This import will create a copy of the project in your workspace.

CDR Import Project

Generation of CDR from Usage Profiles

This data generator project simulates the behavior of a set of telecom operator's subscribers. Those behaviors are defined in profiles and describe all the network usages such as voice, SMS, MMS, over a period of time.

You can have multiple profiles defined and combined in a same simulation. Each profile is described in its own XML configuration file.

CDR Profile Selection

Why using different profiles?

For example, you can have a dedicated profile for modeling behavior of subscriber during working hours and another one for evenings. Same for the working days and week-end, or even for special days such as Christmass or New year's day.

You may also design profiles based on subscribed plans with variants for subcribers that call only for the prepaid amount and another variant for subcribers using 20% more than the prepaid amount of their plan.

Moving to Advanced Simulation

The provided CDR generator project is capable of generating any kind of profile over a set of subscribers. But for the sake of simplicity of this demonstrative project, the selected profiles  are applied to each subscribers referenced in the profile. In this specific design it is not possible this to make the generator to select alone a specific profile based on other information such as the subscriber being processed or anything else.

Please This e-mail address is being protected from spambots. You need JavaScript enabled to view it if you need more sophisticated logic in the generators to select a given profile based on various constraints such as the category of subcribers, its geolocation (country, city), its age, the time of the day, day of week, week of year, etc.

Writing a CDR Simulation Profile

To start with writing you own profile you should try one of the profile we propose in the shared workspace. Go the workspace manager, in the Data area you will find a folder Telecom/Profiles. Look there for XML files name prefixed by CDR_Profile.

Download the file and edit it using guideline explaoined hereafter. Then upload it into your own Data area. Update the configuration of the field "Profile File Names" in the generation "Configuration Step 1/3" to refer now to your profile.

You are now ready to run all the simulation.

CDR Profile Shared

Simulation period

Each profile defines a simulation period to be able to generates CDR timestamps distributed over that period and making shure that two CDR of the same subcriber never overlap while two CDR from different subscriber may overlap. The simulation period of a profile is defined by the start date and the duration using the following syntax:

Like illustrated in the following figure, the generator will produce CDR timestamp in such as way that no CDR of the same subscriber can overlap with another CDR of the same subscriber.

CDR No Overlap

Patterns of correlated CDR

Each profile is made of a sequence of patterns. A pattern describes the constraints over a subset of the CDR to be generated for a same subscriber.

For example, the following pattern says that each subscriber makes 2 outgoing voice calls for a total duration of 5 minutes to correspondents selected randomly from the ones of the operator FRAF2 and all calls are operated from the network of FRAF2.

The generator instantiates the profile into a sequence of CDR matching the constraints described in each patterns of 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.

Customers / Subscribers

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.

CDR Sample datasets

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