Kamailio Advanced Training
Click here for more details!

Learn how to build RTC services with Kamailio!

Thursday, December 25, 2008

Merry Christmas and Happy New Year 2009!

Day by day, we ended another year. 2008 was full of events, starting with one major release and six minor releases, participation to workshops and conferences wordlwide, adoption in new production environments and acknowledgement of running platforms with millions of users and billions of routed minutes/month using Kamailio (OpenSER), check the News archive at:

http://www.kamailio.org

There were sad events as well, including the hijacking of the old domain name after the rename in Kamailio, still the SourceForge project goes on, with same name, proving the genuine openser project:

https://sourceforge.net/projects/openser/

We maintained release 1.3.x series, last being 1.3.4, which still keeps the old name and is available at:

http://www.openser-project.org/mos/view/News/NewsItem/OpenSER-v1.3.4-Released/

Life is going on, from the the latest major release, version 1.4.0, the project boosted in new features, a summary of what is new since then is available here:

http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x

An important share of effort was directed to clean the code and improve the stability and performance, a proof of maturity and the need to make the maintenance of the project easier and open for new comers. Lot of documentation was added in doxygen format inside the source code, Devel Guide was published, new developers can start new easier to enhance the application.


Reference moment for the future was the launch of SIP Router project in November - a concentration of many people with great SIP and VoIP expertise, backed up by huge programming experience in this field. This came to strengthen the development workforce, to ensure the reliability, to remove the doubts of what projects is better now or is going to develop better in the future.

http://sip-router.org

So, 2009 is an year that announces already great achievements to be done in its first half:

  • 1st Quarter - release of Kamailio (OpenSER) 1.5.0
  • minor releases for 1.4x and 1.5.x
  • 2nd Quarter - release of SIP Router project as stable version
  • dedicated meeting to celebrate the first operational SIP Router and draw future directions


With the release of SIP Router project, everyone gets access to the features provided by Kamailio (OpenSER), SIP Express Router and OpenIMSCore projects:

http://sip-router.org/benefits/

Looking forward to a fruitful 2009!

Tuesday, December 16, 2008

Kamailio v1.4.3 Released

A new release in 1.4 series is out. Kamailio 1.4.3 is based on the latest version of branch 1.4, including many fixes in code and documentation, therefore those running 1.4.0, 1.4.1 or 1.4.2 are advised to upgrade.

Source tarballs are available at:

http://www.kamailio.org/pub/kamailio/1.4.3/src/

Detailed changelog:

http://www.kamailio.org/pub/kamailio/1.4.3/ChangeLog

Download via SVN:

svn co https://openser.svn.sourceforge.net/svnroot/openser/branches/1.4 kamailio

Tag for this release can be browsed at:

http://openser.svn.sourceforge.net/viewvc/openser/tags/1.4.3/

Project site at SourceForge.net (still using old name):

http://sourceforge.net/projects/openser/

Modules' documentation:

http://www.kamailio.org/docs/modules/1.4.x/

What is new in 1.4.x release series is summarized in the announcement of v1.4.0:

http://www.kamailio.org/mos/view/KAMAILIO-v1.4.0-Released

Note: Kamailio is the new name of OpenSER project. First version under Kamailio name was 1.4.0. Older versions will continue to use OpenSER name.

Wednesday, December 10, 2008

Truphone - Call With Your iPod Touch

On 4th of December, 2008, Truphone increased its target market, making available their smart VoIP client available for iPod Touch:
http://truphone.blogspot.com/2008/12/turn-your-ipod-touch-into-phone-with.html

... charming and handy to use. Still loyal to my Nokia phone, but the latest developments from Truphone for iPhone and i'Touch are really tempting ...

Tuesday, December 9, 2008

Request/Reply Attributes Access From TM

Latest developments provide access to the attributes of reply while processing the request and vice-versa.

The TM module introduces two new features:

  • access to SIP request attributes while processing a reply belonging to same transaction
  • access to SIP reply attributes while processing a request belonging to same transaction

Functionalities come as pseudo-variables, $T_req(pv) and $T_rpl(pv) - where pv can be any pseudo-variable, check documents at:

http://www.kamailio.org/dokuwiki/doku.php/pseudovariables:devel#tm_module_pseudo-variables

The new pseudo-variables can be used:

  • in failure_route to get the attributes of the reply causing the failure route. You can take decisions what to do with the request based on reply details
  • in onreply_route to get the attributes of the request. you can take decision what to do with the reply based on request attributes.
  • in acc to store data from reply
  • in C code (modules)

Note that couple of PV are disabled for these cases (PV will return null) - these are the PV that alter/depend on the context of the processed message, like $Ts, $Tf (but you can use $TS and $TF), $time, destination set attributes. The $avp(...) will be current avps, as they are stored in a global list. Also, in case there is a timeout or other reply generated by kamailio itself, $T_rpl(pv) will return null as there is no real reply structure behind.

Example, print the source ip of the reply in failure route:

failure_route[1] {
    xlog("reply received from: $T_rpl($si)\n");
}

Monday, December 8, 2008

SQLOPS Module

sqlops module focuses to offer fast and easy access to SQL backends directly from the configuration file. Among its features:
  • many DB connections - the module can connect to many databases on different servers using different DB driver modules (mysql, postgres, ...) at the same time.
  • many DB results - the module can store many results of different SQL queries in separate structures at the same time. Thus is possible to work in parallel with several DB results.
  • access via pseudo-variables - the content of SQL query result is accessible via pseudo-variables.
  • array indexes - fast access to result values via array possition: [row,column].
  • persistence in process space - a result can be used many times in same worker process. Query once, use many times.

Here is an example of fetching and printing the content of a table:

...
modparam("sqlops","sqlcon","ca=>mysql://openser:abc@localhost/openser")
...
sql_query("ca", "select * from domain", "ra");
xlog("rows: $dbr(ra=>rows) cols: $dbr(ra=>cols)\n");
if($dbr(ra=>rows)>0)
{
    $var(i) = 0;
    while($var(i)<$dbr(ra=>cols))
    {
        xlog("--- SCRIPT: column[$var(i)] = $dbr(ra=>colname[$var(i)])\n");
        $var(i) = $var(i) + 1;
    }
    $var(i) = 0;
    while($var(i)<$dbr(ra=>rows))
    {
        $var(j) = 0;
        while($var(j)<$dbr(ra=>cols))
        {
            xlog("[$var(i),$var(j)] = $dbr(ra=>[$var(i),$var(j)])\n");
            $var(j) = $var(j) + 1;
        }
        $var(i) = $var(i) + 1;
    }
}
sql_result_free("ra");
...


Other advantages than the ones listed above against old avp_db_query() function:

- does not mess up fields position if the value in db is null

- use private memory, no locking

- does not iterate through linked (avp) list to get each field, direct

reference to each data structure in result array, thus much faster.

More info at:

http://kamailio.org/docs/modules/devel/sqlops.html

Saturday, December 6, 2008

PV and Transformation API Updates

Pseudo-variables and transformations implemented in core for Kamailio (OpenSER) versions <= 1.4.x are now moved in pv module.

This is part of cleaning up the core, in order to keep it slimmer and less exposed to bugs. There are modules and use cases that need no PVs, therefore no need of keeping the implementation of about 100 pseudo-variables and over 30 transformations in core.

Now the core includes only an API that allows to:
- register pseudo-variables
- parse name, evaluate and set value of pseudo-variable
- register transformations
- parse name and evaluate transformations in config file

$shv(...) - shared variables, and $time(...) - broken down time, were moved from cfgutils module to pv module ($shv(...) depends on $var(...)).

To summarise, for devel version (upcoming v1.5.0 release), if you need $ru, $avp(...), $var(...), a.s.o. in your config file you have to load pv module.

Two new pseudo-variables were introduced with this occasion, $TS and $TF, see more:
- http://www.kamailio.org/dokuwiki/doku.php/pseudovariables:devel#string_formatted_time_-_current
- http://www.kamailio.org/dokuwiki/doku.php/pseudovariables:devel#unix_time_stamp_-_current

Thursday, December 4, 2008

Code restructuring for Kamailio 1.5.0

The efforts to consolidate the core of Kamailio (OpenSER) and reduce duplicates of code are going on. Several modules with related functionalities were merged in others for a better and easier maintenance.
No functionality was removed, it can be now just found
in a different place.

1. gflags module
The functionality of this module was integrated into the cfgutils module. The internal functionality, function names and MI commands are the same, the parameter “initial” was renamed to “initial_gflags”.

2. options module
The functionality of this module was integrated into the siputils module. The function name was not changed, all parameters were prefixed with the "options_” string.

3. uri module
The functionality of this module was integrated into the siputils module. The function names were not changed, internal functionality is the same.

