`
endeavor416
  • 浏览: 64343 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

短信发送和接收

阅读更多

package com.skywin.simpass.sysinterface.sms.util;

import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import com.huawei.insa2.comm.cmpp.message.CMPPDeliverMessage;
import com.huawei.insa2.comm.cmpp.message.CMPPMessage;
import com.huawei.insa2.comm.cmpp.message.CMPPSubmitMessage;
import com.huawei.insa2.comm.cmpp.message.CMPPSubmitRepMessage;
import com.huawei.insa2.util.Args;
import com.huawei.smproxy.SMProxy;
import com.skywin.simpass.sysinterface.sms.entity.SMSEntity;

public class SMSClient extends SMProxy {

    private static SMSClient ins;

    private SMSClient(Args args) {
        super(args);
    }

    public static SMSClient getInstance() {
        if (ins == null) {
            Map<String, String> m = new HashMap<String, String>();
            // 系统参数配置
            m.put("host", "host");
            m.put("port", "port");
            m.put("source-addr", "source-addr");
            m.put("shared-secret", "shared-secret");
            m.put("heartbeat-interval", "30");
            m.put("reconnect-interval", "30");
            m.put("heartbeat-noresponseout", "5");
            m.put("transaction-timeout", "10");
            m.put("version", "0");
            m.put("debug", "true");
            ins = new SMSClient(new Args(m));
        }
        return ins;
    }

    public CMPPMessage onDeliver(CMPPDeliverMessage msg) {
        String message = null;
        try {
            String receivedMsg = new String(msg.getMsgContent(), "UTF-8");
            // System.out.println("接收到的消息:"+receivedMsg);
            String receivedTelephone = msg.getSrcterminalId();
            // System.out.println("接收的手机号码:"+receivedTelephone);
            if ((receivedMsg.subSequence(0, 5)).equals("CSize")) {
                System.out.println(receivedMsg);
            } else {
                message = "充值请求信息格式不对";
                CMPPSubmitMessage submitMsg = new CMPPSubmitMessage(1, 1, 0, 1,
                        "0010", 0, "", 0, 0, 15, "950338", "02", Integer
                                .toString(0),
                        new Date(System.currentTimeMillis() + (long) 50000), // 存活期
                        null, "10658672", new String[] { receivedTelephone },
                        message.getBytes(), "");
                // 发送错误信息给用户
                SMSClient.getInstance().send(submitMsg);
            }
        } catch (Exception e) {
        }
        return super.onDeliver(msg);
    }

    public void send(CMPPSubmitMessage msg) throws Exception {
        CMPPSubmitRepMessage rep = (CMPPSubmitRepMessage) super.send(msg);
        // System.out.println(rep.toString());
    }

    /**
     * @param args
     */
    public static void main(String[] args) throws Exception {
        SMSClient client = SMSClient.getInstance();
        System.in.read();
    }

}

分享到:
评论
1 楼 dufan168 2010-09-02  
能发一份此华为联通jar包吗?小弟不甚感激!
  dufan168@yahoo.com.cn

相关推荐

    手机短信发送和接收 学习

    手机短信发送和接收是移动通信领域中的基本功能,它允许用户通过手机设备进行文本消息的交互。短信服务(Short Message Service, SMS)自20世纪90年代以来已经成为全球最广泛使用的通信方式之一,尤其在个人和商业...

    SMS短信发送和接收控件源码

    本文将深入探讨基于C++编写的“SMS短信发送和接收控件源码”,以及如何利用MSComm控件实现这一功能。 首先,我们要理解MSComm控件是什么。MSComm,全称Microsoft Serial Communications Control,是由微软提供的一...

    cmpp,sgip,smgp 彩信,视频短信发送和接收流程.doc

    介绍了 cmpp sgip smgp协议的彩信,视频短信的的开发流程 包含了pdu编码解析,流程讲解等

    基于GPRS的短信发送和接收的实现毕业论文.doc

    本文主要探讨的是基于GPRS技术实现短信发送和接收的毕业设计论文。GPRS(General Packet Radio Service)是一种无线数据通信技术,它允许移动设备通过移动网络进行连续的数据传输,为短信服务提供了高效、实时的通信...

    安卓短信发送与接收

    至于`PhoneSMS`这个文件,它可能是实训项目中的一个模块或者类,可能包含了具体的实现代码,例如创建`SmsManager`实例、定义`BroadcastReceiver`以及处理短信发送和接收的相关逻辑。为了深入理解这个实训项目,你...

    联通短信接口发送和接收

    1. **连接管理**:在进行短信发送和接收前,客户端需要与短信网关建立TCP连接。这涉及到连接的建立、保持和断开过程,通常包括三次握手和四次挥手等TCP连接的基本操作。 2. **报文结构**:SGIP协议的报文由报文头和...

    手机短信接收和发送手机短信接收和发送

    "lib"则可能是一个库文件夹,包含与短信发送和接收相关的库文件或API实现,这些库文件可能提供了操作短信服务的函数和类,帮助开发者更方便地进行短信功能的开发。 总的来说,手机短信接收和发送涉及到操作系统、...

    通过短信猫发送与接收短信

    本文将深入探讨如何利用短信猫进行短信的发送与接收功能的实现。 首先,我们要了解短信猫的工作原理。短信猫通常采用串行通信接口(如USB或RS232),连接到计算机或服务器。它内置SIM卡槽,可以插入运营商的SIM卡,...

    详解Android短信的发送和广播接收实现短信的监听

    由于涉及到短信发送和接收,需要配置的权限包括SEND_SMS、RECEIVE_SMS和READ_SMS。SEND_SMS权限允许应用发送短信,RECEIVE_SMS权限允许应用接收短信,而READ_SMS权限则是用于读取短信内容。这些权限的声明方式如下:...

    发短信接收简单例子

    总的来说,这个例子将教你如何在Android应用中实现自定义的短信发送和接收功能,让你能够控制短信的处理流程,提供更个性化的用户体验。通过学习和理解这个例子,你将掌握Android中与短信交互的核心技术。

    短信发送接收平台

    短信发送接收平台是一种用于批量发送和接收短信的系统,常被企业用于验证码验证、营销推广、通知服务等场景。在IT行业中,这类平台通常结合Web技术实现,通过API接口与各种应用程序集成,使得开发者能够方便地进行...

    Android如何实现接收和发送短信

    每一部手机都具有短信接收和发送功能,下面我们通过代码来实现接收和发送短信功能。  一、接收短信 1、创建内部广播接收器类,接收系统发出的短信广播 2、从获得的内容中解析出短信发送者和短信内容 3、在...

    VB 短信发送接收程序源码

    【VB短信发送接收程序源码】是一个基于Visual Basic(VB)开发的软件系统,主要用于实现短信的发送和接收功能。这个程序集成了用户信息管理、预制短语存储、短信发送操作以及短信查询等功能,为用户提供了一站式的...

    AT短信猫,发短信接收短信流程

    AT短信猫是一种特殊的通信设备,常用于自动化系统或者服务中,通过使用AT指令进行控制,实现短信的发送和接收。AT指令集是通用的串行通信接口,最初为调制解调器设计,但后来扩展到包括短信服务。在本文中,我们将...

    利用短信猫发送和接收短信的软件

    标题中的“利用短信猫发送和接收短信的软件”指的是通过硬件设备——短信猫,实现电脑上的短信收发功能。短信猫是一种特殊的调制解调器,它可以连接到计算机的串行端口或USB接口,模拟手机功能,允许用户通过电脑...

    手机短信猫短信发送接收接口

    手机短信猫短信发送接收接口 1.0 基于COM的dll组件,可以运行于win32平台。本组件的特点: 1、封装了通过手机、短信猫发送/接收短消息的接口,由于采用了COM标准,二进制兼容,可被其他开发语言或者软件调用,对手机...

    SIM800A发送与接收短信

    5. **短信发送**:在STM32端,发送短信的过程包括设置短信格式、输入目标电话号码、编写短信内容,然后通过串口发送相应的AT命令。SIM800A接收到命令后,将短信内容通过GSM网络发送出去。 6. **短信接收**:SIM800A...

    基于Delphi的各类短信发送接收原码打包上传

    本项目集成了多种短信发送和接收的源代码,旨在帮助开发者在Delphi环境下实现与GSM Modem和阿里大于等服务的通信。 【描述】中的知识点: 1. **GSM Modem通信**:GSM Modem是一种允许通过SIM卡进行语音通话和数据...

Global site tag (gtag.js) - Google Analytics