分类: 系统运维
2011-04-02 17:24:41
1.4. 编码示例
用手机写一条短信息,发送手机号码为 13605696031 ,信息内容为“ Hello World! ”。通过执行 AT + CMGL=2 可以读出此条信息。
AT + CMGL=2 { 读未发短信息 }
+ CMGL: 1,2,,24 {1 表示信息个数, 2 表示未发信息, 24 表示信息总容量 }
08 91
OK
下面分析这条信息:
08 |
短信息中心地址长度。(短信息中心号码类型 + 短信息中心号码长度 /2 的十六进制表示) |
91 |
短信息中心号码类型, 91 是 TON/NPI 。 TON/NPI 遵守 International/E.164 标准,指在号码前需加‘+’号 ; 此外还可有其他数值,但 91 最常用。 |
|
短信息中心号码,是所使用的服务中心地址。由于位置上略有处理,实际号码应为: 8613805515500( 字母 F 意指长度减 1), 这是作者所在地 GSM 短信息中心的号码。 ( 号码处理方法为 , 如果为 +86 开始 , 将 + 号去掉 , 然后判断是否为偶数 , 不是在末尾补 F, 然后将奇数位和偶数位互换 ) |
11 |
文件头字节 (header byte, 是一种 bitmask) 。这里 11 指正常地发送短信息。 |
00 |
信息参考号。( TP-MR ) |
0B |
被叫号码长度。被叫号码长度的十六进制表示。 |
81 |
被叫号码类型。 |
|
被叫号码,也经过了移位处理,实际号码为 13605696031 。 |
00 |
协议标识 (TP-PID), 是普通 GSM 类型,点到点方式 |
00 |
用户信息编码方式 (TP-DCS) , 7-bit 编码( 08 : UCS2 编码) |
FF |
有效期 (TP-VP), 短信的有效时间 |
0B |
短信息长度 |
E8329BFD06DDDF723619 |
短信息内容“ Hello World! ”。 |
读取以上发送出来的短信,可以收到如下信息 , 接受到来自 13600554267 的“欢迎“ PDU 串为: 0891683108503705F0040D91683106504562F7000830507001021500046B228FCE 。而接受到的“欢迎“ PDU 串为:
0891683108503705F0040D91683106504562F70000305070010201000AE8329BFD4697D9EC37 。对以上的 PDU 串分析如下表:
段 |
含义 |
说明 |
08 |
SMSC 地址信息的长度 |
共 8 个八位字节 ( 包括 91) |
91 |
SMSC 地址格式 (TON/NPI) |
用国际格式号码 ( 在前面加 ‘+’) |
|
SMSC 地址 |
8613800573500 ,补 ‘F’ 凑成偶数个 |
04 |
基本参数 (TP-MTI/MMS/RP) |
接收,无更多消息,有回复地址,如果为 00 ,就没有以下关于回复地址的三个段 |
0D |
回复地址数字个数 |
共 13 个十进制数 ( 不包括 91 和 ‘F’) |
91 |
回复地址格式 (TON/NPI) |
用国际格式号码 ( 在前面加 ‘+’) |
|
回复地址 (TP-RA) |
8613600554267 ,补 ‘F’ 凑成偶数个 |
00 |
协议标识 (TP-PID) |
是普通 GSM 类型,点到点方式 |
08 |
用户信息编码方式 (TP-DCS) |
UCS2 编码(即中文) |
30507001021500 |
时间戳 (TP-SCTS) |
2003-3-12 08:36:45 +8 时区 |
04 |
用户信息长度 (TP-UDL) |
实际长度 4 个字节 |
6B228FCE |
用户信息 (TP-UD) |
“ 欢迎 !” |
所谓超长短信不同的地方无非就是数据报文需要有个拼接的过程,这个详细可以参考 gsm03.40 的
第一条
0891683108100005F0 |
SMSC 地址 |
44 |
有协议头标志 |
0D91683118216553F6 |
回复地址 |
0008 |
TP-PID , TP-DCS |
60403011142423 |
时间戳 (TP-SCTS) |
|
用户信息长度 (TP-UDL) |
05 |
协议头的长度 |
00 |
标志这是个分拆短信 |
03 |
分拆数据元素的长度 |
39 |
唯一标志(用于把两条短信合并) |
02 |
一共两条 |
01 |
这是第一条 |
4E F 4E0D597D597D597D7684 |
数据内容 |
第二条
0891683108100005F0 |
SMSC 地址 |
44 |
有协议头标志 |
0D91683118216553F6 |
回复地址 |
0008 |
TP-PID , TP-DCS |
60403011145423 |
时间戳 (TP-SCTS) |
26 |
用户信息长度 (TP-UDL) |
05 |
协议头的长度 |
00 |
标志这是个分拆短信 |
03 |
分拆数据元素的长度 |
39 |
唯一标志(用于把两条短信合并) |
02 |
一共两条 |
02 |
这是第二条 |
81EA4ECE524D |
数据 |