M-notification 结构详细分析

SMPP长短信 最近在做SMPP协议接口的对接,在发送长短信时,长短信的合并有问题。如一条长短信被拆分成两条,那客户将会收到两条短信。正常应该是一条合并后的短信。本文通过示例代码说明一下结果过程。 一、长短信协议头 长短信协议头,有6位协议头和7位协议头,这里拿6位协议头做说明: 6位协议头格式:05 00 03 XX MM NN byte 1 : 05, 表示剩余协议头的长度 byte 2 : 00, 包头类型... 阅读详情
/**
* 原创: 石太祥
*/

正常结构范例(可以直接通过CMPP发送):

0605040B8423F03706226170706C69636174696F6E2F766E642E7761702E6D6D732D6D65737361676500AF848C8298363438008D90891080323131322F545950453D504C4D4E008A808E018488058103093A8083687474703A2F2F7979302E636E3A38312F3036334B4830363035423634383F313339313738363134363200

0605040B8423F04406226170706C69636174696F6E2F766E642E7761702E6D6D732D6D65737361676500AF848C8298424638008D90891080323131322F545950453D504C4D4E008A808E016088058103093A8083687474703A2F2F7979302E636E3A38312F3036334D4633463942444246383F313337363131323236343000

详细分析:
<!--- UDH 信息 --->
06 'User Data Header Length (6 bytes)
05 'UDH Item Element id (Port Numbers)
04 'UDH IE length (4 bytes)
0B 84 'destination port number
23 F0 'origin port number
<!--- END 信息 --->
44 : Transaction ID,事务标识;
06 : 表示为PUSH PDU;
22 : 头部信息长度,即34字节;
6170706C69636174696F6E2F766E642E7761702E6D6D732D6D65737361676500 : 即ASCII字符串"application/vnd.wap.mms-message.ua",为ContentType的值
AF : 头部信息“X-Wap-Application-Id”的WSP压缩编码;
84 : X-Wap-Application-Id的值,表示“x-wap-application:mms.ua”;
8C82 : “8C” 表示 “X-Mms-Message-Type” 域,其值为“82”,表示该消息为m-notification-ind消息;
9836343800 :“98” 表示 “Transaction ID” 域,其值为“36343800”,即ASCII串,"未翻译出来";
8D90 :“8D”表示MMS-Version” 域,其值为“90”,表示v1.0;
891080 : “89”表示“From”域,“10”为“From”值长度,即16字节;“80”表示后面的值为实际的接收方地址,而不是系统填充的字符串;
323131322F545950453D504C4D4E00 : 发送方面地址“2112/TYPE=PLMN”,也可以替换为 “31333938383838383838382F545950453D504C4D4E00”即ASCII串,"13988888888/TYPE=PLMN".
8A80 :“8A”表示“Message-Class”域,其值为“80”,表示“Personal”;
8E0184 : “8E”表示“Message-Size” 域,“01 ”为值的实际长度,“84”:即 132字节;
88058103093A80 :“88”表示“expiry” 域,“05”为值的长度,即5字节;81:表示后面的时间采用“相对时间格式”;03 :表示时间值为3个字节,“093A80”,即604800秒, 7×24 Hours小时 = 一周;
83 :表示“Content Location”域,
687474703A2F2F7979302E636E3A38312F3036334B4830363035423634383F313339313738363134363200 :表示“Content Location”的值
 
SMPP协议解析 SMPP(Short Message Peer-to-Peer)是一种用于发送和接收短信消息的协议,通常用于移动通信网络。本文详细介绍了SMPP协议,一种在移动通信网络中发送和接收短信的二进制协议,涉及其基本特性、消息类型、流程、安全性和应用领域,重点讲解了Bind、Submit、Deliver等关键操作。• 用途:连接短信网关(ESME)与短信中心(SMSC),支持短信提交、投递及状态查询。• 通信模式:基于TCP/IP,使用大端字节序(网络字节序)。转换内容(如GSM7、UCS-2)。 阅读详情

相关推荐

Android 弹无虚发之第四弹:你应该掌握的Notification(Notification的通知栏常驻、Notification的各种样式、Notification点击无效)

Android的Notification是android系统中很重要的一个机制,产品人员常常利用通知栏的方式,跟用户进行弱沟通。拥有推送通知的app要比没有此类功能的app活跃率要高很多。另外类似于墨迹天气,清理大师等app,也会将通知栏常驻,利用自定义的布局,方便用户及时快捷的查看所需的信息和使用快捷的功能。所以Notification的使用,也在开发当中,使用的越来越频繁。今天我就来跟大家分享

