Search
The Open Source SLEE and SIP Server

Mobicents Sip Servlets

Throughout this page you can click on the images to see them larger.

Description

The Media IPBX project is based on the Seam Telco Framework and it's goal is to demonstrate the technology and eventually become a real useful PBX product.

The primary design requirements for the PBX are:

  • To have a dynamic Web GUI where users can log in, manipulate and monitor the call status, adjust system or profile settings and so on
  • To allow proxy-mode and all other classic PBX operations without the need to use the Web GUI
  • To be extensible and customizable

Currently the PBX terminates all calls in Mobicents Media Server conference endpoints, which allows maximum flexibility to manipulate the calls after they are established. This allows features like server-side conferencing, ringback tones, later voicemail and call recording will be added. Another application of the PBX is to act as Session Border Controller. For now the PBX runs only on Mobicents Sip Servlets with JBoss AS 4.2.3

Features

The most notable features currently implemented in the PBX are the following:

  • Registration, login and configuration from the GUI
  • Call monitoring and management from the individual user views
  • Users can have multiple phones and switch between them from the Web UI (call parking), they can assign phones that are active or unactive (ringing or not when calls are coming)
  • Calling multiple users in a conference by making normal calls
  • Call control from the Web UI - mute, close calls and others. Audio announcement is made to the affected users.
  • Incoming calls can be joined in an active conference or rejected
  • Ringback tones when waiting for the other participants in the call to join
  • PSTN phone calling with PSTN admin functions
  • Audio notification sources (wav files) and other options configurable from the administrator account
  • Putting users on hold and isolating a single speaker with DTMF when in a conference (experimental)
  • Automatically adding phones for users using the SIP REGISTER request by matching the username or username and hostname (in strict mode)

Note that most of the announcements and tones are being downloaded from the internet at runtime by default. Depending on your internet connectivity you an experience delayed announcements or ringback tones. If you want to improve the response time you can configure local files used in announcements from the configuration panel.

You can find a lot of other smaller features in the IPBX. Many of them are explained in the hints that appear on the web pages. You can see a few demonstrations on YouTube:

and another one:


HD Versions - Basic Demo and Calls Demo .

Downloading

You can download the binaries from here here , unzip it and drop it into JBOSS_HOME/server/default/deploy directory. The PBX needs a data source, a default datasource is provided in the zip file, but you can configure your own as well.

Building and installing

You can download the source code from here . First you need SVN, Ant and Maven properly configured on your system.
  • Do svn co http://mobicents.googlecode.com/svn/trunk/applications/ipbx/
  • Set your JBOSS_HOME to a location where Mobicents Sip Servlets 0.9 or later is installed. Then simply run:

ant clean all deploy
Then go to the Sip Servlets management console http://localhost:8080/sip-servlets-management and make sure the "ipbx" application is the first and only application subscribed for INVITE and REGISTER requests. These requests are required if you plan to receive calls or to allow registering phones remotely. If you are behind a NAT and want to make PSTN calls you would need to configure Stun (click for instructions)

Usage

Once the PBX is installed and running navigate to http://localhost:8080/ipbx and follow the instructions. Please note that there is a known bug when you try to add a Phone from the GUI - the very first operation succeeds, then second two attempts will fail (and the GUI will ask you to try again), after that no problems are expected. We are working towards solving this and other annoying issues, mostly related to the Database. And any help in this or other aspects are welcome!

Mobicents Sip Servlets