wavecom java_使用java操作wavecom来发送短信

实现这个功能,需要两个jar包,可以到http://code.google.com/p/smslib下载smslib-v3.3.0-B2-bin.zip和javacomm20-win32.zip。

首先,把smslib-v3.3.0-B2-bin.zip解开,在smslib\dist\lib目录下找到smslib-3.3.0b2.jar,放入工程lib中,再把javacomm20-win32.zip解开,里面的comm.jar需要放到工程lib下,javax.comm.properties放到%JAVA_HOME%/jre/lib下,win32com.dll放到%JAVA_HOME%/jre/bin下。路径放错了,调用起来就会报错的。环境配置好了以后,使用起来很简单,贴下我的代码:

package com.cn;

import org.smslib.AGateway;

import org.smslib.IOutboundMessageNotification;

import org.smslib.Library;

import org.smslib.OutboundMessage;

import org.smslib.Service;

import org.smslib.Message.MessageEncodings;

import org.smslib.modem.SerialModemGateway;

public class SendMessage

{

public void doIt() throws Exception

{

Service srv;

OutboundMessage msg;

OutboundNotification outboundNotification = new OutboundNotification();

System.out.println("Example: Send message from a serial gsm modem.");

System.out.println(Library.getLibraryDescription());

System.out.println("Version: " + Library.getLibraryVersion());

srv = new Service();

SerialModemGateway gateway = new SerialModemGateway("modem.com17", "COM17", 9600, "wavecom", "");//com名称,串口号,破特率,连接设备名称,设备型号

gateway.setInbound(true);//设置网关可以写入信息

gateway.setOutbound(true);//设置网关可以读入信息

gateway.setSimPin("0000");

//gateway.setSmscNumber("555555");

gateway.setOutboundNotification(outboundNotification);

srv.addGateway(gateway);//添加网光

System.out.println("初始化成功,准备开启服务");

srv.startService();//初始化网关

msg = new OutboundMessage("13426478376", "这个是用java发的中文短信放松放松dfgdfsdf的!");//手机号码,和短信内容

msg.setEncoding(MessageEncodings.ENCUCS2);//这句话是发中文短信必须的

srv.sendMessage(msg);//执行发送

System.out.println(msg);

System.out.println("Now Sleeping - Hit to terminate.");

//System.in.read();

srv.stopService();

}

public class OutboundNotification implements IOutboundMessageNotification

{

public void process(String gatewayId, OutboundMessage msg)

{

System.out.println("Outbound handler called from Gateway: " + gatewayId);

System.out.println(msg);

}

}

public static void main(String args[])

{

SendMessage app = new SendMessage();

try

{

app.doIt();

}

catch (Exception e)

{

e.printStackTrace();

}

}

}

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2011-10-25 10:47

浏览 2064

评论

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值