`
javalurker
  • 浏览: 22591 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

PDU编码

    博客分类:
  • java
阅读更多
PDU编码规则

  目前,发送短消息常用Text和PDU(Protocol Data Unit,协议数据单元)模式。使用Text模式收发短信代码简单,实现起来十分容易,但最大的缺点是不能收发中文短信;而PDU模式不仅支持中文短信,也能发送英文短信。PDU模式收发短信可以使用3种编码:7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASCII字符,8-bit编码通常用于发送数据消息,UCS2编码用于发送Unicode字符。一般的PDU编码由A B C D E F G H I J K L M十三项组成。

A:短信息中心地址长度,2位十六进制数(1字节)。
B:短信息中心号码类型,2位十六进制数。
C:短信息中心号码,B+C的长度将由A中的数据决定。
D:文件头字节,2位十六进制数。
E:信息类型,2位十六进制数。
F:被叫号码长度,2位十六进制数。
G:被叫号码类型,2位十六进制数,取值同B。
H:被叫号码,长度由F中的数据决定。
I:协议标识,2位十六进制数。
J:数据编码方案,2位十六进制数。
K:有效期,2位十六进制数。
L:用户数据长度,2位十六进制数。
M:用户数据,其长度由L中的数据决定。J中设定采用UCS2编码,这里是中英文的Unicode字符。

PDU编码协议简单说明

例1 发送:SMSC号码是+8613800250500,对方号码是13693092030,消息内容是“Hello!”。从手机发出的PDU串可以是
08 91 68 31 08 20 05 05 F0 11 00 0D 91 68 31 96 03 29 30 F0 00 00 00 06 C8 32 9B FD 0E 01
对照规范,具体分析:
分段 含义 说明
08 SMSC地址信息的长度 共8个八位字节(包括91)
91 SMSC地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 08 20 05 05 F0 SMSC地址 8613800250500,补‘F’凑成偶数个
11 基本参数(TP-MTI/VFP) 发送,TP-VP用相对格式
00 消息基准值(TP-MR) 0
0D 目标地址数字个数 共13个十进制数(不包括91和‘F’)
91 目标地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 96 03 29 30 F0 目标地址(TP-DA) 8613693092030,补‘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号码是+8613800250500,对方号码是13693092030,消息内容是“你好!”。手机接收到的PDU串可以是
08 91 68 31 08 20 05 05 F0 84 0D 91 68 31 96 03 29 30 F0 00 08 30 30 21 80 63 54 80 06 4F 60 59 7D 00 21
对照规范,具体分析:
分段 含义 说明
08 地址信息的长度 个八位字节(包括91)
91 SMSC地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 08 20 05 05 F0 SMSC地址 8613800250500,补‘F’凑成偶数个
84 基本参数(TP-MTI/MMS/RP) 接收,无更多消息,有回复地址
0D 回复地址数字个数 共13个十进制数(不包括91和‘F’)
91 回复地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 96 03 29 30 F0 回复地址(TP-RA) 8613693092030,补‘F’凑成偶数个
00 协议标识(TP-PID) 是普通GSM类型,点到点方式
08 用户信息编码方式(TP-DCS) UCS2编码
30 30 21 80 63 54 80 时间戳(TP-SCTS) 2003-3-12 08:36:45  +8时区
06 用户信息长度(TP-UDL) 实际长度6个字节
4F 60 59 7D 00 21 用户信息(TP-UD) “你好!”


若基本参数的最高位(TP-RP)为0,则没有回复地址的三个段。从Internet上发出的短消息常常是这种情形。
注意号码和时间的表示方法,不是按正常顺序顺着来的,而且要以‘F’将奇数补成偶数。


在PDU Mode中,可以采用三种编码方式来对发送的内容进行编码,它们是7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASCII字符,它将一串7-bit的字符(最高位为0)编码成8-bit的数据,每8个字符可“压缩”成7个;8-bit编码通常用于发送数据消息,比如图片和铃声等;而UCS2编码用于发送Unicode字符。PDU串的用户信息(TP-UD)段最大容量是140字节,所以在这三种编码方式下,可以发送的短消息的最大字符数分别是160、140和70。这里,将一个英文字母、一个汉字和一个数据字节都视为一个字符。


需要注意的是,PDU串的用户信息长度(TP-UDL),在各种编码方式下意义有所不同。7-bit编码时,指原始短消息的字符个数,而不是编码后的字节数。8-bit编码时,就是字节数。UCS2编码时,也是字节数,等于原始短消息的字符数的两倍。如果用户信息(TP-UD)中存在一个头(基本参数的TP-UDHI为1),在所有编码方式下,用户信息长度(TP-UDL)都等于头长度与编码后字节数之和。如果采用GSM 03.42所建议的压缩算法(TP-DCS的高3位为001),则该长度也是压缩编码后字节数或头长度与压缩编码后字节数之和。
分享到:
评论

相关推荐

    pdu编码pdu编码

    目前,发送短消息常用Text和PDU(Protocol Data Unit,协议数据单元)模式。使用Text模式收发短信代码简单,实现起来十分容易,但最大的缺点是不能收发中文短信...一般的PDU编码由A B C D E F G H I J K L M十三项组成。

    短信pdu编码解码_短信_短信PDU编码_pdu_

    短信PDU编码,直接填入接收者号码,及短信内容可生成PDU编码 短信PDU解码,可解析接收到的编码格式为PDU的短信内容

    PDU编码格式说明PDU编码格式说明

    PDU编码格式,内容较详细。 PDU编码格式,内容较详细。

    一个用C写很不错的GPRS的PDU编码程序

    // PDU编码,用于编制、发送短消息 // 输入: pSrc - 源PDU参数指针 // 输出: pDst - 目标PDU串指针 // 返回: 目标PDU串长度 int gsmEncodePdu(const SM_PARAM* pSrc, char* pDst) { int nLength; // 内部用的串长度...

    基于短信猫,采用PDU编码的短信收发java实现

    本程序实现了用java语言控制串口,采用pdu编码对数据进行编解码。最终分别实现了收发短信的功能。

    java串口通讯 短信测试 comm编程 PDU编码 进制转换 AT命令

    PDU编码规则.doc QHDQ-29DDDAD3A0.LOG SMSLib串口通信.doc 串口常用参数.doc 关于java使用javacomm20.doc 常见的进制转换方法.doc 浅谈Java串行端口技术协议.doc 短信 AT 命令参考.doc 短信PDU编码解码.doc 通过串口...

    彩信的交互过程,彩信的PDU,彩信的PDU编码

    彩信的交互过程 彩信的PDU 彩信的PDU编码

    TC35 PDU编码助手

    TC35发送PDU编码助手 输入短信中心号码,接收短信手机号,并使用附带的中文unicode编码器 一键点击即可生成TC35认可的PDU短信编码,方便快捷 文件中附带使用教程(.wmv) BY--Yuan坤 2012年5月

    SMS 短信 PDU编码规则

    短信PDU编码规则,讲的很详细,希望对你的项目有帮助

    SMS 的PDU编码(协议简介)

    简介:PDU编码协议简介 目前,发送短消息常用Text和PDU(Protocol Data Unit,协议数据单元)模式。使用Text模式收发短信代码简单,实现起来十分容易,但最大的缺点是不能收发中文短信;而PDU模式不仅支持中文短信,也...

    PDU编码规则

    基于GPRS的发送中文的PDU编码规则,在PDU模式下进行编码或解码的必备手册!

    中英文手机短信PDU编码(UCS2)解码(UCS2,7-Bit) C# 程序

    实例32 <br>稿件名称:中英文手机短信PDU编码(UCS2)解码(UCS2,7-Bit) C# 程序 <br>稿件作者:李仓海 <br>程序名称:TC35iSMS <br>运行环境:TC35iSMS <br>注意事项:

    短信PDU编码解码类

    短信PDU编码解码类,压缩包内有两个类,一个用于将中文短信编码为PDU编码,一个用户将PDU编码的短信解析为中文格式的类。类里面有详细注释,大家一看就明白。如果好用记得评高分。呵呵

    PDU编码工具用于短信编码

    PDU编码工具用于短信编码

    有关PDU编码.rar_PDU编码_pdu_短消息

    这是篇关于现在非常热门的无限模块的收集短消息中中文显示时用到的PDU编码的文章,非常详细

    TC35 PDU编码助手 York

    具体助手的界面与代码请看文库 http://wenku.baidu.com/view/f719d41ca8114431b90dd819.html?st=3

    PDU.rar_PDU编码_pdu

    实现了PDU编码的功能,对短信进行编码,读取短信中心号码。

    sms的pdu编码规则

    sms的pdu编码规则

    短信收发中的PDU编码分析

    短信收发中的 PDU 编码分析 孙 英 (内蒙古科技大学 ,内蒙古 包头 014010)  摘 要:本文通过分析 GSM 数字移动通信技术中的 SMS规范 ,研究并探讨了文字信息在传输中的 编码格式 ,详细分析了 PDU 格式的编码规则 ,为...

    PDU编码解析(软件)

    主要提供2个函数,一个是发送短信时候对短信打包,一个接收短信时候解析短信

Global site tag (gtag.js) - Google Analytics