SMPP Simulator

An SMPP simulator is a software that acts as an virtual Short Message Service Centre (SMSC). It can be used to simulate an SMPP SMS service. This is often required by software developers who want to develop an SMS solution without sending and receiving real messages. This guide (Figure 1) explains how you can setup your own SMPP simulator using Ozeki SMS Gateway.

SMPP Simulator
Figure 1 - SMPP Simulator

What is an SMPP simulator

An SMPP simulator is a software that can send and receive SMS messages through the SMPP protocol without actually delivering the messages to the mobile network. Ozeki SMS Gateway is an SMPP simulator.

How does an SMPP simulator work

An SMPP simulator works by providing a virtual SMPP service on a TCP/IP port. SMPP clients can connect to this virtual SMPP service the same way they would connect to a standard SMPP service. The SMPP clients can send and receive SMS messages using this virtual SMPP service.

The Ozeki SMPP simulator can be used to simulate:

  • Successful SMS delivery
  • Failed SMS delivery
  • Successful SMS delivery report
  • SMS delivery failure report
  • SMPP server failure report
  • Invalid SMPP username/password
  • SMPP throttling error

The major difference between an SMPP simulator and a real SMSC, is that the SMPP simulator "eats" the SMS messages. It logs the message submissions, but instead of delivering the SMS messages to the mobile network it removes them. The SMPP simulator gives the ability to the tester users to simulate various conditions for SMS delivery.

Is there another name for an SMPP simulator

An SMPP simulator is also called virtual SMPP server.

How can I configure an SMPP simulator

The basic idea behind setting up an SMPP simulator with Ozeki SMS Gateway is to route the SMS messages to a tester connection instead of routing them to the mobile network. The tester connection will simply log the messages and will report them as either being sent or rejected depending on the configuration. The tester connection can also be configured to return delivery reports. If delivery reporting is configured, delivery reports will be returned at a later time to simulate real-life behaviour.

To setup an SMPP simulator follow these steps:

  1. Install Ozeki SMS Gateway
  2. Setup a tester connection
  3. Create an SMPP user account
  4. Enable low level SMPP logging
  5. Create an SMS route between the SMPP user and the tester connection
  6. Your SMPP simulator is now up and ready

Step 1 - Setup a tester connection

The tester connection is listed as a standard mobile network connection. It can be selected from the "Connections" list, that can be accessed from the toolbar of the SMS Gateway app by clicking on the "Connect" icon. To install the Tester connection, all you have to do is click Install (Figure 1).

Tester SMS connection
Figure 1 - Tester SMS connection

Step 2 - Install an SMPP user

To install an SMPP user for testing, you need to open the main user interface of the SMS Gateway, called the Management console. On this form, find the "Add new user/application" link, and click on it to open the Users/Application list screen (Figure 2).

Install SMPP user
Figure 2 - Install SMPP user

Step 3 - Configure the SMPP user

To configure the SMPP user, you need to click Install (Figure 3), then on the configuration form, that comes up, you need to provide a username and password.

Configure the SMPPP user
Figure 3 - Configure the SMPPP user

After you have created the SMPP user account, you are ready to connect to the SMPP simulator. To see the SMPP communication, it is recommended to enable detailed SMPP logging. To do this, open the SMPP user configuration form, and on the Advanced tab of the configuration form, open the logging group box, and tick the "Low communication events" checkbox. You may also tick the other checkboxes to have a more detailed log. The log files will be written to the default log folder. Each SMPP simulator account will have its own log file. (Figure 4)

smpp simulator logs
Figure 4 - SMPP simulator logs

SMPP simulator log location:
C:\Program Files\Ozeki\Data\Logs\Connections\SMPP_user_smppsim_localhost.txt

Simulate SMPP throttling error

Many SMPP service provider return an SMPP Throttling error, if their service cannot deal with the transfer speed. You can simulate SMPP throttling error, by enabling the SMPP speed limit feature in the Speed limit group box of the Advanced tab page in the SMPP user's configuration form (Figure 5). Note that the speed limit is provided in MPM. MPM means Messages per Minute. If you set a speed limit of 10 MPM, throttling error will happen for the 11th message, if the SMPP client sent in 11 messages in a 1-minute window. You can increase and decrease this speed limit according to your testing scenario and you can switch it off all together. If the speed limit feature is switched off, no throttling error will be return. If the system gets overloaded the system will simple react slower.

smpp throttling error
Figure 5 - Limiting SMPP speed

Simulate submit failed

To constantly simulate SMS submission failure, it is best to remove all mobile network connections from the SMS gateway app. If the SMPP user does not find a possible route to deliver the incoming SMS messages, it will immediately return and SMPP submit failed answer to the SMPP client. This setup is great if you want to test your system for service provider failures and Internet connection failures. If the Internet connection fails, all the Internet based IP SMS connections go offline. In this case an SMS app, that wants to send an SMS will immediately receive an SMPP submit failed message.

Simulate SMPP delivery reports

By default, the tester connection will return submit failed and submit successful reports randomly. You can configure it to return SMS successful delivery reports for successful virtual deliveries. If you enable this option, your SMPP client, that connected to Ozeki SMS Gateway will receive a standard SMPP delivery report as if the submitted SMS messages was delivered to a recipient handset (Figure 6).

Figure 6 - Simulate SMPP delivery reports

SMPP simulator alternatives

Although there are some SMPP simulators on the web, the best SMPP simulator is Ozeki 10 SMS Gateway. The reason for this is that it is high performance, provides details SMPP logging, handles multipart SMS messages and delivery reports.

SMPP simulator alternatives

  • Ozeki 10 SMS Gateway
  • Ozeki NG SMS Gateway
  • Ozeki Message Server 6

More information