晓逸的小仓库 1万+

MMS Notification 简介

从OMA MMS封装协议中对MMS Notification的定义可以知道,MMS Notification实际上是通过WAP PUSH来实现的。WAP PUSH是可以通过两种方法来实现的,一种是通过GPRS的方式,另一种就是通过SMS的方式。但前一种方式由于开发时间长,调测复杂

漂流瓶の海岸 2581

mms notification pdu 解析

根据WAP MMS Encapsulation Protocol相关协议规定, 举例解析一个彩信通知的pdu, 详细介绍了pdu里每个字段的含义。

M-Notification.ind message 结构

WAP-209-MMSEncapsulation-20020105-a.pdf 定义的 M-Notification.ind message 结构

ealpha 404

SMPP协议长短信和并(1)

SMPP协议长短信和并 SMPP协议长短信和并 SMPP协议长短信和并

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

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

Notification的功能与用法

Notification是显示在手机状态栏的的通知—手机状态栏位于手机手机屏幕的最上方,哪里一般显示手机当前的网络状态、电池状态、时间等。Notification所代表的是一种具有全局效果的通知,程序一般通过NotificationManager服务发送Notification。 Android为NotiFication增加Notification.Builder类,通过该类允许开发者更轻松地创建...

瑾年 1687

RTL8306交换机芯片与FPGA联调实战:5个网口+1个MAC的配置避坑指南

本文详细解析了RTL8306交换机芯片与FPGA联调中的关键技术难点,特别是MAC5寄存器的配置陷阱和PHY页切换机制。通过实战案例和优化策略,帮助开发者高效配置5个网口+1个MAC的工业级网络设备,提升系统稳定性和实时性。

vodka的博客 1094

Android学习之 Notification

