Reference section - SMPP
Message Submission TLVs
SMPP Message Submission TLVs
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.
Message Submission Request TLVs
This section lists TLVs that may be used for message submission operations.
TLV Name | Description | Ref. |
alert_on_msg_delivery | Request an MS alert signal be invoked on message delivery. | 4.8.4.2 |
billing_identification | Billing information passed from ESME to MC. | 4.8.4.3 |
callback_num | A call-back number associated with the short message. This parameter can be included a number of times for multiple call-back addresses. | 4.8.4.15 |
callback_num_atag | Associates a displayable alphanumeric tag with the call-back number. If this parameter is present and there are multiple instances of the callback_num parameter then this parameter must occur an equal number of instances and the order of occurrence determines the particular callback_num_atag which corresponds to a particular callback_num. | 4.8.4.16 |
callback_num_pres_ind | Defines the call-back number presentation and screening. If this parameter is present and there are multiple instances of the callback_num parameter then this parameter must occur an equal number of instances and the order of occurrence determines the particular callback_num_pres_ind which corresponds to a particular callback_num. | 4.8.4.17 |
dest_addr_np_country | E.164 information to the operator country code. | 4.8.4.20 |
dest_addr_np_information | Number portability information for the destination address. | 4.8.4.21 |
dest_addr_np_resolution | Number portability query indicator. | 4.8.4.22 |
dest_addr_subunit | The subcomponent in the destination device for which the user data is intended. | 4.8.4.23 |
dest_bearer_type | The correct bearer type for delivering the user data to the destination. | 4.8.4.24 |
dest_network_id | Identification of destination network. | 4.8.4.25 |
dest_network_type | The correct network for the destination device. | 4.8.4.26 |
dest_node_id | Identification of destination node. | 4.8.4.27 |
dest_subaddress | The sub-address of the message destination. | 4.8.4.28 |
dest_telematics_id | The telematics identifier associated with the destination. | 4.8.4.29 |
dest_port | Indicates the application port number associated with the destination address of the message. This parameter should be present for WAP applications. | 4.8.4.30 |
display_time | Provides the receiving MS with a display time associated with the message. | 4.8.4.31 |
its_reply_type | The MS user’s reply method to an SMS delivery message received from the network, is indicated and controlled by this parameter. | 4.8.4.33 |
its_session_info | Session control information for Interactive Teleservice. | 4.8.4.34 |
language_indicator | Indicates the language of an alphanumeric text message. | 4.8.4.35 |
message_payload | Contains the extended short message user data. Up to 64K octets can be transmitted. Note: The short message data should be inserted in either the short_message or message_payload fields. Both fields should not be used simultaneously. The sm_length field should be set to zero if using the message_payload parameter. Note: In the case of data_sm, the message_payload TLV is the only means of specifying text. | 4.8.4.36 |
more_messages_to_send | Indicates that there are more messages to follow for the destination SME. | 4.8.4.38 |
ms_msg_wait_facilities | This parameter controls the indication and specifies the message type (of the message associated with the MWI) at the mobile station. | 4.8.4.40 |
ms_validity | Indicates validity information for this message to the recipient MS. | 4.8.4.41 |
number_of_messages | Indicates the number of messages stored in a mail box. | 4.8.4.43 |
payload_type | Defines the type of payload (e.g. WDP, WCMP, etc.). | 4.8.4.44 |
privacy_indicator | Indicates the level of privacy associated with the message. | 4.8.4.45 |
qos_time_to_live | Time to live as a relative time in seconds from submission. | 4.8.4.48 |
sar_msg_ref_num | The reference number for a particular concatenated short message. | 4.8.4.46 |
sar_segment_seqnum | Indicates the sequence number of a particular short message fragment within the concatenated short message. | 4.8.4.49 |
sar_total_segments | Indicates the total number of short message segments within the concatenated short message. | 4.8.4.50 |
set_dpf | Indicator for setting Delivery Pending Flag on delivery failure. | 4.8.4.52 |
sms_signal | Indicates the alerting mechanism when the message is received by an MS. | 4.8.4.53 |
source_addr_subunit | The subcomponent in the destination device, which created the user data. | 4.8.4.54 |
source_bearer_type | The correct bearer type for delivering the user data to the destination. | 4.8.4.55 |
source_network_id | Identification of source network. | 4.8.4.56 |
source_network_type | The correct network associated with the originating device. | 4.8.4.57 |
source_node_id | Identification of source node. | 4.8.4.58 |
source_port | Indicates the application port number associated with the source address of the message. This parameter should be present for WAP applications. | 4.8.4.59 |
source_subaddress | The sub-address of the message originator. | 4.8.4.60 |
source_telematics_id | The telematics identifier associated with the source. | 4.8.4.61 |
user_message_reference | ESME assigned message reference number. | 4.8.4.62 |
user_response_code | A user response code. The actual response codes are implementation specific. | 4.8.4.63 |
ussd_service_op | This parameter is used to identify the required USSD Service type when interfacing to a USSD system. | 4.8.4.64 |
Message Submission Response TLVs
The following table contains TLVs that can be returned in a submit_sm_resp or data_sm_resp PDU. All TLVs are relevant to transaction message mode only (ref. 4.2.10.4).
TLV Name | Description | Ref. |
additional_status_info_text | ASCII text giving a description of the meaning of the response. | 4.8.4.1 |
delivery_failure_reason | Include to indicate reason for delivery failure. | 4.8.4.19 |
dpf_result | Indicates whether the Delivery Pending Flag was set. | 4.8.4.32 |
network_error_code | Error code specific to a wireless network. | 4.8.4.42 |
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.