1 NOTIFIKASI KERUSAKAN PERANGKAT JARINGAN BERBASIS ANDROID GILANG PRASETYO IFANDANU PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITA...
NOTIFIKASI KERUSAKAN PERANGKAT JARINGAN BERBASIS ANDROID
GILANG PRASETYO IFANDANU 41512120078
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITAS MERCU BUANA JAKARTA 2015
http://digilib.mercubuana.ac.id/
NOTIFIKASI KERUSAKAN PERANGKAT JARINGAN BERBASIS ANDROID
Laporan Tugas Akhir Diajukan Untuk Melengkapi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer
Oleh : GILANG PRASETYO IFANDANU 41512120078
PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS ILMU KOMPUTER UNIVERSITAS MERCU BUANA JAKARTA 2015
http://digilib.mercubuana.ac.id/
http://digilib.mercubuana.ac.id/
http://digilib.mercubuana.ac.id/
KATA PENGANTAR Puji syukur penulis ucapkan kepada Tuhan YME yang telah melimpahkan karunia-Nya sehingga penulis dapat menyelesaikan laporan tugas akhir ini dengan judul “Notifikasi Kerusakan Perangkat Jaringan berbasis Android”. Penulis mengucapkan terima kasih kepada semua pihak atas bantuan dan bimbingan dalam pembuatan tugas akhir ini, sehingga penulis dapat menyelesaikan laporan tugas akhir ini tepat waktu. Dengan kerendahan hati, pada kesempatan ini penulis mengucapkan terima kasih yang sebesar-besarnya kepada : 1. Bapak Leonard Goeirmanto, ST., Msc selaku Dosen Pembimbing yang telah memberikan bimbingan dan dukungan dlam penyusunan skripsi ini. 2. Bapak Sabar Rudiarto, S.Kom., M.Kom selaku Ketua Program Studi Teknik Informatika 3. Ibu Umniy, ST., MMSI selaku Sekretaris Program Studi Teknik Informatika dan sebagai Koordinator Tugas Akhir Teknik Informatika. 4. Orang tua dan Keluarga selaku pendukung dan motivasi tertinggi dalam hidup. 5. Seluruh teman-teman mahasiswa Teknik Informatika Universitas Mercu Buana angkatan 2013/2014. 6. Semua pihak yang telah membantu dalam penelitian dan penyusunan tugas akhir ini. Penulis menyadari bahwa dalam menyelesaikan laporan tugas akhir ini masih jauh dari sempurna. Oleh karena itu saran dan kritik membangun sangat dibutuhkan guna menyempurnakan laporan tugas akhir ini. Semoga laporan tugas akhir ini dapat bermanfaat bagi siapa saja yang membacanya. Jakarta, Juni 2015
Penulis
iii
http://digilib.mercubuana.ac.id/
DAFTAR ISI LEMBAR PERNYATAAN ..................................................................................... i LEMBAR PENGESAHAN .................................................................................... ii KATA PENGANTAR ........................................................................................... iii ABSTRACT ............................................................................................................. iv ABSTRAK .............................................................................................................. v DAFTAR ISI .......................................................................................................... vi DAFTAR GAMBAR ........................................................................................... viii DAFTAR TABEL .................................................................................................. ix BAB I PENDAHULUAN ....................................................................................... 1 1.1 Latar Belakang .............................................................................................. 1 1.3 Batasan Masalah ............................................................................................ 2 1.4 Tujuan dan Manfaat ....................................................................................... 2 1.5 Metode Penelitian .......................................................................................... 2 1.6 Sistematika Penulisan Laporan ..................................................................... 3 BAB II KAJIAN PUSTAKA .................................................................................. 5 2.1 Sistem Operasi Android ................................................................................ 5 2.1.1 Arsitektur Android .................................................................................. 6 2.1.2 Sejarah Sistem Operasi Android ............................................................. 7 2.2 Jaringan Komputer ...................................................................................... 10 2.2 Network Monitoring .................................................................................... 11 2.2.1 SNMP (Simple Network Management Protocol) ................................. 11 2.2.2 Versi SNMP .......................................................................................... 12 2.2.3 ICMP (Internet Control Message Protocol) .......................................... 13 2.3 Teknologi Push notification ....................................................................... 15
vi
http://digilib.mercubuana.ac.id/
2.4 Google Cloud Messaging (GCM) ............................................................... 16 2.5 Android Studio ............................................................................................ 17 2.6 HTML5 ........................................................................................................ 18 2.7 JSON (JavaScript Object Notation) ............................................................ 20 BAB III ANALISA DAN PERANCANGAN ...................................................... 22 3.1 Gambaran Umum Notifikasi Status Perangkat ........................................... 22 3.2 Identifikasi Masalah .................................................................................... 25 3.3 Analisa Usulan Sistem................................................................................. 25 3.3.1 Analisa Kebutuhan Sistem.................................................................... 25 3.3.2 Analisa Basis Data ................................................................................ 31 3.4 Perancangan interface aplikasi .................................................................... 33 BAB IV IMPLEMENTASI DAN PENGUJIAN .................................................. 36 4.1 Implementasi ............................................................................................... 36 4.1.2 Implementasi Push notification ............................................................ 36 4.1.3 Implementasi menampilkan Status perangkat di Android .................... 41 4.1.4 Implementasi Aplikasi .......................................................................... 44 4.2 Pengujian Aplikasi ...................................................................................... 48 4.2.1 Skenario Pengujian ............................................................................... 49 4.2.2 Hasil Pengujian ..................................................................................... 51 4.2.3 Analisa Hasil Pengujian........................................................................ 53 BAB V KESIMPULAN DAN SARAN ................................................................ 54 5.1 Kesimpulan .................................................................................................. 54 5.2 Saran ............................................................................................................ 54 DAFTAR PUSTAKA ........................................................................................... 55
vii
http://digilib.mercubuana.ac.id/
DAFTAR GAMBAR Gambar 2.1 Google Cloud Messaging ............................................................................ 17 Gambar 3.1 Notifikasi via Email ..................................................................................... 22 Gambar 3.2 Topologi Jaringan Push Notification ........................................................... 23 Gambar 3.3 Notifikasi via Push Notification .................................................................. 26 Gambar 3.4 Algoritma Aplikasi ...................................................................................... 31 Gambar 3.5 Aplikasi – Database Replika........................................................................ 32 Gambar 3.6 Proses replikasi ............................................................................................ 33 Gambar 3.7 Rancangan Menu Login............................................................................... 34 Gambar 3.8 Rancangan Menu Utama ............................................................................. 34 Gambar 3.9 Rancangan Menu Status Perangkat ............................................................. 35 Gambar 3.10 Rancangan Menu Availability ................................................................... 35 Gambar 4.1 Register ID................................................................................................... 38 Gambar 4.2 Notifikasi Masuk ke Android ...................................................................... 41 Gambar 4.3 Skema JSON membaca database ................................................................. 42 Gambar 4.4 Status Perangkat .......................................................................................... 44 Gambar 4.5 Menu Login ................................................................................................. 47 Gambar 4.6 Menu Utama ................................................................................................ 47 Gambar 4.7 Menu Devices Status ................................................................................... 48 Gambar 4.8 Menu Availibility ........................................................................................ 48
viii
http://digilib.mercubuana.ac.id/
DAFTAR TABEL Tabel 2.1 Perbandingan Protokol .......................................................................... 15 Tabel 2.2 System requirement Android Studio ..................................................... 18 Tabel 4.1 Skenario Pengujian ............................................................................... 49 Tabel 4.2 Hasil Pengujian ..................................................................................... 53
ix
http://digilib.mercubuana.ac.id/
ABSTRACT Internet already part of our lives. The fast internet access is possible because the development of the network equipment nowadays. So does the development of mobile devices like smartphone. The network devices has to work all the time. Generally the alert notification will send via email, but its a pain with the possibility of hundreds mail per-day to find the notification that mixed with other emails. Therefore the application to receive the message contain status of the devices was built.
The notification alert will send to an Android Based application that receives the
information contain the devices status. The application was built using HTML5 and Jquery mobile for its interfaces. In the application we can see the recent status of the devices, The push notification system is using Google Cloud Messaging Service. In the server side, PHP script is used to send the message to GCM server through HTTP-Connection request. The important things that needs is Google API Key and Sender ID. The application is develop by learn how the conventional notification which using email works, then made the alternative notification using push notification system. The implementation of the application is using existing database that owned by Cacti.
ABSTRAK Internet sudah menjadi bagian penting dalam kehidupan sehari-hari.. Kehadiran internet cepat yang kita rasakan sekarang salah satunya karena perkembangan teknologi pada perangkat jaringan. Perangkat tersebut tentu harus dijaga agar tetap menyala sepanjang waktu.Pada umumnya notifikasi dikirimkan melalui email, namun membaca alert status perangkat melalui email dismartphone akan sulit mengingat banyaknya email per hari yang diterima. Karena itu tujuan
aplikasi Notifikasi Kerusakan Perangkat Jaringan berbasis Android dibuat untuk
memudahkan jika ada perangkat jaringan yang mati alert notifikasinya akan dikirim ke aplikasi ini. Aplikasi ini dibangun menggunakan HTML5 dengan plugin Jquery mobile untuk desain antarmukanya. Pada aplikasi kita dapat melihat status terbaru dari perangkat yang di monitoring. Untuk sistem push notification-nya memanfaatkan layanan Google Cloud Messaging (GCM). Pada sisi server digunakan script PHP untuk mengirimkan pesan ke server GCM menggunakan HTTP Connection-request untuk kemudian diteruskan dalam bentuk notifikasi ke aplikasi. Yang diperlukan untuk melakukan ini adalah Google API Key dan Sender ID. Metode yang digunakan untuk membangun aplikasi ini adalah dengan melakukan observasi bagaimana notifikasi melalui email bekerja untuk kemudian dibuatkan alternatifnya melalui sistem push notification. Implementasi untuk aplikasi Notifikasi Kerusakan Perangkat Jaringan berbasis Android ini memanfaatkan database yang sudah ada, yaitu replikasi dari database server monitoring yang menggunakan aplikasi Cacti.
Kata kunci : monitoring, android, Push notification. Google Cloud Messaging ix+46 halaman, 18 gambar, 4 tabel Daftar Pustaka : 10 (2005 – 2015)
http://digilib.mercubuana.ac.id/
1
BAB I
PENDAHULUAN 1.1 Latar Belakang Saat ini kita berada di zaman yang sangat bergantung dengan akses internet. Sebagian besar kegiatan butuh internet, tidak hanya terbatas untuk orang kantoran saja. Di sekolah bahkan di pasar ataupun pertokoan pun menggunakan internet sebagai penunjang aktivitasnya. Akses internet saat ini memang mudah didapat, contohnya melalui jaringan seluler. Beberapa tahun lahu jaringan seluler hanya digunakan untuk telepon dan sms. Tapi saat ini operator jaringan seluler berlombalomba menawarkan akses internet yang murah dan cepat. Juga tidak ketinggalan Internet Service Provider(ISP) yang menawarkan internet berkecepatan tinggi melaui kabel serat optic maupun wireless ke perusahaan dan juga ke rumah-rumah. Perangkat jaringan seperti switch, router, dan juga access point contohnya merupakan perangkat utama selain kabel UTP/optic yang menjadi penunjang utama dari suatu jaringan. Seorang Network Admnistrator selain membangun jaringan, salah satu tantangan beratnya adalah menjaga agar perangkat operasional tetap berfungsi dengan baik. Perangkat yang tersebar diberbagai tempat terus di monitor secara realtime melalui aplikasi monitoring baik via web maupun notifikasi email apabila perangkat down. Monitoring via aplikasi web dilakukan melalui protocol SNMP(simple network management protocol) yang melakukan pengecekan melalui ping, telnet, latency dll. Dan hal ini dilakukan di ruangan monitoring menggunakan layar monitor yang besar. Diperlukan notifikasi yang bisa diterima oleh tim monitoring saat mereka sedang dilapangan. Notifikasi lewat email memang bisa membantu karena smartphone saat ini sudah memiliki fitur email. Namun notifikasi dari perangkat bisa saja terlewat mengingat karyawan bisa menerima ratusan email per harinya. Artinya email sebanyak itu lebih nyaman di baca melaui PC. Karena itu dibutuhkan aplikasi di smartphone yang bisa menerima notifikasi dari yang berisi status dari perangkat jaringan.
1.2 Rumusan Masalah Berdasarkan penjelasan singkat di atas, maka masalah-masalah yang ada bisa dirumuskan sebagai berikut:
http://digilib.mercubuana.ac.id/
1. Bagaimana caranya ketika ada perangkat yang mati atau down ada notifikasi yang dikirimkan ke aplikasi pada perangkat android. 2. Berapa lama interval pengecekan status perangkat. 3. Bagaimana menampilkan status terbaru dari perangkat tersebut pada aplikasi android. 1.3 Batasan Masalah Adapun batasan masalah dalam penulisan Tugas Akhir ini adalah sebagai berikut : 1. Aplikasi di uji pada perangkat mobile android 2. Notifikasi berdasarkan pada status down perangkat. 3. Aplikasi dibangun menggunakan HTML5. 4. Database yang digunakan adalah database existing dari aplikasi monitoring yang sudah ada yaitu database aplikasi monitoring Cacti. 1.4 Tujuan dan Manfaat Tujuan dan manfaat dari penulisan Tugas Akhir ini adalah : 1. Notifikasi yang berisi informasi mengenai status perangkat yang down bisa membantu personel operasional dalam memantau perangkat jaringan. 2. melihat status terbaru dari perangkat jaringan.
1.5 Metode Penelitian Metode yang digunakan dari penulisan Tugas Akhir ini terdiri dari : 1. Metode Pengumpulan Data Metode yang digunakan dalam mengumpulkan data yang diperlukan adalah sebagai berikut : a. Metode Observasi Observasi dilakukan dengan cara mempelajari bagaimana sistem push notification bekerja. Hal apa saja yang perlu dilakukan, syarat apa saja yang diperlukan. Dan bagaimana implementasi nya pada aplikasi berbasis android. b. Metode Studi Literatur Mempelajari berbagai sumber referensi dari buku, journal, artikel maupun sumbersumber lainnya sebagai panduan dalam penyusunan skripsi. 2. Metode Pengembangan Aplikasi Pengembangan aplikasi dilakukan melalui tahapan berikut.
http://digilib.mercubuana.ac.id/
a. Menganalisa bagaimana aplikasi membaca status perangkat, apakah langusng ke perangkat atau memerlukan satu server untuk membaca sensor perangkat yang di monitor. b. Merancang desain antarmuka dari aplikasi. c. Mengimplementasikan rancangan dalam bentuk kode. d. Melakukan ujicoba fungsi-fungsi yang dibuat. e. Penerapan aplikasi 1.6 Sistematika Penulisan Laporan Untuk memudahkan penulisan tugas akhir ini, maka tugas akhir ini dibagi kedalam 5 bab yang membahas mengenai Notifikasi Kerusakan Perangkat Jaringan Berbasis Android. Sistematika penulisan sebagai berikut: 1. BAB I PENDAHULUAN Dalam bab pendahuluan akan dikemukakan latar belakang, rumusan masalah, batasan masalah, tujuan dan manfaat, serta sistematika penulisan laporan penelitian. 2. BAB II LANDASAN TEORI Dalam Bab ini terdapat teori-teori sebagai dasar referensi, serta hal-hal pendukung dalam penyusunan tugas akhir ini. Diantaranya konsep dasar android, HTML5, Push notification, mobile application, JSON, dan Android Studio. 3. BAB III ANALISA DAN PERANCANGAN Bab ini menjelaskan analisa atau yang dilakukan serta perencanaan perancangan yang diambil dalam membuat aplikasi ini. Analisa meliputi analisis aplikasi yang akan dibangun. Sedangkan Perancangan menyangkut pada perancangan antarmuka. 4. BAB IV IMPLEMENTASI DAN PENGUJIAN Pada bab ini berisi tentag pengimplementasian aplikasi dan pengujian pada perangkat android. Hal yang diuji adalah fungsi-fungsi yang ada pada aplikasi. 5. BAB V KESIMPULAN DAN SARAN Bab penutup yang berisi tentang kesimpulan yang didapata dari implementasi aplikasi ini, serta saran dalam pengembangan lebih lanjut.
http://digilib.mercubuana.ac.id/
1 BAB II LANDASAN TEORI
2.1 Sistem Operasi Android Android adalah sebuah sistem operasi yang dibuat berdasarkan Linux yang dimodifikasi (Lee Meng-Wei 2011). Saat ini dikembangkan oleh google. Android didesain biasanya dibuat untuk perangkat yang memiliki antarmuka layar sentuh, seperti smartphone atau komputer tablet. Secara khusus android juga digunakan untuk game konsol, kamera digital dan perangkat elektronik lainnya. Source code android dirilis oleh google dibawah lisensi open source. Android popular dikalangan perusahaan teknologi yang menginginkan sistem operasi yang siap-jadi, berbiaya rendah dan bisa dikustomisasi untuk perangkat berteknologi tinggi. Fitur pada sistem operasi android diantaranya 1. Antar Muka. Default antar muka android dibuat berdasarkan direct manipulation, yang mana segala yang kita lakukan seperti menyapu layar, menyubit secara langsung merubah objek pada layarm dan juga dilengkapi dengan virtual keyboard. Hardware internal seperti accelerometers, gyroscopes dan proximity sensors biasa digunakan ole beberapa aplikasi yang merespon tindakan dari pengguna. Contohnya saat kita merubah orientasi layar dari portrait ke landscape atau simulasi setir mobil pada game. 2. Aplikasi Aplikasi pada android biasanya ditulis menggunakan Bahasa pemrograman Java, menggunakan Android Software Development kit (SDK). SDK ini sudah termasuk debugger, software libraries, dan emulator. Pada android kita juga melakukan instalasi aplikasi pihak ketiga, dimana kita bisa mendownloadnya melalui Google Play Store. Saat ini sudah terdapat lebih dari 50 milliar aplikasi yang ada di Google Play Store. 3. Memory Management Android merupakan perangkat yang memiliki sumber daya dari baterai. Karena itu android didesain agar mengatur penggunaan memoy supaya
http://digilib.mercubuana.ac.id/
menggunakan power seminimum mungkin. Ketika sebuah aplikasi pada android tak lagi digunakan, aplikasi tersebut bakal dimatikan penggunaan memorynya, Android mengatur ketika memory yang tersisa tinggal sedikit, sistem akan mematikan aplikasi yang statusnya jalan di background untuk sementara. Proses ini tidak terlihat oleh user.
2.1.1 Arsitektur Android Secara garis besar arstitektur android terdiri dari komponen-komponen dibawah ini : 1.
Applications dan Widgets Applications dan Widgets ini adalah layer dimana kita berhubungan dengan aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan instalasi dan jalankan aplikasi tersebut. Di layer terdapat aplikasi inti termasuk klien email, program SMS, kalender, peta, browser, kontak, dan lain-lain. Semua aplikasi ditulis menggunakan bahasa pemrograman Java.
2. Applications Frameworks Android adalah Open Development Platform yaitu Android menawarkan kepada pengembang atau memberi kemampuan kepada pengembang untuk membangun aplikasi yang bagus dan inovatif. Pengembang bebas untuk mengakses perangkat keras, akses informasi resources, menjalankan service background, mengatur alarm, dan menambahkan status notifications, dan sebagainya. 3. Libraries Libraries ini adalah layer dimana fitur-fitur Android berada, biasanya para pembuat aplikasi mengakses libraries untuk menjalankan aplikasinya. Berjalan di atas kernel, layer ini meliputi berbagai library C/C++ inti seperti Libc dan SSL, serta libraries lainnya.
4. Android Run Time
http://digilib.mercubuana.ac.id/
Layer yang membuat aplikasi Android dapat dijalankan dimana dalam prosesnya menggunakan Implementasi Linux. Dalvik Virtual Machine (DVM) merupakan mesin yang membentuk dasar kerangka aplikasi Android. 5. Linux Kernel. Linux Kernel adalah layer dimana inti dari system operasi android itu berada. Berisi file-file sistem yang mengatur system processing, memory, resource, drivers, dan sistem-sistem operasi android lainnya.
2.1.2 Sejarah Sistem Operasi Android Pada saat perilisan perdana Android pada tanggal 5 November 2007, Android bersama Open Handset Alliance mendukung pengembangan standar terbuka pada perangkat seluler tersebut. Di sisi lain, Google merilis kode-kode Android di bawah lisensi Apache. Sehingga terdapat dua jenis distributor sistem operasi Android yaitu yang mendapat dukungan penuh dari Google dan yang mendapat dukungan penuh dari Open Handset Distribution (OHD). Telepon selular pertama yang menggunakan sistem operasi Android adalah HTC Dream yang dirilis pada 22 Oktober 2008. Pada 9 Desember 2008, diumumkan anggota baru yang bergabung dalam program kerja Android ARM Holdings, Atheros Communication yang diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp dan Vodafone Group Plc. Hingga saat ini terdapat beberapa versi dari sistem operasi Android, antara lain: a. Android versi 1.1 Dirilis pada 9 Maret 2009. Android versi ini dilengkapi dengan adanya jam, alarm, voice search, pengiriman pesan dengan Gmail dan pemberitahuan email. b. Android versi 1.5 (Cupcake) Dirilis pada Mei 2009. Terdapat pembaruan dari versi 1.1 diantaranya adalah fitur upload video ke Youtube dan gambar ke Picasa langsung dari telepon, dukungan bluetooth A2DP, kemampuan terhubung secara otomatis ke headset bluetooth, animasi layar, dan keyboard pada layar yang dapat disesuaikan dengan sistem.
http://digilib.mercubuana.ac.id/
c. Android versi 1.6 (Donut) Dirilis pada September 2009. Pembaruan yang terdapat pada versi ini diantaranya adalah proses pencarian yang lebih baik, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah memungkinkan pengguna untuk memilih foto yang akan dihapus, kamera, camcorder dan galeri yang diintegrasikan, CDMA/EVDO, 802.1x, VPN, Gestures, Textto-speech engine. d. Android versi 2.1 (Éclair) Dirilis pada 3 Desember 2009. Perubahan yang dilakukan adalah pengoptimalan hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3.2 MP, digital zoom dan bluetooth 2.1. e. Android versi 2.2 (Froyo) Dirilis pada 20 Mei 2010. Versi Android inilah yang sekarang banyak digunakan sebagai standar sistem operasi mereka. Terdapat perubahan yang cukup signifikan dari versi sebelumnya diantaranya adalah kerangka aplikasi memungkinkan penggunaan dan penghapusan komponen yang tersedia, Dalvik Virtual Machine (DVM) yang dioptimalkan untuk perangkat mobile, grafik di 2D dan 3D berdasarkan libraries OpenGL, SQLite, mendukung berbagai format audio dan video, GSM, bluetooth, EDGE, 3G, Wifi, kamera, Global Positioning System (GPS), kompas dan accelerometer. f. Android versi 2.3 (GingerBread) Dirilis pada 6 Desember 2010. Beberapa perbaikan fitur dari versi sebelumnya adalah SIP-based VoIP, Near Field Communications (NFC), 12 gyroscope dan sensor, multiple cameras support, mixable audio effect dan download manager. g. Android versi 3.0 (Honeycomb) Dirilis tahun 2011. Android versi ini dirancang khusus untuk tablet, sehingga terdapat perbedaan dari fitur UI (User Interface). Honeycomb sengaja dibuat untuk layar yang lebih besar dan juga dapat mendukung multiprocessor.
http://digilib.mercubuana.ac.id/
h. Android versi 4.0 (Ice Cream) Versi ini masih dalam pengembangan. Dari berbagai informasi menyebutkan bahwa versi Ice Cream merupakan gabungan antara versi Gingerbread dengan Honeycomb. Sehingga bisa digunakan untuk ponsel maupun tablet. Dan kemungkinan dirilis pada quarter ke 4 tahun 2011. i. Android versi 4.1, 4.2, 4.3 (Jelly Bean) Versi android ini diumumkan pada Google I/O 2012. Beberapa pengembangan yang ditawarkan ada pada pemberdayaan, home screen management yang lebih cerdas, input dan accesibility, kamera, android beam, notification, dan google now. j. Android versi 4.4 (Kit Kat) Android versi 4.4 dengan desain yang lebih cantik, performance yang makin hebat, dan banyak fitur baru yang menarik, akan membuat dominasi Android. Jika handheld sedang di homescreen atau Google Now, tanpa perlu menyentuh layar, pengguna bisa mengirim SMS, memainkan musik, meminta petunjuk jalan, atau melakukan voice search hanya dengan mengatakan Ok Google. Dalam rilisan Android terbaru ini, jika memutar lagu atau memproyeksikan film ke Chromecast, saat smartphone terkunci, pengguna akan melihat full screen album/album art. Pengguna juga bisa langsung menekan pause, skip, atau lainnya dari lockscreen. k. Android versi 5.0, 5.0.1, 5.0.2, 5.1 (Lollipop) Lollipop adalah update Android paling besar dan ambisius dengan lebih dari 5.000 API baru untuk para pengembang. Android 5.0 Lollipop memperkenalkan bahasa desain baru yang mereka sebut sebagai Material Design. Desain ini mengedepankan tipografi yang bersih, jelas, dan mempunyai warna-warna yang cerah dengan animasi yang sangat mengalir. Mengambil tema datar secara keseluruhan, bahasa desain ini tetap mengedepankan konteks nyata dalam animasi yang digunakan. Elemenelemen yang ada mempunyai bayangan sehingga memberi kesan hidup ketika dioperasikan. Dengan bantuan sistem runtime ART, kini semua aplikasi Android dapat berjalan dalam arsitektur 64-bit. Hal ini membuka kemungkinan yang lebih luas. Bahkan, bukan tidak mungkin sistem operasi
http://digilib.mercubuana.ac.id/
telepon genggam di masa depan dapat menggantikan sistem operasi desktop. Hal ini juga merupakan kabar baik bagi para produsen perangkat Android. Karena dengan Lollipop akan dapat membuat sebuah perangkat Android yang menggunakan prosesor sekelas prosesor desktop PC. 2.2 Jaringan Komputer Jaringan komputer adalah sebuah sistem yang terdiri atas komputerkomputer yang didesain untuk dapat berbagi sumber daya (printer, CPU), berkomunikasi, dan dapat mengakses informasi (Micro, A 2012). Klasifikasi jaringan komputer terbagi menjadi : 1. Berdasarkan geografisnya, jaringan komputer terbagi menjadi :
Local Area Network (LAN). LAN merupakan jaringan milik pribadi di dalam sebuah gedung
Metropolitan Area Network (MAN). MAN merupakan perluasan jaringan LAN sehingga mencakup satu kota yang cukup luas.
Wide Area Network (WAN).WAN terdiri atas puluhan gedung yang berjarak 10 - 50 kilometer Kabel transmisi yang digunakan adalah kabel serat optik (Fiber Optic). WAN merupakan jaringan antarkota, antar propinsi, antar negara, bahkan antar benua.
2. Berdasarkan fungsi, terbagi menjadi Jaringan Klien-server dan Jaringan Peer-to-peer. Jaringan klien-server pada dasaranya ada satu komputer yang disiapkan menjadi pelayan (server) dari komputer lainnya yang sebagai klien. 3. Berdasarkan topologi jaringan, jaringan komputer dapat dibedakan atas :
Topologi bus
Topologi bintang
Topologi cincin
Topologi mesh
Topologi pohon
Topologi linier
4. Berdasarkan media transmisi data
http://digilib.mercubuana.ac.id/
Jaringan berkabel (Wired Network). Pada jaringan ini, untuk menghubungkan satu komputer dengan komputer lain diperlukan penghubung berupa kabel jaringan.
Jaringan nirkabel(Wi-Fi). Merupakan jaringan dengan medium berupa gelombang elektromagnetik.
2.2 Network Monitoring Network monitoring sangat diperlukan untuk memantau keadaan operasional sebuah jaringan baik pada jalur maupun perangkat jaringan. Sebagian besar kegiatan network monitoring dlakukan melalui protokol SNMP (Simple Network Management Protocol). Hal-hal yan umum dipantau jaringan diantaranya, link, response time, availability, performa, bandwidth,CPU utilization, disk usage dan juga service. Tujuan utama dari network monitoring adalah memastikan bahwa baik jaringan maupun perangkat berjalan dengan baik. Netowor Monitoring dilakukan oleh server monitoring (Monitoring station). (Al-Mukhtar, M. 2012) menyatakan bahwa Server monitoring diimplementasikan harus menggunakan server yang efisien, yang bertindak sebagai interface dari network manager yang berkomunikasi dengan network lainnya. Kegiatan network monitoring bisa dilakukan dengan bantuan software monitoring. Software monitoring yang ada saat ini biasanya sudah dilengkapi dengan info grafis/diagram yang menarik dan mudah dimengerti. Juga ada reporting yang bisa diambil
berdasarkan waktu yang kita tentukan sendiri. Perangkat
Jaringan yang ada saat ini sudah memiliki fitur SNMP. Dalam sebuah jaringan yang besar ada kemungkinan terjadi heterogenus perangkat yaitu keberagaman jenis dan tipe perangkat, dengan SNMP selama perangkat mendukung SNMP, monitoring bisa dilakukan (Xingyua, Li. 2014).
2.2.1 SNMP (Simple Network Management Protocol) Monitoring jaringan secara umum dilakukan menggunakan protokol SNMP yang tersentral pada sebuah server di sisi klien(Srivastava, Shashank and G.C Nandi(141-148)). SNMP adalah protokol yang bekerja pada layer aplikasi dalam OSI layer, yang menyediakan format komunikasi antara yang disebut agent dan manager, yang nantinya untuk memonitoring atau memanage perangkat network
http://digilib.mercubuana.ac.id/
seperti, switch, router, pc , printer dan perangkat network lainnya. SNMP manager adalah aplikasi network management yang berjalan pada PC, dan agent adalah software yang berjalan pada perangkat yang akan di manage. SNMP agent bekerja untuk mengambil variabel yang berada pada database variabel atau yang sering disebut MIB (management Information Base) dan membuatkan parameter untuk perangkat tersebut. Pengambilan informasi dari SNMP agent disebut GET message, dan message yang menulis variabel disebut SET message. Selain SNMP GET message, untuk pengambilan value SNMP lewat MIB ada juga SNMP Trap yaitu message bila suatu perangkat terjadi masalah maka perangkat tersebut akan mengirimkan pesan SNMP trap, contohnya ketika suatu perangkat interfacenya mati.
2.2.2 Versi SNMP SNMP ada 3 versi yaitu, SNMP v1 , v2c, v3. 1. SNMPv1 beroperasi pada protokol seperti UDP (User Datagram Protocol), IP (Internet Protocol), versi ini memiliki kelemahan disisi keamaan. Autentikasi pada perangkat klien hanya dilakukan melalui “community string”, yang mana password yang ditulis akan di kirim dalam bentuk clear text. 2. SNMPv2c memiliki banyak perubahan dari SNMP v1 sebelumnya. SNMP v 2c ini merubah pada messaging system untuk mengambil lebih besar statistic suatu perangkat lebih effesien, tapi dalam sisi security tidak terlalu banyak berubah. Pada SNMP v2 ada 2 type community string:
Read Only (RO) : menyediakan akses ke variabel MIB, hanya dapat dibaca tidak dapat dirubah. karena security pada snmp v2 ini masih kurang banyak network administrator menggunakan community string type ini.
Read Write (RW): menyediakan pembacaan dan merubah variabel MIB.
3. SNMPv3 datang dengan banyak security yang powerfull dan tidak ada pada versi 1 atau 2c, security fitur pada SNMP v3:
http://digilib.mercubuana.ac.id/
message integrity : ini membantu meyakinkan bawhwa paket yang dikirmakn tidak rusak/berubah pada saat diperjalanan.
authentication : membantu meyakinkan bahwa paket datang dari source yang dapat dipercaya.
encryption : membantu bahwa data yang kirimkan tidak bisa dibaca jika ada orang yang ingin mengcapture data saat pengiriman.
Dari 3 fitur ini perangkat hanya dapat mengimplementasikan fitur tersebut pada saat konfigurasi. 2.2.3 ICMP (Internet Control Message Protocol) ICMP (Internet Control Message Protocol) adalah protokol yang bertugas mengirimkan pesan-pesan kesalahan dan kondisi lain yang memerlukan perhatian khusus. Pesan / paket ICMP dikirim jika terjadi masalah pada layer IP dan layer atasnya (TCP/UDP). Pada konsisi normal, protokol IP berjalan dengan baik. Namun ada beberapa kondisi dimana koneksi IP terganggu, misalnya karena Router crash, putusnya kabel, atau matinya host tujuan. Pada saat ini ICMP membantu menstabilkan kondisi jaringan, dengan memberikan pesan-pesan tertentu sebagai respons atas kondisi tertentu yang terjadi pada jaringan tersebut. Contoh : hubungan antar router A dan B mengalami masalah, maka router A secara otomatis akan mengirimkan paket ICMP Destination Unreachable ke host pengirim paket yang berusaha melewati host B menuju tujuannya. Dengan adanya pemberitahuan ini maka host tujuan tidak akan terus menerus berusaha mengirimkan paketnya melewati router B. Ada dua tipe pesan yang dapat dihasilkan ICMP : 1. ICMP Error Message (dihasilkan jika terjadi kesalahan jaringan) 2. ICMP Query Message (dihasilkan jika pengirim paket mengirimkan informasi tertentu yang berkaitan dengan kondisi jaringan. ICMP Error Message dibagi menjadi beberapa jenis : 1. Destination Unreachable, dihasilkan oleh router jika pengirim paket mengalami kegagalan akibat masalah putusnya jalur baik secara fisik maupun logic. 2. Time Exceeded, dikirimkan jika isi field TTL dalam paket IP sudah habis dan paket belum juga sampai ke tujuannya. Tiap kali sebuah
http://digilib.mercubuana.ac.id/
paket IP melewati satu router, nilai TTL dalam paket tsb, dikurangi satu. TTL ini diterapkan untuk mencegah timbulnya paket IP yang terus menerus berputar-putar di network karena suatu kesalahan tertentu. sehingga menghabiskan sumber daya yang ada. Field TTL juga digunakan oleh program traceroute untuk melacak jalannya paket dari satu host ke host lain. Program traceroute dapat melakukan pelacakan rute berjalannya IP dengan cara mengirimkan paket kecil UDP ke IP tujuan, dengan TTL yang di set membesar. Saat paket pertama dikirim, TTL diset satu, sehingga router pertama akan membuang paket ini dan mengirimkan paket ICMP Time Exceeded, kemudian paket kedua dikirim, dengan TTL dinaikan. Dengan naiknya TTL paket ini sukses melewati router pertama namun dibuang oleh router kedua, router ini pun mengirim paket ICMP time Exceeded. 3. Parameter Problem, paket ini dikirim jika terdapat kesalahan parameter pada header paket IP. 4. Source Quench, Paket ICMP ini dikirimkan jika router tujuan mengalami kongesti. Sebagai respons atas paket ini pihak pengirim paket harus memperlambat pengiriman paketnya. 5. Redirect, paket ini dikirimkan jika router merasa host mengirimkan paket IP melalui router yang salah. Paket ini seharusnya dikirimkan melalui router lain. Sedangkan ICMP Query Message Terdiri atas : 1. Echo dan Echo Reply, Bertujuan untuk memeriksa apakah sistem tujuan dalam keadaan aktif. Program ping merupakan program pengisi paket ini. Responder harus mengembalikan data yang sama dengan data yang dikirimkan. 2. Timestamp dan Timestamp Reply, Menghasilkan informasi waktu yang diperlukan sistem tujuan untuk memproses suatu paket. 3. Address mask, untuk mengetahui beberapa netmask yang harus digunakan suatu host dalam suatu network.
Sebagai paket pengatur kelancaran jaringan paket ICMP tidak diperbolehkan
http://digilib.mercubuana.ac.id/
membebani network. Karenanyapaket ICMP tidak boleh dikirim saat terjadi problem yang disebabkan oleh :
Kegagalan pengririman paket ICMP
Kegagalan pengiriman paket broadcast atau multicast.
Tabel 1.1 Perbandingan Protokol Protokol
Service
Port UDP/TCP
DNS
Domain Name Service-UDP
UDP 53
DNS TCP
Domain Name Service-TCP
TCP 53
HTTP
Web
TCP 80
HTTPS
Secure Web (SSL)
TCP 443
SMTP
Simple Mail Trasport
TCP 25
POP
Post Office Protocol
TCP 110
SNMP
Simple Network Management
TCP & UDP 161,162
TELNET
Telnet terminal
23
FTP
File Transfer Protocol
21
SSH
Secure Shell
22
ICMP
1
2.3 Teknologi Push notification Push notification memungkinkan aplikasi menerima notifikasi atau pesan bahkan ketika aplikasi tidak aktif berjalan. Teknologi push notification merupakan komunikasi berbasis internet dimana transaksi dilakukan langsung oleh server yang mengirimkan informasi ke penerima. Berlawanan dengan teknologi pull notification dimana transaksi dimulai oleh sisi klien atau penerima, dimana klien akan melakukan request setiap interval waktu tertentu. Pada push notification,
http://digilib.mercubuana.ac.id/
server laangsung mengirimkan notifikasi kapanpun ada informasi baru tanpa klien perlu melakukan request terlebih dahulu. Teknologi ini dianggap lebih hemat daya. 2.4 Google Cloud Messaging (GCM) GCM merupakan sebuah layanan gratis yang membantu pengembang mengirim pesan ke berbagai platform: Android, iOS, dan Chrome. Misalnya, server dapat langsung mengirim pesan ke satu perangkat, sekumpulan perangkat, atau perangkat yang berlangganan ke topik. Selain itu, aplikasi di perangkat dapat langsung mengirim pesan ke server dan ke perangkat yang ada dalam grup yang sama. Di Android layanan GCM dijalankan oleh sebuah aplikasi yang berjalan di latar belakang dan bernama Layanan Google Play. Layanan ini akan membangunkan aplikasi yang bersangkutan saat menerima notifikasi baru dan akan menampilkan notifikasi tersebut pada panel notifikasi Android. Aplikasi Android yang menggunakan GCM tidak perlu berjalan di belakang layar untuk menerima sebuah notifikasi. GCM (dalam hal ini Layanan Google Play) akan membangunakan aplikasi tersebut dengan mekanisme Broadcoast Intent (Event yang terjadi saat ada notifikasi baru) ketika ada pesan tiba selama aplikasi tersebut diatur untuk diizinkan menerima Broadcast message. Saat mengaktifkan fitur Cloud Messaging pada google kita mendapatkan API key yang digunakan sebagai credential Key pada Server terhadap server GCM. Dan juga Project Number sebagai sender ID pada aplikasi android.
http://digilib.mercubuana.ac.id/
Gambar 1.1 Google Cloud Messaging 2.5 Android Studio Android Studio merupakan lingkungan pengembangan Android baru berdasarkan IntelliJ IDEA. Mirip dengan Eclipse dengan ADT Plugin, Android Studio menyediakan alat pengembang terintegrasi untuk pengembangan dan debugging(Sembiring, R 2014). Android Studio didesain khusus untuk pengembangan aplikasi berbasis android. Android Studio bisa dijalankan pada sistem operasi Windows, MacOS, maupun Linux. Fitur-fitur pada Android Studio yang didukung hingga saat ini diantaranya :
WYSIWYANG Editor
Template Wizard untuk membangun antarmuka aplikasi
Drag and drop komponen antarmuka
Mendukung aplikasi untuk android Wear
Mendukung built-in Google Cloud Messaging
http://digilib.mercubuana.ac.id/
Tabel 1.2 System requirement Android Studio
Windows
OS X
Mac OS X 10.8.5 or higher, up to Microsoft Windows OS version 10/8.1/8/7/Vista/2003/Xp (32 or 64 bit)
10.10 to up 10.10.2 up 10.10.3 on 10.10.5 (Yosemite)
Linux
GNOME or KDE or Unity desktop on Ubuntu or Fedora or GNU/Linux Debian
RAM
2 GB RAM minimum, 4 GB RAM recommended
Disk space
500 MB disk space
Space for Android SDK
JDK version
Screen resolution
At least 1 GB for Android SDK, emulator system images, and caches
Java Development Kit (JDK) 7 or higher
1280x800 minimum screen resolution
2.6 HTML5 HTML5 merupakan penyempurnaan dari HTML yang dikeluarkan oleh W3C(World Wide Web Consortium). Yang salah satu tujuannya adalah agar teknologi HTML mudah mendukung teknologi multimedia baru. HTML5 memiliki beberapa fitur tambahan yang memungkinkan untuk memutar video dan audio. HTML5 memungkinkan untuk membuat aplikasi mobile cross-platform (Wahana Komputer. 2014). HTML5 memiliki script khusus sebagai tambahan pada API
http://digilib.mercubuana.ac.id/
(application programming interface) nya. Yang bisa digunakan dengan javascript. Dalam API baru pada HTML5 diantaranya :
Pemutar media dengan waktu
Aplikasi web offline
Edit dokumen
Drag and drop
Web Storage
Kalender
Tujuan dibuatnya HTML5 diantaranya :
Mengurangi kebutuhan plugin external seperti Flash.
Penaganan kesalahan yang baik
HTML5 merupakan perangkat yang mandiri
Proses pembangunan terlihat umum
Kelebihan HTML5 diantaranya :
Dapat ditulis dalam sintaks HTML dan XML
Dalam penulisan code akan lebih efisien
Konten pada situs mudah ter-indeks oleh search engine
Memiliki integrasi yang bagus terhadap aplikasi web
Integrasi dengan doctype lebih sederhana
Dapat dideteksi oleh browser lama
Fitur yang Tidak Muncul Lagi di HTML5
Font
Center
Frame, frameset, noframes
Acronym
Scope
Strike, u, big
Longdesc Beberapa browser sudah mendukung HTML5 seperti safari, IE9, chrome,
firefox, dan opera.. Pembuatan HTML5 juga di karenakan Standard HTML4 yang
http://digilib.mercubuana.ac.id/
dijumpai banyak memiliki kelemahan untuk mendukung aplikasi web yang interaktif. Akibat hal ini banyak orang menambahkan fitur baru baik disisi aplikasi web ataupun disisi browser. Solusi ini dikenal dengan plugin dan salah satunya adalah Flash dan Silverlight. Semakin menjamurnya plugin didalam aplikasi atau browser membuat aplikasi web ini susah untuk menembus banyak browser. Hal ini dikarenakan setiap plugin mempunyai cara yang berbeda-beda. 2.7 JSON (JavaScript Object Notation) JSON merupakan format yang ringan untuk memasukkan data ke dalam sebuah variabel. Sangat mudah dimengerti dan diimplementasikan oleh manusia, dan mudah juga untuk komputer dalam melakukan parsingnya. JSON merupakan bagian dari bahasa pemrograman JavaScript (Standart ECMA-262. 2011). JSON merupakan format teks yang sepenuhnya independen tetapi menggunakan konversi yang familiar dengan bahasa pemrograman dari keluargaC, termasuk C, C++, C#, Java, JavaScript, Perl, Python, dan sebagainya. Kelebihan inilah yang membuat JSON menjadi sebuah bahasa data-interchange yang ideal. JSON dibangun dalam dua struktur : 1. Beberapa pasangan dari nama/nilai. Dalam beberapa bahasa pemrograman biasa disebut dengan istilah object, record, struct, tabel hash, key list atau associative array. 2. Nilai-nilai yang tersusun secara ordered list. Biasa disebut dengan array, vector, list atau daftar dalam bahasa pemrograman. Json adalah struktur data yang universal, dalam artian bisa digunakan dalam berbagai bahasa pemrograman. Hampir semua bahasa pemrograman mendukung penuh JSON dalam berbagai format. Hal ini memungkinkan format data yang dapat dipertukarkan menggunakan bahasa pemrograman juga menggunakan dasar dari struktur JSON. Format data JSON mempunyai aturan sebagai berikut (http://json.org/. 2015) : a. Object adalah sepasang nama/nilai yang tidak terurutkan. Objek dimulai dengan { (kurung kurawal buka) dan diakhiri dengan } (kurung kurawal tutup). Setiap nama diikuti dengan : (titik dua) dan setiap pasangan nama/nilai dipisahkan oleh , (koma).
http://digilib.mercubuana.ac.id/
b. Array adalah kumpulan nilai yang terurutkan. Larik dimulai dengan [ (kurung kotak buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan oleh , (koma). c. Nilai (value) adalah berupa sebuah string dalam tanda kutip ganda, atau angka, atau true atau false atau null, atau sebuah objek atau sebuah larik. Struktur-struktur tersebut dapat disusun bertingkat. d. String adalah kumpulan dari nol atau lebih karakter Unicode, yang dibungkus dengan tanda kutip ganda. Di dalam string dapat digunakan backslash escapes "\" untuk membentuk karakter khusus. Sebuah karakter mewakili karakter tunggal pada string. String sangat mirip dengan string C atau Java. e. Number adalah sangat mirip dengan angka di C atau Java, kecuali format oktal dan heksadesimal tidak digunakan
http://digilib.mercubuana.ac.id/
http://digilib.mercubuana.ac.id/
BAB III ANALISA DAN PERANCANGAN
3.1 Gambaran Umum Notifikasi Status Perangkat Secara umum notifikasi yang dikirimkan oleh aplikasi monitoring adalah melalui Email dan juga alert atau alarm pada aplikasi monitoting itu sendiri yang biasanya berupa Web-based maupun desktop. Notifikasi akan di trigger oleh kondisi tertentu sehingga akan dikirimkan notifikasi berupa email dan juga alert pada aplikasi. Dengan skema seperti ini :
Gambar 3.0.1 Notifikasi via Email
Perangkat-perangkat yang ada di monitoring menggunakan aplikasi monitoring Cacti
Apabila ada perangkat yang down/mati akan mengirimkan alert melalui notifikasi email dan perubahan status pada aplikasi monitoring.
Notifikasi dikirim berdasarkan status dari perangkat sesuai defenisi yang sudah di setting oleh Administrator
Interval antara perubahan status pada perangkat hingga notifikasi email dikirimkan bisa diatur pada aplikasi
1
http://digilib.mercubuana.ac.id/
Notifikasi email bisa dikirim dengan atau tanpa autentikasi ke mail server, bergantung pada aplikasi monitoring
1.2
Topologi Jaringan Sistem Push Notification Berikut Topologi dari sistem notifikasi dari perangkat yang dimonitor hingga
ke perangkat android :
Gambar 3.0.2 Topologi Jaringan Push Notification Keterangan dari topologi diatas :
Perangkat yang dimonitor berupa switch, router, dan juga Access Point Interface yang dimonitoring adalah management interface-nya Server Monitoring menggunakan Software Cacti Database menggunakan Mysql Server Push Notification menggunakan script php untuk mengirim pesan ke server Google Cloud Messaging
Penjelasan dari topologi diatas mengenai bagaimana informasi disampaikan dari perangkat yang dimonitoring hingga ke perangkat android :
Perangkat dimonitoring oleh server monitoring yang menggunakan aplikasi Cacti menggunakan protokol SNMP.
SNMP Manager (dalam hal ini server monitoring Cacti) saling berkirim pesan dengan SNMP Agent (Node / perangkat yang dipantau) berupa
http://digilib.mercubuana.ac.id/
informasi jaringan yang dibawa oleh paket data yang disebut PDU (Protocol Data Unit)
Secara background server monitoring mengirimkan paket data melalui ping ke perangkat yang dipantau. Jika hasil ping ke perangkat yang di pantau reply (lengkap dengan besaran latency dalam satuan ms), maka status perangkat yang dipantau tersebut akan ditulis pada database server monitoring dengan status UP. Jika tidak reply, baik itu request time out ataupun destination host unreachable maka status akan di tulis DOWN.
Untuk Availability (dalam satuan %) perangkat dihitung berdasarkan uptime(didapat melalui snmp agent) dan total time (total waktu sejak dimonitoring). Rumusnya : (uptime / total time ) x 100%.
Data yang ditulis pada database master oleh Cacti di replikasi ke slave database menggunakan SQL synchronization.
Proses replikasi dilakukan dengan cara, setiap perubahan pada master database akan di tulis sebuah binary log. Log ini yang dibaca oleh slave database untuk kemudian dieksekusi sehingga data pada master sama dengan data pada slave.
Pada sisi server push notification, database yang berisi informasi tentang status perangkat di baca menggunakan script PHP yang diparsing menggunakan JSON dan dimuat pada pada aplikasi android menggunakan Ajax. Informasi seperti IP, Status, dan Availibility ini lah yang dimuat pada aplikasi android.
Untuk pengiriman push notification, sebuah script PHP menggunakan cURL untuk mengirim HTTP connection-request ke server Google Cloud Messaging (GCM). Pada Script ini juga dilakukan pengecekan status perangkat yang tertulis di database. Jika status perangkat adalah down, maka akan dikirimlah notifikasi.
Pada sisi server juga disimpan Google API Key sebagai credential key terhadap server GCM. Notifikasi berupa paket yang dikirim ke GCM berisi informasi status dan hostname perangkat yang down dan juga Reg ID sebagai pengenal perangkat android yang dituju.
http://digilib.mercubuana.ac.id/
Dari Server GCM lalu diteruskan notifikasi berdasarkan Reg ID perangkat Android.
3.2
Identifikasi Masalah Notifikasi melalui E-mail yang bisa diterima melalui smartphone kurang
efektif dan bisa terlewat mengingat ratusan email yang masuk perharinya. Monitoring perangkat melalui aplikasi berbasis web biasa dilakukan melalui PC dan seringkali menggunakan layar monitor yang besar dan dilakukan di dalam ruang monitoring. Cukup merepotkan apabila engineer yang sedang berada diluar kantor harus membuka laptop terlebih dahulu untuk mengetahui status perangkat. 3.3 Analisa Usulan Sistem Untuk mengantisipasi masalah yang ada, dibuatlah aplikasi berbasis android yang bisa menerima push notification mengenai status perangkat dari server monitoring yang sudah ada. Push notification ini memanfaatkan layanan Google Cloud Messaging (GCM). Notifikasi dari server monitoring akan dikirim terlebih dahulu ke GCM sebelum di-push ke perangkat android yang sudah teregistrasi, seperti aplikasi media sosial yang ada di perangkat android. Aplikasi android dibuat menggunakan HTML5 agar bisa dengan mudah diimplementasikan ke platform lain seperti iOS, BB OS, dan Windows Phone. 3.3.1 Analisa Kebutuhan Sistem Untuk membangun sistem yang mendukung push nofication. Hal-hal yang dibutuhkan untuk melakukan push notification adalah :
Sender ID perangkat yang diberikan oleh GCM untuk dikirimkan ke GCM. Sender ID didapatkan dengan cara membuat project pada google developer.
Register ID yang didapat dari GCM untuk dikirimkan ke Server sebagai pengenal dari perangkat Android
Google API Key dari GCM untuk diletakkan pada sisi server sebegai credential key.
Mengaktifkan fitur cloud messaging pada Google developer.
http://digilib.mercubuana.ac.id/
Database untuk menyimpan Register ID. Register ID inilah yang di beritahu oleh server kepada server GCM agar notifikasi dikirmkan ke perangkat dengan register ID tersebut.
Script untuk mengirimkan notifikasi
Koneksi Internet
Gambar 3.0.3 Notifikasi via Push Notification Penjelasan dari Skema diatas adalah : 1. Perangkat android mengirimkan sender ID ke server GCM untuk meregister aplikasi. 2. Setelah registrasi berhasil server GCM akan mengirimkan registration ID ke perangkat android 3. Setelah menerima registration ID, perangkat android akan mengirimkannya ke server.
http://digilib.mercubuana.ac.id/
4. Registration ID inilah yang disimpan di database, sebagai pengenal dari perangkat android. Pengiriman Notifikasi : A. Push notification akan ditrigger berdasarkan perangkat yang kondisinya Down pada database. Status ini diperiksa setiap 5 menit dalam sebuah script PHP. Lalu notifikasi akan di kirim kan ke server GCM B. Server GCM kan mengirimkan notifikasi ke perangkat android yang sudah teregistrasi.
3.3.2 Use Case Diagram Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Sebuah use case merepresentasikan sebuah interaksi antara aktor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, misalnya login, lalu melihat status perangkat. Seorang/sebuah aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Use case diagram dapat sangat membantu bila sedang menyusun requirement sebuah sistem, mengkomunikasikan rancangan dengan client, dan merancang test case untuk semua feature yang ada pada aplikasi. Dari hasil analisis aplikasi yang ada maka use case diagram pada aplikasi ini dapat dilihat pada gambar
http://digilib.mercubuana.ac.id/
Login <<extend>>
Menu Utama <<extend>>
User
Melihat Status Perangkat <<extend>>
Menerima Notifikasi
Melihat Availability Perangkat
1.3.2.1 Defenisi Use Case Diagram Defenisi Use case aplikasi dapat dilihat pada tabel berikut : NO 1
Use Case
Deskripsi
Login
Proses
Masuk
Ke
halaman utama 2
Melihat Menu Utama
Proses
Melihat
menu
utama yang berisi menu status dan availability perangkat 3
Melihat status perangkat
Proses
melihat
status
perangkat terbaru 4
Melihat Availibility perangkat
Melihat
availability
terbaru dari perangkat
http://digilib.mercubuana.ac.id/
5
Menerima notifikasi
Menerima Notifikasi dari server
1.3.3
Skenario Use Case Skenario Use case diagram mendefinisikan urutan langkah proses pada aplikasi yang dilakukan actor pada sistem maupun sebaiknya.
3.3.3.1 Use Case Skenario Login Identifikasi Nomor
2
Nama
Output menu utama
Tujuan
Saat menjalankan aplikasi User akan dihadapkan pada menu login agar bisa masuk ke menu utama
Deskripsi
User memasukkan username dan password agar bisa masuk ke menu utama
Aktor
User Skenario Utama
Kondisi Awal
User berada pada menu login Aksi Aktor
Reaksi Sistem
Input username dan password Kondisi Akhir
Menampilkan menu utama User masuk ke menu utama
3.3.3.2 Use Case Skenario Melihat Menu Utama Identifikasi Nomor
2
Nama
Melihat menu utama
Tujuan
Pada menu utama user bisa memilih mau melihat status perangkat atau availability
Deskripsi
User memilih salah satu menu
Aktor
User Skenario Utama
Kondisi Awal
User berada pada menu utama
http://digilib.mercubuana.ac.id/
Aksi Aktor
Reaksi Sistem
Memilih salah satu menu
Tampil menu yang dipilih
Kondisi Akhir
User masuk ke menu yang dipilih
3.3.3.3 Use Case Skenario Melihat Status Perangkat Identifikasi Nomor
3
Nama
Melihat Status Perangkat
Tujuan
Pada menu utama user bisa melihat status perangkat terbaru
Deskripsi
User melihat status perangkat
Aktor
User Skenario Utama
Kondisi Awal
User berada pada menu utama Aksi Aktor
Reaksi Sistem
Memilih menu status perangkat Kondisi Akhir
Tampil menu status perangkat
User masuk ke menu status perangkat
3.3.3.4 Use Case Skenario Melihat Availibility perangkat Identifikasi Nomor
4
Nama
Melihat Availibility Perangkat
Tujuan
Pada menu utama user bisa melihat availability perangkat
Deskripsi
User melihat availability perangkat
Aktor
User Skenario Utama
Kondisi Awal
User berada pada menu utama Aksi Aktor
Reaksi Sistem
Memilih menu availibility perangkat Kondisi Akhir
Tampil menu availibility perangkat
User masuk ke menu availability perangkat
http://digilib.mercubuana.ac.id/
1.3.4 Algoritma Aplikasi Berikut Algoritma aplikasi mulai dari apliasi dijalankan hingga notifikasi dikirimkan :
Gambar 3.4 Algoritma Aplikasi
3.3.5 Analisa Basis Data Aplikasi ini menggunakan database yang sama dengan database aplikasi monitoring yang sudah berjalan. Aplikasi akan mengambil record yang terdiri dari Hostname, IP dan Status. Database yang dibaca oleh aplikasi android adalah replikasi dari database utama, yang di replikasi menggunakan SQL database synchronization.
http://digilib.mercubuana.ac.id/
Gambar 3.0.5 Aplikasi – Database Replika Proses replikasi database pada mysql :
Master database 1. Master menulis replications event pada sebuah log yang disebut binary log. Binary log ini yang nantinya akan dibaca oleh slave database 2. Master akan membuat thread baru setiap kali slave database terkoneksi ke master, dengan cara memberikan event-event yang tercatat pada binary log dan memberi notifikasi kepada slave database setiap ada perubahan yang tercatat pada binary log.
Slave database Ketika replikasi mulai dilakukan, ada 2 thread yang bekerja pada slave database : 1. Input-Output thread (IO thread) Pada proses ini slave membaca binary log dari master dan menyimpannya pada log lokalnya sendiri yang disebut relay log. IO thread sendiri bisa dicek dengan menggunakan perintah “show slave status\G” pada log file :
Master_Log_File
Read_Master_Log_Pos
http://digilib.mercubuana.ac.id/
Hasil pada pengecekan diatas bisa di bandingkan dengan log “show master status\G” pada Master database. 2. SQL thread Proses SQL thread membaca file relay log dan mengeksekusin perubahan yang terjadi pada database master ke database slave. Status thread ini bisa di cek pada log file :
Relay_Master_Log_File
Exec_Master_Log_Pos
Gambar 3.0.6 Proses replikasi 3.4 Perancangan interface aplikasi User interface merupakan penghubung komunikasi antara sistem dan pengguna.User interface dapat menerima informasi dari pengguna dan memberikan informasi kepada pengguna. Tujuan dari pembuatan rancangan user interface ini adalah untuk mempermudah interaksi antara pengguna dengan sistem yang akan dibangun. Berikut rancangan dasar interface : a. Menu Login
http://digilib.mercubuana.ac.id/
Gambar 3.0.7 Rancangan Menu Login b. Menu Utama Nama APP
Devices Status
Availability
Gambar 3.0.8 Rancangan Menu Utama Pada Main Menu, terdapat menu berupa button sebagai berikut : 1. Button ke halaman devices, untuk melihat status perangkat dan juga sudah berapa lama dalam status tersebut. Tabel yang akan di tampilkan pada aplikasi android.
http://digilib.mercubuana.ac.id/
Devices
IP
Desc
Status
In State
Gambar 3.0.9 Rancangan Menu Status Perangkat 2. Button ke halaman Availability, yang berisi status ketersediaan perangkat dalam persen
Devices
IP
Desc
Availibility
Gambar 3.0.10 Rancangan Menu Availability
http://digilib.mercubuana.ac.id/
http://digilib.mercubuana.ac.id/
1
BAB IV
IMPLEMENTASI DAN PENGUJIAN
Pada bab ini akan dilakukan implementasi dan pengujian terhadap sistem. Tahapan ini dilakukan setelah perancangan selesai dilakukan dan selanjutnya akan diimplementasikan menggunakan HTML5, Java Script, dan Ajax. Hal – hal yang akan diuji adalah status perangkat yang ditampilkan pada aplikasi, serta notifikasi jika ada perubahan status pada perangkat. Pengujian dilakukan untuk melihat kekurangan – kekurangan yang muncul pada aplikasi. Selanjutnya bisa didapatkan kesimpulan untuk pengembangan aplikasi selanjutnya. 4.1 Implementasi Setela system dianalisa dan antarmuka sudah didesain, maka tahap selanjutnya adalah tahap implementasi. Tahap implentasi adaah tahap menerjemahkan rancangan kedalam baris kode yang akan diterapkan pada perangkat lunak sesuai kebutuhan dan hasil analisa. Untuk melakukannya dibutuhkan smartphone berbasis android dan Android Studi untuk menulis baris kode HTML5.
4.1.2 Implementasi Push notification Notifikasi akan dikirimkan ke aplikasi android jika ada perangkat yang down atau mati. Notifikasi ini menggunakan system Push notification dari Google Cloud Messaging (GCM). Tahapan pertama yang dilalui saat mengirimkan Push notification adalah Sender ID yang didapat dari Google ditulis kedalam plugin push notification javascript yang menggunakan API GCM yang ada platform phonegap. Berikut potongan kode-nya : console.log("Inside Try-Catch"); pushNotification = window.plugins.pushNotification; if (device.platform == 'android' || device.platform == 'Android') { $("#app-status-ul").append('
44209098920 merupakan sender ID yang didapat dari google. Saat aplikasi dijalankan sender ID akan dikirmkan ke google, dan dibalas google dengan memberikan registration ID atau bisa disebut juga GCM ID. Lalu registration ID ini yang dikirimkan ke database. Berikut potongan kode-nya : function sendGcmId(username, gcm_id){ var data = { username: username, gcm_id: gcm_id } console.log('send data to server'); console.log(data); $.ajax({ url: 'http://xxx.xx.xx.xx/devmon/register.php', type: 'POST', dataType: 'json', data: data, success: function(data, status){ console.log(data); } }); }
Pada sisi server digunakan script PHP yang menyimpan Google API key agar server dikenali oleh server GCM untuk mengirim reg ID yang sudah disimpan di database. Berikut potongan kode-nya untuk menyimpan google API Key:
http://digilib.mercubuana.ac.id/
Hasilnya pada database telah terisi dengan Register ID dari perangkat android :
Gambar 4.0.1 Register ID Potongan Kode untuk mendapatkan reg ID untuk dikirim ke server GCM : array( 'title' => $title, 'message' => $message ), 'registration_ids' => $registration_ids ); $headers = array( 'Authorization: key=' . GOOGLE_PUBLIC_API_KEY, 'Content-Type: application/json' ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($fields)); $result = curl_exec($ch); if ($result === FALSE) {
Berikut Potongan Kode berisi fungsi untuk mendapatkan kondisi ketika device mati/down : function dbConnectCacti(){ $con = mysql_connect('localhost', 'root', 'devmon'); mysql_select_db('cacti');
http://digilib.mercubuana.ac.id/
return $con; } function getDownDevice(){ $db = dbConnectCacti(); $query = "select id, description, hostname, status from host where status != 3"; $result = mysql_query($query); if(mysql_num_rows($result) > 0){ while(true == $data = mysql_fetch_assoc($result)){ $row[] = $data; } return $row; }else{ return null; } }
Terakhir potongan kode untuk mengirimkan push notification berdasarkan kondisi device : $devices = getDownDevice(); if(!empty($devices)){ foreach ($devices as $device) { $title = $device['description']; $message = $device['hostname'].' status DOWN'; send_notification($title, $message); } }
Reg ID yang sudah ada di dalam database akan dikirim ke server GCM dan dari server GCM akan dikirim ke device. Berikut contoh hasil push notification yang terkirim ke perangkat android :
http://digilib.mercubuana.ac.id/
Gambar 4.0.2 Notifikasi Masuk ke Android Untuk melakukan pengecekan setiap 5 menit, dan jika ada perangkat yang down notifikasi dikirimkan. Di lakukan dengan men-set cron job script pengecekan pada sisi server dijalankan setiap 5 menit : */5 * * * * /usr/bin/php /var/www/html/devmon/send_notification.php
4.1.3 Implementasi menampilkan Status perangkat di Android HTML5 merupakan Bahasa yang diproses pada sisi klien atau browser. Karena itu HTML5 tidak bisa langsung mengakses database. Untuk itu digunakan Bahasa pemrograman yang bekerja di sisi server, dalam implementasi ini digunakan PHP. Kemudian data dari database yang akan kita ambil diparsing kebentuk JSON menggunakan PHP. Dan pada aplikasi sudah kita sisipkan Ajax untuk menangkap data – data tersebut. Field – field yang akan dibaca dati database adalah Hostname, Description, dan Status yang terdapat pada tabel Host. Database yang dibaca adalah database dari aplikasi monitoring berbasis web. Skemanya seperti in :
http://digilib.mercubuana.ac.id/
PHP Database
JSON
JQUERY/AJAX Android App
Gambar 4.0.3 Skema JSON membaca database Berikut adalah baris kode parsing JSON menggunakan PHP yang dilakukan pada sisi server: 1 ORDER by id"; $result = mysql_query($sql) or die ("Query error: " . mysql_error()); $records = array(); while($row = mysql_fetch_assoc($result)) {
Kemudian data pada JSON tersebut akan ditangkap menggunakan Ajax pada sisi aplikasi android dan ditampilkan dalam bentuk tabel : <script type="text/javascript" charset="utf-8"> $(document).ready(function(){ $.ajax({ url: 'http://192.168.10.163/parsing.php', dataType: 'jsonp', jsonp: 'jsoncallback', timeout: 5000, success: function(data, status){ var trHTML = ''; $.each(data, function(i,item){ if(item.statusnya == 'DOWN'){ trHTML += '
Dari baris kode diatas didapat hasil seperti ini :
Gambar 4.0.4 Status Perangkat 4.1.4 Implementasi Aplikasi Implementasi pada sisi perangkat android dilakukan dengan menginstall aplikasi yang sudah dibuat yang berkestensi .apk. Saat aplikasi dijalankan, pada saat itulah aplikasi mengirimkan sender ID ke server GCM. Antarmuka aplikasi ini didesain menggunakan Jquery Mobile, semua halaman ada di 1 file html. Berikut potongan kodenya :
<script> function myFunction() { location.reload(); }
IP
Description
Availability
Dari baris kode diatas, didapat hasil seperti ini : a. Halaman Login Pada halaman ini pengguna menginput username dan password.
http://digilib.mercubuana.ac.id/
Gambar 4.0.5 Menu Login
b. Halaman Menu Utama Halaman ini terdiri dari menu “devices status” dan “Availability”.
Gambar 4.0.6 Menu Utama c. Halaman devices
http://digilib.mercubuana.ac.id/
Pada halaman ini dapat dilihat status perangkat yang di monitor dalam bentuk tabel dan juga berapa lama perangkat tersebut mempunyai status tersebut.
Gambar 4.0.7 Menu Devices Status d. Halaman Availibility Pada halaman ini terdapat availibility perangkat dalam bentuk persen, sehingga dapat diketahui seberapa sering perangkat tersebut pernah mati
Gambar 4.0.8 Menu Availibility 4.2 Pengujian Aplikasi Pengujian aplikasi dilakukan untuk memastikan notifikasi terkirim saat ada peragkat yang down/mati. Script PHP yang sudah dibuat pada sisi server yang secara otomatis di set akan melakukan pemeriksaan pada status perangkat dalam interval 5 menit.
http://digilib.mercubuana.ac.id/
4.2.1 Skenario Pengujian Pengujian akan dilakukan dengan menguji fungsi-fungsi yang ada di dalam aplikasi. Pengujian dilakukan dengan secara Black-Box, yaitu dengan memastikan fungsi yang diinginkan berjalan sesuai keinginan.
NO Fungsi yang diuji
Cara Pengujian
1
Mendapatkan Google Reg ID
Menjalankan aplikasi
2
Mengirim Reg ID ke database
Membuat script mengirimkan reg ID
3
Push notification manual
Mematikan perangkat sample, lalu menjalankan script secara manual
4
Push notification otomatis
Mematikan perangkat sample, menunggu script dijalankan otomatis oleh server.
5
Menampilkan status perangkat
Membuat halaman menampilkan status perangkat
Tabel 4.1 Skenario Pengujian 1.2.2 Proses Pengujian 1. Mendapatkan google Reg ID dengan cara menjalankan aplikasi, pada logcat muncul log sperti dibawah ini : com.devmon.app V/GCMRegistrar﹕ Registering receiver com.devmon.app D/GCMBaseIntentService﹕ handleRegistration: registrationId = APA91bFRo1RkvWWVz81g_UEVkj8EmolLJnn7Nklixg_UBS8tUh1wWTod5ul1eBbyTm_R vw2YNR7tfVuEc3PWvc0lWPNtuKsN4WWf6_DKY_UIwJIKKTCFLVAVEnlt4B1Wy4VMN1ATFnV
2. Mengirim Reg ID ke database, pada logcat muncul log seperti ini : [INFO:CONSOLE(85)] "send data to server", source: file:///android_asset/www/js/myapp.js (85) [INFO:CONSOLE(86)] "[object Object]", source: file:///android_asset/www/js/myapp.js (86)
http://digilib.mercubuana.ac.id/
/com.devmon.app D/CordovaLog﹕ file:///android_asset/www/js/myapp.js: Line 36 : regID = APA91bFRo1RkvWWVz81g_UEVkj8EmolLJnn7Nklixg_UBS8tUh1wWTod5ul1eBby Tm_Rvw2YNR7tfVuEc3PWvc0lWPNtuKsN4WWf6_DKY_UIwJIKKTCFLVAVEnlt4B1Wy4VMN1ATFnV
Dan pada server ada query untuk melakukan insert ke database :
record baru pada database :
3. Melakukan Push notification secara dengan cara menjalankan script secara manual pada server : [root@slave ~]# php /var/www/html/devmon/send_notification.php <pre>string(143) "{"multicast_id":9154774585956862612,"success":1,"failure":0,"canonical_id s":0,"results":[{"message_id":"0:1435208353672820%e260a117f9fd7ecd"}]}" Didapat hasil seperti ini :
http://digilib.mercubuana.ac.id/
4.2.3 Hasil Pengujian Berikut adalah hasil pengujian dengan menggunakan metode black-box. Dengan menguji fungsi-fungsi dari aplikasi :
NO
Fungsi yang
Sifat
Cara Pengujian
diuji 1
Mendapatkan
Normal
Menjalankan aplikasi
Hasil Yang
Hasil
diharapkan
Pengujian
Didapatkan
Sesuai
Google Reg
Google Reg
ID
ID Tidak
Tidak dapat
Normal
google Reg
Sesuai
ID 2
Normal
Di database terdapat Reg
http://digilib.mercubuana.ac.id/
Sesuai
Mengirim Reg
Membuat script
ID yang baru
ID ke database
mengirimkan reg ID
dikirim
Tidak
Tidak ada
Normal
Reg ID di
Sesuai
database 3
Push
Normal
Mematikan perangkat
Notifikasi
notification
sample, lalu menjalankan
Masuk ke
manual
script secara manual
perangkat
Tidak
Tidak ada
Normal
notifikasi
Sesuai
Sesuai
yang masuk 4
Push
Normal
Mematikan perangkat
Notifikasi
notification
sample, menunggu script
Masuk ke
otomatis
dijalankan otomatis oleh
perangkat
server.
sesuai waktu
Sesuai
yang ditentukan Tidak
Tidak ada
Normal
notifikasi
Sesuai
yang masuk 5
Menampilkan
Normal
Membuat halaman
Tampil
status
menampilkan status
halaman
perangkat
perangkat
status
Sesuai
perangkat Tidak
Tidak tampil
Normal
status perangkat
http://digilib.mercubuana.ac.id/
Sesuai
Tabel 4.2 Hasil Pengujian Dari hasil pengujian dengan 2 cara diatas notifikasi berhasil masuk ke perangkat android yang diinstall aplikasi tersebut.
4.2.3 Analisa Hasil Pengujian Analisa aplikasi dilakukan berdasarkan hasil pengujian, yaitu pengujian terhadap fungsi aplikasi seperti mendapatkan dan mengirimkan Reg ID ke database, push notification dan status perangkat. Maka hasil analisa dari pengujian diatas adalah : 1. Saat aplikasi dijalankan, aplikasi akan mendapatkan reg ID dari google. 2. Reg ID yang didapat langsung dikirmkan ke database. 3. Reg ID ini yang digunakan server untuk memberi tahu server GCM ke perangkat mana notifikasi akan dikirim. 4. Perlu dilakukan refresh pada halaman status perangkat agar status nya update Jika di database yang menyimpan Reg ID ada 1 ID yang tidak valid, maka notifikasi tidak dikirimkan sama sekali
http://digilib.mercubuana.ac.id/
1
BAB V
KESIMPULAN DAN SARAN
5.1 Kesimpulan Kesimpulan yang diperoleh dari pembuatan aplikasi notifikasi kerusakan perangkat jaringan berbasis android ini adalah : 1. Aplikasi ini dijalankan pada perangkat mobile berbasis Android dan digunakan untuk menerima notifikasi jika ada perangkat jaringan yang down sehingga dapat membantu para personel operasional untuk segera mengetahui jika ada perangkat yang down. 2. Notifikasi akan dikirim 5 menit setelah perangkat down, dan notifikasi akan terus dikirimkan hingga perangkat tersebut up kembali. Di sisi server ada script yang dijalankan setiap 5 menit sekali menggukan crontab 3. Pengguna aplikasi bisa melihat status terbaru dari perangkat jaringan yang dimonitor. Data ini dibaca dari database aplikasi montoring existing, menggunakan PHP-JSON.
5.2 Saran Setelah membangun apikasi ini, ada beberapa saran untuk mengembangkan aplikasi ini selanjutnya : 1. Aplikasi notifikasi kerusakan perangkat jaringan ini fiturnya masih sederhana. Saran : dtambahkan fitur lain. Contohnya multiple notifikasi. 2. Aplikasi dibuat fleksibel sehingga bisa melakukan koneksi ke server yang diinginkan.
http://digilib.mercubuana.ac.id/
http://digilib.mercubuana.ac.id/
DAFTAR PUSTAKA
Al-Mukhtar, M. 2012. A System for An Enterprise Remote Network Monitoring and Fault Management Based on SMS and WAP. Page 1 – 5, October 2012. http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=6552445 (diakses Maret 2015 Engage your users across Android, iOS and Chrome via Google Cloud Messaging. https://developers.google.com/cloud-messaging/ (diakses 21 April 2015). Lee, Wei-Meng. 2011. Android Application Development. Indianapolis : Wiley Publishing. Pengenalan JSON. http://json.org/json-id.html (diakses pada 25 April 2015) Pengertian ICMP (Internet Control Message Protocol). http://www.transiskom.com/2011/03/pengertian-icmp-internet-control.html. (diakses pada 24 April 2015). Sembiring, R.Berkenalan Dengan Android Studio http://panduanandroidstudio.blogspot.com/2014/06/berkenalan-denan-android-studio.html (diakses pada 24 Mei 2015) Srivastava, Shashank dan G.C Nandi. 2010. Enhancing the Efficiency of Secure Network Monitoring Through Mobile Agents. Page 141-148, September 2010. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5640412 (diakses Maret 2015). Wahana Komputer. 2014. Mobie App Development With Phonegap. Yogyakarta : Andi. Micro, A. 2012. Dasar-dasar Jaringan Komputer. Banjarbaru : ClearOS Indonesia. Xingyua, Li. 2014. Design and Implementation of the Campus Network Monitoring System. Page 117 – 119, May 2014. http://ieeexplore.ieee.org/xpl/articleDetails.jsp?tp=&arnumber=6845571 (diakses Maret 2015)