So starting from the release 1.5 you'll need to fix your "loadmodule" statements and some parameter prefixes in your config if you use one of the mentioned modules. Documentation for the functions can be found in the usual place:

[1] http://www.kamailio.org/docs/modules/devel/cfgutils.html
[2] http://www.kamailio.org/docs/modules/devel/siputils.html

Monday, December 1, 2008

25th Chaos Communication Congress

- Kamailio and 25th Chaos Communication Congress in Berlin...

Henning Westerholt, developer and board member of Kamailio (OpenSER) project, will be present this year at the 25th Chaos Communication Congress in Berlin [1], December 27th to 30th, 2008.

If you go there or you are around Berlin that time, contact Henning in case you want to meet for some hacking sessions and discussions around the Kamailio and SIP-Router projects.

For contact address, see his email posting with this announcement.

http://lists.kamailio.org/pipermail/users/2008-December/020842.html

[1] http://events.ccc.de/congress/2008/

Tuesday, November 25, 2008

About SIP-Router Project

I want to reveal some details from the process of getting to sip-router.org project. Next statements are from my personal point of view.

When all started, back in 2001/2002, it was research and SIP Express Router (SER). Over the time became more than that, the market demanded new features pushed beyond a SIP proxy/router definition, the place of this application was no longer in research, business side and telephony industry forced to take actions.

In that context I co-founded OpenSER in 2005, leaving SER to continue its way.

Now after several years, the situation evolved as well, SIP is clear the today’s technology for telecommunication, every Telco out there is deploying/replacing its infrastructure with SIP. However, SIP was designed for more than this, other companies develop innovative services and products using this protocol. I could identify couple of directions within our project:
- old-style-fashion switch – mapped on SIP Router/Proxy, where speed and reliability is the main concern
- call/dialog stateful proxy (back-to-back user agent) – for a larger set of security and service features
- pbx-like features using SIP signaling only – call pickup, shared line appearance, etc…
- new fashion functionalities – IM&Presence, gaming, integrated and convergent communication, application servers…

To be able to sustain and keep high level quality, it is clear that we need more companies in, entities that are interested on different directions of the development, so they contribute there. I am interested in the first and last direction with higher priority, but I don’t want to leave out the other two.

Moveover, kamailio/openser is used now in many deployments, some serving millions of users and billions of minutes per month. We need to provide a reliable environment so more companies are confident the development and maintenance continue. The project shall prove the maturity that is not dependent on gringo-like actions, one company influence, forking out of nowhere, domain hijacking, etc… this is the first goal for myself, something I want to ensure before anything else.

sip-router.org was not one minute/meeting decision (after a beer, dinner or one email, …). Discussions started between different persons, coordinated or privately, several months ago, long before the latest fork. It was clear that SER and OpenSER made their points over the time, one satisfying better the need for stability, performance, the other better for innovation and flexibility. At a point in future, sooner or later, each project would have been switched some of its resources to the other direction.

At the time of announcement, the sip-router.org site had comprehensive content about how this will work. It was the result of face-to-face meetings, phone and email conversations that took place a lot in the last months before the news. It was no decision until everyone deeply involved in each project acknowledged that there are mutual benefits for everybody (developers, users and businesses behind both projects) backed up by willingness to do it in a fair manner.

I cannot talk about other projects in the x-SER eco-system, but with Kamailio/OpenSER never was the case/proposal of merging back to SER, all the time was about collaboration and joint effort. It will never happen to drop our goals for innovation and flexibility. Therefore we discussed and agreed the development mechanisms to ensure the need of each project: a stable layer (core + tm) and innovation by modules or libraries.

Nothing was left out, every aspect, from licensing, contribution, … to releasing and management, was approached. The meeting in Karsruhe came just to conclude that. All our community members were happy about announcement, and, as a matter of fact, there were no political-like discussions conducted between our members since sip-router.org announcement, the focus moved on the technical side and good progress was reached so far:
http://lists.kamailio.org/pipermail/users/2008-November/020694.html

Personally, I consulted people in open source and communication world, that are not particularly technical or in relation with x-SER projects. Getting to sip-router.org took more than half year since I realized a common layer between the x-SER projects should be beneficial for everybody.

There are more things to say, but maybe not that relevant. I let them for the time we meet at SIP Router events. Now I hope several points are more clear:
- it is not a merge back in SER, it is a joint project (this just because some tried to suggest it)
- the entire collaboration process was carefully discussed and planned
- it was conducted by the need of reliable, non-confusing environment — that ensures sustainable development, innovation and rock-solid stability, it protects the interests of developers, users and businesses investing resources in the project.

At the end, I want to thank to Kamailio and SER management team members, to the developers and many other people involved in both projects that helped with this process – they dedicated lot of time and resources.

Monday, November 24, 2008

OpenSER v1.3.4 Released

OpenSER v1.3.4 is out - a minor release of the branch 1.3, including fixes since v1.3.3 - configuration file and database compatibility is preserved...

A new release in 1.3 series is out. OpenSER (new project name: Kamailio) 1.3.4 is based on the latest version of branch 1.3, including many fixes in code and documentation, therefore those running 1.3.x are advised to upgrade.

Source tarballs are available at:

http://www.kamailio.org/pub/kamailio/1.3.4/src/

Detailed changelog:

http://www.kamailio.org/pub/openser/1.3.4/ChangeLog

Download via SVN:

svn co https://openser.svn.sourceforge.net/svnroot/openser/branches/1.3 kamailio

Tag for this release can be browsed at:

http://openser.svn.sourceforge.net/viewvc/openser/tags/1.3.4/

Project site at SourceForge.net:

http://sourceforge.net/projects/openser/

Modules' documentation:

http://www.kamailio.org/docs/modules/1.3.x/

What is new in 1.3.x release series is summarized in the announcement of v1.3.0:

http://www.kamailio.org/mos/view/OpenSER-v1.3.x-Release-Notes/

Note: Kamailio is the new name of OpenSER project. First version under Kamailio name was 1.4.0. Older versions will continue to use OpenSER name.

Sunday, November 23, 2008

Kamailio Devel Team

November was very busy for myself, with lot of work and traveling for the sip-router.org, so apart of announcing few updates, I focused on getting things done rather than going in pointless discussions. I will send couple of other emails related to this subject.

However, there was one person writing untrue statements and offending the developers of Kamailio/OpenSER on mailing lists, web and IRC channels. If he would have searched a bit on the net, have talked with our developers, he would realise that people in our team are very rich in skills and experience, then probably he would refrain from statements like “no skills”, “no knowledge”.

Until someone else than himself, recognise him as the greatest, gets the Nobel prize, publishes world recognized books or standards, so I can take his opinion in consideration, the development of Kamailio/OpenSER Project is ensured by people such as:
- Juha Heinanen, doctor in computer science, former professor at Tampere University, author of many RFCs, and the list can continue … from the web:
http://occamnet.com/company/directors_and_advisors/jheinanen.cfm
http://www.arkko.com/tools/rfcstats/juhaheinanen.html
- Klaus Darilion, doctor in computer science at Technical University Vienna, involved in ENUM and security of VoIP/SIP, author/contributor to several open source applications and papers related to these domains:
http://www.ipcom.at/index.php?id=565
- Henning Westerholt, computer science engineer, in charge with the biggest VoIP deployment based on Kamailio/OpenSER I ever heard of: about 2 000 000 users, 5 000 000 phone numbers, 1 000 000 000 routed minutes per month. It is at least twice bigger than other deployments of openser/kamailio I am aware of.
http://www.1und1.de

I am stopping here, but all the other members of Kamailio/OpenSER devel team have broad knowledge in computer programming and VoIP technologies, authored or contributed to other open source applications — just google the names. As co-founder of this project I felt is my duty to show the true.

Therefore those statements are proofless and it is sad to see somebody can come up with such things. The development of Kamailio/OpenSER boosted since release 1.4, in summary:
http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x
http://www.kamailio.org/dokuwiki/doku.php/roadmap:1.5.x

and we are not ready yet with the new features for 1.5. Meanwhile, effort is directed to sip-router.org project as well — I will post a status update soon.

Friday, November 21, 2008

First Kamailio (OpenSER) Module Ran On SIP-Router

Yesterday evening first Kamailio (OpenSER) module ran on the common layer core+tm provided by sip-router project. That was siputils (new module in Kamailio devel version).

Soon after:
- xlog module was ready too, with just an extra define in Makefile, marking the inclusion of pseudo-variable and transformation API in sip-router — one can do color printing via xlog. Note that all pseudo-variables and transformations will be moved in PV module as discussed some time ago on Kamailio devel mailing list.
- DB API of Kamailio and SER were included as library and other modules become compilable with sip-router