Notification 是显示在手机状态栏的通知,Notification所代表的是一种具有全局效果的通知,通知一般通过 NotificationManager服务来发送Notification。 NotificationManager对象获得方法: NotificationManager nm =  (NotificationManager)getSystemService(NOTIFIC

小吕丶Code阶区 1685

Frida实战:如何逆向分析某电商App的doCommandNative函数(附完整Hook脚本)

本文详细介绍了如何使用Frida逆向分析电商App中的doCommandNative函数,涵盖动态注册识别、SO加固对抗及高级Hook脚本编写等实战技巧。通过完整Hook脚本示例,帮助安全研究人员深入理解JNICLibrary的关键函数逆向分析方法,提升移动应用安全研究能力。

weixin_29327977的博客 615

基于光电传感的非接触式酒精浓度检测系统设计与实现

本文详细介绍了基于光电传感技术的非接触式酒精浓度检测系统设计与实现。系统利用940nm红外LED和OPT101光电传感器,结合朗伯-比尔定律,通过STM32微控制器进行信号采集与处理,实现了快速、准确的酒精浓度测量,测量精度达±1%,适用于工业检测和便携式应用场景。

y7z8a的博客 363

安卓 Notification 使用方法小结

本文简单介绍安卓 Notification 的用法,并简单对比 5.0 前后 Notification 的变化和处理方法。

关注移动端、Web、微信小程序等大前端领域 1万+

CSR-DCF视频目标跟踪源码运行笔记

论文基本信息 论文标题:Discriminative Correlation Filter with Channel and Spatial Reliability 论文作者:Alan Lukezic等 论文出处:CVPR 2017 文章链接:https://arxiv.org/abs/1611.08461 补充材料:https://www.semanticscholar.org/paper/D...

越野者的博客 3397

Notification的使用

功能简介: 在 Android 手机界面最上方有一条显示时间,信号强度和电池状态等信息的区域,这是 Android 手机的状态通知栏。当系统有一些重要的信息要通知手机用户时,例如收到新短信,或者是收到新邮件,或者是有未接电话等等,系统通常会把信息显示在状态栏中,有的仅显示小图片,有的则显示文字和小图片,用手指按住状态栏往下拉,还可以展开状态栏,查看所有系统发出的信息。 而在 Androi

tianshi4851的专栏 985

合并数组与非合并数组——SystemVerilog

合并型数组(packed): — 合并型数组可以实现连续的存储,赋值时不需要用 '{ }。 //合并型数组 bit [3] [7:0] b_pack // 表示3行 x 8列的数组,[3]是高维度(高维度),[7:0]是低维度(第一维) 数组中,数据排列为{b_pack[3],b_pack[2],b_pack[1],b_pack[0]},其中每个b_pack为8个bit; bit是二值逻辑,每位bit只占据1位。故24位bit只占据一个word(一般一个word为32bit)的存储空间

SummerXRT的博客 7638

使用 MATLAB/Simulink + Communications Toolbox + 5G Toolbox,构建一个2×2 MIMO-OFDM通信系统

本文通过Simulink+CommunicationsToolbox构建2×2 MIMO-OFDM通信系统,重点实现信道均衡滤波器(ZF与MMSE)的设计与应用。详细介绍了系统架构、建模步骤(包括信道估计、均衡器实现)和仿真场景设计,通过BER、星座图和EVM对比分析验证了MMSE均衡器在抑制噪声和信号恢复方面的优势。文章总结了MIMO均衡的核心原理与实践经验,并提出了扩展至大规模MIMO、深度学习均衡器等优化方向,为无线通信系统设计提供实用指导。

amy_mhd的博客 125

android notification 的总结分析,Android Notification显示过程详解

一、前言最近在崩溃上报中发现了如下错误,notification报出来的错误,由于这只是在部分机型上面报出来,自己测试了几种机型都没能复现,所以只有分析一下Notification的显示过程来看一下能不能找到问题的原因。关于这个问题的分析我们留到最后再来看。12-27 01:03:49.391 2072-2072/com.test.demo:mult E/AndroidRuntime: FATAL...

weixin_35081861的博客 830

72、海洋地理信息系统:电子海图的全面解析

本文全面解析了海洋地理信息系统中的电子海图技术,从AIS数据的应用、电子海图数据的存储与显示,到电子导航的发展趋势和S-100通用水文数据模型的推广,系统地阐述了电子海图在现代航海中的核心作用及其未来发展方向。

hhh00的博客 252

Notification通知的使用

Notification —— 通知,主要作用是警示用户。它是看不见的程序组件(Broadcast Receiver,Service和不活跃的Activity)警示用户有需要注意的事件发生的最好途径。 Notification 是由NotificationManager(系统服务)统一管理的。 Notification使用过程相对比较简单,社长这里主要介绍一些比较常用的用法,可以帮助开发

肥皂社社长 665

【Mode】Mode expansion monitors

对于宽带仿真,因为被支持的模式可能是波长的函数,因此,推荐在波长范围内增加频率的采样点数量去计算支持的波导模式分布或者光纤模式分布。对于宽带仿真,如果在被计算模式上的频率点的数量与通过 frequency-domain monitors 被测量的频率点的数量不匹配,这种情况是正常的。Mode expansion monitors 对于仿真偏振转换器是十分有用的,比如,在偏振转换器中,当你想要提取从输入模式到输出模式的转换效率,或者提取一个装置的 S 参数。给出了进入到被选择模式中的合透射率,

u011699626的博客 2759

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Android开发之通知栏Notification详解

Notification的用法  --- 状态栏通知 发送一个状态栏通知必须的两个类:          1. NotificationManager   --- 状态栏通知的管理类,负责发通知,清除通知等    NotificationManager : 是一个系统Service,必须通过 context.getSystemService(NOTIFICATION_SERVICE

逍遥飞鹤的专栏 3631

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

Android 基础之Notification复习

Notification设计三个部分,NotificationManager、Notification、NotificationChannel、Notification.Builder。 三种notification:普通的、大内容的、屏幕弹出的三种。 public void normalNotification(View view) { Notification.Build...

u011750755的博客 211

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

android Notification的使用

Notification 的使用需要导入 3 个类,代码如下: import android.app.PendingIntent; import android.app.NotificationManager; import android.app.Notification; NotificationManager nm = (NotificationManager)getSyste

Android进阶三部曲 - 刘望舒 3033

android Notification 的使用

最近一直在研究 android ,并一边研究一边做应用。其中遇到了把程序通知常驻在 Notification 栏,并且不能被 clear 掉(就像android QQ一样)的问题。经过研究实现了其功能,现把 Notification 的使用总结如下: Notification 的使用需要导入 3 个类 1 2 3 import and...

dbul13262的博客 127
上一篇: 什么是 JMS?
下一篇: 如何制作MMS彩信文件?
xiaojunjava
博客等级 码龄21年 7粉丝 28原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值