pdu解析之三

2024-03-30 20:48
文章标签 解析 之三 pdu

本文主要是介绍pdu解析之三,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

转载地址:http://blog.csdn.net/qgj1655/article/details/3523060

一般短信(短于140字节的 报文内容不是05 06的)

0891683108806105F0040D91683177081166F10008802150015114230C54CEFF0C53C865E0804A4E86

08—短信息中心地址长度。指91 68 31 08 80 61 05 F0的长度。

91—短信息中心号码类型。91是TON/NPI遵守International/E.164标准,指在号码前需加‘+’号;此外还有其它数值,但91最常用。

91—10010001

BIT No.

7

6

5

4

3

2

1

0

Name

1

数值类型

号码鉴别

数值类型(Type of Number):000—未知,001—国际,010—国内,111—留作扩展;

号码鉴别(Numbering plan identification):0000—未知,0001—ISDN/电话号码(E.164/E.163),1111—留作扩展;

683108806105F0—短信息中心号码。由于位置上略有处理,实际号码应为:8613800816050(字母F是指长度减1)。这需要根据不同的地域作相应的修改.

04—基本参数(TP-MTI/MMS/RP) 接收,无更多消息,有回复地址

0D—被叫号码长度。13+1 不包括(6)

91—被叫号码类型(同⑵)

683177081166F1—被叫号码,经过了位移处理,实际号码为“8613778011661”。

⑸、⑹、⑺通称目的地址(TP-Destination-Address)。

00—协议标识TP-PID(TP-Protocol-Identifier)(普通GSM 类型,点到点方式)

BIT No.

7

6

5

4

3

2

1

0

Bit No.7与Bit No.6: 00—如下面定义的分配Bit No.0—Bit No.5;01—参见GSM03.40协议标识完全定义;10—预留;11—为服务中心(SC)特殊用途分配Bit No.0—Bit No.5。

一般将这两位置为00。

Bit No.5:0—不使用远程网络,只是短消息设备之间的协议;1—使用远程网络。

Bit No.0—Bits No.4:00000—隐含;00001—电传;00010—group 3 telefax;00100—语音;00101—欧洲无线信息系统(ERMES);00110—国内系统;10001—任何基于X.400的公用信息处理系统;10010—Email。

08—数据编码方案TP-DCS(TP-Data-Coding-Scheme)

BIT No.

       7

6

5

4

3

2

1

0

Bit No.7与Bit No.6 :一般设置为00;Bit No.5:0—文本未压缩,1—文本用GSM标准压缩算法压缩;Bit No.4:0—表示Bit No.1、Bit No.0为保留位,不含信息类型信息,1—表示Bit No.1、Bit No.0含有信息类型信息;Bit No.3与Bit No.2:00—默认的字母表,01—8bit,10—USC2(16bit),11—预留;Bit No.1与Bit No.0:00—Class 0,01—Class 1,10—Class 2(SIM卡特定信息),11—Class 3。

⑽ 80215001511423 服务时间戳(TP-SCTS) 2008-12-05 10:15:41 +32时区

0C—用户数据长度TP-UDL(TP-User-Data-Length)12字节 6个汉字

用户数据TP-UD(TP-User-Data)

普通:54CEFF0C53C865E0804A4E86-----“哎,又无聊了”

长短信 

050003XXXXX

以下为内容头部分,分包部分(相当于WDP) 
05 -- 
内容头长度 00 -- 表示多包 03 -- 剩余头长度 
XX -- 
短信ID 
XX -- 
短信总条数 
XX -- 
第几条短信

彩信

0605040B8423F0A306246170706C69636174696F6E2F766E642E7761702E6D6D732D6D65737361676500B487AF848C8298504A31675A684A4D4C6C4F42008D9083687474703A2F2F3231382E3230312E342E3232362F504A31675A684A4D4C6C4F42008805810302A2EC891A802B383631333435323139363730332F545950453D504C4D4E008A808E024F3B

下面是TP-UD部分: 0605040B8423F0

Octet(s)

Description

06

UDHL (user data header length)

05

Information Element identifier:

Application port addressing 16 bit.

04

Information element length

0B84

Destination port

23F0