For reference:
http://lists.sip-router.org/pipermail/sr-dev/2008-November/000071.html
http://lists.sip-router.org/pipermail/sr-dev/2008-November/000077.html
http://lists.sip-router.org/pipermail/sr-dev/2008-November/000081.html
http://lists.sip-router.org/pipermail/sr-dev/2008-November/000082.html

Once MI and statistics APIs will become libraries as well, then many other Kamailio (OpenSER) modules shall work more or less out of the box (some statistics done in core and 1-2 mi commands will miss in the first phase). Then it comes the second big step, after module integration, config language update — after that point we are kind of 70% ready.

All these happened in just few days since source code repository (GIT) was up … it looks like we will get most of the features from Kamailio (OpenSER) and SIP Express Router (SER) together sooner than expected … let’s see …

Karlsruhe Meeting Photos

Photos taken during the SIP Router Project meeting day in Karlsruhe, Germany, Nov 10, 2008, are available at:

http://sip-router.org/pub/photos/album-sip-router-karlsruhe/

... with folks from Kamailio (OpenSER) and SIP Express Router (SER) projects..

Karlsruhe Meeting Minutes

SIP Router Project - Kick Start Meeting minutes:

* development side: move forward, sip-router.org source repository should be up next week
* end of January we should have a runable core+tm with support for the most used features from both Kamailio (OpenSER) and SIP Express Router (SER) (100% support might be a little delayed as some features may become obsolete)
* Kamailo next-next release (probably after spring next year) will be based on sip-router core+tm
* next or next-next SER release will be based on sip-router (SER might make another 2.1 release from the current CVS, since the code is ready - to be discussed)
* future releases will most likely be common and will unify all or most of the modules (depending on everything up to that point working ok)
* copyright: patches that are not accompanied by (c) claims will not add to the (c). We should put this on a web page and when in doubt we can ask the patch author for confirmation. While it’s likely this has no or very limited legalvalue (especially in Europe), it will server at least as a gentleman agreement. We need this because:

1. we need the agreement of all (c) holders for the GPL code to add licensing exemptions (e.g. we need to add an openssl linking exemption) and it’s easy if we have a known “small” set of (c) holders
2. people might not like having multiple (c) notices on files they created, just because someone did send a trivial or not so significant patch (note: “trivial” and “significant” are very relative). On problems, probably the board will decide, if nobody gives up the claim we’ll fork the module (worst case, to be avoided as hard as possible).

* forking modules: highly discouraged, but allowed
* unmaintained and rarely used modules: removed after a grace period
* board: for now we continue to have 2 boards, SER and Kamailo at least until we have something runable. In the meantime we should think/discuss how the common board will look like: how it will be elected and for how long, “composition” (how many devels, how many from the user community, testers a.s.o)
* testing: very important, Jerome proposed having beta-tester groups and stressed out the importance of dynamic tested. Everybody seems to agree, but there are doubts about finding beta-testers volunteers.
* release management: we need a release manager for each release
* documentation: Kamailio uses a wiki for core, and docbook .xml for modules, SER use NEWS (txt file) for core and docbook for modules, but it’s in the process of migrating to a more man page friendly format (still .xml). More discussion is needed, between the main doc writers from both sided.

sip-router.org:

* GIT repository should be up next week
* sr-dev mailing list should be used for technical dicussions related to merging the cores
* new features mails should be cc’ed to sr-dev too (very important especially when core or tm is involved).
* todo: find easy to remember short name

Related projects:

* some modules may be on separate repositories for a while (e.g., openimscore), maintained by their devs for using them out of the box with sip-router
* stand-alone application servers (Voztelecom/WeSIP, Iptego/SASI) may merge the communication interface specs in the future.
* it is a need for a place where to collect basic info about related projects

Further steps:

* new meeting, to be organized somewhere end of winter/beginning of spring 2009 (topics: celebrate first integrated working version, discuss further development of sip-router)
* setup of adjacent tools that help developing code and documentation (e.g., wiki, tracker)

General opinions:

* there are x-ser platforms running milions of users, sip-router must provide a rock-solid SIP server, esure trust and project reliability
* while having a strong focus on above item, innovation shall not be stopped, new features to be added as module to avoid effects to core and main modules
* very important modules (e.g., usrloc, registrar, …) should be protected as much as possible, patches and new features to be carefully reviewed not to affect stability and interoperability
* improvements to most important parts to be discussed on sr-dev mailing list

Thursday, November 20, 2008

PBX Alternatives

Interesting post listing PBX alternatives:

http://blog.voipsupply.com/uncategorized/need-an-ip-pbx-101-alternatives-to-cisco-and-avaya

... with Kamailio (OpenSER) included ...

Carrierroute Extensions In Kamailio 1.5

Courtesy of Henning Westerholt and 1&1, carrierroute module got a bunch of new features that makes the module more flexible than ever and also fixed a few annoyances in the module usage:

1. Improved routing data loading

The module supports now the partioned loading of routing data during startup and reloads. In the past when one want to load big route set it was necessary to increase the private memory pool size, as the data was stored temporarily there. Now this is not necessary anymore, its possible to load route sets with e.g. 400.000 rules in the standard (private memory) configuration.

2. Efficient matching of domains and carriers

In the old implementation a simple linear list was used, this was replaced with a fast binary search function. The module can now look up carrier and domains in most cases with O(log n), which makes it more scalable when a big number of carriers and/ or domains are involved. Only when a dynamic string is used in the config script a full list search is needed.

3. Support for non-numerical prefix matching

Carrierroute now supports also the prefix matching with non-numerical characters. Its possible to use the entire standard ascii charset for route matching. This is configurable with a module parameter, the default implementation is still the know digit matching method. Please keep in mind that memory demands will increase somewhat when the extended matching is used. This additonal flexibility will probably bring a small overhead with it, as some additional logic is involved during the routing deciscion. But this will not be noticable on today standard servers.

4. Extensive refactoring and cleanups

Restructured and refactored the code in most areas, to make the module implementation and structure more understandable, maintainable and extensible. Replaced the usage of custom datatypes and fixup functions with the standard core implementation, switched to the autogenerated DB interface and use now standard glibc functions e.g. for the list search. Changed certain structures to not store the full name of carriers and domains in memory to save space and got finally rid of this mismatch between internal and external carrier ID.

More details about the new implementation can be found in the documentation at:

http://www.kamailio.org/docs/modules/devel/carrierroute.html


Porting hints, e.g. for the new database structure are provided at:

http://www.kamailio.org/dokuwiki/doku.php/install:1.4.x-to-1.5.0

Track the new features introduced in Kamailio devel at:
http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x

Tuesday, November 18, 2008

SIP Router Project - GIT Repository Online

The GIT repository for sip-router is now online. GIT URLs:

- git://git.sip-router.org/sip-router (read only)
- http://git.sip-router.org/sip-router (read only, slower, git://… recomended)
- ssh://git.sip-router.org/sip-router (read write but account on git.sip-router.org needed)

Web interface:

- http://git.sip-router.org/cgi-bin/gitweb.cgi

For more info about GIT try:
http://git.or.cz/gitwiki/GitDocumentation

and if you want to know how it works:
http://eagain.net/articles/git-for-computer-scientists/


Special thanks go to Jan Janak, who not only did setup git.sip-router.org (including automatic cvs sync for some of the repos), but he’s also hosting it on one of his private machines.

More details here…

Photos from Karlsruhe

Photo album that includes pictures from last week's Karlsruhe meeting of SIP Router project is available at:

http://sip-router.org/pub/photos/album-sip-router-karlsruhe/

Wednesday, November 12, 2008

SIP Router Project - The Meeting In Karlsruhe

Because of taking several days off, a complete report might show up a bit later, now a (short) summary...

First, many thanks to 1&1 for hosting the event and everyone that participated in such short notice. There were representatives from 10 companies:
- 1&1
- FhG Fokus
- Telio
- Asipto
- iptelorg/Tekelec
- Voztelecom
- Iptego
- Itsyscom
- Longphone
- Basis AudioNet
Some pictures should be published in the near future.

After going in short introduction and presentation of the goals from the point of view of each project (SIP Express Router (SER) and Kamailio (OpenSER)), we focused on:
- identification of potential points of conflicts and how to get to a resolution in such case
- code integration for common layer of the first phase
- future development and proposals of new features
- management of the larger eco-system that includes related projects and business entities

I will do several posts detailing what was discussed and proposed there for SIP Router project in few days. meanwhile, the outlines:
- it is hard to avoid conflicts just by some clear and strict rules, so the common sense should lead the collaboration and discussions
- GIT repository should be up in several days so the work can start, with a time line of 2-3 months from now to get core and tm in a very good shape of integration
- another meeting shall be set in about 3 months time, to allow enough time for people to be able to attend, adjust the development and look more deep at the future. While a lot of focus in the next months will be on integration, development of new features won't stop -- for example, steps to a partial asynchronous processing are undertaking, couple of new modules are planned for release, several other modules to bring new functionalities
- we should encourage and promote the development of related applications, like web interfaces, management tools, applications servers -- they add value for community and business

