The Open Source SLEE and SIP Server

Mobicents Frequently Asked Questions

What is Mobicents?

Read this overview.

Roadmap

We maintain a public roadmap outline for our main modules: roadmap.

Is Mobicents a SIP Application Server

Yes. Mobicents is the most popular Open Source SIP Application Server for the Java platform. But in addition Mobicents also has Sip Servlet Server, Media Server and XDM Server

How to install and run Mobicents?

Follow the Quick Start Guide.

Is Mobicents certified for an industry standard VoIP platform?

Yes, Mobicents is fully certified for JAIN SLEE 1.0.

Mobicents also implements some of the proposed JAIN SLEE 1.1 features. When SLEE 1.1 is finalized, we will make it a priority to ensure compliance with the new standard.

What license is Mobicents distributed under

Mobicents is distributed under a flexible dual license policy. The default distribution license is GNU General Public License (GPL), the most popular Free Open Source Software (FOSS) license in the world. Users would consider purchasing a commercial license if they intend to redistribute Mobicents along with proprietary code or offer a commercial onlince service based on Mobicents. Other popular Open Source Products with similar licensing policy include MySQL, Asterisk, and Java ME.

For custom licensing including commercial derivatives such as products or services, please contact telco@redhat.com.

Where can I find examples?

There is a number of examples available with incremental complexity. You can find them at the mobicents examples page.

What Resource Adaptors are available in Mobicents

Resource Adaptors allow SLEE applications to interact with external resources via standard or proprietary protocols. Mobicents provides a number of resource adaptors out of the box:

  1. SIP Resource Adaptor - using the JAIN SIP RI and extended with basic SIP Registrar and Proxy Services
  2. XMPP/Google Talk Resource Adaptor - using the Smack library. Works in Client and Component Server modes.
  3. Asterisk Resource Adaptor - using the Asterisk-Java library.
  4. Java Call Control (JCC) Resource Adaptor implementing the recommendations in Appendix C of JSR 22 - JSLEE 1.0.
  5. Parlay/Parlay-X Resource Adaptor allowing controlled access to Parlay Gateways.
  6. J2EE/JCA Resource Adaptor implementing the recommendations in Appendix F of JSR 22 - JSLEE 1.0.
  7. Diameter Resource Adaptor based on a Java Diameter library by Ivan Skytte Jorgensen
  8. Media Resource Adaptor - A basic Media RA with default implementation based on JMF.
  9. SMPP Resource Adaptor for SMS messaging
  10. Media Gateway RA for advanced media control
  11. JCC INAP RA for SS7 INAP integration
  12. HTTP RA enabling MM7, MM1, XCAP and other HTTP based applications
  13. HTT Client RA provides the client side HTTP standard within the SLEE environment
  14. Persistence RA A JPA based RA that uses Hibernate
  15. XCAP Client RA to allow presence aware applications to connect to a hosting XCAP server
  16. Rules RA based on JBoss Rules
  17. TTS RA makes use of FreeTTS? which is speech synthesis system written entirely in the Java programming language
  18. SAP RA This is a new SAP (SDP Repeater) Resource adapter Type, RA, Event and sample Sbb. The most recent addition to RA family of Mobicents

Other Resource Adaptors are available under commercial licenses by third party vendors. If you are looking for a Resource Adaptor that does not ship with Mobicents, feel free to ask on our public forums.

The source code for the RAs can be found in the core CVS tree under /ra or under a dedicated mobicents sub-project.

How can I get involved?

It is great to hear that you want to join the team!

The first step is to apply for Observer role. It will grant read access to all project and sub-project resources. You will also be able to subscribe and post messages to the mailing lists and forums. Editing Wiki pages will be enabled as well.

Take some time to read the Essential Mobicents Documents, look at the Roadmap and follow the forums for several days.

When you are ready to take a more active role, post a message with the most specific area you think you can contribute to. Try to be realistic as to the time you can commit to. Updating a wiki page is a valuable contribution, so is reporting a bug. Ultimately we would like to see you submit patches and implement new features. No rush. Only do it if its fun.

