Java を使用して、AT コマンドを使用して 3G ドングル (GSM モデム) から SMS を送信しています。ほとんどの場合、動作していますが、SMS テキストには、それより前に実行された AT コマンドの一部が含まれていることがあります。これは断続的ですが、修正する必要があります。
関連するコードは次のとおりです。
public void sendMessage(String phoneNumber, String message) throws InterruptedException {
char qu=34;
char cz=26;
send("AT+CMGF=1\r\n");
Thread.sleep(2000);
send("AT+CMGS=" + qu + phoneNumber + qu + ",145\r\n");
send(message + cz + "\r");
}
public static void main(String args[]) {
GSMConnect gsm = new GSMConnect("COM22");
if (gsm.init()) {
try {
gsm.connect();
Thread.sleep(2000);
gsm.sendMessage("+9172xxxxxxxx", "Test Message sent from GSM Modem using AT Commands.");
System.out.println("Sleeping for 20 secs");
Thread.sleep(20000);
gsm.hangup();
} catch (Exception e) {
e.printStackTrace();
}
} else {
System.out.println("Can't init this card");
}
}
時々受け取るメッセージは次のとおりです。
AT+CMGS="+9172xxxxxxxx", AT コマンドを使用して GSM モデムから送信された 145 テスト メッセージ。
============
よろしくお願いします。
よろしく、 クマルジット