Tuesday, November 11, 2008

IRC Devel Meeting Summary - Nov 06, 2008

I am trying to summarize the outcome of the IRC devel meeting from last Thursday, Nov 06, 2008. The log is available here...

Regarding the 1.3.x series, we set the 20th of November as the date for 1.3.4 release. There are several fixes and this branch is still used in many production environments, so it worths investing time in it. There are some updates in 1.4.x to be ported and some issues to be investigated.

For a new 1.4.x release (the 1.4.3) we look for the beginning of December as the time frame for setting the date of the release.

The 1.5.x rises in the first phase the question of a shorter time release, as we have lot of new features already implemented, see:
http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x
http://www.kamailio.org/dokuwiki/doku.php/roadmap:1.5.x

Unfortunately some of the new features are not completed yet (e.g., htable, carrierroute updates, PV migration) so we will stick to 6-8 months release cycle. The next major one that will use the common layer (core and tm) from sip-router could be done in a shorter time than
usual. So, beginning to mid of January should be the time to freeze the code for a release date somewhere in end of January or February.

An important aspect approached during the discussions was the release management and testing management. Perhaps we need to appoint a person to manage releasing process in order to have a better synchronization of the developers. As everyone agrees, testing is very important and we try to improve it. There is a testing suite included in the source tree right now, used for static testing.

The idea of a dynamic testing and testing community was introduced and hopefully we can attract people and build a group of beta testers. There is a proposal of how to implement and what to take care of, probably this one has to continue on devel and users mailing lists for a proper
organizational structure.

GIT became as a subject of migrating from SVN, because of its features for a distributed development environment. However, sourceforge.net does not have such offerings, so it is not possible now anyhow. However the sip-router.org will use it.

Regarding the sip-router.org project, we focused on short term goals, acknowledging that we have several modules offering same functionality but relying on different underlaying data structures, this have to co-exists for a longer time. For the first phase, core + tm the overlapping is rather small, the two projects insisting in the past to improve different aspects of them.

Unfortunately I forgot to bring up some punctual topics proposed, mainly related to tm failure route calling in case of sending error and reply handling/dropping in onreply_routes.

Wednesday, November 5, 2008

SIP Router Project Kick Start Meeting

The meeting happens in very short time. Sorry for that, but probably it is better sooner that later as will mark the moment of integration start. It is the place to discuss the technical aspects of the integration, milestones and future development.

Place: Karlsruhe, Germany
Date: Monday, November 10, 2008
Registration: free

More details at:
http://sip-router.org/index.php/meeting/

The results of the meeting will be posted to the site and mailing lists.

Tuesday, November 4, 2008

The SIP Router Project

The SIP Router Project started aiming to build a solid open source SIP routing platform, based on collaboration of the SIP Express Router (SER) and Kamailio (OpenSER) teams.

Developers of these two projects believe that an united and non-conflicting environment will bring many benefits, to them, community members and companies.

- bring together the developers and user communities of both projects
- reduce maintenance overhead
- avoid duplicated efforts in development
- develop a core framework that is flexible, extensible and scalable
- promote and build a solid open source SIP server project
- ensure business credibility
- make future forking undesirable, this harms everybody, affects credibility and business

You are welcome to join! Visit:

http://www.sip-router.org

Mailing list:

http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev

There will be a meeting for concluding the collaboration and kick start the integration. Everybody is welcome to join. See more details:

http://sip-router.org/index.php/meeting/

Wednesday, October 29, 2008

Simple Web UI

Graham Wooden posted on Kamailio (OpenSER) users mailing list the news about a simple web UI.

After seeing that CDRTool was a little too complex and complicated for that matter, he decided to take the CDR gathering and add a "simple" web UI to it, allowing to maintain SIP users and various settings (some are not shown in this version right now).

As a preface - this is very plain, not stylized, no CSS, no fancy layouts, etc.

Link: https://www.leasedminds.com/ui/

I hope people see value with this as Graham too, and will start contributing to develop it to a nice and robust web UI for Kamailio (OpenSER).

Further details:
https://www.leasedminds.com/ui/Simple_UI_for_OpenSer.pdf
http://lists.kamailio.org/pipermail/users/2008-October/020294.html

Thursday, October 23, 2008

Kamailio v1.4.2 Released

A new release in 1.4 series is out. Kamailio (OpenSER) 1.4.2 is based on the latest version of branch 1.4, including many fixes in code and documentation, therefore those running 1.4.0 or 1.4.1 are advised to upgrade. This is a minor release that includes updates since v1.4.1 - configuration file and database compatibility is preserved.

Source tarballs are available at:

http://www.kamailio.org/pub/kamailio/1.4.2/src/

Detailed changelog:

http://www.kamailio.org/pub/kamailio/1.4.2/ChangeLog

Download via SVN:

svn co https://openser.svn.sourceforge.net/svnroot/openser/branches/1.4 kamailio

Tag for this release can be browsed at:

http://openser.svn.sourceforge.net/viewvc/openser/tags/1.4.2/

Project site at SourceForge.net:

http://sourceforge.net/projects/openser/

Modules' documentation:

http://www.kamailio.org/docs/modules/1.4.x/

What is new in 1.4.x release series is summarized in the announcement of v1.4.0:

http://www.kamailio.org/mos/view/KAMAILIO-v1.4.0-Released

Note: Kamailio is the new name of OpenSER project. First version under Kamailio name was 1.4.0. Older versions will continue to use OpenSER name.

Analysis of a VoIP Attack

Klaus Darilion, developer and member of management team of Kamailio (OpenSER) project, published a deep analysis of a recent VoIP attack.

Several IT news websites reported VoIP attacks against home users containing lots of myths and incorrect statements. Unfortunately, they also give wrong security advices.

Klaus decided to write an article about this attack and give some advices for protection. The document is available for download at:

http://www.ipcom.at/index.php?id=565

Friday, October 17, 2008

LCR Module Enhancements

Juha Heinanen just committed to Kamailio (OpenSER) trunk an enhanced version of lcr module, including new features and increasing performance:

* New high-performance implementation that keeps lcr information in in-memory hash table, whose size can be given in a new module parameter 'lcr_hash_size'. See lcr/README for lcr functions' execution time.
* New 'weight' field in 'gw' table that can be used to assign a gateway a weight among gateways of its group.
* Support for prefix_mode=1 has been dropped.
* lcr_dump MI function has been split into lcr_gw_dump and lcr_lcr_dump functions.
* lcr_reload function is now executed under a lock thus minimizing race conditions.
* Regular expressions are now Perl 5.x, instead of POSIX, compatible due to use of PCRE regular expression library. This allow pre-compile in shared memory at load time, avoiding checks and regexp compilation at runtime.

Track what is new in upcoming Kamailio 1.5.0 at:

http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x

You can download trunk version of Kamailio via SVN:

svn co https://openser.svn.sourceforge.net/svnroot/openser/trunk kamailio

Thursday, October 16, 2008

Asynchronous syslogging

Courtesy of Henning Westerholt, Kamailio (OpenSER) development version has now support for non-blocking logging. This was implemented using the syslog-async functionality from the dnsmasq server [1] from Simon Kelley.

The standard Unix syslog() library routine can block waiting for the syslog daemon. On some systems, using a datagram socket for /dev/log avoids endless waits, but on Linux, even this does not work. Try typing:

killall -SIGSTOP $pid_of_syslog

into a root terminal on a non-critical machine. Then generate traffic to get some logs, eventually, the server will stop. This blocking of the syslog daemon can happens because of bugs, or if the daemon waits for external events, like DNS lookups.

Instead of blocking, log-lines are buffered in memory. The buffer size is limited and if the buffer overflows log lines are lost. When lines are lost this fact is logged with a message.

This functionality can be enabled with setting the define SYSLOG_ASYNC in the Makefile.defs file. The default is the normal log functionality from the system library, nothing changed if the define is not set.

You can get the code from the svn repository:

svn co https://openser.svn.sourceforge.net/svnroot/openser/trunk kamailio

Debian packages for several debian releases are available at: devel.kamailio.org.

[1] http://www.thekelleys.org.uk/dnsmasq/doc.html

Tuesday, October 14, 2008

sip:wise - launch of new products

SIPWISE, the creator of Kamailio/OpenSER Web Configuration Wizard launched two new products:

- sip:carrier - a secure and scalable Class5 SIP platform for ISPs, ITSPs, Telcos, Mobile Operators and Carriers, packed in highly available, high-performance hardware.
- sip:provider - a turnkey platform enabling small and medium size operators to launch professional VoIP services within a couple of days.