In order to contribute code, you will need to have Developer access.

You will be granted Developer role after you demonstrated an understanding of the codebase and testsuite by participating in the design discussions and submitting patches for bugs/enchancements before we will grant developer access.

Developer role requires you to accept via email the following contributor agreement: Mobicents Individual Contributor Agreement

Before requesting developer access, send the full text of the agreement with an indication of acceptance to the email address specified at the end of the agreement document. Next, apply for Developer role.

Once your request is approved, please post an introduction message to the contributors forum. Tell us about your background and your motivation to join the Mobicents contributors team.


Optionally you can also join some of the mailing lists, which provide email notifications and archive for CVS check-ins, issue tracking, and continuous build&test reports.

Mobicents Users Forum

If you have questions about using Mobicents, please direct them to the Mobicents Users Forum.

Mobicents Contributors Forum

If you want to discuss new design ideas or enhancements to Mobicents, please post on the Mobicents Contributors Forum.

Bug Reports, Patches & Feature Requests

Follow the link issue tracking system for bug reports and feature requests for Mobicents.

Which JDK version is required?

Mobicents 1.0.x compiles and runs on JDK 1.4 or higher.

Mobicents 1.2.x compiles and runs on JDK 1.5.

JDK 6 is not yet tested

Is Mobicents based on the JSLEE Reference Implementation?

No. Mobicents is a clean room JSLEE implementation. It has no dependencies on the JSLEE RI.

Which versions of JBoss does Mobicents run on?

Mobicents is compatible with JBoss AS 3.2.x and JBoss AS 4.x depending on which version of Mobicents you download. We plan to provide integration with JBoss AS 5.x in the future.

What JBoss components does Mobicents use?

Mobicents uses the following JBoss components:

  • - JMX Microkernel for core service IoC and management
  • - JNDI for SLEE service registration
  • - JTA for Transaction Management
  • - TreeCache for High Availability state replication

Mobicents DOES NOT use EJB nor JMS as part of the core architecture. SBBs and Event Routing are implemented from scratch for light weight, high volume signaling as intended by the JSLEE specification.

Does Mobicents integrate with other application servers such as WebSphere, WebLogic, Glassfish

Yes. Mobicents provides a standard JSLEE Connection interface for any Java clients, including Java EE servers.

How about performance?

As of version 1.0.00.CR1 we have reports of the following performance results:

  • 100 SIP calls per second (cps) on single CPU @ 2GHz; Linux
  • 370 SIP calls per second on 4 way Netra 440; Sun/Solaris

Note: 1 SIP cps ~ 5 tps, because each SIP call has 5-6 transactions involved.

So the peak performance reported is around 1000-1200tps.

If you want to verify this for yourself, here is how to set things up: Mobicents benchmarking

Where can I read about best practices for writing applications for SLEE or Mobicents

The following page provides a list of best programming practices: Mobicents/SLEE best practices

What are typical Use Cases for Mobicents

See Mobicents Use Cases

How does JAIN SLEE relate to SIP Servlet and Parlay/OSA

The following resources discuss the subject:

How to perform load testing with Mobicents

The following resources discuss the subject:

Other Frequently Asked Questions?

Top Articles:

ImageInnovation in Europe
The European Union has been working hard to establish a collaborative research environment across member countries. In the area of telecommunications the Commission for Science and Research sponsored several big scale projects under its Framework 6 Programme. One such project named OPUCE started in September. Its purpose is to create an open infrastructure enabling easy service creation and deployment in heterogeneous environments and ambiances. more....

Image IT vendors challange NEPs
Until not long ago the market of telco infrastructure used to be exclusive privilege of a handful vendors collectively known as Network Equipment Providers. Convergence of voice, video and data over the Internet Protocol however opened the door to IT vendors who are quickly recognizing the unique oportunity before them. IMS Insider posted an article showing that soon, IT vendors may be a formidable player in this field and that is no good news for NEPs. more...