使用SMSlib库发短信 出现No response from device错误~

koskoswh12 2009-07-17 09:58:57
那位高手帮帮忙啊~在线等!!






错误是这样的
0 [main] INFO smslib - SMSLib: A Java API library for sending and receiving SMS via a GSM modem or other supported gateways.
This software is distributed under the terms of the Apache v2.0 License.
Web Site: http://smslib.org
0 [main] INFO smslib - Version: 3.4.1
0 [main] INFO smslib - JRE Version: 1.6.0_11
0 [main] INFO smslib - JRE Impl Version: 11.0-b16
0 [main] INFO smslib - O/S: Windows XP / x86 / 5.1
==========
31 [Thread-0] INFO smslib - GTW: modem.com3: Starting gateway, using Generic AT Handler.
31 [Thread-0] INFO smslib - GTW: modem.com3: Opening: COM3 @9600
49266 [Thread-0] INFO smslib - GTW: modem.com3: Closing: COM3 @9600
org.smslib.TimeoutException: No response from device.
at org.smslib.modem.AModemDriver$CharQueue.get(AModemDriver.java:514)
at org.smslib.modem.AModemDriver.getResponse(AModemDriver.java:306)
at org.smslib.modem.athandler.ATHandler.getSimStatus(ATHandler.java:130)
at org.smslib.modem.AModemDriver.connect(AModemDriver.java:131)
at org.smslib.modem.ModemGateway.startGateway(ModemGateway.java:158)
at org.smslib.Service$1Starter.run(Service.java:239)
60047 [pool-1-thread-3] WARN smslib - WatchDog: Gateway: modem.com3 restarting.
60047 [pool-1-thread-3] INFO smslib - GTW: modem.com3: Stopping gateway...
60047 [pool-1-thread-3] INFO smslib - GTW: modem.com3: Closing: COM3 @9600
60047 [pool-1-thread-3] INFO smslib - GTW: modem.com3: Gateway stopped.
60047 [pool-1-thread-3] INFO smslib - GTW: modem.com3: Starting gateway, using Generic AT Handler.
60047 [pool-1-thread-3] INFO smslib - GTW: modem.com3: Opening: COM3 @9600





java代码

public class SendMessage
{
public void doIt() throws Exception
{
Service srv;
OutboundMessage msg;
OutboundNotification outboundNotification = new OutboundNotification();
srv = new Service();
SerialModemGateway gateway = new SerialModemGateway("modem.com3","COM3",9600,"11","22");

gateway.setInbound(true);
gateway.setOutbound(true);
gateway.setSimPin("0000");
gateway.setProtocol(Protocols.PDU);

srv.setOutboundNotification(outboundNotification);
srv.addGateway(gateway);

System.out.println("==========");

srv.startService();

System.out.println("==========");


msg = new OutboundMessage("1391******", "aaaa1234567");
msg.setEncoding(MessageEncodings.ENCUCS2);//这句话是发中文短信必须的
srv.sendMessage(msg);
System.out.println("Now Sleeping - Hit <enter> 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();
}
}
}
...全文
1362 14 打赏 收藏 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
stty808652 2012-04-26
  • 打赏
  • 举报
回复
System.out.println("Now Sleeping - Hit <enter> to terminate.");
System.in.read();
这两句话大家一定要注意,如果你是运行在eclipse上,那么请通过enter键来执行stopservice。
否则将上面两句话注释掉也没有问题,这样就不会出现一次运行后,需要释放端口的问题了。
stty808652 2012-04-26
  • 打赏
  • 举报
回复
SerialModemGateway("modem.com3","COM3",9600,"11","22");
其中11和22必须写成你的设备上对应的信息才可以。
我测试过,修改为正确的设备信息后没有问题了。
我用的是Wavecom的wismo,所以我的是这样写的SerialModemGateway("modem.com3","COM3",9600,"Wavecom","wismo");
koskoswh12 2011-07-04
  • 打赏
  • 举报
回复
........所有的端口都是通的~ 问题是因为 我之前测试的代码不对而没有重启服务,可能是因为端口堵塞,所以就一直报错~重启服务再测试问题解决
jiantianjiantian 2011-06-30
  • 打赏
  • 举报
回复
同上啊,我发现中国人很sb,自己解决了,就跑一边偷着乐去,从不管别人,真恶心
zhlsuperanine 2010-12-26
  • 打赏
  • 举报
回复
No response from device 能帮个忙吧
cnwuzhulin 2010-11-23
  • 打赏
  • 举报
回复
怎么解决的呀,,速求?
yulongblue 2010-10-26
  • 打赏
  • 举报
回复
什么标识?具体点,哥哥
yekai012 2010-08-21
  • 打赏
  • 举报
回复
标识不对,
canuonifeng 2010-01-08
  • 打赏
  • 举报
回复
zen me jie jue de ?
zdl520 2010-01-04
  • 打赏
  • 举报
回复
org.smslib.TimeoutException: No response from device 造成这个原因什么啊?
koskoswh12 2009-07-17
  • 打赏
  • 举报
回复
解决了~~谢谢楼上的高手~
kingfish 2009-07-17
  • 打赏
  • 举报
回复
检查smslib的详细日志
koskoswh12 2009-07-17
  • 打赏
  • 举报
回复
代码是Smslib库中的例子,端口也测试过了是可以用的~ 就是不知道为什么程序打开不了端口~
kingfish 2009-07-17
  • 打赏
  • 举报
回复
1. 超级终端里先测试通过再说
AT
AT+CSQ
AT+CREQ?
...

至少保证Baud Rate设置正确, GSM Modem正常

2. 测试你的程序。

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