It is just wonderful to see new products that uses Kamailio/OpenSER on the market, especially coming from those being tight involved in the project, this time is the case of Andreas Granig, long time developer of Kamailio/OpenSER.

Just few time ago, I wrote about Oigaa Virtual PBX Service, coming from Voztelecom and Jesus Rodriguez, another long time developer and supporter of Kamailio/OpenSER.

Monday, October 6, 2008

Registrar Enhancements

In the last time several enhancements were added to registrar module to help in dealing with user location records. This correlated with the new modue pv shall give lot of control over the destination set for calls.

To get the latest Kamailio (OpenSER) devel version, check out the latest svn:

svn co https://openser.svn.sourceforge.net/svnroot/openser/trunk kamailio

The news in registrar module are:

- ability to unregister all contacts for a SIP addres - there is a new function: unregister(table, uri)
- ability to store and maintain single contact per user - the save() function accepts a new value for flags parameter (0x04) to restrict to one single record in location table
- ability to access the attributes of all contacts for a user - there are two new functions: reg_fetch_contacts(table, uri, profile) and reg_free_contacts(profile) to make available/release the contacts for a SIP uri. After fetching the contacts, the attributes can be accessed via pseudo variable $ulc(profile=>attr).

For more details see the README:

http://www.kamailio.org/docs/modules/devel/registrar.html

Here are couple of use cases:

1) only one contact per user

save("location", "0x04");

Note that if you have couple of phones registering for same user, the one that sent last REGISTER message will be the only ringing.

2) check if a user is calling from a registered device and if not, deny the call

if(!reg_fetch_contacts("location", "$fu", "caller"))
{
sl_send_reply("403", "Please register first");
exit;
}
$var(i) = 0;
$var(found) = 0;
$var(contact) = $(ct{nameaddr.uri});
while($var(found) == 0 && $var(i) < $(ulc(caller=>count)))
{
$if($var(contact)==$(ulc(caller=>addr)[$var(i)]))
$var(found) = 1;
else
$var(i) = $var(i) + 1;
}
if($var(found) == 0)
{
sl_send_reply("403", "Please register first");
exit;
}

For the future:
- unregister() to get a $ulc(...) variable as parameter to unregister a specific contact
- drop a branch via pv module

Wednesday, October 1, 2008

Towards Kamailio v1.5.0

Recently we just released 1.4.1 in the latest stable branch, so it is time to give updates on the development version of the project to be released as v1.5.0. In less that two months since 1.4.x release series was branched, lot of new things happened - new modules and features, code refactoring and fixes.

The outline of the new additions:
http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x

A drafted version of the roadmap is available at:
http://www.kamailio.org/dokuwiki/doku.php/roadmap:1.5.x

As shortcut, those links are hosted on the website page:
http://www.kamailio.org/mos/view/Roadmap/

For a deeper track of all changes you can browse the SVN repository at Source Forge.
http://openser.svn.sourceforge.net/viewvc/openser/

Download the version from SVN and try out. Your feedback is very much appreciated!

svn co https://openser.svn.sourceforge.net/svnroot/openser/trunk kamailio

Monday, September 29, 2008

Benchmark: RTPProxy v1.0 with OpenSER 1.3

Transnexus has done an interesting analysis of using RTPProxy 1.0 with OpenSER 1.3, of course specific with their use case.

It has very interesting results, you can check here:

http://www.transnexus.com/White Papers/OpenSER_RTPproxy_test.htm

There was a lot of discussing regarding space for improvements and tunings to get better performances on the mailing lists, but still it is a good reference to be used. The page includes details about everything you need to do the test by yourself.

Transnexus is the developer of OSP module in Kamailio/OpenSER.

Thursday, September 25, 2008

Kamailio v1.4.1 Released

A new release in 1.4 series is out. Kamailio (OpenSER) 1.4.1 is based on the latest version of branch 1.4, therefore those running 1.4.0 are advised to upgrade.

Source tarballs are available at:

http://www.kamailio.org/pub/kamailio/1.4.1/src/

Detailed changelog:

http://www.kamailio.org/pub/kamailio/1.4.1/ChangeLog

Download via SVN:

svn co https://openser.svn.sourceforge.net/svnroot/openser/branches/1.4 kamailio

Tag for this release can be browsed at:

http://openser.svn.sourceforge.net/viewvc/openser/tags/1.4.1/

Project site at SourceForge.net (still using old name):

http://sourceforge.net/projects/openser/

Modules' documentation:

http://www.kamailio.org/docs/modules/1.4.x/

Ekiga 3.0

Ekiga, the open source SIP softphone, announced yesterday the release of Ekiga 3.0.

There are many new features, including SIP SIMPLE presence. Check the release news at:

http://blog.ekiga.net/?p=97

Congratulations to the team, it looks very promising and I am just waiting for the Debian packages to try it out.

Skype Channel In Asterisk

Last day of AstriCon brought out a very surprising news: official Skype channel in Asterisk from Digium, as there is a press release from both sides.

Link to official press release.

It looks like the cost will be per channel and licenses are available from Digium via Asterisk market place.

This means a lot in bringing Skype users connected to SIP world.

Wednesday, September 24, 2008

Generic Data Container

A new feature that allows to store and share arbitrary data across Kamailio (OpenSER) configuration file is available

Elena-Ramona Modroiu has just introduced a generic hash table container for usage in configuration file. The hash table is in shared memory, therefore the values are global over all kamailio processes.

The items in hash table can be accessed via $sht(name). The name can include pseudo-variables that will be evaluated at runtime. In this way, the hash table can be used to store data per user or other key and can offer functionality of dealing with array of values.

An example of how to protect against dictionary attacks is in the README:

http://www.kamailio.org/docs/modules/devel/htable.html

As a roadmap for the new module, planned for addition:
- MI commands to get/set items in hash table
- ability to save/load in/from database
- ability to init items at startup
- auto-expire time for items

This completes global variables space along with shared variables $shv(name)) which are single value and allow only static name, but they are faster to access (see cfgutils readme file for more details on $shv(name)).

Announcement email is here:

http://lists.kamailio.org/pipermail/users/2008-September/019764.html

Tuesday, September 23, 2008

Cisco Buys Jabber.com

Two weeks after end of SIP-XMPP Workshop in Paris, an important move has been announced on the Instant Messaging and Presence market: Cisco, network device and telco vendor, to acquire Jabber Inc.

http://newsroom.cisco.com/dlls/2008/corp_091908.html

Jabber leverages open standard eXtensible Messaging and Presence Protocol (XMPP) to provide enterprise class unified communication platforms. Yet another big company invests in XMPP after Google selecting XMPP for their GTalk service.

Kamailio (OpenSER) includes its SIP/SIMPLE-XMPP gateway for a while now, although still in beta stage. With a speed up of IM&P growing market, the interoperability between SIP and XMPP becomes an important fact that can lead to successful communication service.

Monday, September 22, 2008

Oigaa Virtual PBX Service

Jesus Rodriguez, Kamailio/OpenSER developer and FreeBSD packager, announced today on his blog the launch of new products and services under name Oigaa:

http://www.voztele.com/esp/productos_servicios_voip/centralita_virtual_oigaa.htm

Voztelecom is one of the major supporters of Kamailio/OpenSER project, developing the WeSIP Java SIP Servlet Application Server and seas module. Many of their products and services run on top of several Open Source applications, among them Kamailio/OpenSER and Asterisk.

Good to see such news that underline the power and flexibility of Open Source!

Networking groups on Facebook and Linkedin

For a while now there, you can find groups named "OpenSER" and "Kamailio" on both Facebook and Linkedin Social Networking portals.

If you want to meet people and make connections in Kamailio/OpenSER eco-system and you are member of one of those portals, then join the groups. Access is granted to everyone that applies to join, immediately on Facebook, after group manager approval on Linkedin (portal policy).

Sunday, September 21, 2008

Friday, September 19, 2008

Kamailio (OpenSER) Presence Server: Dialog Info Support

Developed by Klaus Darilion and sponsored by Silver Server (www.sil.at), Kamailio (OpenSER) introduced support for Dialog Info presence states - RFC4235 - INVITE-Initiated Dialog Event Package.

There are two new modules introduced:

* pua_dialoginfo: gets dialog states from dialog module and sends PUBLISH with the dialog state in RFC 4235 conform XML documents
* presence_dialoginfo: extends presence module to handle PUBLISH with dialog-info. Allows aggregation of multiple XML documents into one document.

With these modules you can have BLF without the need for an PBX (Asterisk). It is know to work with SNOM and Linksys phones. Linksys requires some tweaking with module parameters.

For more see the readme files:

http://www.kamailio.org/docs/modules/devel/presence_dialoginfo.html

http://www.kamailio.org/docs/modules/devel/pua_dialoginfo.html

Tuesday, September 16, 2008

A1 InnovationDays Remarks

