New skins, views and data in SAM reports

There are many new improvments and features in this release of SAM Reports.

New Pivot grid views

SAM Reports2 Asterisk Pivot reports - Compact=

SAM Reports2 Asterisk Pivot reports - Compact View

New export types, fields

SAM Reports2 Asterisk Detailed Reports - New Fields and Exports

SAM Reports2 Asterisk Detailed Reports - New Fields and Exports

New skins

SAM Reports 2 New Skins - Blueprint

SAM Reports 2 New Skins - Blueprint

Other improvments

  • The ability to specify longer port numbers for transfer (up to 8 digits long)
  • More beautiful skins for printing and viewing
  • Bug fixes and performance enhancements
  • You may see more in release notes.

SAM Reports 2 is released!

The new version, SAM Reports 2 is out!

There are many  changes between SAM Reports and SAM reports 2, as well as new features introduced.

The changes

  • SAM Reports 2 supports big datasets, as well as sliced (rotated) log files, as was introduced in this blog post.
  • The same goes to the viewer that displays the reports.
  • Transfer of log files from the PBX/local PC now resumes, rather than copies all log files.
  • Parser is now separated from the viewer (SAMReports.exe). That is to facilitate adding different Asterisk SKUs, that may be changing the log files in some way.
  • Parser also shows a much more informative progress while processing.
  • There is a different organization of Pivot Reports window:
    • SAM Reports 1 loaded all available reports for CDR and queues respectively, in the same window.
    • Now there is a command for each of the available reports containing different elements.

New features

  • Pivot Reports
  • Detailed Reports
    • As requested by some of our customers, the detailed reports were introduced.
    • They display non-aggregated CDR and Queue calls.
    • Queue call drill-down reports were introduced:
  • Advanced parsing
    • Sometimes an Asterisk log file( CDR mostly) contains a lot of redundant and unneeded lines. If those entered the reports they would only generate noise and clog the report.
    • We introduced a way to recognize and ignore such lines when generating report. There are also rules to assign agents an extension, if it is contained in their name.
  • Log Files Viewer
    • Application that let’s you see the raw log files, as created by the Asterisk PBX.
  • Parsing results
    • There is a new window that shows the last parsed results.
  • Multiple Projects
    • SAM reports is not bound to a single Asterisk PBX anymore. It can generate reports for X number of Asterisk installations (X is determined by your SAM Reports 2 SKU : Enterprise-unlimited, Professional-10 and Standard-3) (Customer request)
    • You don’t need to make a new project only in case you have more than one Asterisk box. You might want to make a new project for each year, month…

I will be sending the update emails to my current customers next week. This upgrade is free for all registered users, and they will all be receiving a Professional SKU, an upgrade. I have decided to give free upgrades, because we consolidated all the efforts into this new version, and did not pay much attention to the version 1 of SAM Reports. That way we can thank them for being patient.


New Version is coming SOON!

New version of SAMReports (version 2) is coming very soon

Project OverView

Now the home tab of SAMReports 2 displays the current project CDR and Queue aggregated chart data.

SAMReports Project Overview

SAMReports Project Overview

Multiple projects

SAMReports Project Settings

SAMReports Project Settings

SAMReports2 supports multiple projects. That means that you can report on multiple PBX-es, or/and add log files from the past. That would be the case if you had log files from (eg. 2007) some old Asterisk PBX, and the machine is not working anymore, but you would like to see what was happening at the time. Or you could make a new project for each year, or a month for the same Asterisk PBX.

Detailed Reports

SAMReports Asterisk Queue detailed Report

SAMReports Asterisk Queue detailed Report

SAMReports now offers CDR and Queue detailed reports. Here you can see a sample Asterisk Queue detailed report.

Asterisk Queue Call Flow Chart

Asterisk Queue Flow Chart

Asterisk Queue Flow Chart

If you’re wondering what’s happening with your Queue Calls, you can dive into detailed reports and view a Queue Flow chart for a particular call.


New version of SamReports will support Trixbox and Fonality and Big Datasets

