Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251
Aplikasi Shutdown, Restart, dan Logoff Komputer Berbasis SMS dengan Menggunakan Java Vivilia Pertiwi1, Nixon Erzed2, Ida Nurhaida3 Jurusan Teknik Informatika, Fakultas Ilmu Komputer, Universitas Mercu Buana Jl. Raya Meruya Selatan, Kembangan, Jakarta, 11650 E-mail :
[email protected] Abstrak -- Short Messaging Service (SMS) merupakan salah satu fitur dari GSM yang di kembangkan dan distandarisasikan oleh European Telecomunication Standard Institute (ESTI). SMS memiliki tarif yang lebih murah bila dibandingkan dengan biaya telepon dan dengan menggunakan teknologi SMS kini bisa diperoleh informasi dari mana saja tanpa dibatasi oleh jarak selama masih dalam jangkauan operator GSM. Penelitian ini bertujuan untuk membuat suatu sistem yang mampu memberikan kemudahan dalam proses shut down, restart, dan log off komputer dimana saja berada dengan menggunakan media SMS. Bahasa pemograman yang digunakan adalah bahasa JAVA dan My SQL sebagai pengolah basis data. Kata Kunci : Sistem Informasi Client Server, AT Command, format PDU, My SQL, JAVA 6, dan GUI. I. PENDAHULUAN Teknologi komunikasi berkembang sangat pesat seiring dengan semakin banyaknya implementasi teknologi tersebut dalam kehidupan sehari-hari. Salah satu teknologi yang berkembang saat ini adalah Global System for Mobile Communication (GSM). GSM memiliki fitur Short Messaging Sevice (SMS) yang merupakan salah satu media yang paling banyak digunakan oleh masyarakat sekarang ini. Handphone dengan fungsi SMS-nya dapat melakukan suatu perintah apapun dengan syarat perintah tersebut telah ditulis dalam sebuah program. Dengan melihat kondisi tersebut di atas maka pada penelitian ini dilakukan pembuatan suatu sistem yang berbeda apabila ditinjau dari pemanfaatan dan fungsi SMS. Berkaitan dengan hal ini fungsi SMS melalui Handphone diterapkan sebagai remote kontrol untuk mematikan dan memonitoring komputer. Tujuan penelitian ini adalah membuat sebuah sistem aplikasi yang dapat membantu untuk memudahkan dalam melakukan Shutdown, Restart, atau Logoff komputer dari jarak jauh dimana saja tanpa harus mematikan komputer secara manual, yaitu dengan menekan tombol power. Pada sistem ini digunakan media Handphone untuk memberikan
perintah mematikan komputer dari jarak jauh tanpa dibatasi ruang. II. METODOLOGI PENELITIAN Dalam melakukan perancangan aplikasi ini metodologi perangkat lunak yang digunakan oleh penulis adalah: 1. Studi pustaka terhadap program yang akan dibuat khususnya bahasa pemrograman Java. 2. Analisa terhadap kebutuhan sistem aplikasi yang akan dibuat dan melakukan spesifikasi aplikasi secara lebih detail. 3. Membuat desain terhadap aplikasi berdasarkan hasil analisa. 4. Membuat program terhadap aplikasi berdasarkan desain yang telah dibuat. 5. Melakukan pengujian dan evaluasi terhadap program yang telah dibuat. III. HASIL DAN PEMBAHASAN 3.1 Pemodelan Diagram Alir Data Diagram alir data menggambarkan sistem sebagai jaringan kerja antara fungsi yang berhubungan satu sama lain dengan aliran dan penyimpanan data [7]. Dari analisis perancangan aplikasi di atas, dapat dibuat sebuah diagram konteks yang merupakan DAD level teratas, yang digambarkan pada Gambar 1. Dari Gambar 1 tersebut dapat dijelaskan bahwa terdapat tiga terminator yang berhubungan dengan sistem aplikasi yaitu server, client, dan pengguna. Diagram konteks tersebut memperlihatkan proses yang berinteraksi dengan lingkungannya. 3.2 Pemodelan Diagram Alir Data Level 0 Pemodelan DAD level 0 dapat dilihat pada Gambar 2. Aliran data dimulai dari pengguna yang memulai proses registrasi kemudian diproses oleh server untuk dilanjutkan oleh client yang mengeksekusi program. Selanjutnya pengguna dapat melakukan proses request data dengan format Request Pengguna <spasi>IP Address. Perintah Request Pengguna seperti Shut untuk mematikan komputer, Rest untuk merestart komputer, Log untuk melogoff komputer, dan Lihat untuk memonitoring status komputer klien
588
Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251
Gambar 1. Diagram Konteks
Gambar 2. Diagram Alir Data Level 0 3.3 Pemodelan Diagram Hubungan Entitas Diagram Hubungan Entitas atau Entity Relationship Diagram, selanjutnya disebut ERD adalah model konseptual yang mendeskripsikan hubungan antar penyimpanan [2] [3]. Diagram tersebut digunakan untuk memodelkan struktur data dan hubungan antar data [1]. Pada basis data yang dibangun, terdapat empat entitas, dan hanya satu tabel
yang tidak mempunyai entitas. Secara umum ERD dari yang akan dibangun digambarkan pada Gambar 3. Masing-masing hubungan antar entitas mempunyai atribut yang menghubungkannya dan memiliki primary key pada masing- masing entitas. Pada sistem ini menggunakan basis data yang mempunyai 5 tabel untuk menyimpan data.
589
Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251
Gambar 3. ERD secara umum
Tabel 1. Rancangan Basis Data Aplikasi Alat Pemantau.
3.4 Implementasi Aplikasi Remote Komputer 3.4.1 Tampilan Layar Server Pada tampilan Layar Receiver Server ini terdapat beberapa tombol yang akan melakukan kegiatan penyambungan/koneksi handphone dengan komputer melalui media kabel data (COM). Tombol-tombol yang digunakan adalah tombol Sambung, Putus, dan Exit. Jika ingin melakukan koneksi ke handphone, terlebih dahulu memilih port/com yang terkoneksi dengan kabel data. Setelah itu pilih kecepatan transfer data dan menekan tombol Sambung untuk melakukan koneksi. Pada server hanya terdapat satu tampilan layar namun proses aplikasi remote komputer tidak akan bisa berjalan jika layar server tidak dapat ditampilkan. Tampilan layar aplikasi server tampak pada Gambar 4 dengan asumsi bahwa port belum dipilih, kecepatan transfer belum dipilih, dan server
dengan ponsel terkoneksi.
590
(telepon
seluler)
server
Gambar 4. Tampilan Layar Awal Server.
belum
Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251
Sedangkan prosedur-prosedur utama yang ada pada aplikasi server akan dijelaskan sebagai berikut: 1. Prosedur ReceiverServer Prosedur pertama yang akan dipanggil oleh aplikasi server adalah prosedur ReceiverServer yang berfungsi untuk menampilkan tampilan dan objek-objek didalam layar dan kode programnya adalah sebagai berikut: public POMBensin(){ SetLayout(); SetObject(); }
2. Prosedur SetLayout Prosedur SetLayout berfungsi untuk mendeskripsikan bagaimana layar server akan ditampilkan, judul dari frame layar, dan bagaimana label serta panel diletakan. Potongan kode programnya adalah sebagai berikut: public void SetLayout(){ setTitle("Receiver Remote Komputer"); getContentPane().setLayout(null); setResizable(false); lblGambar =new JLabel ( new ImageIcon ( "Gambar/mercu.jpg" ) ); btnPutus.enable(false); getContentPane().add(borderUtama,null); borderUtama.setBounds(1,1,642,415);
3. Prosedur SetObject Fungsi dari prosedur SetObject adalah untuk mengatur tampilan dari tiap objek pada aplikasi server mulai dari jenis, ukuran, sampai warna huruf. Potongan kode programnya adalah sebagai berikut: public void SetObject(){ lblPort.setFont(new Font("Arial",Font.PLAIN,18)); lblPort.setForeground(Color.WHITE); lblPort.setText("Port"); lblKecTrans.setFont(new Font("Arial",Font.PLAIN,18)); lblKecTrans.setText("Kec Trans"); lblKecTrans.setForeground(Color.WHITE); lblStatusKoneksi.setFont(new Font("Arial",Font.PLAIN,16)); lblStatusKoneksi.setText ("Status : "); lblStatusKoneksi.setForeground(Color.WHI TE);
4. Prosedur dapatport() Prosedur dapatport digunakan saat pemilihan port dilakukan. Prosedur berisi nilai pilih (option value) port. Port yang akan dipilih harus disesuaikan dahulu pada jenis ponsel server yang digunakan.. Kode programnya adalah sebagai berikut: public void dapatport(){ daftarPort = CommPortIdentifier.getPortIdentifiers(); while (daftarPort.hasMoreElements()) { portId = (CommPortIdentifier) daftarPort.nextElement(); if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) { namaPort = portId.getName(); PilihPort.addItem(namaPort); }
} }
5. Prosedur kirimATCommand Prosedur kirimATCommand dipanggil di beberapa prosedur lain seperti cekPerintahPesanSms, ProsesKirimSms, dan ProsesTerimaSms. Prosedur ini membaca nilai benar (true) atau salah (false) terhadap waktu tunggu dan interupsi yang terjadi. Kode Programnya adalah sebagai berikut: public void kirimATCommand(String atCmd, int delay) { Boolean tungguDelay = new Boolean(true); boolean getDelay = false; synchronized (tungguDelay) { try { output.write( (atCmd).getBytes()); output.flush(); } catch (IOException e) {} try { tungguDelay.wait(delay); } catch (InterruptedException ie) { getDelay = true; } } }
6. Prosedur nyambungPort Pada prosedur nyambungPort interaksi antara aplikasi server dengan ponsel server tampak jelas terjadi. ATCommand juga hanya digunakan pada prosedur ini. Fungsi dari prosedur ini adalah untuk membaca format pesan, seting karakter, tempat pesan disimpan, indikasi pesan baru, nomor ponsel, dan merek ponsel. Potongan kode programnya adalah: kirimATCommand("AT" + "\15", 1250); kirimATCommand("AT+CMGF=0" + "\15", 1250); kirimATCommand("AT+CSCS=GSM" + "\15", 1250); kirimATCommand("AT+CPMS=ME,ME,ME" + "\15", 1250); kirimATCommand("AT+CNMI=1,1,2,2,1" + "\15", 1250); kirimATCommand("AT+CGSN"+"\15",1250); kirimATCommand("AT+CGMI"+"\15",1250); JOptionPane.showMessageDialog(this,"Kone ksi :"+"\n"+"Port "+nilaiPort+" Berhasil","Informasi..!!", JOptionPane.INFORMATION_MESSAGE); lblHasilStatusKoneksi.setText("Tersambun g"); lblHasilPortKoneksi.setText(nilaiPort); lblHasilKecTransKoneksi.setText(pilihKec Trans.getSelectedItem()); btnSambung.setEnabled(false); btnPutus.setEnabled(true); PilihPort.setEnabled(false); pilihKecTrans.setEnabled(false);
3.4.2 Tampilan Layar Client Pada tampilan Layar Aplikasi Client ini terdapat beberapa tombol yang digunakan. Tombol-tombol yang digunakan adalah tombol Sambung, Exit.
591
Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251
Untuk melakukan koneksi ke komputer server, user harus menginputkan Ip Address Server dan menginputkan port yang akan digunakan oleh komputer client, kemudian tekan tombol sambung untuk melakukan koneksi. Apabila koneksi berhasil, pada Panel respone akan tertulis koneksi berhasil dan nama komputer server akan muncul seperti gambar 4.2. Pada client hanya terdapat satu tampilan layar namun proses aplikasi remote komputer tidak akan bisa berjalan jika layar client tidak dapat ditampilkan.
Di sini terdapat skenario pengujian Proses registrasi user, proses mematikan komputer 1 PC dan proses monitoring PC. 3.5.1.2 Skenario Pengujian Client Skenario pengujian dengan menggunakan metode black box yang memperhatikan struktur kontrol dari client aplikasi perangkat lunak. Skenario pengujian black box pada client tampak pada Tabel 2. Tabel 2. Skenario Pengujian Black Box. No. 1. 2. 3.
Gambar 5. Tampilan layar Utama Client 3.5. Pengujian Tahapan pengujian dilakukan untuk mengetahui kualitas suatu perangkat lunak. Dalam tahap pengujian ini melibatkan spesifikasi kebutuhan sistem dan metoda yang digunakan adalah black box [4]. Pengujian pada aplikasi server sebagai operator aplikasi remote computer. 3.5.1 Skenario Pengujian Skenario pengujian dibentuk berdasarkan pengujian pada server dan pengujian pada client. Pengujian pada server bertujuan untuk mengumpulkan data keberhasilan program apliaksi remote komputer. Sedangkan pada client adalah untuk menguji sejauh apa aplikasi berhasil memanipulasi data pada basis data. 3.5.1.1 Skenario Pengujian Server Untuk pengujian server skenario yang akan dilakukan adalah: 1. Ponsel server menggunakan Samsung V200. 2. Ponsel pelanggan menggunakan Nokia 3230. 3. Ponsel server menggunakan ponsel Siemens A55. 4. Ponsel server menggunakan Siemens C55. 5. Sim card AS digunakan pada ponsel server dan sim card Mentari digunakan pada ponsel pelanggan. 6. Sim card AS digunakan pada ponsel server dan ponsel pelanggan. 7. Sim card AS digunakan pada ponsel server dan sim card Simpati digunakan pada ponsel pelanggan. 8. Sistem Operasi Win XP SP2 sebagai server dan sistem operasi Win XP SP1 sebagai client. 9. Sistem Operasi Win XP SP2 sebagai server dan sistem operasi Win 2000 sebagai client.
Pengujian Pengujian registrasi user Pengujian mematikan komputer Pengujian monitoring PC
Target Pengujian registrasi berjalan dengan benar. Pengujian mematikan komputer berjalan dengan benar. Pengujian monitoring komputer berjalan dengan benar.
3.6 Analisis Hasil Pengujian Dari beberapa pengujian yang telah dilakukan diperoleh hasil bahwa: 1. Ponsel Server AT Command tidak dapat dibaca oleh semua ponsel khususnya perintah yang berkaitan dengan pesan teks. Semakin baru ponsel maka akan semakin sulit untuk dapat membaca AT Command terutama pada ponsel yang memiliki banyak aplikasi didalamnya. Sedangkan pada ponsel yang dapat membaca AT Command belum tentu dapat menjadi ponsel server secara otomatis. 2. Kabel data Tiap jenis ponsel memiliki kabel data yang berbeda. Kabel data dapat digunakan untuk memanipulasi data ponsel melalui koneksi port yang ditentukan oleh masing-masing vendor. Namun saat diuji di HyperTerminal atau server aplikasi alat pemantau port menjadi tidak ada. 3. Sim Card Awalnya semua nomor ponsel dari sim card apapun dapat dibaca oleh server tapi jka berbeda vendor sim card maka pesan tidak terkirim ke tujuan melainkan nomor lain yang vendor sim cardnya sama dengan ponsel server ataupun server akan lebih lama merespon sms yang masuk dibandingkan sim card yang bervendor sama. 4. Proses Registrasi User Untuk melakukan registrasi, user cukup mengetik reg#nama lengkap#IP Address Komputer user#Status. Kemudian kirim ke no hp server. Contoh user ingin mendaftarkan nomornya untuk dapat mematikan komputernya yang memiliki Ip Address 192.168.100.3 melalui sms. Untuk itu ketik reg#vivi#192.168.100.3#shut. Ketika proses registrasi berhasil, user akan mendapatkan pesan balasan yang berisi “ Selamat Bergabung Di Layanan Kami, Untuk Menggunakan Layanan Ini Ketik:Shut/Rest/Logg<spasi>Ip Komputer yang telah didaftarkan. Contoh Shut 192.168.100.3. 5. Proses Mematikan Komputer 1 PC Untuk melakukan proses mematikan komputer melalui sms. User yang nomornya telah didaftarkan dapat mengetik perintah
592
Seminar Nasional Pengaplikasian Telematika SINAPTIKA 2010 – ISSN 2086-8251
6.
7.
shut<spasi>IP Address yang telah didaftarkan kemudian kirim ke nomor server. Contoh : Shut 192.168.100.3. Ketika proses shutdown telah dilaksanakan oleh komputer client. User akan mendapatkan pesan balasan yang berisi “Terima kasih, komputer anda dengan Ip 192.168.100.3 telah kami matikan / shutdown”. Proses monitoring PC Pada aplikasi ini user juga dapat memonitoring keadaan komputernya dari jarak jauh melalui media sms. Maksud dari memonitoring adalah user dapat mengetahui keadaan komputernya apakah komputernya masih keadaan hidup atau dalam keadaan mati. Untuk melakukan kegiatan ini user memberi perintah melalui sms. Format penulisan untuk melakukan proses ini adalah LIHAT<spasi>Ip Address Komputer. Proses uji coba program Sistem ini akan berjalan lancar jika aplikasi clientnya ditempatkan pada komputer yang memiliki Sistem Operasi Windows XP. Sedangkan untuk aplikasi Receiver Servernya dapat ditempatkan di komputer yang memiliki Sistem Operasi apa saja seperti : Windows XP, Windows 2000, Windows 9x atau Linux.
[5] Gunawan, Ferry 2003. Membuat Aplikasi SMS Gateway Server dan Client. Jakarta: Elex Media Komputindo. [6] Purnama, Rangsang. 2007. Pemrograman GUI menggunakan Java. Jakarta: Prestasi Pustaka Publisher. [7] Indrajani, Martin. 2004. Pemrograman Berorientasi Objek dengan Java. Jakarta: Elex Media Komputindo.
IV. KESIMPULAN Berdasarkan proses-proses yang telah dilakukan pada penelitian ini dapat diambil beberapa kesimpulan, yaitu: 1. Ponsel (telepon seluler) yang digunakan sebagai ponsel server harus dapat membaca AT Command yang ada pada aplikasi server dan tidak semua tipe ponsel dapat menjadi ponsel server. 2. Pengiriman pesan teks antraa ponsel server dengan ponsel pelanggan dapat berjalan baik walau memerlukan waktu untuk dapat beradaptasi terlebih dahulu. 3. Aplikasi ini baru bisa berjalan jika komputer terhubung dengan jaringan. 4. Sistem ini akan berjalan lancar jika aplikasi clientnya ditempatkan pada komputer yang memiliki Sistem Operasi Windows XP. Sedangkan untuk aplikasi Receiver Servernya dapat ditempatkan di komputer yang memiliki Sistem Operasi apa saja seperti : Windows XP, Windows 2000, Windows 9x atau linux. V. DAFTAR PUSTAKA [1] Jogianto. 2005. Analisis dan Desain Sistem Informasi: Pendekatan Terstuktur Teori dan Praktek Aplikasi Bisnis. Yogyakarta: ANDI OFFSET. [2] Munawar. 2005. Pemodelan Visual dengan UML. Yogya: Graha Ilmu. [3] Fowler, Fartin. 2005. UML Distilled Edisi 3. Yogya: Andi. [4] Pressman, Roger S. 1997. Rekayasa Perangkat Lunak Pendekatan Praktisi. Yogya: Andi. 593