구체적인 단계는 다음과 같습니다:
1. smslib-3.3.0b2.jar, comm.jar 및 log4j-1.2.11.jar을 프로젝트 lib에 넣습니다.
2. %JAVA_HOME%/jre/lib 아래에 javax.comm.properties를 넣습니다.
3. %JAVA_HOME%/jre/bin 아래에 win32com.dll을 배치합니다.
4 %JAVA_HOME%/jre/ext 아래에 comm.jar을 넣습니다.
참고: 경로가 잘못된 경우 호출 시 오류가 보고됩니다. 사용된 JDK 버전은 jdk-1_5_0_04입니다.
다음과 같이 코드 코드를 복사합니다.
패키지 com.alonely.notecat;
org.smslib.IOutboundMessageNotification 가져오기;
org.smslib.Outbou,ndMessage 가져오기;
org.smslib.Service 가져오기;
org.smslib.Message.MessageEncodings 가져오기;
org.smslib.modem.SerialModemGateway 가져오기;
공개 클래스 SendMessage {
공개 클래스 OutboundNotification은 IOutboundMessageNotification을 구현합니다.
공개 무효 프로세스(String GatewayId, OutboundMessage msg) {
System.out.println("게이트웨이에서 호출된 아웃바운드 처리기: "
+ 게이트웨이 ID);
System.out.println(msg);
}
}
@SuppressWarnings("지원 중단")
공공 무효 sendSMS(문자열 mobilePhones, 문자열 콘텐츠) {
서비스 서비스;
아웃바운드메시지 메시지;
OutboundNotification outboundNotification = 새로운 OutboundNotification();
srv = 새로운 서비스();
SerialModemGateway 게이트웨이 = new SerialModemGateway("modem.com3",
"COM3", 9600, "wavecom", "") //포트 및 전송 속도 설정
Gateway.setInbound(true);
Gateway.setOutbound(true);
Gateway.setSimPin("0000");
Gateway.setOutboundNotification(outboundNotification);
srv.addGateway(게이트웨이);
System.out.println("초기화 성공, 서비스 시작 준비 완료");
노력하다 {
srv.startService();
System.out.println("서비스가 성공적으로 시작되었습니다.");
String[] 전화 = mobilePhones.split(",");
for (int i = 0; i <phones.length; i++) {
msg = new OutboundMessage(phones[i], 콘텐츠);
msg.setEncoding(MessageEncodings.ENCUCS2) // 중국어
srv.sendMessage(msg);
}
srv.stopService();
} 잡기(예외 e) {
e.printStackTrace();
}
}
공개 정적 무효 메인(String[] args) {
SendMessage sendMessage = 새로운 SendMessage();
sendMessage.sendSMS("보내고 싶은 휴대폰 번호", "보내고 싶은 내용!");
}
}