Post kali ini, kita akan membahas bagian dari AplikasiSMS, yaitu tentang konfigurasi modem untuk smslib dan langkah-langkah yang diperlukan untuk memulai service smslib.
Di dalam source code AplikasiSMS, terdapat sebuah method dengan nama initModem() yang terdapat pada class arfa.ussd.views.MainView.java, method ini berisi script yang akan kita bahasa kali ini.
public void initModem(){ gateway = new SerialModemGateway("modem-"+SessionUtil.com, SessionUtil.com, SessionUtil.baudrate, "HP Q", ""); gateway.setProtocol(Protocols.PDU); gateway.setInbound(true); gateway.setOutbound(true); outboundNotification = new OutboundNotification(); inboundNotification = new InboundNotification(); ussdNotification = new USSDInboundNotification(); try{ service = Service.getInstance(); service.S.SERIAL_POLLING=true; //service.S.SERIAL_NOFLUSH=true; service.S.SERIAL_TIMEOUT=15000; service.S.QUEUE_SCHEDULING_INTERNAL=3000; service.setOutboundMessageNotification(outboundNotification); service.setInboundMessageNotification(inboundNotification); service.setUSSDNotification(ussdNotification); service.addGateway(gateway); service.startService(); setTitle(getTitle()+" - "+gateway.getManufacturer()); }catch(Exception exception){ onWarning("Terjadi Kesalahan Init Modem !!\n"+exception.getMessage()); gateway = null; exception.printStackTrace(); } }
Pada baris ke 2 sampai dengan 4, digunakan untuk mendefinisikan gateway yang digunakan, disitu kita tentukan port, baudrate, dan id dari modem yang digunakan.
Pada baris ke 7 sampai 9 terdapat inisialisasi object yang digunakan untuk memproses outbound message, inbound message, dan ussd inbound message. Kemudian object tersebut dimasukkan kedalam object service yang telah dibuat sebelumnya. Baru setalah itu service SMSLib di jalankan seperti pada baris 20.
Jika tidak ada kesalahan konfigurasi, SMSLib seharusnya sudah berjalan dengan normal. Untuk penjelasan method method yang lain, akan dibahas lain waktu ya… 😀
Selamat mencoba