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 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 >