Returning from about two weeks of journey, I am catching up with work now. However, it worth to mention here some events I attended during past weeks.

The A1 InnovationDays Sprint was really challenging.
http://www.a1innovations.at/en/static/a1innovationdays

While participating to other coding sessions in the past, this one had the premises to make it great:

- nice location, one hour drive from Vienna, Austria, at Monastery Und in Krems. An old site turned into a convention place

- competition - five teams ran head to head to win. Finally the project "Spontaneous live comment as A1 sports reporter" got the prize, but I could say all the projects have big potential and the results after two days of coding were impressive: "Thunderbird plug-in for Unified Communications", "SIP Website Widget", "Automated Audio/Video Greeting Service" and "SIP extension for Disko framework". I will try to detail each one in separate posts

- vast knowledge base - it would be hard to get again in same room technical people from various domains working together: Web 2.0, graphic design, SIP, voice and video processing, embedded systems, GUI, GSM/Mobile technology, IMS

The only barrier seemed to be the weather, very nice, warm and sunny, trying to attract out attention away from coding.

However, the most important aspect of the event was the implication of the A1 - Mobilkom Austria in such event. It is the first mobile operator I have seen encouraging Open Source initiatives. Worth congratulations and let's hope they will be followed by other similar companies.

Kamailio updates

Some updates concerning two main topics discussed on the mailing lists. First, the project name, many expressed the concern that a rename in short time will create more confusion. As we are not in front of a new major release, I think it is better to postpone this process for a while and focus on the second topic, the organization for the project.

For this one, I have to thank personally to many people from the list that wrote us, giving suggestions and helping finding solutions. As a result, we are working to create the draft of statute for organization, but we are also investigating the option to join an existing
organization, dedicated to hosting of open source projects.

Meanwhile, the svn repository got couple of new features as well as refactoring of some modules. 1.4.1 will be released soon as we got a bunch of important fixes in the 1.4 branch. Most probably another release in 1.3 branch will follow.

Check the website for updates:

www.kamailio.org

Thursday, August 28, 2008

OPENSER v1.3.3 Released

August 27, 2008 - OPENSER v1.3.3 is out - a minor release of the branch 1.3, including fixes since v1.3.2 - configuration file and database compatibility is preserved...

A new release in 1.3 series is out. OPENSER 1.3.3 is based on the latest version of branch 1.3, therefore those running 1.3.2 or earlier version in this branch are advised to upgrade.

Source tarballs are available at:

http://www.kamailio.org/pub/openser/1.3.3/src/
or:
http://www.openser-project.org/pub/openser/1.3.3/src/

Detailed changelog:

http://www.kamailio.org/pub/openser/1.3.3/ChangeLog
or:
http://www.openser-project.org/pub/openser/1.3.3/ChangeLog

Download via SVN:

svn co https://openser.svn.sourceforge.net/svnroot/openser/branches/1.3 openser

Tag for this release can be browsed at:

http://openser.svn.sourceforge.net/viewvc/openser/tags/1.3.3/

Modules' documentation:

http://www.kamailio.org/docs/modules/1.3.x/
or:
http://www.openser-project.org/docs/modules/1.3.x/

Monday, August 18, 2008

Kamailio Logo

If you have artistic sense and idea of a new logo matching the new name Kamailio, you are welcome to submit your work at devel [at] kamailio.org.

The submissions are uploaded at:

http://www.kamailio.org/pub/kamailio-logos/

Turburea, Gorj, Romania

Sunday, Aug 17, 2008, Constantina Dita-Tomescu, won gold medal of marathon at Beijing Olympic games. At age 38 she became the oldest marathon winner at Olympic games.

http://en.wikipedia.org/wiki/Constantina_Diṭă-Tomescu

I am more proud of this success as I am coming from same place, Turburea, Gorj County, South-West Romania. The area seems to have precious resources for long distance running athletics. Constantina’s colleague, Lidia Simon, who won silver medal of marathon at Sidney Olympic games 2000, comes from same village.

Congratulations!

Friday, August 8, 2008

Kamailio v1.4.0 Released

KAMAILIO v1.4.0 is released

August 7, 2008

Kamailio is the new name of the SIP server known so far as OpenSER. Due to trademark issues, the OpenSER project had to change the name. Officially, the new name was announced on July 28, 2008.

Version 1.4.0 brings many new features since OpenSER v1.3.0 as well as improvements to existing components. An important share of effort was directed to code cleanup and stability. Moreover, new features in core and old modules were added while other 6 new modules were introduced.

Download:

You can download the tarball of the released sources at
http://www.kamailio.net/pub/kamailio/latest/src/
Binary packages for several distributions you can find at
http://www.kamailio.net/pub/kamailio/latest/bin/
http://www.kamailio.net/pub/kamailio/latest/packages/


Packages will be uploaded as soon as they are submitted.


Documentation:

* modules' documentation: http://www.kamailio.net/docs/modules/1.4.x/
* migration guide : http://www.kamailio.net/dokuwiki/doku.php/install:1.3.x-to-1.4.0

Summary of the new stuff in core:

* overhauled DB API - better performance and safety, more common functionality integrated in the core
* extensive cleanups in database drivers - integrate common functionality into the core for more stability and maintainability
* SDP parser - provides an internal API for parsing SDP
* fixup functions - provides an internal API for fixing module parameters
* new free fixup functions - making safer to use some functions exported by modules in embedded languages such as Perl
* extension to module interface - its now possible to use up to 6 parameters in module functions


New modules:

* db_oracle - ORACLE DB driver - connect to Oracle SQL Server
* dialplan - Dialplan management - dialplan regular expression based translations
* nat_traversal - NAT traversal helper
* peering - RADIUS based peering allowing SIP providers to verify via a broker if source or destination request is from a trusted peer
* ratelimit - SIP ttraffic shaping control and server load control based on your rules
* userblacklist - User-specific blacklists


New in existing modules:

** acc module
* it is possible to log accounting related output to a different log facility
** cfgutils module
* new FIFO functions get_config_hash and check_config_hash for config file checks
* shared PV exported to configuration script
* debugging helpers usable from config script for abort, shm_status and pkg_status
** mysql module
* enable timeouts on connect, read and write to prevent blocking on errors
** database modules
* renaming of all database modules, addition of the prefix 'db_', e.g. mysql is now db_mysql
** carrierroute module
* much more flexibility in routing and database supported failure routing, improved internal structure
** dialog module
* internal API reworked for better flexibility
* direction of the message provided via the internal API
* new dialog callback types
* new mi command: dlg_list_ctx
** dispatcher module
* ability to load destination URI flags from database at startup or reload
* new algorithm to hash the content of a pseudo-variable
** enum module
* enum_fquery([...]) replaced by enum_pv_query([...])
** msilo module
* notification system refurbished - message body, content-type, from address and contact header can be dynamically specified with pseudo-variables
** pdt module
* accepts now same destination domain bound to different prefixes
* internal structures and logic optimized for memory and performance
** lcr module
* refactor module functions
* pseudo-variable support
** mediaproxy module
* update to version 2.0
* better performance and scalability as packets are forward in kernel space


New testing suite

* a testing suite to ensure quality checking and regression tests reports has been developed, included in the repository and used during this development cycle


Other important changes

* modules' documentation has been migrated to DOCBOOK XML format
* doxygen documentation extended and developer guide published
* serweb tables have been removed
* command line tool to manage dbtext in a SQL fashion


These are not all, there is a big change log that gives more details:

* http://www.kamailio.net/pub/kamailio/latest/ChangeLog

Thursday, July 31, 2008

A1 InnovationDays

:: Final Call for the International Developer Challenge A1 InnovationDays ::

Since almost 4 weeks, the international developer challenge A1 InnovationDays attracted more than 30 ideas from creative minds. The challenge is open to anyone who addresses the grand theme “Open Communication by Open Standards” and can come up with ideas for cool services built on IP-based communication (SIP & IMS).

Ideas can be posted on the platform

www.a1innovations.at/en/static/a1innovationdays until August 15, 2008.

All entries are open for voting and discussing by all users. On August 15, the 10 highest ranked ideas will be short-listed and judged by a panel of recognized experts as well as representatives from the sponsors. End of August, the best teams behind the ideas will be invited to a prototyping event near Vienna in order to realize their ideas and demonstrate their potential. The winning team can choose among several awards, such as a week of powder snow skiing in Austria. After that, the sponsor (mobikom Austria) is keen to bring your idea to the market.

All submissions must be based on Open Source Software.

: More Information :

For all details about this challenge, go to the FAQs:

http://www.a1innovations.at/en/static/faq

For registration, go directly to: http://www.a1innovations.at/registrierung

: Important dates ahead :

August 1, 2008: Two prizes for the best interim ideas will be awarded

August 15, 2008: End of idea entries (CET 24:00)

