`
金笛子
  • 浏览: 33097 次
社区版块
存档分类
最新评论

发送超长短信的协议格式

 
阅读更多
CMPP协议中,CMPP_SUBMIT_MESSAGE中有两个字段pk_total和pk_numer,恰看起来,这就是发送超长短信的设置参数,其实不然,这两个参数的设置,应该是没有用处。



发送超长短信,需要做两件事情:设置TP_udhi的值设置为1,在消息正文中增加协议头。协议后可以两种格式,分别是长度为6和长度为7的协议头。格式如下:

6位协议头格式:05 00 03 XX MM NN

byte 1: 05, 表示剩余协议头的长度

byte 2: 00, 这个值在GSM 03.40规范9.2.3.24.1中规定,表示随后的这批超长短信的标识位长度为1(格式中的XX值)。

byte 3: 03, 这个值表示剩下短信标识的长度

byte 4: XX,这批短信的唯一标志,事实上,SME(手机或者SP)把消息合并完之后,就重新记录,所以这个标志是否唯一并不是很重要。

byte 5: MM, 这批短信的数量。如果一个超长短信总共5条,这里的值就是5。

byte 6: NN, 这批短信的数量。如果当前短信是这批短信中的第一条的值是1,第二条的值是2。

例如:05 00 0339 02 01



7位的协议头格式:06 08 04 XX XX MM NN

byte 1: 06, 表示剩余协议头的长度

byte 2: 08, 这个值在GSM 03.40规范9.2.3.24.1中规定,表示随后的这批超长短信的标识位长度为2(格式中的XX值)。

byte 3: 04, 这个值表示剩下短信标识的长度

byte4-5 : XX XX,这批短信的唯一标志,事实上,SME(手机或者SP)把消息合并完之后,就重新记录,所以这个标志是否唯一并不是很重要。

byte 6: MM, 这批短信的数量。如果一个超长短信总共5条,这里的值就是5。

byte 7: NN, 这批短信的数量。如果当前短信是这批短信中的第一条的值是1,第二条的值是2。

例如:06 08 0400 39 02 01



7位协议头和6位协议头的区别是,6位协议头短信的标识字段是1个byte,而7位协议头短信的标志字段为2个byte。大多手机采用6位的协议头,也就是05 00 03 XX MM NN。



发送的短信这么处理,接受短信反过来就可以了。上述内容,在CMPP协议以及多款手机上经过测试验证。

转自bbs.sendsms.cn
分享到:
评论

相关推荐

    利用CMPP\SGIP协议发送长短信发送格式说明

    虽然网上有很多关于 利用CMPP、SGIP协议等发送超长短信发送格式说明,但是不够直观,本处结合现网运行5年的经验总结更详细,更直观。

    联通sgip协议流程规范12

    联通sgip协议流程规范12

    基于命令行的飞信短信发送程序

    最近在网上看了一下,有很多利用飞信协议发送短信的程序,有基于Web的、有脚本写的、有C#写的、还有Delphi写的;一些是以Web API提供的,还有一些是以客户端用户界面形式提供的。感觉好像还缺点什么!于是写了一个...

    华阳佳讯优势通短信中间件

    华阳佳讯-优势通 短信中间件(支持超长短信/多协议接口/全网设备) 北京华阳佳讯科技有限公司 http://www.ctc365.com 联系电话: 010-51292597 QQ:81905152 Email:douht@126.com ... 软件截图:D:\ctc365\images\...

    网络安全知识测试.pdf

    11、如果您发现自己被手机短信或互联网站上的信息诈骗后,应当及时向()报案,以查 处诈骗者,挽回经济损失。[单选题] * A、消费者协会 B、电信监管机构 C、公安机关(正确答案) 12. 12、为了有效抵御网络黑客攻击...

    Visual C++程序开发范例宝典(光盘) 第四部分

    Visual C++程序开发范例宝典配套光盘,因大小受限,所以分成8部分上传,必须全部下载才能正常解压...实例340 利用短信猫发送短信 实例341 利用短信远程关闭计算机 12.8 其他程序 实例342 利用神龙卡制作练歌房程序 ...

    Visual C++程序开发范例宝典(光盘) 第八部分

    Visual C++程序开发范例宝典配套光盘,因大小受限,所以分成8部分上传,必须全部下载才能正常解压...实例340 利用短信猫发送短信 实例341 利用短信远程关闭计算机 12.8 其他程序 实例342 利用神龙卡制作练歌房程序 ...

    Visual C++程序开发范例宝典(PDF扫描版).part3

     cc实例169 格式化磁盘   6.3 桌面相关设置   cc实例170 隐藏.c显示“开始”按钮   cc实例171 隐藏.c显示桌面文件   cc实例172 隐藏.c显示Windows任务栏   6.4 系统相关设置   cc实例173 获得...

    Visual C++程序开发范例宝典(PDF扫描版).part2

     cc实例169 格式化磁盘   6.3 桌面相关设置   cc实例170 隐藏.c显示“开始”按钮   cc实例171 隐藏.c显示桌面文件   cc实例172 隐藏.c显示Windows任务栏   6.4 系统相关设置   cc实例173 获得...

    Visual C++ 程序开发范例宝典 源码 光盘 part2

    cc实例165 判断驱动器属性 cc实例166 获取磁盘空间信息 cc实例167 获取磁盘序列号 cc实例168 取消磁盘共享 cc实例169 格式化磁盘 6.3 桌面相关设置 cc实例170 隐藏.c显示“开始”按钮 cc实例171 隐藏...

Global site tag (gtag.js) - Google Analytics