在把短信X连接到服务器COM1接口后,最好先用个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" , "测试短信" );
- }
- }
如果收到短信,则说明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)
相关推荐
Java发送短信:应用华为短信平台接口发送手机短信。
Java发送短信的逻辑涉及到多个步骤和技术,这包括与短信网关的交互、处理异步通信、错误处理以及可能的安全措施。下面将详细讲解这个过程。 首先,Java发送短信的核心是利用HTTP或HTTPS协议与短信服务提供商的API...
以上就是关于"Java发送短信验证码"的核心知识点。通过理解这些概念,你将能够构建自己的Java应用程序,实现在用户交互时发送短信验证码的功能。记得在实际使用中,根据信易通短信平台的具体接口文档进行调整。
在SMSLIB的基础上进行简单的封装,可以创建一个更高级别的API,使得Java开发人员可以更方便地进行短信操作,例如提供一个发送短信的静态方法,自动处理错误和异常,以及提供更友好的API接口。 例如,你可以创建一个...
以下将详细解析这个“java发送短信接口”的知识点。 1. **短信服务提供商SDK**: 在描述中提到了“sdk接口文档”,这意味着我们首先需要集成一个短信服务提供商的SDK。这些SDK(Software Development Kit)通常由...
发送短信可能会遇到网络问题、超时、账号权限等问题,工具类应包含合适的异常处理机制,以便在发送失败时能给出反馈,帮助开发者定位问题。 6. **测试与调试**: 在实际使用前,应该先在测试环境中进行验证,确保...
Java串口发送短信库是一种利用Java编程语言实现的类库,专用于通过串行通信接口发送短信。这个库设计简洁,使得开发人员可以方便地构建和发送PDU(Protocol Data Unit),这是SMS消息的一种二进制格式。PDU模式是GSM...
CMPP2.0短信网关发送短信代码是Java开发者用于与中国移动通信集团的短信服务进行交互的一种技术实现。CMPP(China Mobile Short Message Peer-to-Peer)2.0协议是移动运营商提供的一种通信协议,主要用于短信业务的...
Java代码实现短信猫发送短信是一项常见的通信应用,主要利用了串行通信技术。短信猫,又称GSM调制解调器,是一种硬件设备,通过USB或串口与计算机连接,可以实现短信的收发功能。在Java编程环境中,我们可以利用Java...
Java 实现发送短信是一项常见的需求,特别是在开发基于Web或移动应用的过程中,用于验证用户身份、通知服务或进行营销活动。本教程将详细讲解如何利用Java调用接口来完成短信发送的功能。 首先,我们需要理解发送...
Java发送短信程序是一种常见的通信技术,它允许应用程序通过网络向移动设备发送文本消息。这个程序通常涉及使用SMS(Short Message Service)服务提供商的API来实现。以下是对这一主题的详细阐述: 1. **Java编程...
总的来说,Java发送短信涉及到与第三方短信服务提供商的接口交互,这需要理解HTTP请求和响应的基本概念,以及JSON数据的处理。通过以上步骤,你可以实现在Java应用程序中发送短信的功能。在实际开发中,还应考虑性能...
【标题】"smslib java发送短信"涉及到的是Java平台下使用smslib库来实现短信发送的功能。smslib是一个开源的Java库,专为开发者提供发送和接收短信的能力,尤其适用于那些需要通过短信猫(Modem)或其他短信网关进行...
Java发送短信包LemonSMS是一个专门用于在Java应用程序中实现短信发送功能的工具包。它提供了丰富的API和类库,使得开发者能够轻松地集成短信发送服务到他们的项目中,从而进行验证码验证、通知推送或者营销活动等...
根据提供的文件信息,本文将详细解释如何使用Java发送短信到手机以及进行相关的查询操作。文章首先会概述如何通过Java程序实现短信发送功能,并探讨其实现原理。随后将深入讨论示例代码中的具体方法,包括发送短信...
在中国电信的SMGP(Short Message Gateway Protocol)协议中,发送短信功能是通过API接口来实现的,这在Java编程环境中尤为常见。SMGP是专为短消息服务设计的一种通信协议,用于连接短信中心(SMSC)和短信网关,...
/**短信发送方*/ private String sender;//短信发送方 /**短信接收发*/ private String recver;//短信接收发 /**时间*/ private Date date; public String getSmstext() { return smstext; } public void...
在Java编程环境中,发送短信是一项常见的任务,尤其在企业级应用和服务中,如通知系统、验证码验证等。本文将深入探讨如何使用飞信(Fetion)的API来实现这一功能。飞信是中国移动推出的一款即时通讯软件,它提供了...
8. **线程安全与并发**:如果需要大量并发发送短信,考虑使用线程池或者异步处理,避免过多的并发请求导致服务器压力过大。 9. **日志记录**:为了调试和追踪,添加日志记录,记录每次请求和响应的详细信息。 在...
在Java后端开发中,发送短信是一项常见的功能,主要用于用户验证、通知服务或者营销活动等。为了实现这个功能,开发者通常会使用特定的第三方库或框架,这些库被称为“短信包”或者“短信SDK”。本篇文章将详细讲解...