wavecom java_java发送短信 wavecom
今天网上淘了wavecom短信猫快递回来了,急着测试。遇到问题,分享下
首先先换上sim进去,记得先不要通电,会损坏sim卡,然后安装短信猫驱动,我的是USB口,wavecom 2c2/2c。USB芯片方案是pl2303,驱动下载地址:
安装完毕后,插上短信猫,打开设备管理器。如图
com1即为短信猫端口,如要修改端口号,则在属性,高级里修改端口号。
新建工程。
配置系统环境变量 %JDK_HOME%,然后拷贝所需的文件至
%JDK_HOME%\jre\bin\win32com.dll
%JDK_HOME%\jre\lib\javax.comm.properties
%JDK_HOME%\jre\lib\comm.jar
JAVA_HOME是jdk的路径,而非jre,
把smslib-3.3.0b2.jar和comm.jar,放入工程lib中
代码:
test.java,测试端口是否检测到
package com.sms;
import java.util.Enumeration;
import org.smslib.helper.CommPortIdentifier;
public class TEST {
public static void main(String [] args){
Enumeration en = CommPortIdentifier.getPortIdentifiers();
CommPortIdentifier portId;
while (en.hasMoreElements())
{
portId = (CommPortIdentifier) en.nextElement();
if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL)
System.out.println(portId.getName());
}
}
}
如果检测到,即可看到控制台打印出的,如果没有,需要继续调试配置
代码2:
package com.sms;
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.com1", "COM1", 9600, "wavecom", "11258");//115200是波特率,一般为9600。可以通过超级终端测试出来
gateway.setInbound(true);
gateway.setOutbound(true);
gateway.setSimPin("0000");
gateway.setOutboundNotification(outboundNotification);
srv.addGateway(gateway);
srv.startService();
System.out.println("Modem Information:");
System.out.println(" Manufacturer: " + gateway.getManufacturer());
System.out.println(" Model: " + gateway.getModel());
System.out.println(" Serial No: " + gateway.getSerialNo());
System.out.println(" SIM IMSI: " + gateway.getImsi());
System.out.println(" Signal Level: " + gateway.getSignalLevel() + "%");
System.out.println(" Battery Level: " + gateway.getBatteryLevel() + "%");
System.out.println();
// Send a message synchronously.
msg = new OutboundMessage("138******", "哈哈哈哈哈哈");
msg.setEncoding(MessageEncodings.ENCUCS2);//这句话是发中文短信必须的
srv.sendMessage(msg);
System.out.println(msg);
System.out.println("Now Sleeping - Hit to terminate.");
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();
}
}
}
运行main,即可发送短信,如果没有配置好之前的几个文件
就会出现报错,如:
org.smslib.GatewayException: Comm library exception: java.lang.reflect.InvocationTargetException
at org.smslib.modem.SerialModemDriver.connectPort(SerialModemDriver.java:93)
at org.smslib.modem.AModemDriver.connect(AModemDriver.java:106)
at org.smslib.modem.ModemGateway.startGateway(ModemGateway.java:111)
at org.smslib.Service$1Starter.run(Service.java:227)
2011.7.24
妈的!
org.smslib.TimeoutException: No response from device.
at org.smslib.modem.AModemDriver$CharQueue.get(AModemDriver.java:474)
at org.smslib.modem.AModemDriver.getResponse(AModemDriver.java:272)
at org.smslib.modem.athandler.ATHandler.getSimStatus(ATHandler.java:127)
at org.smslib.modem.AModemDriver.connect(AModemDriver.java:118)
at org.smslib.modem.ModemGateway.startGateway(ModemGateway.java:111)
at org.smslib.Service$1Starter.run(Service.java:227)
这个错误!害了我差不多俩小时了,公布出来
SerialModemGateway gateway = new SerialModemGateway("modem.com3", "COM3", 9600, "wavecom", "11258");
千万得配好这个东西,要不然,不止这里可能出错,上面的那个异常也可能出现
wavecom java_java发送短信 wavecom相关推荐
- wavecom java_使用java操作wavecom来发送短信
实现这个功能,需要两个jar包,可以到http://code.google.com/p/smslib下载smslib-v3.3.0-B2-bin.zip和javacomm20-win32.zip. 首 ...
- wavecom短信猫发送短信失败
http://www.puppeter.cn/?p=106 wavecom短信猫发送短信失败 发表评论 分类:运维工具 | 标签:sms wavecom | 1,048 views 放置在机房用于监控 ...
- WAVECOM CDMA Modem 发送短信
WAVECOM CDMA Modem 发送短信步骤 2009年06月17日 23:51 CDMA Modem发送信息,在超级终端模式下尝试发送信息时,需要使用以下命令格式: CDMA不能以PDU格式发 ...
- Wavecom 短信猫 发送短信设置
短信猫设置(命令为独占,当前命令没有返回写入其他命令提示ERROR) AT+CMGF 设置短信格式 AT+CMGF=0 设置短信为PDU格式 AT+CMGF=1 设置短信为text 格式(不能直接发送 ...
- 中国网建 java_java中用中国网建提供的SMS短信平台发送短信
接下来的项目需求中提到需要短信发送功能,以前没有做过,因此便在网上搜了一下.大体上说的都是有三种方法,分别是sina提供的webservice接口.短信mao和中国网建提供的SMS短信平台. 这三种方 ...
- java 短信猫发送短信的方法
http://zghbwjl.blog.163.com/blog/static/12033667220129175158806/ http://www.smscom.cn/sms_javasoft/ ...
- 使用NowSMS Gateway来接收发送短信和彩信
硬件准备: GPRS Modem,不同的运营商波段可能不一样,比如Cingular是850/1900 MHz,而China Mobile是900/1800 MHz,购买时要注意.把SIM card插入 ...
- 超级终端调用短信猫发送短信说明
转载文章:超级终端调用短信猫发送短信说明 短信发送测试 1.短信收发说明命令说明: 1).设置短消息中心 AT+CSCA="+8613800756500"回车(短信中心具体的号码 ...
- JAVA如何实现发送短信
今天看到了一个需求,需要做一个发送短信的功能,网上找了找,大概有这几种方法:(1)使用webservice接口发送手机短信,这个可以使用sina提供的webservice进行发送,但是需要进行注册;( ...
最新文章
- python定义一个dog类 类属性有名字毛色体重_面向对象实践,练习,Python
- java8 lambda python_java8里面lambda的stream()用法讲解
- ecshop 奇偶行显示不同的商品样式
- 客户细分_客户细分:K-Means聚类和A / B测试
- 教你理清SpringBoot与SpringMVC的关系
- 石子归并 51Nod - 1021
- git学习(9):git 添加 ssh keys 出现如下错误
- 海润光伏上年净利扭亏“摘帽”在望
- .NET Framework基础知识(二)(转载)
- java 如何判断操作系统是Linux还是Windows
- 记一次golang中sync.Map并发创建、读取的问题
- 用友java打不开_用友8.52的版本打不开UFO报表 显示UFOS MFC Application 已停止正常工作 重装软件也没用...
- 宝塔面板安装和使用教程(详细)
- 7本最经典的逻辑思维书籍推荐
- 网络规划 网络工程 用户需求分析 网络结构设计
- vbscript for 转 php for,VBS教程:VBScript 基础-使用循环语句
- python提取二值栅格上边界和中线
- 华夏ERP没有找到新增功能
- html,bootstrap,js,jquery图片点击模态窗口放大图片,可以滚动常看长图
- 二次方程计算器-字符串处理
热门文章
- win7 没有信息服务器地址,win7电脑提示无法解析服务器dns地址,该如何解决?
- 合肥工业大学计算机学院专业排名,2019合肥工业大学专业排名
- 微信公众平台接口开发基础
- 计算机cpu的相关知识,电脑CPU的相关知识
- 大数据对我们日常生活的影响
- 洛谷 P3225 [HNOI2012]矿场搭建
- Python锁屏代码
- Ubuntu中录屏软件、文档编写、Ubuntu中Codelite下载方法以及古月老师的编写的Ubuntu助手地址
- 安霸收购4D雷达公司,下一代“融合感知”市场大战一触即发
- 开源分享-Android打地鼠