Restcomm USSD Gateway is an Open Source Java based USSD Gateway Platform that routes USSD messages from the signaling network to service applications and the other way around. It enables operators to offer real-time interactions to mobile subscribers and deliver interactive content to their mobile phones.
Restcomm USSD Gateway acts as an intermediary platform linking the service applications to the GSM network in a session oriented communication. The platform is easy-to-install and easy-to-deploy allowing you to have the Gateway set up and configured very quickly.
Restcomm USSD Gateway supports TDM hardware offered by major vendors in the market, namely Intel family boards (Dialogic) and Zaptel/Dahdi (Digium, Sangoma). TeleStax also has in-house SS7 cards also known as Restcomm SS7 Cards. Restcomm SS7 cards have MTP2/3 support on-board and therefore the processing load on the server hosting the Restcomm USSD Gateway platform will be low when you use these SS7 cards.
Restcomm USSD Gateway is based on the robust and proven Restcomm JAIN SLEE 1.1 Server and Restcomm jSS7 Stack. Restcomm JAIN SLEE Server is a highly scalable event-driven application server with a robust component model and fault tolerant execution environment. It provides a set of connectors to a variety of networks elements: SS7 MAP, TCAP, INAP, ISUP, SMPP, XMPP, SIP, MGCP, HTTP, XDM, XCAP, Diameter and many others. It is fully compliant with JSR 240 (JSLEE 1.1). Restcomm jSS7 is a software based implementation of the SS7 protocol. It provides implementation for Level 2 and above in the SS7 protocol Stack. Restcomm jSS7 Stack User Guide is bundled within and you can refer to the guide for more details on the Stack.
The Restcomm USSD Gateway makes use of HTTP protocol between the gateway and the third-party applications (or Value Added Service Modules). Restcomm USSD Gateway receives the USSD request from the subscriber’s handset/device via the GSM Signaling network and then translates these requests to HTTP depending on the rules configured in the Gateway to route to a corresponding Value Added Service (VAS) or third-party application. The HTTP callback mechanism allows the third-party Application to be agnostic to Operating System, Programming Language and Framework.
This guide will assist you in installing Restcomm USSD Gateway. For more details on configuring and using the platform, please refer to the Restcomm USSD Gateway User Guide.
Mobicents USSD Gateway’s core requirement is Java. The following table details the Hardware, Operating System and Software requirements for a clean installation of Mobicents USSD Gateway.
Installation Pre-Requisites
Component | Requirement | Notes |
---|---|---|
System Requirements | Intel Pentium 1 GHz or faster for simple applications. Hard disk space of at least 20MB. RAM of at least 1.5 GB | Higher the RAM and processing power, better is the throughput |
TDM Hardware | For legacy SS7 links, you must have dahdi or dialogic cards installed along with their native libraries. |
|
Operating System | The platform can be installed on any OS that supports Java and SCTP. But native libraries for SS7 cards are compiled only for Linux at the moment and therefore supported only on Linux Operating System. | The libraries will be compiled for Windows in future releases. |
Java | You must have a working Java Runtime Environment (JRE) or Java Development Kit (JDK) installed on your system and it must be version 7 or higher. M3UA uses Java SCTP which is available only from JDK 7 onwards. |
|
Firewall Access | You must ensure that you have appropriate firewall permissions to allow access to IP:8080. This is required to access the management consoles. | |
SCTP libraries | If you intend to use SIGTRAN (M3UA) , you must have the lksctp library installed. The Linux Kernel Stream Control Transmission Protocol (lksctp ) library provides SCTP implementation. |
For more details on downloading and installing lksctp , please refer tohttp://lksctp.sourceforge.net/ |
Important
You must ensure that the JAVA_HOME
and JBOSS_HOME
Environment variables are set properly for the user account(s) that will run the server. For more details on setting these variables, please refer to the sections Appendix A, Java Development Kit (JDK): Installing, Configuring and Running and Appendix B, Setting the JBOSS_HOME Environment Variable.
For legacy SS7 links, you must have relevant SS7 cards installed along with their native libraries.
Mobicents USSD Gateway supports dahdi
based SS7 cards like diguim
and sangoma
as well as dialogic
cards. Sincedahdi
based SS7 crads do not have MTP2/MTP3 support on board they rely on external software to provide these services. But dialogic
based SS7 cards have on board support for MTP2/MTP3.
This guide does not provide installation instructions for SS7 hardware. You must refer to respective vendor documentation for installing and configuring the hardware cards. The following external links point to information that will assist you in setting up the hardware.
- Sangoma: http://wiki.sangoma.com/
- Diguim: http://www.digium.com/en/products/digital/
- Dialogic: http://www.dialogic.com/
Installing Mobicents USSD Gateway is easy and quick with the binary download. You can either download the binary release or download the source code and set up from source.
Binary Download and Installation
The binary release is available for download at TeleStax Customer Support Portal https://telestax.zendesk.com/forums/20768031-premium-content
Procedure: Binary Download and Installation
- Download the zip file
<filename>
to any folder of your choice. - Extract the contents of the zip file.
Downloads]$ unzip <filename>
- Verify the newly created directory and ensure the contents are as explained below.
Directory Structure
When you download the binary release, you will notice that the top level directory is namedmobicents-ussdgateway-<version>
and immediately below this are five sub-directories as explained below:
- docs: Contains all relevant documentation in respective subfolders for JSLEE, jSS7, Management-HQ and USSD.
- jboss-5.1.0.GA: The core server with two profiles “default” and “simulator”. The “default” profile is a clean profile where you will have to start from scratch and configure the entire SS7 Stack and USSD Gateway. The “simulator” profile is a pre-configured profile to work with jss7-simulator. Refer to the Admin Guide for instructions on how to start the server in either of the profiles.
- resources: Contains SLEE MAP, JDBC, http-client, http-servlet and SIP RA jars.
- tools: Contains SLEE tools and jss7-simulator.
|- mobicents-ussdgateway-<version> |- docs |+ jss7 |+ slee |+ ussd |+ management-hq |- jboss-5.1.0.GA |+ bin //contains start up and shutdown scripts for the Server and the start up script for Shell. |+ client |+ common |+ docs |+ lib |- server |+ default //clean profile to set up from scratch |+ simulator //pre-configured profile to work with the jss7-simulator |- resources |+ http-client |+ http-servlet |+ jdbc |+ map |- tools |+ eclipslee |+ jopr-plugin |+ remote-slee-connection |+ snmp |+ Mobicents-jss7-simulator |+ Mobicents-ussd-simulator |+ twiddle
Setup from Source
Mobicents USSD Gateway is an open source project and you have the freedom to build from source. Building from source means you can stay on top with the latest features. Whilst aspects of Mobicents USSD Gateway are quite complicated, you may find ways to become contributors.
Mobicents USSD Gateway works with JDK1.7 or above. In addition you must have the following tools installed.
Git Client 1.6
: Instructions for using GIT, including install, can be found at http://git-scm.com/bookSubversion Client 1.4
: Instructions for using SVN, including install, can be found at http://subversion.tigris.orgMaven 2.0.9
: Instructions for using Maven, including install, can be found at http://maven.apache.org/Ant 1.7.0
: Instructions for using Ant, including install, can be found at http://ant.apache.org
Release Source Code Building
-
Use GIT to checkout a specific release source, the base URL is https://github.com/mobicents/ussdgateway, then add the specific release version.
[usr]$ git clone https://userid@bitbucket.org/telestax/mobicents-ussdgateway.git [usr]$ cd mobicents-ussdgateway [usr]$ git checkout <version>
-
Now that we have the source the next step is to build and install the source. Mobicents USSD Gateway uses Maven 2 to build the system. You must ensure that
JAVA_HOME
environment variable is set properly prior to building the source.[usr]$ mvn clean install
Development Trunk Source Building
Similar process as for Section 4.3.1, “Release Source Code Building”, the only change is don’t switch to specific tag.
The post USSD Installation Guide appeared first on Telestax Docs Online.