VB收发PDU格式数据分析及代码(一)
PDU串是一串ASCII码,由'0' - '9'、'A' - 'F'组成,它们是8位字节的十六进制数,或者是BCD码的十进制数。PDU不仅包含消息本身,还包含其他众多的信息,如服务中心号码、源号码、目标号码、编码方式、服务时间等等。下面就接收和发送举例,分析PDU串的结构和编排方式
1、发送:
其中SMSC=+8613800755500,对方号码=13725585184,消息内容="Hello!",经过转换成PDU格式从手机发出的内容为:08 91 68 31 08 70 55 05 F0 11 00 0D 91 68 31 27 55 58 81 F4 00 00 00 06 C8 32 9B FD 0E 01。具体分析见下表
|
分段 |
含义 |
说明 |
|
08 |
SMSC地址信息的长度 |
共8个八位字节(包括91) |
|
91 |
SMSC地址格式(TON/NPI) |
用国际格式号码(在前面加‘+’) |
|
68 31 08 70 55 05 F0 |
SMSC地址 |
8613800755500,补‘F’凑成偶数个 |
|
11 |
基本参数(TP-MTI/VFP) |
发送,TP-VP用相对格式 |
|
00 |
消息基准值(TP-MR) |
0 |
|
0D |
目标地址数字个数 |
共13个十进制数(不包括91和‘F’) |
|
91 |
目标地址格式(TON/NPI) |
用国际格式号码(在前面加‘+’) |
|
68 31 27 55 58 81 F4 |
目标地址(TP-DA) |
8613725585184,补‘F’凑成偶数个 |
|
00 |
协议标识(TP-PID) |
是普通GSM类型,点到点方式 |
|
00 |
用户信息编码方式(TP-DCS) |
7-bit编码 |
|
00 |
有效期(TP-VP) |
5分钟 |
|
06 |
用户信息长度(TP-UDL) |
实际长度6个字节 |
|
C8 32 9B FD 0E 01 |
用户信息(TP-UD) |
“Hello!” |
2、接收
其中SMSC=+8613800755500,对方号码=13725585184,消息内容="你好!",手机接收到的PDU串内容为:
08 91 68 31 08 70 55 05 F0 04 0D 91 68 31 27 55 58 81 F4 00 08 60 10 01 12 91 15 00 06 4F 60 59 7D 00 21。具体分析见下表“
|
分段 |
含义 |
说明 |
|
08 |
地址信息的长度 |
个八位字节(包括91) |
|
91 |
SMSC地址格式(TON/NPI) |
用国际格式号码(在前面加‘+’) |
|
68 31 08 70 55 05 F0 |
SMSC地址 |
8613800755500,补‘F’凑成偶数个 |
|
04 |
基本参数(TP-MTI/MMS/RP) |
接收,无更多消息,有回复地址 |
|
0D |
回复地址数字个数 |
共13个十进制数(不包括91和‘F’) |
|
91 |
回复地址格式(TON/NPI) |
用国际格式号码(在前面加‘+’) |
|
68 31 27 55 58 81 F4 |
回复地址(TP-RA) |
8613725585184,补‘F’凑成偶数个 |
|
00 |
协议标识(TP-PID) |
是普通GSM类型,点到点方式 |
|
08 |
用户信息编码方式(TP-DCS) |
UCS2编码 |
|
60 10 01 12 91 15 00 |
时间戳(TP-SCTS) |
06-01-10 21:19:51 +0时区 |
|
06 |
用户信息长度(TP-UDL) |
实际长度6个字节 |
|
4F 60 59 7D 00 21 |
用户信息(TP-UD) |
“你好!” |
注意“F”是用来凑成偶数的,如果已经是偶数则不需要,如一些特服号“07551860”
浙公网安备 33010602011771号