• 大小: 21KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-13
  • 语言: 其他
  • 标签: cmpp  2.0  

资源简介

cmpp2.0 移动短信 实现长连接 心跳检测 长短信发送功能

资源截图

代码片段和文件信息

package com.qiji.chinamobile;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.io.InputStream;

import org.apache.log4j.Logger;

import com.qiji.chinamobile.domain.MsgHead;

/**
 * 提交代码后的应答消息解析.
 * 
 */
public class MsgSubmitResp extends MsgHead {
private static Logger logger = Logger.getLogger(MsgSubmitResp.class);
private long msgId;
private int result;// 结果 0:正确 1:消息结构错 2:命令字错 3:消息序号重复 4:消息长度错 5:资费代码错
// 6:超过最大信息长 7:业务代码错 8:流量控制错 9:本网关不负责服务此计费号码 10:Src_Id错误
// 11:Msg_src错误 12:Fee_terminal_Id错误
// 13:Dest_terminal_Id错误

/**
 * @param data
 * byte[]
 */
public MsgSubmitResp(byte[] data) {
if (data.length == 21) {//8 + 8 + 4  17
ByteArrayInputStream bins = new ByteArrayInputStream(data);
DataInputStream dins = new DataInputStream(bins);
try {
// this.setTotalLength(data.length + 4);
this.setTotalLength(data.length);
int commandId  = dins.readInt();
logger.info(“commandId:“ + commandId);
//this.setCommandId(dins.readInt());
int sequenceId  = dins.readInt();
logger.info(“sequenceId:“ + sequenceId);
//this.setSequenceId(dins.readInt());
this.msgId = dins.readLong();
logger.info(“msgId:“ + msgId);
this.result = dins.readInt();
logger.info(“result:“ + result);
dins.close();
bins.close();
logger.info(“msgId:“ + msgId);

} catch (IOException e) {
e.printStackTrace();
}
} else {
logger.info(“发送短信IMSP回复解析数据包出错,包长度不一致。长度为:“ + data.length);
}
}

 /** 
     * @功能 读取流 
     * @param inStream 
     * @return 字节数组 
     * @throws Exception 
     */  
    public static byte[] readStream(InputStream inStream) throws Exception {  
        ByteArrayOutputStream outSteam = new ByteArrayOutputStream();  
        byte[] buffer = new byte[1024];  
        int len = -1;  
        while ((len = inStream.read(buffer)) != -1) {  
            outSteam.write(buffer 0 len);  
        }  
        outSteam.close();  
        inStream.close();  
        return outSteam.toByteArray();  
    } 
    
public long getMsgId() {
return msgId;
}

public void setMsgId(long msgId) {
this.msgId = msgId;
}

public int getResult() {
return result;
}

public void setResult(int result) {
this.result = result;
}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1317  2016-12-19 13:38  chinamobile\domain\MsgActiveTestResp.java

     文件       1008  2016-12-16 14:37  chinamobile\domain\MsgCommand.java

     文件       3372  2016-12-16 14:38  chinamobile\domain\MsgConnect.java

     文件       3631  2016-12-19 14:27  chinamobile\domain\MsgConnectResp.java

     文件       6909  2016-12-16 14:41  chinamobile\domain\MsgDeliver.java

     文件       1393  2016-12-16 14:42  chinamobile\domain\MsgDeliverResp.java

     文件       2431  2016-12-16 14:42  chinamobile\domain\MsgHead.java

     文件       8055  2016-12-16 14:42  chinamobile\domain\MsgSubmit.java

     文件       2684  2016-12-19 11:23  chinamobile\MsgSubmitResp.java

     文件       7094  2016-12-21 11:53  chinamobile\util\CmppSender.java

     文件       1008  2016-12-22 15:30  chinamobile\util\MsgActivityTimer.java

     文件       1628  2016-12-16 14:43  chinamobile\util\MsgConfig.java

     文件      22047  2016-12-23 10:00  chinamobile\util\MsgContainer.java

     文件       5806  2016-12-22 15:30  chinamobile\util\MsgUtils.java

     目录          0  2016-12-23 10:01  chinamobile\domain

     目录          0  2016-12-23 10:01  chinamobile\util

     目录          0  2016-12-23 10:01  chinamobile

----------- ---------  ---------- -----  ----

                68383                    17


评论

共有 条评论