Kamailio Advanced Training
Click here for more details!

Learn how to build RTC services with Kamailio!

Wednesday, December 14, 2011

Siremis v3.2.0 Released

Siremis v3.2.0 is out – the web management interface for Kamailio SIP Server (former Openser) and SIP Express Router (SER). This is a major release, compatible with Kamailio v3.2.x.
This release brings a large set of new features. Among them:
  • SQL-based CDR rating engine for billing purposes
    • stored procedure to compute the costs of calls
  • Management of billing rates
    • longest prefix rate selections
    • rating rules can be grouped to allow many sets of values
    • time unit is configurable per rating rule
  • Management of remote registration records (uacreg table)
  • Managment of mtree module (mtree and mtrees tables)
  • Management of dialog variables table
  • Update of LCR and SIP Trace views for compatibility with Kamailio 3.2.x
  • Tools to generate new database table views in a wizard fashion
    • create new views to database table with a command line tool in 5 steps
  • Charts drawing statistics of accounting records
    • graphics to show the evolution of accounting records during the past hours
    • graphics to show the types of INVITEs (call setup) during the past hours
  • Tables presenting summary of accounting records
    • count the number of INVITEs and BYEs in the past hours
    • present the top activity of accounting records – e.g., top 5 caller and callee
    • more can be added from configuration file
  • More SIP server activity charts (e.g., SIP requests traffic load)
    • e.g., default chart presents how many requests are received in intervals of 10 minutes
  • Buttons to switch to command pannel to reload Dispatcher or PDT records in SIP server cache
    • once new records are added, in two clicks they get in the cache of SIP server
  • Views for managing global black lists table
  • Many improvements to user interface
    • selection of local domain is done via select box or picker form (e.g., in aliases, user preferences, pdt, …)
    • selection of local username is done via picker form (e.g., user black lists, user preferences, aliases, …)
    • group names can be set in config file and selected from a list box
    • many static values are given as option to select from a list box (e.g., dispatcher flags, lcr options)
  • More targets in Makefile to make administration easier
Step by step installation tutorial, screenshots and demo are available on the web at:
Siremis is used during Kamailio Advanced Training classes for management of SIP server, a good oportunity to learn about Siremis itself, check for next locations at:

Friday, December 2, 2011

Migrating project from BerliOS to GitHub

BerliOS, the open source software forge, announced ending of its life by Dec 31, 2011. Although some time later, there was another announcement that the service will continue, to be operated by a non-profit foundation, I thought anyhow of copying two projects I had there to GitHub.

The two small projects I wrote long time ago, while being a researcher at Franhofer Fokus, were not really maintained, but anyhow it would be a pity to lose the code, parts of it may be useful in the future. If anyone wanders, here is short the description of these projects:
  • pocketsipmsg - this project was used a lot durin 2002-2005 to make demos of SIP instant messaging using iPaq running Windows CE. It is basically a SIP user agent capable of sending and receiving text messages, developed in Visual C for Windows CE
  • tmrec - this project offers a C library and command line tool for matching time recurrences defined by iCal RFC2445. The code is actually used, being embedded in cpl-c module of Kamailio SIP Server
Initially they were stored in CVS repository of BerliOS, but I switched them to SVN some time ago. Therefore, I was looking how to migrate SVN repository from BerliOS to a GIT repository on GitHub.

Googling gave lot of useful tutorials about migrating SVN to GIT, I am writing here just to show the specific case of migration from BerliOS to GitHub - it could save time for some people interested in same kind of operation.

Personally I used a Mac OS X, so first I installed git-svn from ports:

# port -v -d install git-core +svn

On a Debian/Ubuntu, the command should be:

# apt-get install git-svn

You have to create a file to map BerliOS username (used for SVN commits) to name and email address (to be used by Git). I named it authors.txt, the content:

dcm = Daniel-Constantin Mierla <me@xyz.com>
(no author) = Daniel-Constantin Mierla <me@xyz.com>
root = Daniel-Constantin Mierla <me@xyz.com>

For some reasons, which I didn't want to spend time to investigate why, there were two other authors appearing to have committed in SVN: root and (no author) -- so simply I mapped them to myself as well.

Next step I used git svn to clone the berlios project - here is the command used for pocketsipmsg project:

# git svn clone http://svn.berlios.de/svnroot/repos/pocketsipmsg --no-metadata -A authors.txt -t tags -b branches -T trunk pocketsipmsg

You will have to replace pocketsipmsg with your project ID on BerliOS.

I wanted to get the tags and branches from SVN. In the cloned directory, pocketsipmsg, you can list the branches with:

# git branch -r

You will notice that the SVN tags are now branches, to get them back to tags, you have to execute for each tag (named next as $tagname):

# git tag $tagname tags/$tagname
# git branch -r -d tags/$tagname

On GitHub you have to create the repository for storing the project - see http://help.github.com/create-a-repo/ to learn how to do it, if you haven't done it yet. In my case, I named it also pocketsipmsg.

Then add GitHub as remote repository and push to it:

# git remote add origin git@github.com:miconda/pocketsipmsg.git
# git push origin master --tags

That's all, your project is now stored on GitHub!

In summary, if git-svn is installed, your project does not have tags, you created authors file and added the repository $PROJECTNAME on GitHub under user $USERID, the commands you have to run for migration of $PROJECTNAME from BerliOS to GitHub are:

# git svn clone http://svn.berlios.de/svnroot/repos/$PROJECTNAME --no-metadata -A authors.txt -t tags -b branches -T trunk $PROJECTNAME
# cd $PROJECTNAME
# git remote add origin git@github.com:$USERID/$PROJECTNAME.git
# git push origin master

Enjoy!

Thursday, December 1, 2011

Kamailio v3.2.1 Released

Kamailio SIP Server v3.2.1 stable is out – a minor release including fixes in code and documentation since v3.2.0 – configuration file and database compatibility is preserved.

Kamailio (former OpenSER) 3.2.1 is based on the latest version of GIT branch 3.2, therefore those running previous 3.2.0 versions are advised to upgrade. There is no change that has to be done to configuration file or database structure comparing with v3.2.0.

Resources for Kamailio version 3.2.1

Source tarballs are available at:

Detailed changelog:

Download via GIT:

 # git clone –depth 1 git://git.sip-router.org/sip-router kamailio  # cd kamailio  # git checkout -b 3.2 origin/3.2  # make FLAVOUR=kamailio cfg

Binaries and packages will be uploaded at:

Modules’ documentation:

What is new in 3.2.x release series is summarized in the announcement of v3.2.0: