Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The list of alphabet codes are specified in the SMPP specification v3.4, section 5.2.19.  One notable limitation of the SMPP specification is that there is no alphabet code for explicitly requesting use of the GSM 3.38 (7 bit) character set.  Choosing the value 0 for the alphabet selects the SMSC default alphabet, this usually means GSM 3.38 but it is not guaranteed.  The SMPP gateway Nexmo actually allows the default to be mapped to any other character set with a control panel option. It is suggested that users check with their SMSC operator to confirm exactly which character set is being used as the default.

Message splitting and throttling

After transforming a message body from a String to a byte array, the Camel component is also responsible for splitting the message into parts (within the 140 byte SMS size limit) before passing it to JSMPP.  This is completed automatically.

If the GSM 3.38 alphabet is used, the component will pack up to 160 characters into the 140 byte message body.  If an 8 bit character set is used (e.g. ISO-8859-1 for western Europe) then 140 characters will be allowed within the 140 byte message body.  If 16 bit UCS-2 encoding is used then just 70 characters fit into each 140 byte message.

Some SMSC providers implement throttling rules.  Each part of a message that has been split may be counted separately by the provider's throttling mechanism.  The Camel Throttler component can be useful for throttling messages in the SMPP route before handing them to the SMSC.

URI format

Code Block
smpp://[username@]hostname[:port][?options]
smpps://[username@]hostname[:port][?options]

...