August 18, 2008: Announcement of the five selected teams for the prototyping event

August 29 - September 1, 2008: Prototyping event at the monastery Und

(near Vienna: http://www.und.at/)

Monday, July 28, 2008

OPENSER renamed to KAMAILIO

Here is the announcement of project rename:

"OpenSER project and the community around it have grown considerably in the past three years. Because of its extensive development and high adoption rate, conflicting interests related to the OpenSER name and similar trademarks emerged.

Consequently, we have been forced to find a new name for the project that stands on itself and represent the project in its future expression.

Starting with version 1.4, OpenSER is called Kamailio. Existing OpenSER users can keep on enjoying the benefits of the best open source SIP server available on the market under this new name.

All project infrastructure like the website and mailing list will be in the future accessible under the kamailio.org domain, but we will keep the old one functional for a transition period to make the switch as easy as possible for you.

Kamailio is a hawaiian word. Kama'ilio means talk, to converse. It was chosen for its special flavour. It is hopefully easy to remember and the meaning fits well with the project purpose. We hope you like it too!"

Visit: http://www.kamailio.org

Friday, July 25, 2008

SIP/SIMPLE-XMPP Developer Workshop 2008

INRIA, French National Research Network in Computer Science is hosting an workshop dedicated to SIP/SIMPLE-XMPP Interoperability. The event aims to bring together people with large expertise in both protocols, interested in development, testing and deployment of SIP/SIMPLE-XMPP solutions.

I am going to be present and coordinate the XMPP interoperability tests and development for OPENSER.

The workshop takes place between September 2 and 5, 2008, in Paris, France.

Among participating projects and companies:
- Asterisk
- INRIA
- Edvina
- Asipto
- AG Projects
- OPENSER
- MSRPRelay
- eJabberd

Read more details here…

Thursday, July 24, 2008

RTP Proxy in Erlang

Just found this project:
http://code.google.com/p/erlrtpproxy/

erlrtpproxy seems to be a RTP relay for OPENSER written in Erlang, an alternative to RTPProxy and Meidia Proxy. I didn't dig for more details, but I guess it is working together with the nathelper module in OPENSER.

Hope that Erlang fans will enjoy it.

Wednesday, July 9, 2008

eLearning channel for Kamailio (OpenSER) config file

ASIPTO, the company I am working for, launched two months and a half ago the eLearning channel for Kamailio (OpenSER) configuration file. Since then a broad number of topics were approached:

  • introduction of configuration file structure
  • overview of SIP message execution flow
  • complete walk-through default configuration file
  • debug options
  • main routing blocks elements
  • all about assignment operations, tips and tricks
  • configuration file flags: per transaction, branch and script
  • r-uri management – best options and available alternatives to handle the request URI
  • config file statements: if, switch and while

Each document includes many examples to make easier the understanding of concepts and real word usage. With a rate of introducing couple documents and topics per week, the knowledge base of the channel is growing rapidly.

The eLearning channel offers full range of collaborative tools: forum, wiki, chat rooms, document uploading, allowing open discussions and easy interaction within the groups.

You can register now for Kamailio (OpenSER) configuration file eLearning channel here.

See more details about eLearning programs here.

Tuesday, June 24, 2008

Updates of NAT Traversal Solutions for OPENSER

There were lot of development efforts in the two options available for NAT traversal with OPENSER.

Mediaproxy relesed next generation version: v2.0. More details at:

http://ag-projects.com/MediaProxy.html

Rtpproxy brings lately lot of new stuff, information is available at the dedicated site:

http://www.rtpproxy.org

Thursday, June 12, 2008

Very interesting approach of “451 CAOE Theory” related to European Football Championship 2008. They are going to analyze the presence of Open Source in the countries paying there, selecting the winner based on best performances with Open Source. More details at:

http://blogs.the451group.com/opensource/2008/06/06/were-all-going-on-a-european-tour/

Romania is playing there and the Open Source part of the game happened.

http://blogs.the451group.com/opensource/2008/06/10/open-source-tour-of-europe-romania/

Typically, some comments were out of the scope, just to label them only like this. Indeed, it is lot to do with respect to Open Source in Romania.

I got in touch with Open Source in my first University year. It can be an excuse that after communist regime it took some time to put the country on the right movement, but it still happens now, people get in touch with Linux at University, if they follow software programming. Otherwise, Open Source, Linux mainly, is like a Morgana, rumors that exists, but nobody tells something about it in the educational system.

As there are many Open Source applications running now on Windows, lot of people are not aware they use Open Source — case of Firefox or Open Office.

ROSDEV and eLiberatica are Romanian events that try to promote Open Source and I hope they will succeed. But will take time. As long as the educational system does not produce a minimal knowledge about Linux and other Open Source applications, the local business cannot afford trainings. I am not talking about IT companies, but about the rest which represents more then 90%. I can say that all I do privately with my laptop or as business with ASIPTO and Kamailio (OpenSER) is 99% Open Source, that is insignificant at country level.

I am dreaming to the moment when going to Travel agency, administrative offices, a.s.o. I will see a Linux Desktop running … for sure I will blog it …

Approaching OPENSER v1.4

The time for a new major release is approaching. Last minute discussions about some lately introduced code keeps the situation a bit unclear for the moment regarding the release day.

However, this post tries to underline the new features and important aspects that happened during last development cycle.

There are six new modules:
- db_oracle - database driver to connect directly to Oracle servers
- dialplan - regular expression based dialplan management
- nat_traversal - helper for nat traversal
- peering - RADIUS based peering
- ratelimit - call rate control module
- userblacklist - user based blacklisting

Lot of other new features and refurbishing in existing modules such as carrierroute, dispatcher, dialog, mediaproxy, msilo, cfgutils, pdt, textops.

Review of the DB API, fixup functions, new transformations and pseudo-variables are some of the core updates.

Related to this cycle, worth to mention the first OPENSER Devel Guide, a free, electronic book available at:

http://www.asipto.com/pub/openser-devel-guide/

and first printed book about OPENSER:

Building Telephony Systems With OPENSER.

I encourage everyone to start testing the upcoming OPENSER 1.4. Will be a big step forward.

Friday, June 6, 2008

OPENSER Dinner, Berlin - remarks

What can I say first, great beer! Although, since I have been there last time, the place has changed the name, still nice and good quality.

The talks focused a bit on the two events taking place in Berlin, the AsteriskTag and the LinuxTag. Part ot SUN/OpenSolaris team joined us -- some one there worked hard in the past to make OPENSER compiling on OpenSolaris with the native compiler. Thanks.

As the VoN show in Amsterdam was canceled, this was the last social event in this cycle. I returned to work at ASIPTO, preparing for a new major release.

Thursday, June 5, 2008

AsteriskTag and LinuxTag 2008 - week in Berlin

I covered a bit about AsteriskTag2008 and LinuxTag2008 at:

http://www.asipto.com/index.php/2008/06/04/remarks-asterisktag-and-linuxtag-2008/

There you can find links to some photos and the slides I presented in the first day of AsteriskTag.

I had no photos from the OPENSER dinner in Berlin, on the 28th, but I will post about soon.

Sunday, May 25, 2008

OPENSER Dinner, Vienna - remarks

Very good restaurant - delicious food and local made beer - credits for selection goes to Andreas Granig. Located in the old part, in the city center, the place was somehow protected by the tourists crowd, offering a quite atmosphere.

As we got two visitors from Bratislava, Slovakia, the discussions went global wise. A hot topic (I guess not only there) was the cancellation of VoN show in Amsterdam. What will be the meeting place from now on for the VoIP guys as the VoN disappeared? Who knows, lot and lot of discussions and opinions here and there on the web forums and mailing lists...

Personally I got an update regarding WiMAX, deploying phase started in some countries. Although I know there are still many issues, the pressure of production environments will give more confidence and attract investors and creation of new or better products and solutions for this technology.

And of course, answering many times, again and again, it is VoIP in that dark castle in Transilvania, only SIP, SIP, SIP (I think is actually lower case :-) )...

Saturday, May 24, 2008

Interview: Mysql and Openser

I have found an interesting interview by MySQL with Juha Heinanen, developer and management board member of Kamailio (OpenSER) Project. Targeting the carrier grade deployments, the key components approached are the MySQL cluster and Kamailio (OpenSER), to leverage reliable and distributed storage system for routing large volume of VoIP calls.

See the interview here.

Thursday, May 22, 2008

OPENSER Dinner, Berlin, May 28, 2008