Originating port

A306246170706C69636174696F6E2F766E642E7761702E6D6D732D6D65737361676500B487AF84

Octet(s)

Description

A3

Transaction ID

06

PDU Type: Push

24

Length of Content type + Header

6170706C69636174696F6E2F766E642E7761702E6D6D732D6D65737361676500

Content type: (8 bit encoding of)
application/vnd.wap.mms-message

B4 87

Push Flag: 87

AF 84

X-Wap-Application-Id: 84

8C8298504A31675A684A4D4C6C4F42008D9083687474703A2F2F3231382E3230312E342E3232362F504A31675A684A4D4C6C4F42008805810302A2EC891A802B383631333435323139363730332F545950453D504C4D4E008A808E024F3B

Octet(s)

Description

8C 82

X-Mms-Message-Type: m-notification-ind

98 504A31675A684A4D4C6C4F4200

Transaction-ID: PJ1gZhJMLlOB

8D 90

MMS-Version: 1.0

83 687474703A2F2F3231382E3230312E342E

3232362F504A31675A684A4D4C6C4F4200

Content-Location:
http://218.201.4.226/PJ1gZhJMLlOB

88 05 81 0302A2EC

Expiry + Length + Relative-token + Delta-secs:

54.8 hour?

89 1A 80 2B383631333435323139363730332

F545950453D504C4D4E00

From + Length + Address-Present-token:
+8613452196703/TYPE=PLMN

8A 80

Msg-Class: Info

8E 024F

Msg-Size: 269

这篇关于pdu解析之三的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/862545

相关文章

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

Python利用ElementTree实现快速解析XML文件

《Python利用ElementTree实现快速解析XML文件》ElementTree是Python标准库的一部分,而且是Python标准库中用于解析和操作XML数据的模块,下面小编就来和大家详细讲讲... 目录一、XML文件解析到底有多重要二、ElementTree快速入门1. 加载XML的两种方式2.

Java的栈与队列实现代码解析

《Java的栈与队列实现代码解析》栈是常见的线性数据结构,栈的特点是以先进后出的形式,后进先出,先进后出,分为栈底和栈顶,栈应用于内存的分配,表达式求值,存储临时的数据和方法的调用等,本文给大家介绍J... 目录栈的概念(Stack)栈的实现代码队列(Queue)模拟实现队列(双链表实现)循环队列(循环数组

java解析jwt中的payload的用法

《java解析jwt中的payload的用法》:本文主要介绍java解析jwt中的payload的用法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java解析jwt中的payload1. 使用 jjwt 库步骤 1:添加依赖步骤 2:解析 JWT2. 使用 N

Python中__init__方法使用的深度解析

《Python中__init__方法使用的深度解析》在Python的面向对象编程(OOP)体系中,__init__方法如同建造房屋时的奠基仪式——它定义了对象诞生时的初始状态,下面我们就来深入了解下_... 目录一、__init__的基因图谱二、初始化过程的魔法时刻继承链中的初始化顺序self参数的奥秘默认

Java 正则表达式URL 匹配与源码全解析

《Java正则表达式URL匹配与源码全解析》在Web应用开发中,我们经常需要对URL进行格式验证,今天我们结合Java的Pattern和Matcher类,深入理解正则表达式在实际应用中... 目录1.正则表达式分解:2. 添加域名匹配 (2)3. 添加路径和查询参数匹配 (3) 4. 最终优化版本5.设计思

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

Java字符串处理全解析(String、StringBuilder与StringBuffer)

《Java字符串处理全解析(String、StringBuilder与StringBuffer)》:本文主要介绍Java字符串处理全解析(String、StringBuilder与StringBu... 目录Java字符串处理全解析:String、StringBuilder与StringBuffer一、St

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

C#中async await异步关键字用法和异步的底层原理全解析

《C#中asyncawait异步关键字用法和异步的底层原理全解析》:本文主要介绍C#中asyncawait异步关键字用法和异步的底层原理全解析,本文给大家介绍的非常详细,对大家的学习或工作具有一... 目录C#异步编程一、异步编程基础二、异步方法的工作原理三、代码示例四、编译后的底层实现五、总结C#异步编程