How to Get CDR Data from Yeastar S-Series VoIP PBX


Yeastar S-Series Station Message Detail Recording (SMDR) provides a record of the system’s calls, including outgoing calls, incoming calls and internal calls. Typically, the record outputs to a customer-provided terminal or SMDR data collection device. SMDR allows you to monitor the usage at each extension and trunks. This makes charge-back and traffic managements easier.

The SMDR call record outputs when the call completes. SMDR requires a customer-provided data collection device connected to the Yeastar S-Series's  port 5038 through TCP/IP. Below steps will guide you how to activate the SMDR and collect CDR data from Yeastar S-Series VoIP PBX.

We take S100 as an example to explain how to get CDR data in real time.

AMI Settings

Step 1. Enable AMI on S100 and setup the permitted host/IP to access AMI.

PATH: Settings –>System -> Security -> Service


Step 2. Connect to S100 AMI through TCP/IP.

Here we will use a third party software tool putty.exe to demonstrate how to connect to S100 AMI through TCP/IP. A customer-provided data collection device will need to connect to S100 within the application and collect the CDR data, stored into its own database and use the CDR data for further purpose.


There is a space between ‘action:’ and ‘Login’. Use single CR/LF to change to another line. Use double CR/LF to send and execute the command.

Step3. Collect CDR data.

Once login successfully, S100 will send quite a lot messages to the application. Please ignore those messages that are not related to CDR. The CDR event will be sent when a call finish. The CDR data will in below format:

Event: Cdr
Privilege: cdr,all
Source: 1005
Destination: 1010
DestinationContext: DLPN_DialPlan1005
CallerID: "1005" <1005>
Channel: PJSIP/1005-00000001
LastApplication: Dial
LastData: PJSIP/1010,30,tTKkWwXx
StartTime: 2016-09-28 17:45:45
AnswerTime: 2016-09-28 17:45:45
EndTime: 2016-09-28 17:45:52
Duration: 6
BillableSeconds: 6
Disposition: ANSWERED
UniqueID: 1475113545.2

Database Settings

S100 uses MySQL as the database to store the CDR data, another much easier way to get the CDR data from S100 is access to S100 CDR Database directly. See below for detail steps:

Step 1. Setup Database grant on S100 web GUI.

Database Grant settings can be found on Settings -> System -> Security -> Database Grant. We can specify the username and password as we want.


Step 2. Access the Database on S100 from external application.

Here we use Navicat (A MySQL client) to access to S100 CDR Database. If you would like to get CDR data from your application, you will need to customize your application to access to S100 database. 

After connect successfully, you will be able to see below CDR table.




Have more questions? Submit a request


  • 0

    Hi Mandy, very informative, good post, thank you.  Can we add FTP as a third method to capture CDRs from S Series?  Regards, Gustavo.

  • 2

    We need grant to blacklist table! Is it realy?

Please sign in to leave a comment.