Update: 2011-12-07 : SAM Reports 2 has been launched, as you may see on this blog post.

Accessing sliced log files

I’ve been working on a new version of SamReports for quite some time. My main goal was to provide seamless “integration” with Trixbox/Fonality SKU-s. (It’s not integration really, but the process of copying thousands of files from PBX, gluing them together, processing and so on, has to be transparent to the user, with as little hassle as possible, none preferably).

I came into possession  of a large dataset and that has helped  a lot. You cannot possibly simulate real, raw data to work with. You would just end up with gibberish. That brings the issue of processing..

Big data

Current version of SamReports tries to load all the data in memory, to generate reports. That just doesn’t work for millions of log lines.

The new version is capable of processing any amount of data, because it works in chunks, and generates reports sequentially. I tested on a dataset with more than 10 million lines in CDR, and it finished in 37 minutes.

Generating TrixBox and Fonality Reports

SamReports Parser for TrixBox and Fonality

Above is the image of a summary generated after processing the log files. The graphs are being drawn during the parsing so that you’re not bored while processing a large dataset for the first time :) This is displaying the same charts to get an overview.

Quirks and twists of master.csv (chopped or not)

I did get dirty with the local  and transferred calls in CDR logs. Sometimes a call can be spanned in 5, 6 log lines. Those lines don’t necessarily come close, but can be even 1000 lines apart.

master.csv calls on a local channel

local channels in master.csv

Here you see a call spanned into just 2 lines, one after the other.

To be continued…

This is just a preview of what’s been cooking. There are many other things to mention, but I will do it in another post…


3 and a half months after release


Sales have been slightly above our expectations, thanks too all of our customers :) .


We have received feedback in a form of comments, e-mails, Skype calls.. People unanimously recognized the usability of the application. Some required additional features, most of which were already on our schedule.  Only 11% of our customers  needed the extra help to correctly set-up and run the application. Few prospects asked for features and modifications that have nothing to do with the purpose of Sam Reports which left us wondering whether our message (USP) was clear enough…

Soon there will be more information on our up-coming fall release…


The Release is coming soon

We are wrapping up the release of Sam Reports. I’ve been dealing mostly with the sales related tasks (setting up a shop, integrating the registration process into application). Answering numerous emails as well. More to come…


Need a VM of an operational TrixBox/Fonality

Why do I need it?

As I presented in my case, in the previous post, I need a virtual machine of an operational TrixBox PBX (Fonality edition).

  • I need it to test connecting to the MySQL database in order to read the CDR and queue data.
  • I also need it to further improve on my merging of the log files created by the system, and transferring them.

Privacy issues

  • I’m aiming at PBXs that are no longer in use, but have not been refurbished yet.
  • I will obfuscate the data. I made a little program, Randy, that generates random names and phone numbers, just for that purpose. I used it to change all the identifiable data from one of my clients. I’m using that data for demonstrating the features of Sam Reports, the owner of this blog.

What’s in it for you?

In Croatian (Ima’l mene tute?)


About beta and TrixBox-Fonality

The first five days of beta are behind me. Some people subscribed to the Google Group and others corresponded with me only via email. Very useful feedback so far, I’m satisfied with how all is going.

Update 2011-12-07 : SAM Reports 2 supports Trixbox/Fonality without any additional modules. Take a look at our new help files.

TrixBox (Fonality) issues

I would really like to make reading the reports from TrixBox (Fonality) a bit easier. Sam Reports generates Asterisk reports from log files that are present on every Asterisk box by default (master.csv and queue_log). TrixBox slices the log files into a bunch of small files and puts them in  date-named directories . Let me describe it in details:


It is originally just one cvs file located in /var/log/asterisk/cdr-csv/master.csv (I don’t care about the cdr-custom at the moment). On Fonality PBX, (I’m not sure that the situation is the same on all TrixBox SKUs), the master.csv data is placed in the same directory:  /var/log/asterisk/cdr-csv/09-10-01/,  but there are additional directories created there, on a weekly basis. So (the date – 09-10-01 – corresponds to YY-MM-DD). A new directory is created on Monday of each week , as stated in Fonality help files. I have copied all the files from Fonality PBX on my local PC, and below you can see a screenshot:

