How do I send concatenated messages via SMPP?
Objective
Sending concatenated messages via SMPP.
Applies To
- SMPP
- SMS
- Concatenated Messages
Procedure
- On SMPP:submit_sm the UDHI (User Data Header Indicator) in the esm_class parameter: esm_class = 0x40 x1xxxxxx is set in the esm_class field to indicate UDHI is true.
- The concatenation UDH values are inserted at the start of the message body.
Example
Message 1 (UDH+153 chars length message)
esm_class = 0x40 x1xxxxxx
short_message = 0x05 0x00 0x03 0x05 0x02 0x01 Barcelona are to appeal against Uefa's proposal to ban Andres Iniesta for an additional Champions League match for allegedly provoking a yellow card. The
Message 2 (UDH+rest of the message)
esm_class = 0x40 x1xxxxxx
short_message = 0x05 0x00 0x03 0x05 0x02 0x02 26-year-old Spain midfielder was booked in the quarter-final against Shakhtar Donetsk, meaning he missed the return leg but would then be available.
Concatenation UDH Structure
Byte | Description |
05 | Length of UDH (5 bytes) |
00 | Indicator for concatenated message |
03 | Subheader length (3 bytes) |
XX | Message identification - Can be any hexadecimal number, but needs to match the UDH Reference Number of all concatenated SMS |
YY | Number of pieces of the concatenated message |
ZZ | Sequence number (used by the mobile to concatenate the split messages) |
Maximum Characters Per Concatenated Message
The maximum number of characters per concatenated message depends on the encoding.
- 153 characters for 7-bit encoding (e.g., Latin-1/9 and GSM8)
- 134 characters for 8-bit encoding (Binary)
- 67 characters for 16-bit encoding (Unicode)
Comments
5 comments
what should be the class for normal messages?
how you can set esm_class = 0x40 in using kannel, is it same as mclass directive or?
Great post!
What is the maximum character length for a concatenated SMS ?
It's 153 chars for text ( gsm ) , 67 chars for unicode , 134 for binary , when using 8-bit UDH concatenation.
Please sign in to leave a comment.