smsmsghandler.java

来自「短信系统SMS:支持普通短信、长短信和wap push短信的发送。」· Java 代码 · 共 72 行

JAVA
72
字号
package com.ekun.biz.sms;

import com.ekun.common.sms.*;
import com.ekun.sms.cmpp2.*;
import com.ekun.sms.common.*;
import com.ekun.biz.vo.*;
import com.ekun.common.log.Logger;
import com.ekun.common.log.LoggerFactory;

/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2006</p>
 *
 * <p>Company: </p>
 *
 * @author ekun
 * @version 1.0
 */
public class SmsMsgHandler implements CmppMsgHandler
{
  private static Logger logger = LoggerFactory.getLogger(SmsMsgHandler.class);
    /**
     * 接收到短信时触发(CMPP)
     */
    public void onCmppMO(RecCDeliver recDeliver)
    {
      MoVO vo = new MoVO();
      vo.setSFrom(new String(recDeliver.sSrcAddr).trim());
      vo.setSTo(new String(recDeliver.sDstAddr).trim());
      vo.setSMsg(new String(recDeliver.sMsgContent).trim());
      System.out.println(vo);
      logger.debug("MO:" + vo);
    }

    /**
     * 接收到收条时触发(CMPP)
     */
    public void onRcvReceipt(RecCDeliverRcpt recReceipt)
    {
      ReceiptVO vo = new ReceiptVO();
      vo.setSMSMSGID(BuffMemoUtil.getMsgId(recReceipt.usMsgId));
      java.text.SimpleDateFormat sdf = new java.text.SimpleDateFormat("yyMMddHHmm");
      try
      {
        vo.setRECEIVE_TIME(sdf.parse(recReceipt.sDoneTime));
      }
      catch(Exception ex)
      {
        vo.setRECEIVE_TIME(new java.util.Date());
      }
      vo.setRECEIVE_RESULT(recReceipt.sStat);
      logger.debug("Receipt:" + vo.toString());
    }

    /**
     *
     * @param smsInfo SmsInfo
     * @param errCode int
     * @param errMsg String
     */
    static private int nMT = 0;
    public void onCmppMT(SmsInfo smsInfo)
    {
      MtCache.getInstance().put(smsInfo);
      logger.debug("CMPP MT 成功: " + smsInfo + "  count:" + nMT);
    }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?