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 worldwide

4.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_npi1IntegerNumbering Plan Indicator for destination4.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_class1IntegerIndicates Message Mode and Message Type4.7.12
protocol_id1IntegerProtocol Identifier. Network specific field.4.7.20
priority_flag1IntegerDesignates the priority level of the message4.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_coding1IntegerDefines 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_length1IntegerLength 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 Platforms, Tools and Services

SMPP SMS Gateway

Global cloud SMS gateway platform with advanced routing, reliability and capacity.

SMPP Load Balancer

SMPP load balancer for high availability, reliability and capacity.

SMPP Router

High-performance SMPP SMS routing engine.

SMPP-HTTP Bridge

Interoperate between SMPP and HTTP SMS infrastructures.

SMPP Testing

Test application or platform performance and SMPP conformance (e.g. rate of SMS processing, submit latency, etc).

SMSC Simulator

Test your application's ability to send and receive SMS when using SMPP.

SMS Load Test

Load test an SMS platform with 100s or 1000s of SMS/sec using one or more SMPP binds.

Tyr SMS Gateway

Use SMPP to send and receive SMS messages worldwide with over 1000 mobile networks.

SMPP Clients

Range of SMPP clients for use with SMS gateways and SMSCs.

SMPP Analyser

Analyse SMPP packets as they pass between the client application 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.

Other

Find out more...

Please provide your name.
Please provide a valid company name.
Please type your message.
Please provide a valid email address.