- Building Telephony Systems with OpenSER
- Flavio E. Goncalves
- 579字
- 2021-07-02 11:38:33
What Software to Use, SER or OpenSER?
SER was originally developed by the FhG Fokus research institute in Berlin, Germany, and released under the GPL license. The core developers of SER were Andrei Pelinescu-Onciul, Bogdan-Andrei Iancu, Daniel Constantin Mierla, Jan Janak, and Jiri Kuthan. Some contributors joined the project later, namely Juha Heinamen (RADIUS, ENUM, DOMAIN, URI), Greg Fausak (POSTGRES), Maxim Sobolev (NATHELPER), Adrian Georgescu (MEDIAPROXY), Elena Ramona Modroiu (XLOG, DIAMETER, AVPOPS, SPEEDDIAL), Miklos Tirpak (Permissions), and others.
OpenSER is a fork of the original SER project. In 2004 FhG Fokus started a spinoff of the SER project creating the iptel.org. In 2005 the commercial variant of IPtel was sold to TEKELEC. The core development team was split in two. Three of them went to iptel.org (Andrei Pelinescu-Onciul, Jan Janak, and Jiri Kuthan). The other two (Bogdan Andrei Iancu and Daniel Constantin Mierla) left the FhG to start a company called Voice-System the main maintainer of the OpenSER project started in 2005.
This book started in late 2005 based on the SER project. At that time, I was interested in a NAT traversal solution that was only available using SER. The scalability of Asterisk was not good enough to host a SIP provider, and so I started playing with SER. The documentation was really hard to understand and I started writing my own to train the administrators of the SIP providers.
After the eBook was ready, I found that the SER project was almost halted. Most of the code dated to 2003. After a little research I found the OpenSER project. It seemed to be more active, with newer modules and more frequent releases. I was able to change everything to OpenSER in very little time.
I don't want to get into the politics of SER versus OpenSER. The concepts presented here are valid for both. The fact is that is written for OpenSER.
OpenSER has a flexible plug-in model for third-party applications. Applications can be easily created and plugged in to the server. This plug-in model, allowed the development of several new modules, such as RADIUS, DIAMETER, ENUM, PRESENCE and SMS to name a few. Newer modules are being added every month. You can check available modules for OpenSER 1.2.x at http://www.openser.org/docs/modules/1.2.x/.
The performance and robustness of OpenSER allows it to be used to serve millions of users. On a recent performance report dated 14th March 2007, OpenSER 1.2.x was able to handle register requests to an equivalent of 4 million users. The TM (Transaction Module) was able to handle 28 million calls per hour. The complete report can be seen at:
http://www.openser.org/docs/openser-performance-tests/
OpenSER is not used just by service providers. It can be used to construct SIP appliances. There are SIP firewalls, Session Border Controllers, and load balancers that are using code borrowed from the OpenSER project today. OpenSER was chosen by LINKSYS for the One PBX platform, probably because of the small footprint and high performance available.
OpenSER is flexible, portable, and extendable. Having being developed in ANSI C it can be easily ported to any platform. It is very easy to extend by creating new modules using C language. Recently new layers of programming were added. It is possible to use Call Processing Language to simplify the routing scripts and Perl to process requests in real time. WeSIP is an application program interface that allows you to use Java and servlets to extend the OpenSER server creating a SIP application server. Check WeSip at www.wesip.com.
- HTML5 Multimedia Development Cookbook
- Spring Python 1.1
- CorelDRAW X5實用教程(第2版)
- 專業級音樂制作理論與實踐Pro Tools:從入門到應用
- PHP應用開發與實踐
- AI短視頻生成與剪輯實戰108招:ChatGPT+剪映
- Flash基礎與實戰教程
- PHP 5 Social Networking
- Magento 1.3 Theme Design
- 企業微信公眾平臺開發實戰:再小的個體也有自己的品牌
- Photoshop人像精修秘笈
- Building Websites with Mambo
- AutoCAD 2020中文版從入門到精通(升級版)
- Linux Shell腳本攻略(第3版)
- Moodle 1.9 Math