Installing Restcomm SMSC 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.


  • Download the latest Cassandra Database from HERE

  • Download the latest Restcomm SMSC gateway from HERE

  • Install Java JDK 7 or higher

  • Make sure $JAVA_HOME environment variable is correctly set (test: echo $JAVA_HOME)

Step 1 - Download and Unzip the Restcomm SMSC Gateway Binary

  • Once you have the SMSC binary, run the unzip command (This tutorial will be using the version

  • unzip

  • This will create a directory  with the name: restcomm-smsc-X.Y.Z

  • cd into the restcomm-smsc-X.Y.Z and you will see the following directory structure:

 restcomm-smsc-X.Y.Z]$ ls
cassandra  docs  jboss-5.1.0.GA  resources  tools
  • This root directory  restcomm-smsc-X.Y.Z will be referred to as the $SMSC_HOME

Step 2 - Download and unzip Cassandra DB

apache-cassandra-2.1.8]$ ls
bin  CHANGES.txt  conf  interface  javadoc  lib  LICENSE.txt  NEWS.txt  NOTICE.txt  pylib  tools
  • This root directory of apache-cassandra will be referred to as the $CASSANDRA_HOME

  • Go to $CASSANDRA_HOME/bin

  • start Cassandra as follows:

  • ./cassandra -f

  • if Cassandra is successfully started, the console final output should be similar to the following:

Starting listening for CQL clients on localhost/
INFO  18:20:39 Binding thrift service to localhost/
INFO  18:20:39 Listening for thrift clients...
  • Open a different bash terminal and go to the directory $CASSANDRA_HOME/bin

  • Run the following command to create a database for the Restcomm SMSC gateway

  • Create the Keyspace TelestaxSMSC

./cqlsh CREATE KEYSPACE "TelestaxSMSC" WITH REPLICATION = {'class' : 'SimpleStrategy', 'replication_factor': 1};
  • Restcomm SMSC will populate the database on startup.

Step 3 - Start Restcomm SMSC Gateway

  • Create a  JBOSS_HOME  environment variable to point to the directory  $SMSC_HOME/jboss-5.1.0.GA/

  • Go to the directory $SMSC_HOME/jboss-5.1.0.GA/bin

  • Run the following command to start the SMSC gateway :

  • ./ -c simulator

  • This will start in simulator mode so that you can quickly test the demo scenarios of SMSC

  • If successfully started, you should see a console output similar to the one below:

13:27:33,551 INFO  [Http11Protocol] (main) Starting Coyote HTTP/1.1 on http-
13:27:33,607 INFO  [AjpProtocol] (main) Starting Coyote AJP/1.3 on ajp-
13:27:33,621 INFO  [ServerImpl] (main) JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221634)] Started in 58s:285ms

that the the Restcomm SMSC gateway is bound to the local loopback address ( You can bind it to another IP address by running the command : $SMSC_HOME/jboss-5.1.0.GA/bin/ -b <IP_ADDRESS>

Step 4 - Access the Restcomm SMSC Management Gui

You will see a screenshot similar to the one below smsc-gui

Step 5 - Sending a message from the SMPP Simulator to the Restcomm SMSC gateway

  • In the SMSC Gui, click on  ESMEs on the left hand pane,

  • Click on the button Create ESME

  • Fill out the fields as shown below and leave the rest as default

ESME Name : test
System Id : test
Password  : test
Network : -1
IP Address : -1
Port : -1
Smpp Session Type : SERVER
ESME Range: 6666
Source Range: 6666
  • Save the test ESME and click on the start button to activate the test ESME you have just created

  • Start the SMPP simulator and bound it to the test ESME you just created

  • Go to the directory $SMSC_HOME/tools/TelScale-smpp-simulator/bin

  • run the command the following command

  • ./

  • This will start the SMPP Simulator Window

smsc simulator1

  • Click on the button Configure

  • Make sure the SMSC Host is pointing to, which is the address on which the Restcomm SMSC gateway is running

  • Exit that window and click on the button Run test

  • Click on the button Start Session

  • This will start an SMPP session with the Restcomm SMSC server.

  • You can click on the button "Submit a Message" to send a message to the console **

  • You can also click on the "Configure data for a message submitting " to modify the message to send

  • Your message will appear in the Restcomm SMSC gateway console but it will be encoded

The above only connects  an SMPP endpoint to the Restcomm SMSC Gateway. See the section below to learn how to configure advanced features:

Sending Messages from JSS7 to SMPP through Restcomm SMSC Gateway

Telestax Sending Messages from JSS7 and SMPP to a SIP Phone through Restcomm SMSC Gateway

Additional Information

  • You can read the Introduction to Restcomm SMSC overview HERE

  • You can read about supported hardware HERE

  • You can read more about running in Simulator mode HERE