Reference section - SMPP
submit_sm
SMPP submit_sm
SMPP (Short Message Peer-to-Peer) is an open, industry standard protocol designed to provide a flexible data communications interface for the transfer of short message data between External Short Message Entities (ESME), Routing Entities (RE) and Message Centres (MC). The SMPP protocol is a means by which applications can send SMS messages to mobile devices and receive SMS from mobile devices.
Tyr SMS Gateway
to
and worldwide4.2.1 submit_sm Operation
This operation is used by an ESME to submit a short message to the MC for onward transmission to a specified short message entity (SME).
4.2.1.1 submit_sm Syntax
Field Name | Size octets | Type | Description | Ref. |
---|---|---|---|---|
command_length | 4 | Integer | Set to overall length of PDU. | 4.7.4 |
command_id | 4 | Integer | 0x00000004 |
4.7.5 |
command_status | 4 | Integer | 0x00000000 |
4.7.6 |
sequence_number | 4 | Integer | Set to a Unique sequence number. The associated submit_sm_resp PDU will echo this sequence number. | 4.7.24 |
service_type | Var. max 6 | C-Octet String | The service_type parameter can be used to indicate the SMS Application service associated with the message. Specifying the service_type allows the ESME to avail of enhanced messaging services such as “replace by service_type” or to control the teleservice used on the air interface.
Set to NULL for default MC settings |
4.7.25 |
source_addr_ton | 1 | Integer | Type of Number for source address.
If not known, set to NULL (Unknown). |
4.7.1 |
source_addr_npi | 1 | Integer | Numbering Plan Indicator for source address.
If not known, set to NULL (Unknown). |
4.7.2 |
source_addr | Var. max 21 | C-Octet String | Address of SME which originated this message.
If not known, set to NULL (Unknown). |
4.7.29 |
dest_addr_ton | 1 | Integer | Type of Number for destination | 4.7.1 |
dest_addr_npi | 1 | Integer | Numbering Plan Indicator for destination | 4.7.2 |
destination_addr | Var. max 21 | C-Octet String | Destination address of this short message For mobile terminated messages, this is the directory number of the recipient MS | 4.7.8 |
esm_class | 1 | Integer | Indicates Message Mode and Message Type | 4.7.12 |
protocol_id | 1 | Integer | Protocol Identifier. Network specific field. | 4.7.20 |
priority_flag | 1 | Integer | Designates the priority level of the message | 4.7.19 |
schedule_delivery_time | 1 or 17 | C-Octet String | The short message is to be scheduled by the MC for delivery.
Set to NULL for immediate message delivery |
4.7.23.1 |
validity_period | 1 or 17 | C-Octet String | The validity period of this message.
Set to NULL to request the MC default validity period.
Note: this is superseded by the qos_time_to_live TLV if specified. Ref. 4.8.4.46 |
4.7.23.2 |
registered_delivery | 1 | Integer | Indicator to signify if a MC delivery receipt, manual ACK, delivery ACK or an intermediate notification is required. | 4.7.21 |
replace_if_present_flag | 1 | Integer | Flag indicating if the submitted message should replace an existing message. | 4.7.22 |
data_coding | 1 | Integer | Defines the encoding scheme of the short message user data. | 4.7.7 |
sm_default_msg_id | 1 | Integer | Indicates the short message to send from a list of pre- defined (‘canned’) short messages stored on the MC. If not using a MC canned message, set to NULL . |
4.7.27 |
sm_length | 1 | Integer | Length in octets of the short_message user data. | 4.7.28 |
short_message | Var. 0-255 | Octet String | Up to 255 octets of short message user data.
The exact physical limit for short_message size may vary according to the underlying network. Note: this field is superceded by the message_payload TLV if specified. Ref. 4.8.4.36 |
4.7.26 |
Message Submission TLVs | Var. | TLV | 4.2.4 |
4.2.1.2 submit_sm_resp Syntax
Field Name | Size octets | Type | Description | Ref. |
---|---|---|---|---|
command_length | 4 | Integer | Set to overall length of PDU. | 4.7.4 |
command_id | 4 | Integer | 0x80000004 |
4.7.5 |
command_status | 4 | Integer | Indicates outcome of submit_sm request. | 4.7.6 |
sequence_number | 4 | Integer | Set to sequence number of original submit_sm PDU. | 4.7.24 |
message_id | Var. max 65 | C-Octet String | This field contains the MC message ID of the submitted message. It may be used at a later stage to query the status of a message, cancel or replace the message. | 4.7.14 |
Message Submission Response TLVs | Var. | TLV | 4.2.5 |
SMPP Tools and Services
Services from Melrose Labs (e.g. Tyr SMS Gateway and SMPP SMS Gateway ) support SMPP v5 and the earlier versions, v3.3 and v3.4.
SMSC Simulator
Looking to test your SMS application or SMS-enabled application before connecting to a live SMS gateway or SMSC? SMSC Simulator enables you to test using SMPP v3.3, v3.4 and v5.
Read more about SMSC Simulator >
SMPP Clients
Send and receive SMS using an SMPP account and browser-based SMPP client.
- SMPP Client * - send/receive SMS and perform other SMPP operations
- SMPP Sender * - basic send SMS client
- SMPP Multi-Sender * - send SMS to multiple numbers from a CSV or spreadsheet
- SMPP Chat * - one or more two-way conversations using SMS and SMPP
- Message Broadcast - text messaging portal for use with any SMPP-capable messaging provider
* SMPP session between web browser and provider.
SMS Code Bench
SMS messaging code sample and development playground. Collection of editable and runnable code samples in a variety of languages for different SMS interactions.
SMS Code Bench >
Send SMS programmatically with SMPP
Send SMS programmatically with SMPP using Python, Java, Go, Perl, C++, C#, Node.js, Ruby and PHP.
SMPP Load Test
Perform an SMS load test using SMPP from your web browser and view the results in realtime. SMPP Load Test tool submits SMS messages using SMPP at the specified rate. Messages are sent to one or more mobile numbers in a range from a single source address or range of source addresses.
Use the online SMPP Load Test tool >
SMPP Analyser
The SMPP Analyser acts as an SMPP proxy, with the client application binding to the service and the service onward binding to the SMSC or SMS Gateway. Packet captures can be viewed in your browser or exported into Wireshark.
Use the online SMPP Analyser >
Message Hub
Message routing between applications (uses SMPP protocol). For use in IoT, chat applications, asyncronous notification in web applications, and other applications.
Message Hub documentation >