Melrose Labs provides access to SMSC simulators (aka SMPP server simulators) for use in the development and testing of SMS text messaging capabilities within applications. They simulate SMSCs (short message service centres) and SMPP SMS gateways, and simulate SMS message delivery. SMPP v3.3, SMPP v3.4 and SMPP v5 are supported using TLS and non-TLS connections.
Applications send SMS messages to simulated mobiles by submitting messages to the SMSC Simulator service using SMPP . The SMSC simulators simulate the delivery of the messages, including the generation of delivery receipts back to the application. Simulated SMS messages from mobile numbers (i.e. MO SMS) can also be submitted and delivered to the application.
SMSC Simulator versions.
Shared SMSC Simulator
Shared public simulator for low TPS testing. Obtain SMPP credentials valid for 90-days.
Dedicated SMSC Simulator
Simulator for your own use and configured based on your requirements. High performance simulator.
AWS Marketplace Dedicated SMSC Simulator
On demand simulators available within your AWS account. High performance simulator.
On-premises SMSC Simulator
Simulators with perpetual licenses for running on your own servers. High performance simulator.
SMSC Simulator source code
Customise yourself an SMPP-capable SMS gateway simulator or SMSC simulator.
Operation
Simulate Outbound SMS to to Mobiles
To simulate MT SMS being delivered to a mobile (i.e. outbound SMS or application-to-person SMS) from an application to a mobile, you can use an SMPP TX or TRX bind to submit the MT message to the simulator. The simulator will return a message ID to your application. If a delivery receipt was requested in your submission, a delivery receipt (DLR) will be returned a few seconds later indicating a successful delivery.
Simulate Inbound SMS to your Application
To simulate MO SMS (i.e. inbound SMS or person-to-application SMS) from a mobile to your application, you can either (a) use an SMPP TX bind to submit the MO message to the simulator or (b) use the above Inbound MO SMS Tool.
In either case, you would submit a message using the above SMPP account details to a destination_address
that contains the digits of your system ID
. By including the digits of your system ID
in the destination_address
, the message will be routed by the simulator to your application. The destination_address
field must be at least 8 digits in length so ensure that you prepend or append at least two digits to your system ID, otherwise the simulator will reject the submission.
Example: If your system ID
was "123456" then to send an inbound SMS to your application you would use a separate SMPP transmitter (TX) bind, or the Inbound MO SMS Tool, to submit a message (submit_sm
) to the destination_address
"99123456" (digits in bold are your system ID
). This would cause the SMSC Simulator service to send a deliver_sm
to your application with the source_addr
that you set in the submit_sm
and destination_addr
of "99123456".
The simulator also supports the use of schedule_delivery_time
in the submit_sm
and this can be used to schedule delivery of MT and MO SMS.
SMPP operations supported
We are working to ensure that our simulators allow you to test most, if not all, aspects of SMPP applications such as applications with SMS support and SMS infrastructure. Operations currently supported by the simulators are shown below. Further operations will be provided in future and frequent updates.
- Session Management:
- bind_receiver/resp - Used for receiving delivery receipts.
- bind_transmitter/resp - Used for submitting messages.
- bind_transceiver/resp - Supported for v3.4 and v5, and used for submitting messages and receiving delivery receipts.
- unbind/resp - ESME unbinding from SMSC and SMSC issues unbind_resp. SMSC unbinding from ESME when ESME unresponsive.
- enquire_link/resp - Will respond to enquire_link from ESME and will issue enquire_link to ESME every 45s of inactivity.
- Message Submission:
- submit_sm/resp - Will issue positive response with message_id of 8 characters in length for v3.3 and 64 characters for v3.4 and v5. Will issue error response (ESME_INVDSTADR/0x0000000B) if destination_address less than 8 characters in length.
- Message Delivery:
- deliver_sm/resp - Delivery receipts sent to ESME on receiver binds (SMPP v3.3, 3.4 and v5) and transceiver binds (SMPP v3.4 and v5 only). deliver_sm
short_message
field with textual receipt plus TLVs containing message ID (i.e.receipted_message_id
), status of message (i.e.message_state
with value of 2 forDELIVERED
) and error (i.e.network_error_code
with value of zero indicating no error)
- deliver_sm/resp - Delivery receipts sent to ESME on receiver binds (SMPP v3.3, 3.4 and v5) and transceiver binds (SMPP v3.4 and v5 only). deliver_sm
Versions
The SMSC Simulator service is available as either a shared service, Dedicated SMSC Simulator service, or as AWS EC2 instances using AWS Marketplace . SMPP credentials for the shared service can be purchased below. SMSC Simulator is part of Melrose Labs SMPP Testing services.
Shared SMSC Simulator
Shared simulator service enabling messages to be submitted by an SMPP account at up to 100 SMS/sec. Standard DLR format. Not customisable and no monitoring available. Supports MO and MT SMS.
SMPP over TLS support is available for SMS applications to connect securely (SMPP TLS port: 8775
).
Shared SMSC Simulator: SMPP Account Details
Server: | smscsim.melroselabs.com |
Port: | 2775 (non-TLS), 8775 (TLS) |
System ID: Password: | Provided when purchased - see pricing |
System type: | null |
Use the above SMPP account details in your application or our SMPP clients to connect to the SMSC simulators and submit messages from your application at up to 100 SMS/second. You can also use them with our SMPP Client. SMPP credentials must be purchased to use the SMSC Simulator service.
Inbound MO SMS Tool
Use the Inbound MO SMS Tool to send MO SMS to your application from the SMSC Simulator to simulate inbound SMS from a mobile.
SMPP clients
Dedicated SMSC Simulator
Dedicated SMSC Simulator instances are available for those with testing needs beyond the shared service. We offer Dedicated SMSC Simulator instances with support for 8000 SMS/sec, up to 50 SMPP binds, unlimited number of SMPP credentials, SMPP v5 flow control and congestion avoidance, and configurable DLRs (status, latency, format). The capabilities and configuration provided are dependent on your requirements.
SMPP over TLS, performance monitoring using Prometheus/Grafana, dedicated capacity and CDRs are supported. Instances are available at our London, Frankfurt, Stockholm, Cape Town, Hong Kong, Singapore, Sydney, North Virginia, Ohio and São Paulo locations.
Available in one month blocks at GBP 250 per month (no TLS) or GBP 300 per month (SMPP over TLS). Please contact us if you require a Dedicated SMSC Simulator instance.
Dedicated SMSC Simulator dashboard in Prometheus/Grafana
On-premises SMSC Simulator
The On-premises SMSC Simulator is available for those who need to perform frequent testing or are unable to use cloud testing services. We offer On-premises SMSC Simulator software with support for 8000 SMS/sec, up to 50 SMPP binds, unlimited number of SMPP credentials, SMPP v5 flow control and congestion avoidance, CDRs, and configurable DLRs (status, latency, format). The capabilities and configuration provided are dependent on your requirements.
As with the cloud-based Dedicated SMSC Simulator, performance monitoring using Prometheus/Grafana is supported (see above Grafana dashboard).
Melrose Labs will supply software binaries and technical support to fulfil your required configuration. You provide the host on which the binaries are installed. When ordering, select a RedHat (suitable for Centos, SuSE Linux, etc) or Debian (suitable for Ubuntu, Mint, etc) build.
Please contact us if you require an On-premises SMSC Simulator.
Compare SMSC Simulators
smpp.org | Shared SMSC Simulator | Dedicated SMSC Simulator | Dedicated SMSC Simulator (AWS Marketplace) |
SMSC Simulator source code |
On-premises SMSC Simulator software license | |
---|---|---|---|---|---|---|
Price | Free | 5 credentials @ USD 225 | GBP 250/month - non-TLS | USD 0.271/hour | 5-host license @ USD 1200 | USD 3300 (perpetual; 5 hosts; 5000 TPS) |
1 credential @ USD 75 | GBP 300/month - TLS | 1-host license @ USD 500 | USD 1000 (perpetual; 5 hosts; 1000 TPS) | |||
Credential validity | Indefinite | 90-days | Indefinite | Indefinite | Indefinite | |
Maximum SMS rate (TPS) | 10 SMS/sec | 100 SMS/sec | 8000 SMS/sec | 10000 SMS/sec | 1000 SMS/sec; 5000+ SMS/sec | |
Maximum binds | 10 per IP | 25 per IP | 250 per IP | 250 per IP | 250 per IP | |
Shared capacity | ||||||
SMPP over TLS | AWS NLB additional cost | |||||
Dedicated capacity | ||||||
CDRs | ||||||
Customisation | ||||||
Prometheus integration | ||||||
Support | Year 1: included Year 2+: USD 225/year |
|||||
smpp.org | Contact us | AWS Marketplace | Contact us |
SMSC Simulator source code
Instead of using the SMSC Simulator services, a license can be purchased for the SMSC Simulator source code. With the source code you can modify and build your own SMSC simulator that provides an SMPP interface. The source code is delivered electronically within 2-days of purchase. Please contact us for pricing.
Source code (Linux and Apple macOS) for the Melrose Labs SMSC Simulator as used in the services offered at https://melroselabs.com/smscsim. Purchase of a license allows use of resulting binaries on up to five (5) hosts. Support and updates for 3-months.
Pricing
Shared SMSC Simulator service
The SMSC Simulator public (shared) service supports up to 100 SMS/sec and is charged at:
- USD 225 for 5 SMPP credentials
- USD 75 for 1 SMPP credential
Credentials are valid for 90-days from issue.
Service snapshot
- Test SMS applications and infrastructure without SMS cost
- SMPP v3.3, v3.4 and v5
- MT and MO SMS testing (A2P and P2A)
- SMPP over TCP and SMPP over TLS 1.1+ supported
- SMPP test tool