Bound to Asterisk Tag (http://www.asterisk-tag.org) and Linux Tag (http://www.linuxtag.org) events, Henning Westerholt and I will take care of an OPENSER group meeting in Berlin, Germany, May 28 at 20:00.

The place is a small brewery next to Chartlottenburg Castle in Berlin, named Lusinen Brau, the website:

http://www.luisenbraeu.com/

Organized in same idea of casual community meeting, everybody is welcome to join at any time. It is recommended to contact us to announce your participation so you got your seat reserved.

http://www.asipto.com/index.php/contact-us/

Confirmed Participants:
- Henning Westerholt, developer OPENSER, 1&1 Germany
- Elena-Ramona Modroiu, co-founder OPENSER, asipto.com
- Olle E. Johansson, main SIP developer Asterisk, edvina.net
- Dan Bogos, VoIP consultant, itsyscom.com
- Daniel-Constantin Mierla, co-founder OPENSER, asipto.com
- Bogdan Pintea, developer SER, Iptego

Monday, May 19, 2008

OPENSER Workshop, Berlin, May 26-27, 2008

The Asterisk Tag conference hosts two presentations related to OPENSER. In the first day, starting with 4:00pm, will be Asterisk and OpenSER - blending together for scalability. The main focus will be how to plug OPENSER to scales Asterisk-based services.

The next day will be a two hours workshop dedicated to OPENSER. The target is to reveal where OPENSER fits in IP communication services, Voice over IP and beyond, and to give the starting point to use it.

The evening of 28th May will host an OPENSER Social Networking Event at Luisen Brau in Berlin (more details in a new post very soon).

openser.vim

I just found VIM OPENSER syntax specs for configuration file, courtesy of Stanislaw Pitucha. As a heavy VIM user, I am glad to have it available. You can download it from the VIM site.

http://www.vim.org/scripts/script.php?script_id=2242

Friday, May 16, 2008

OPENSER Dinner - Vienna, Austria, May 24, 2008

The OPENSER Dinner to be held in Vienna, Austria, is scheduled for May 24, 2008, 19:30 at Plutzer Brau

http://www.plutzerbraeu.at/plutzerbraeu.html.

Already confirmed the presence:

- Elena-Ramona Modroiu, co-founder OpenSER, COO at http://www.asipto.com
- Andreas Granig, developer OpenSER, CEO at http://www.sipwise.com
- Daniel-Constantin Mierla, co-founder OpenSER, CEO at http://www.asipto.com

See photos from the previous similar event (Barcelona, Spain).

Next event will be in Berlin, in the week with Asterisk Tag and Linux Tag (more details soon).

The OPENSER Dinner series targets local community meetings around the world for social networking and business discussions. If you want to participate (free of charge, everyone pays for its expenses) and secure a seat, contact us at:

http://www.asipto.com/index.php/contact-us/

Thursday, May 15, 2008

OPENSER v1.3.2 Released

New minor release in the series of 1.3 is out as v1.3.2. It includes a bunch of fixes from the time of v1.3.1 release. All running 1.3.x in production should upgrade.

The compatibility is kept at database level and for the configuration file. No need to apply changes, just install the new OPENSER version.

More details at www.kamailio.org.

See detailed changes for this release in ChangeLog file.

Wednesday, May 14, 2008

CERF 2008

The biggest IT show in Romania, CERF2008, took place last week at ROMEXPO facilities in Bucharest. I arrived late on Saturday from Barcelona (some pictures here), so I could pay a visit in the last day of the event.

It looked a bit smaller for me than last year. I was focused on communications technologies, and, apart of the big mobile operators and telco here (Romtelecom, Vodafone, Orange, Cosmote) having large exhibition area, very noisy, advertising latest services, giving gifts a.s.o., the companies came with interesting solutions and hardware to demo and present.

I could find several distributors for the major VoIP vendors, especially for phones and SOHO routers: Zyxel, Snom, Polycom, Linksys, DrayTek, Siemens. I can say I was satisfied by the show, comparing with last years, the Open Source seems more popular, the companies offering VoIP solutions, although they might be from other vendors, they do know about Asterisk or Kamailio (OpenSER).

Monday, May 12, 2008

OPENSER Dinner, Barcelona - remarks

May 6, 2008, Barcelona, Spain, OPENSER Social Networking Event at El Glop, in the city center.

A great dinner put together by Jesus Rodriguez (OPENSER developer, FreeBSD package maintainer, CTO at Voztelecom), Daniel-Constantin Mierla (co-founder and developer OPENSER, CEO at asipto.com) and Inaki Baz Castillo (VoIP and OPENSER Consultant at limit.es).

All together were 20 people, including the elite of Spanish VoIP Blogging Army: Jesus Rodriguez (http://www.jerocu.net), Alberto Sagredo (http://www.voipnovatos.es), Sergio Serrano (http://www.asterisktron.org).

Well known to OPENSER and Asterisk environments: Olle E. Johansson, Elena-Ramona Modroiu, Gines Gomes, Elias Baixas, Pascal Maugeri, Victor Pascual Avilla, Nacho Cabrera Ramos.

See some pictures I selected from the ones taken by Alberto Sagredo:
http://www.asipto.com/photos/BARCELONA2008-ALBUM/

Food was excellent (thanks Jesus for selecting the place), so the discussions, as we were staying long after leaving the restaurant to talk outside. Of course, some went to a pub at the usual time in Spain 1:00am.

Next are Vienna and Berlin...

Saturday, May 10, 2008

Bacelona, Barcelona

Third time in Barcelona, same good atmosphere and food. The weather was nice in the first days, ending with heavy raining on Friday afternoon and Saturday.

The training was organized by http://www.avanzada7.com and hosted by http://www.adamvozip.com. Of course, enjoying Olle (http://www.edvina.net) just one week after the class in Orlando, we got to the usual: setting the infrastructure from scratch in the class Monday morning, leaving everything clean on Friday afternoon.

In between, we had yet another challenging week – no class is similar with the previous one – new inquires from the students, other issues brought to discussion, new labs to be solved. We agreed that we do learn a lot, as people coming to the class use Asterisk and Kamailio (OpenSER) is rather different use cases and they face situations we would have never thought.

We were very closed to Sagrada Familia, having nice surroundings for evening walks and dinners. On the 6th we went to Kamailio (OpenSER) Social Networking Event. A new post here and couple of photos on http://www.asipto.com will reflect that evening.

Tuesday, May 6, 2008

OPENSER Dinner - El Glop, Barcelona, May 6, 2008

The OPENSER dinner in Barcelona, Spain, May 6, 9:00PM, takes place at "Braseria El Glop".

http://www.elglop.com/

There will be about 20-25 persons, among them:

- Olle E. Johansson, main Asterisk SIP developer, CEO at http://www.edvina.net
- Elena-Ramona Modroiu, co-founder OpenSER, COO at http://www.asipto.com
- Jesus Rodriguez, developer OpenSER -- FreeBSD packages maintainer, CTO at http://www.voztele.com
- Daniel-Constantin Mierla, co-founder OpenSER, CEO at http://www.asipto.com
- Inaki Baz Castillo - OpenSER mailing list activist, VoIP consultant
- Alberto Sagredo - http://www.voipnovatos.es
- several other openser, wesip (http://www.wesip.com) and asterisk folks

Sunday, May 4, 2008

OPENSER Book

Just returning from my trip in Florida, I am catching up with some events happening around the project.

First book about OPENSER was published by Packt Publishing, authored by Flavio E. Goncalves. I did technical review of the book and waiting now for the hardcopy version of it. More details at:

http://www.packtpub.com/building-telephony-systems-with-openser/book

Friday, May 2, 2008

Oracle Support

Courtesy of Iouri Kharon, a new developer, the development branch of OPENSER includes now native support for connecting to ORACLE databases. Previously possible via UNIXODBC driver, the new module named db_oracle brings more flexibility when using this powerful database server.

The readme of the module is available at:
http://www.kamailio.org/docs/modules/devel/db_oracle.html

The module will be include in next major release 1.4.0.

Trip in Florida

Starting with 19th of April, I spent almost twoo weeks in Florida. Arriving 2 days before the SIP Masterclass in Orlando held together with Olle E. Johansson allowed accommodation with the time zone. Also, we had the time to do the shoppings for the course.

First Sunday we headed to Cape Canaveral to visit the NASA Space center. Having my sister a researcher and PhD in Astro-Physics (blogging in Romanian about this at http://blogsolar.blogspot.com/), I have been pretty much in touch with this field. However, the center is impressive, movies about the history of astronautics and the trips in space, rockets and shuttles at real size, the assembly room, launch pads, a.s.o.

Monday to Friday was mostly about the course, with people from USA, Columbia, Peru and Canada, enjoying very much discussion about real world deployments and issues. During an evening, we had a quick tour at Universal Studio, another big attraction of Orlando.

Once course finished, without visiting the Disney World (next time…), I moved to Miami and spent 3 challenging days with friends, including one BBQ on the beach.

I left Florida for going to Bucharest for one and a half day before flying to Barcelona for another SIP Masterclass hosted by http://avanzada7.com/.