`
darkranger
  • 浏览: 24886 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java通信

阅读更多
Java代码
import java.util.ArrayList;   
import java.util.List;   
import java.util.regex.Matcher;   
import java.util.regex.Pattern;   
  
import org.smslib.IOutboundMessageNotification;   
import org.smslib.OutboundMessage;   
import org.smslib.Service;   
import org.smslib.Message.MessageEncodings;   
import org.smslib.modem.SerialModemGateway;   
  
/**  
* 短信发送测试类  
* @author mazq  
*  
*/  
public class SMSUtil{   
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 void sendSMS(String mobilePhones,String content){   
//  System.out.println(mobilePhones+"--"+content);   
     Service srv;   
     OutboundMessage msg;   
     OutboundNotification outboundNotification = new OutboundNotification();   
     srv = new Service();   
//     SerialModemGateway gateway = new SerialModemGateway("modem.com1", "COM1", 115200, "wavecom", "9600");   
     SerialModemGateway gateway = new SerialModemGateway("modem.com1", "COM1", 115200, "wavecom", "9600");   
     gateway.setInbound(true);   
     gateway.setOutbound(true);   
     gateway.setSimPin("0000");   
     gateway.setOutboundNotification(outboundNotification);   
     srv.addGateway(gateway);   
     System.out.println("初始化成功,准备开启服务");   
     try{   
      srv.startService();   
   System.out.println("服务启动成功");   
    String[] phones = mobilePhones.split(",");   
     for(int i=0;i<phones.length;i++){   
      msg = new OutboundMessage(phones[i], content);//手机号码,和短信内容   
      msg.setEncoding(MessageEncodings.ENCUCS2);//这句话是发中文短信必须的   
      srv.sendMessage(msg);   
      System.out.println(phones[i]+" == "+content);   
     }   
     srv.stopService();   
    }catch(Exception e){   
     e.printStackTrace();   
    }   
}   
public static void main(String[] args) {   
  SMSUtil util = new SMSUtil();   
  util.sendSMS("1355xxxxxxx","测试短信");   
}   
  

import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import org.smslib.IOutboundMessageNotification;
import org.smslib.OutboundMessage;
import org.smslib.Service;
import org.smslib.Message.MessageEncodings;
import org.smslib.modem.SerialModemGateway;

/**
* 短信发送测试类
* @author mazq
*
*/
public class SMSUtil{
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 void sendSMS(String mobilePhones,String content){
//  System.out.println(mobilePhones+"--"+content);
     Service srv;
     OutboundMessage msg;
     OutboundNotification outboundNotification = new OutboundNotification();
     srv = new Service();
//     SerialModemGateway gateway = new SerialModemGateway("modem.com1", "COM1", 115200, "wavecom", "9600");
     SerialModemGateway gateway = new SerialModemGateway("modem.com1", "COM1", 115200, "wavecom", "9600");
     gateway.setInbound(true);
     gateway.setOutbound(true);
     gateway.setSimPin("0000");
     gateway.setOutboundNotification(outboundNotification);
     srv.addGateway(gateway);
     System.out.println("初始化成功,准备开启服务");
     try{
      srv.startService();
   System.out.println("服务启动成功");
    String[] phones = mobilePhones.split(",");
     for(int i=0;i<phones.length;i++){
      msg = new OutboundMessage(phones[i], content);//手机号码,和短信内容
      msg.setEncoding(MessageEncodings.ENCUCS2);//这句话是发中文短信必须的
      srv.sendMessage(msg);
      System.out.println(phones[i]+" == "+content);
     }
     srv.stopService();
    }catch(Exception e){
     e.printStackTrace();
    }
}
public static void main(String[] args) {
  SMSUtil util = new SMSUtil();
  util.sendSMS("1355xxxxxxx","测试短信");
}

}

如果收到短信,则说明ok了

如果在日志中输出下面的内容,一般是说你的commons-net-1.4.1.jar或comm.jar没有配置到classpath中
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)

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics