How to configure the SMPP Service Type field
The service_type
field in SMPP (Short Message Peer-to-Peer) protocol defines the kind of messaging service being requested when submitting a message. This field appears in several SMPP PDUs such as submit_sm
, data_sm
, and submit_multi
.
Field Details
- Field Name: service_type
- Data Type: C-Octet String (null-terminated ASCII)
- Max Length: 6 characters (including null terminator)
- Purpose: To categorize the message being sent (e.g., voicemail, WAP push, etc.)
Common Values
While service_type
is optional and often left blank (null string), it can be used to request specific message handling. Here are common values:
Value | Description |
---|---|
null or "" | Default SMS (no special treatment) |
"CMT" | Cellular Messaging |
"CPT" | Cellular Paging |
"VMN" | Voice Mail Notification |
"VMA" | Voice Mail Alerting |
"WAP" | Wireless Application Protocol message |
"USSD" | USSD message |
Custom Values
Some operators or SMSCs may support custom values like "OTP"
or "PROMO"
to trigger special routing, filtering, or billing rules.
Example Usage in a PDU
Below is an SMPP submit_sm
PDU with service_type = "CMT"
:
0000003F // Command Length (63 bytes) 00000004 // Command ID (submit_sm) 00000000 // Command Status 00000001 // Sequence Number 434D54 // service_type: "CMT" in ASCII 00 // Null terminator 01 // source_addr_ton: International 01 // source_addr_npi: ISDN 31323334 // source_addr: "1234" 00 01 // dest_addr_ton 01 // dest_addr_npi 35363738 // destination_addr: "5678" 00 00 // esm_class 00 // protocol_id 00 // priority_flag 00 // schedule_delivery_time 00 // validity_period 00 // registered_delivery 00 // replace_if_present_flag 00 // data_coding 00 // sm_default_msg_id 05 // sm_length: 5 48656C6C6F // short_message: "Hello"
When to Use service_type
- When instructed by your SMS provider for routing purposes.
- To categorize messages (e.g., alerts, promotions, 2FA).
- To activate services like voicemail notifications or WAP Push.
- To trigger special billing or delivery logic.
Important Notes
- Leaving
service_type
blank is standard unless otherwise required. - Some SMSCs may ignore or override this field.
- Incorrect values may lead to message rejections or delivery failures.
Conclusion
The service_type
field in SMPP is a flexible but often optional way to classify SMS messages. While many systems use the default empty value, certain applications—especially those requiring special treatment by the SMSC—can benefit from explicitly setting this field.
References
- SMPP 3.4 Specification (Section 4.7)
- Vendor-specific SMPP documentation (e.g., Twilio, Infobip, Syniverse)
More information
- Kako konfigurirati polje SMPP vrsta usluge
- Kako konfigurirati polja SMPP telefonskih brojeva
- Kako konfigurirati polje SMPP ESM klasa
- Kako konfigurirati polje SMPP PID
- Kako konfigurirati polje SMPP prioritet
- Kako konfigurirati polje SMPP planirano vrijeme
- Kako konfigurirati polje SMPP rok valjanosti
- Kako konfigurirati polje SMPP registrirana isporuka
- Kako konfigurirati polje SMPP zamijeni ako postoji
- Kako konfigurirati polje sm_default_msg_id
- Kako konfigurirati polje SMPP DCS
- Kako izračunati polje SMPP SM duljina
- Kako staviti podatke u SMPP SM polje