SMPP中"data_coding"字段的含义

Pra*_*era 5 sms encoding decoding smpp

SMPP协议中"data_coding"字段的含义是什么?

我搜索了这个,但找不到任何有用的资源.

puz*_*uzz 18

简而言之,数据编码包含有关如何编码smpp SubmitSM(即典型的SMS消息)消息中的文本的信息.SubmitSM数据包包含二进制编码的主体,dataCoding是文本在此主体中的存储方式.

最重要的价值观是:

  • 00000000(0) - 通常是GSM7(消息的默认7位编码,有几个字符编码为两个字节),但在技术上可能是其他的
  • 00000011(3)用于标准ISO-8859-1
  • 00001000(8)为通用字符集 - 事实上的UTF-16

其他可能的值(很少使用):

  • 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

还有两个用于特殊用途:

  • 00001011 - 保留#1
  • 00001100 - 保留#2

简而言之,如果您的二进制体是unicode(UTF-16),您将dataCoding设置为8.如果您的消息存储为GSM7,那么它(通常)将为0.

  • 实际上SMPP中的数据编码0x00意味着'SMSC默认字母',*通常是*GSM7,但技术上可能是其他东西 (3认同)