National language shift tables over SMPP

Along with the standard features of SMPP 3.4, we also provide the national language shift functionality which enables you to use special characters from language-specific character sets. National Language Shift Tables are character sets that are customized for specific characters according to the language, with language support found in the table below.

Using extended character sets you can send messages with language-specific special characters at the same price as standard GSM-7 messages. For example, Turkish locking shift characters like ğ, Ğ, € are then at the cost of a single GSM-7 character - there is no need for Unicode messages that would limit the total message amount down to 70 characters. Using the UDH we only reduce the message to 155 characters (since UDH takes up additional space in the message payload).

Single Shift Example UDH

Language selection is possible by using language identifiers within the UDH part of the message payload. The IEI (Information-Element-Identifier) specifies whether the single or locking shift will be used.

UDH Length IEI (Information Element Identifier) IE Length Selected shift
03 24 01 01
Remaining UDH length in bytes National Language Single Shift   Single Shift - Turkish

Locking Shift Example UDH

UDH Length IEI (Information Element Identifier) IE Length Selected shift
03 25 01 02
Remaining UDH length in bytes National Language Locking Shift   Locking shift - Spanish

*ESM class parameter in this case must be defined to 64.

*Datacoding values that can be used are 0 or 1.

When single shift of a particular character set is used, each extended letter (not basic one) will take up double the space, because an invisible space character has to be used in order to access the table.

For example, when using Spanish NLI Ú is only accessible in the single shift character set extension, which requires the use of an escape character. With each new single shift character introduced, the message length reduces by 1 respectively. This means in case there are 3 single shift characters, the default limit of 155 characters per NLI message is reduced to 152.

Example: 1B55 (1B is the escape character, 55 is Ú that is used from the extended character set).

UDH Identifier Reference

Below is a UDH reference for each language, and a detailed character set reference for GSM 7 can be found here.

Language Single Shift Locking Shift UDH Identifier
Reserved Basic Basic 0x00
Turkish Turkish Turkish 0x01
Spanish Basic Spanish 0x02
Portuguese Portuguese Portuguese 0x03
Bengali Bengali Bengali 0x04
Gujarati Gujarati Gujarati 0x05
Hindi Hindi Hindi 0x06
Kannada Kannada Kannada 0x07
Malayalam Malayalam Malayalam 0x08
Oriya Oriya Oriya 0x09
Punjabi Punjabi Punjabi 0x0A
Tamil Tamil Tamil 0x0B
Telugu Telugu Telugu 0x0C
Urdu Urdu Urdu 0x0D