📄 testsdk_v16.java~3~
字号:
/**
* <p>Title: SMS100二次开发接口 </p>
* <p>Description: 专为短信猫设备SMS100提供的二次开发接口</p>
* <p>Copyright: Copyright(c) 2003</p>
* <p>Company: 北京阳光智博科技有限公司</p>
* @SuperMan
* @version 1.0
*/
package Test;
import java.lang.*;
import java.io.*;
import java.util.*;
import BestMail.smssend;
public class TestSDK_V16 {
public TestSDK_V16() {
}
/**
* 测试程序
* 1) 连接
* 2)发送测试
* 3)从SIM卡中读取数据
* 4)断开连接
* @param args
*/
public static void main(String[] argv)
{
smssend smssend1 = new smssend();
//测试信息
String text1="Hello! 欢迎使用GSMModem开发包,此包封装了短信收发的所有服务!"; //短信内容
String sendnum="13910597586"; //接收号码
String device = null;//"COM2";
String baud = null;//"9600";
String sn = "ITIU-NWCJ-VCJD-WJDU";
if(argv!=null && argv.length ==2 ){
sendnum = argv[0];
sn = argv[1];
}else
byte[] sendtest=smssend1.getUNIByteArray(text1); //转化为UNICOCE
try
{
//0) 获取注册信息标识码
System.out.println("GSMModemGetSnInfo: Get License Information ... ...");
String sninfo=smssend1.GSMModemGetSnInfoNew(device,baud);
if(sninfo==null){
System.out.println("GSMModemGetSnInfo: connect failed! Error=" +
smssend1.GSMModemGetErrorMsg());
}
System.out.println("GSMModemGetSnInfo=" + sninfo);
//1) 连接设备
System.out.println("GSMModemInit:connecting ... ...");
if (smssend1.GSMModemInitNew(device, baud, null, "GSM", false,sn)==false) {
System.out.println("GSMModemInit: connect failed! Error=" +
smssend1.GSMModemGetErrorMsg());
return;
}
System.out.println("当前通讯端口 = " + smssend1.GSMModemGetDevice());
System.out.println("当前通讯波特率 = " + smssend1.GSMModemGetBaudrate());
//发送多条和接收多次短信举例
int Count=1; //发送次数
while (Count > 0) {
//2)判断是否连接设备,若没有连接的话,则重新连接
if (!smssend1.GSMModemIsConn()) {
if (!smssend1.GSMModemInitNew(device, baud, null, null, false, sn)) {
System.out.println("GSMModemInit: connect failed! Error=" +
smssend1.GSMModemGetErrorMsg());
continue;
}
}
Count--;
//延迟半秒中
//每发送一条短信延迟500ms
try { java.lang.Thread.sleep(500);}
catch (Exception t) {;}
//3)发送短信
System.out.println("GSMModemSMSsend:Send sms through modem, .........");
if (smssend1.GSMModemSMSsend(null, 8, sendtest, sendnum, false))
System.out.println("GSMModemSMSsend: Success!");
else
System.out.println("GSMModemSMSsend: failed! ERROR=" + smssend1.GSMModemGetErrorMsg());
//4) 取信并删除SIM卡中的所有短信
System.out.println("GSMModemSMSReadAll:Recieve ......................");
String[] allmsg = smssend1.GSMModemSMSReadAll(0);
//5) 读出的每一条信息由三部分组成:电话号码#编码#文本内容
for (int kk = 0; allmsg != null && kk < allmsg.length; kk++) {
if (allmsg[kk] == null)
continue;
String tmp[] = allmsg[kk].split("#");
if (tmp == null || tmp.length != 3)
continue;
//5.1)获取数据
String recvnum = tmp[0]; //发送号码
String codeflg = tmp[1];
String recvtext = tmp[2]; //短信内容
if (recvtext != null && codeflg.equalsIgnoreCase("8"))
recvtext = smssend1.HexToBuf(recvtext);
//5.2) 进行其他的处理
System.out.println("recieve: telephone=" + recvnum + ",Content=" + recvtext);
}
if (allmsg == null) {
System.out.println("GSMModemSMSstore: 信息提示 = " + smssend1.GSMModemGetErrorMsg());
}
}//end while
//6) 断开连接
smssend1.GSMModemRelease();
System.out.println("-------------test over!!!---------------------");
}catch(Exception e){
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -