1. 短消息解码
在收发短信方面,按时间产生先后,共产生了三种模式:Block Mode、基于
AT 指令的 Text Mode、基于 AT 指令的 PDU Modem。 Text Mode 是纯文本方式,
可使用不同的字符集,主要用于欧美地区。从技术上说也可用于发送中文短消息,
但国内手机基本上不支持。PDU Mode 被所有手机支持,可以使用任何字符集,
这也是手机默认的编码方式。PDU 模式下短信息正文经过十六进制编码后被传
送。目前,PDU 已取代 Block Mode,因此我们主要说明 PDU 模式的接收。
例如:
SMSC 号码是+8613800591500,对方号码是 13950410716,消息内容是“你
好!”。
手机接收到的 PDU 串是: 08 91 68 31 08 50 19 05 F0 84 0D 91 68 31 59
40 01 17 F6 00 08 30 10 10 11 62 42 23 06 4F 60 59 7D 00 21
分段分析如下:
分段 含义 说明
08 地址信息的长度 个八位字节(包括 91)
91
SMSC 地址格式
(TON/NPI)
用国际格式号码(在前面
加‘+’)
68 31 08 50 19 05 F0 SMSC 地址
8613800591500,补‘F’
凑成偶数个
84
基本参数
(TP-MTI/MMS/RP)
接收,无更多消息,有回
复地址
0D 回复地址数字个数
共 13 个十进制数(不包
括 91 和‘F’)
91
回复地址格式
(TON/NPI)
用国际格式号码(在前面
加‘+’)
68 31 59 40 01 17 F6 回复地址(TP-RA)
8613950410716,补‘F’
凑成偶数个
00 协议标识(TP-PID)
是普通 GSM 类型,点到点
方式
08
用户信息编码方式
(TP-DCS)
UCS2 编码
30 10 10 11 62 42 23 时间戳(TP-SCTS)
2003-01-01 11:26:24 23
时区
06 用户信息长度(TP-UDL) 实际长度 6 个字节
4F 60 59 7D 00 21 用户信息(TP-UD) “你好!”