Fonality (TrixBox) master.csv

Fonality (TrixBox) master.csv

In each of these directories there are thousands of master.csv parts named: Master.csv.xxxxxxxxxx, where the xxxxxxxxxx is a UNIX time stamp (the number of seconds elapsed since Jan 1, 1970). One such file is created every 5 minutes, on a Fonality PBX. The file named just “master.csv“, that you see on the figure above, is the latest log that has not yet been stored in a directory and rotated.

Fonality-TrixBox master.csv parts

Fonality-TrixBox master.csv parts


Originally queue_log file is located in /var/log/asterisk/queue_log.  On Fonality-TrixBox  it is also dissected  into many parts, in much the same way.

Fonality-TrixBox queue_log

Fonality-TrixBox queue_log

The original “queue_log” file just holds the latest 5 minutes worth of information, and all other data is in files created by the same algorithm as CDR files.

Fonality-TrixBox queue_log parts

Fonality-TrixBox queue_log parts

Merging the files

One of my beta testers wanted to try Sam Reports, but got only the 5 minutes worth of data. So I decided to make a little program to merge all the disjointed files into one, master.csv and queue_log respectively. If you ever have such need, you can download the file here: FonalityMerge.

  • It requires that you have copied all the log files and directories from your Fonality box, somewhere on your local disk.
  • Then you merge the files with FonalityMerge
  • And you get your master.csv and queue_log

Now you can process the log files with Sam Reports and see your reports.

Further improvement

If I get enough inquiries for TrixBox/Fonality support I may opt to do one of the things:

  • Make the transfer of directories from Fonality-TrixBox available with a click of a button. That would take into account just the diff between directories and files (the directories and files already present on the local disk would not be transferred any more)
  • Or go for the database option and connect directly to the MySQL database with the logs. To do that I would need a working TrixBox with a database that contains meaningful data.  Meaningful means real data generated by using a system for 5-6 month, at least.

It would be great if someone could provide me with a virtual machine of a TrixBox PBX that has been operational for some time. I know it’s a long shot. I would be veeeery grateful.


Beta is ON!

SAM Reports beta started some six hours ago. Sing-ups are now officially closed.

I’ve sent the invites to all 42 participants. Isn’t 42 the magic number? ->  Answer to the Ultimate Question of Life, the Universe, and Everything.

I’ve also sent the invites to the Google Group for SAM Reports beta support.

Beta will end on March 22nd. I just wanted a round 30 days period. After that I will put a big “Download” button, followed by “Buy” button and “Get it for free” link…

More on that to follow…


Getting ready for beta

What I’ve done so far

In preparation for the beta I’ve done several things:

  • Set up “The SAM Reports Beta Testing” Google group.
  • Collected the email addresses form the beta sign-ups.
  • Made an extensible online help for testers and future users as well.
  • Added  mailing list (mailChimp) to our “About” page for anyone who cares to join. (Beta testers will NOT be added there automatically, only people who subscribe to the list will be added.)
  • Started blogging about the experience, and will continue once the beta starts.

My (company) policy

  • I will not send unsolicited and non-related emails to those who signed-up for beta.
  • I will send them just one email with the download link and an invitation to the previously mentioned Google group.
  • I will not disclose any identifiable information concerning the beta testers to anyone.
  • I will be giving free licenses to all who provide helpful feedback.

What is yet to be done

  • I will make some survey available for the testers later in the process. I’m still not sure on which tool to use. Maybe some hosted solution, maybe Google docs…
  • I’m just finishing the installation script with the fabulous InnoSetup. Once that’s completed I will host the installer on FileKicker.  I’m using a download service, even though I have an Amazon S3 (for hosting video files), because I want to keep things separate.
1 Comment
Clicky Web Analytics