rofrol / SMPP-Test

Test tools for SMPP

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SMPP Test Tools
===============

1. Introduction
---------------

SMPP stands for Short Message Peer-to-peer Protocol. 

This repository contains the Java source for a pair of simple test
tools, designed to allow the sending and receiving of SMPP PDUs. These
tools are based on the OpenSMPP API.

One tool is GUI based and allows the entry of PDU data via a series of
data entry screens. The other is a batch tool that sends a scripted
sequence of PDUs, as specified in an XML file.


2. Licensing
------------

This software is released under the GNU General Public License version
2.0 (https://www.gnu.org/licenses/old-licenses/gpl-2.0.html) or later
(https://www.gnu.org/licenses/licenses.html).


3. Requirements
---------------

These tools require Java6, gradle, OpenSMPP
(https://www.gnu.org/licenses/licenses.html) and JDOM
(http://www.jdom.org/).


4. Building
-----------

gradle jar


5. The GUI test tool
--------------------

Usage: java -cp "$HOME/.m2/repository/org/opensmpp/opensmpp-core/3.0.1-SNAPSHOT/opensmpp-core-3.0.1-SNAPSHOT.jar:$HOME/.m2/repository/org/jdom/jdom/1.1.3/jdom-1.1.3.jar:build/libs/SMPP-Test.jar" uk.org.youngman.smpp.test.gui.TestClient

This launches a simple window. Clicking the "Connect" button launches
the connect dialog. Filling in the server details and clicking the
"Confirm" button connects to the SMSC. Once connected the "Send PDU"
and "Disconnect" buttons are activated.

The GUI tool can read default connection and login (bind) details from
file Test.properties, if that is on the class path.

The "Send PDU" button launches a PDU composition dialog. After
selecting a PDU type the fields can be filled in as required. Sequence
numbers increment automatically, but can be altered if required.

On the main window there are 2 checkboxes that control whether
ENQUIRE_LINK and DELIVER_SM PDUs are automatically acknowledged. While
these checkboxes are selected those PDUs will be acknowledged with the
status ESME_ROK.

All PDUs sent and received are logged in the log pane in the centre of
the main window. Double clicking on a PDU entry opens up a read only
PDU dialog to display the Contents of the PDU as sent or received.


6. The Batch test tool
----------------------

Usage: java -cp "$HOME/.m2/repository/org/opensmpp/opensmpp-core/3.0.1-SNAPSHOT/opensmpp-core-3.0.1-SNAPSHOT.jar:$HOME/.m2/repository/org/jdom/jdom/1.1.3/jdom-1.1.3.jar:build/libs/SMPP-Test.jar" uk.org.youngman.smpp.test.batch.BatchClient batch_example.xml batch.log

The batch test tool supports scripted SMPP testing. It reads an XML
file with instructions on where to connect, what PDUs to send, whether
or not to automatically acknowledge ENQUIRE_LINK and DELIVER_SM PDUs
and pauses. It writes details of all PDUs sent and received to a log
file.

If it detects any errors while parsing the XML, it will not try to
continue. The XML is not validated against a schema, so not all
errors will be detected.

A simple batch example is provided, which will need to be edited to
your requirements. It is not documented, but I hope it is resonably
self explanatory, given a basic familiarity with SMPP.


7. Limitations
--------------

These tools do not currently provide any way to change the character
sets used from the OpenSMPP defaults without code changes.

There is no way to alter automated responses where these are used or
to make the response conditional on the contents of the received
PDU. Automated responses are currently only available for ENQUIRE_LINK
and DELIVER_SM PDUs.


Neil Youngman, 20th January 2011.

smpp@youngman.org.uk

About

Test tools for SMPP


Languages

Language:Java 100.0%