`
missingchen
  • 浏览: 3629 次
  • 性别: Icon_minigender_1
  • 来自: 冰海
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

发送长短信

阅读更多
    在动手之前google了一下相关资料,查了下规范更正了以前的错误理解:以前以为是与短信头有关,现在才明白原来只是在内容里面增加协议头就可以了,但怎么让短信网关知道你发的是长短信呢?TP_udhi 设置为1即可.
    TP_udhi设置好了,就要组装协议头了,GSM 03.40规范中说协议头有两种,分别是长度为6和长度为7的协议头,我用的是长度为6的协议头,格式如下:
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 03 39 02 01
用JAVA代码的话可以新建这样一个字节数组,然后后面加上UTF-8转换后的短信内容得字节数组就可以了
 byte[] tp_udhiHead=new byte[6];
            tp_udhiHead[0]=0x05;
            tp_udhiHead[1]=0x00;
            tp_udhiHead[2]=0x03;
            tp_udhiHead[3]=0x0A;//每条长短信的唯一标示
            tp_udhiHead[4]=(byte)contentArrCount;
            tp_udhiHead[5]=0x01;//默认为第一条

注意事项:(从google上搜来的,基本上也就遇到这些问题)
1、TP_udhi设置为  0x01
2、Msg_Content    按TP_udhi协议填写6字节或者7字节的TP_udhi协议头然后加上经过USC2编码的消息内容。由TP_udhi协议头和消息内容体组成的Msg_Content总长度不能超过140个字节
3、Msg_Fmt   设置为  0x08  UCS2编码;
4、Pk_total和Pk_number 可以不设置,如果要设置,就要分别跟TP_udhi的MM和NN字段一致
感觉用JAVA做这样的东西比较麻烦,要转换过来转换过去的.
分享到:
评论
1 楼 hj270187161 2011-11-30  
TP_udhi  这东西在哪设置啊,我用的是MAS2.0 移动网关给的接口程序

相关推荐

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

    利用 CMPP/SGIP 协议发送长短信发送格式说明 本资源摘要信息旨在详细解释利用 CMPP/SGIP 协议发送长短信的格式说明。长短信是一种特殊的短信格式,它允许发送超过 70 个汉字的信息内容,但需要将其拆分成多条短信,...

    AT指令长短信接收PDU格式分析

    为了适应更复杂的通信需求,如发送长短信等,AT指令集提供了相应的功能来处理这些场景。本文将重点探讨AT指令在接收超长短信时的PDU(Protocol Data Unit)格式分析,这对于实现长短信的有效接收与合并至关重要。 #...

    基于C语言的PDU正常短信以及长短信的编解码

    用C语言设计PDU正常短信以及长短信的编码解码

    delphi7 PUD发送长短信。短信接收、删除。

    4. 编写发送长短信的逻辑,将长文本分割为多段,调用SendSMS函数发送每一段。 5. 实现接收短信的功能,可能需要监听串口,当接收到新短信时调用ReceiveSMS函数。 6. 设计用户界面,允许用户查看、删除已接收的短信,...

    SIM900A短信发送加超长短信注解

    SIM900A 短信发送 加超 长短信 注解

    SMPP协议长短信和并(1)

    通过上述对SMPP协议中长短信合并原理及实现方法的介绍,我们可以了解到,对于非ASCII编码方式下的长短信发送场景,合理设置esm_class、sm_length以及short_message字段,能够有效地实现长短信的分段发送与合并,进而...

    中国电信SMGP协议短信发送

    3. **构建短信消息**:根据需求创建短信内容,包括短信的源地址(发送方)、目标地址(接收方)、短信内容等信息。 4. **发送短信**:调用工具类的`sendSMS()`或其他类似方法,将短信消息提交给服务器。 5. **处理...

    短信猫 AT 发送 接收短信 包括长短短信

    短信猫 AT 发送 接收短信 长短短信 短信猫 AT 发送 接收短信 长短短信 短信猫 AT 发送 接收短信 长短短信 一个简单的DEMO 本人测试

    SGIP 联通短信发送

    在这个过程中,SP通过SGIP协议将要发送的短信内容、目标手机号码、短信类型等信息组织成特定的数据包,然后发送到联通的短信中心。这个过程通常涉及到短信提交、状态报告请求等操作,确保短信能够正确地送达用户手机...

    java代码实现发送短信,中国电信smgp协议api

    在中国电信的SMGP(Short Message Gateway Protocol)协议中,发送短信功能是通过API接口来实现的,这在Java编程环境中尤为常见。SMGP是专为短消息服务设计的一种通信协议,用于连接短信中心(SMSC)和短信网关,...

    发送短信,长短信,群发短信

    本主题将深入探讨“发送短信”、“长短信”以及“群发短信”这三个核心概念,帮助理解如何在实际应用中高效利用这些功能。 1. 发送短信:发送短信通常涉及到的是通过手机或应用向一个或多个接收方发送简短信息的...

    长短信dll源码

    为了解决这一问题,“长短信”技术应运而生,它能够将较长的消息拆分成多条短信发送,并在接收端自动合并为一条完整的消息。本文将基于提供的C#源代码示例,深入探讨长短信DLL源码的设计原理及其应用场景。 #### 二...

    android 长短信 自动 分多条 发送信息 完整代码 亲测

    这个过程对于开发者来说需要手动处理,而标题和描述中提到的"android 长短信 自动 分多条 发送信息 完整代码 亲测"就是一种实现方法,确保长短信能完整无误地送达。 在Android中,短信发送主要通过SmsManager类来...

    基于Java封装短信协议CMPP/SGIP/SMGP/SMPP的http接口短信发送设计源码

    该项目为Java语言编写的短信发送解决方案,采用CMPP、SGIP、SMGP、SMPP等多种短信协议进行封装,通过提供简单的HTTP接口,实现短信的快速发送。项目包含512个Java源文件,2个XML配置文件,以及1个Git忽略文件、1个...

    如何开发SMGP长短信

    而在实际操作中,开发长短信则是基于这一协议的一项关键技能,尤其是当单条短信内容超过70个字符时,就需要通过特殊的技术手段将一条长消息拆分成多条短消息发送,然后在接收端再重新组合成原始的长消息。...

    短信猫发送接收超长短信二次开发包

    控件提供必要接口可以实现普通汉字短信(最长70个汉字)、普通英文短信(使用7Bit编码,单条最长160字节)、超长汉字短信(拆分后每条63个汉字)、超长英文短信(使用7Bit编码,每条152字节)的发送和接收功能;

    中国联通SGIP短信发送协议对接 java程序源码

    实现对中国联通SGIP短信发送协议对接,java源码,实现Bing命令和Submit命令。

    超长短信软件试用版,可实现最多249汉字超长短信发送

    超长短信软件是一款具备最多249汉字超长短信发送能力的软件,并集成有客户名片管理、AA发送、自动回复等功能。是一款专业的企业短信办公平台 【资料来源】http://www.sms-hb.com 深圳汉邦科技 电话:0755-36537765...

Global site tag (gtag.js) - Google Analytics