JavaRush /Blog Jawa /Random-JV /SMS saka modem 3g
Izhak
tingkat
Москва

SMS saka modem 3g

Diterbitake ing grup
Lanjutane crita wingi, aku nggawe riset sithik babagan topik ngirim pesen saka modem 3g. Aku nyoba nganggo modem MTS. SMS saka modem 3g - 1 Sawise nyambungake lan nginstal program kasebut, loro port com dideteksi MobileConnect - Antarmuka Aplikasi (COM34) MobileConnect - Antarmuka UI PC (COM33) Kanggo ngirim pesen, sampeyan kudu nyambung menyang port COM33. Kode Aku nampa package ComKEB; import jssc.*; import java.util.Scanner; /** * Created by ipolma on 8/15/2014. */ public class ComKEB { public static void main(String[] args) { String[] retPorts = SerialPortList.getPortNames(); //for (String port: retPorts){System.out.println(port);} SerialPort serialPort = new SerialPort(retPorts[3]);//"COM4"); указываем второй порт System.out.println(serialPort.getPortName()); if (openSerialPort(serialPort)) { System.out.println("Open"); System.out.println("For close type: \nclose"); } else System.out.println("Not open"); try { Scanner scanner = new Scanner(System.in); String in; serialPort.writeBytes("AT+cmgf=1\r".getBytes()); serialPort.writeBytes("at+cmgs=\"+7926*******\"\r".getBytes()); serialPort.writeBytes("qwweqwe\032".getBytes());//calling ctrl+z while (true) { Thread.sleep(1000); if (scanner.hasNext()) { if ("close".equals((in=scanner.nextLine()))) { if (serialPort.closePort()) System.out.println(serialPort.getPortName() +" close successfull;"); System.exit(0); }else{ } } } }catch(Exception e){e.printStackTrace();} } private static boolean openSerialPort(SerialPort serialPort) { try { //Открываем порт if (serialPort.isOpened()) serialPort.closePort(); //Здесь бывает ситуация Busy, которую не обработаешь - только если ожидать serialPort.openPort(); //Выставляем параметры serialPort.setParams(SerialPort.BAUDRATE_9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_NONE); //Включаем аппаратное управление потоком serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_NONE); PortReader portReader = new PortReader(serialPort); serialPort.addEventListener(portReader, SerialPort.MASK_RXCHAR); return true; }catch(Exception e){ e.printStackTrace(); return false; } } private static class PortReader implements SerialPortEventListener { SerialPort serialPort; public PortReader(SerialPort serialPort) { this.serialPort = serialPort; } public void serialEvent(SerialPortEvent event) { if (event.isRXCHAR() && event.getEventValue() > 0) { try { //Получаем ответ от устройства, обрабатываем данные и т.д. byte[] data = serialPort.readBytes(event.getEventValue()); for (byte b:data) { System.out.println(b); } } catch (SerialPortException ex) { System.out.println(ex); } } } } } SMS COM33 Open For close type: close OK > +CMGS: 6 OK ^RSSI: 17 close COM33 close successfull; karo teks qwweqwe . Bener, aku durung bisa maca apa-apa. Nanging nganti saiki apik :) http://stackoverflow.com/questions/9393097/receiving-and-sending-sms-through-gsm-modem http://stackoverflow.com/questions/9257302/sending-sms-at- commands-to-3g-modem-using-php http://habrahabr.ru/post/133085/ http://serj.kz/content/3
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION