Besides the core SMPPEX
project there are some auxilary projects.
smppsend is a simple CLI utility for testing SMSC connections. It allows to bind to SMSCs, send submit_sm PDUs and wait for delivery reports.
smppex_web is a simple demonstrational MC (SMPP server) with web interface.
A public installation is available online at:
- Web: smppex.rubybox.ru.
- SMPP:
smppex.rubybox.ru:2775
It is useful for manual preliminary testing of SMPP clients.
One can connect to the demonstrational MC with the mentioned smppssend
tool:
./smppsend --host smppex.rubybox.ru --port 2775 --system-id systemid --password pass --bind-mode trx --submit-sm --source-addr from123 --source-addr-npi 1 --source-addr-ton 5 --destination-addr 99999999999 --dest-addr-npi 1 --dest-addr-ton 1 --short-message HelloHelloHelloHelloHelloHelloHelloHelloHello --data-coding 8 --split-max-bytes 30 --udh-ref 123 --ucs2 --registered-delivery 1 --wait
19:57:33.677 [info] Connecting to smppex.rubybox.ru:2775
19:57:33.749 [info] Connected
19:57:33.753 [info] Binding
pdu: bind_transceiver
command_id: 9
command_status: 0 (ok)
sequence_number: 0
mandatory fields:
addr_npi: nil
addr_ton: nil
address_range: nil
interface_version: nil
password: "pass"
system_id: "systemid"
system_type: nil
optional fields: []
...
smpp_benchmarks is a bunch of benchmarks to run against SMPPEX.
smppex_telemetry is an advanced
implementation of SMPPEX.Session
which emits telemetry events.
Sometimes it is important to shutdown one or many SMPP sessions "gracefully",
i.e. to send unbind
PDU and wait for a response before disconnect.
smppex_graceful contains an example of how one can organize ESME sessions to achieve this.