Meaning of "data_coding" field in SMPP
Asked Answered
C

3

7

What is the meaning of "data_coding" field in the SMPP protocol?

I searched for this but couldn't find any helpful resource.

Cockatoo answered 16/8, 2012 at 10:17 Comment(1)
As a side note: the number one source of information in such cases is the specification: SMPP Protocol Specification v3.4 and SMPP Protocol Specification v5.0Henequen
L
23

In short, datacoding contains the information on how the text in an smpp SubmitSM (i.e. a typical SMS message) message is encoded. The SubmitSM packet contains a binary encoded body, and the dataCoding is how the text is stored in this body.

The most important values are:

  • 00000000 (0) - usually GSM7 (the default 7 bit encoding for messages, with a few characters that are encoded as two bytes), but technically could be something else
  • 00000011 (3) for standard ISO-8859-1
  • 00001000 (8) for the universal character set -- de facto UTF-16

Other possible values (rarely used):

  • 00000001 - IA5_CCITT_T_50_ASCII_ANSI_X3_4
  • 00000010 - OCTET_UNSPECIFIED_8BIT_BINARY_1
  • 00000100 - OCTET_UNSPECIFIED_8BIT_BINARY_2
  • 00000101 - JIS_X_02081990
  • 00000110 - CYRLLIC_ISO88595
  • 00000111 - LATIN_HEBREW_ISO88598
  • 00001001 - PICTOGRAM_ENCODING
  • 00001010 - ISO2022JP_MUSIC_CODES
  • 00001101 - EXTENDED_KANJI_JISX_02121990
  • 00001110 - KS_C_5601

And two reserved for special uses:

  • 00001011 - RESERVED #1
  • 00001100 - RESERVED #2

In short, if your binary body is unicode (UTF-16) you will set dataCoding to 8. If your message is stored as GSM7 then it will (usually) be 0.

Lexical answered 16/8, 2012 at 12:11 Comment(3)
Actually data coding 0x00 in SMPP means 'SMSC Default Alphabet' which is usually GSM7, but technically could be something elseFoliage
Is there any article or any other reference for that ?Cockatoo
@PrasadWeera not an easy read, but my knowledge comes from scribd.com/doc/64970163/SMPP-v3-4-Issue1-2 (SMPP specification).Lexical
F
0

It means how text is converted into bytes, since SMPP is a binary protocol but applications typically deal with text strings. The first hit on google for 'smpp data coding' explains it well http://sourceforge.net/apps/trac/smstools/raw-attachment/wiki/MiscWikiFiles/smppv34_gsmumts_ig_v10.pdf in section 2.2.2.

Foliage answered 16/8, 2012 at 10:23 Comment(4)
Then what is the difference between encoding(like using UTF-8) and data coding ?Cockatoo
Data coding means the same as encoding.Foliage
I'm using smpp Connector with an additional parameter for passing the data coding. When I asked about that, I was told that it represents if the content is binary or text or flash... Can you please explain that ?Cockatoo
I read that post but still got the issue. here in this post link, they are talking about a data coding. That's what I don't get.Cockatoo
S
0

This should definitely help: ETSI GSM 03.38 Specification

Scots answered 16/8, 2012 at 19:56 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.