APLIKASI NETWORK MONITORING BERBASIS SMS...

238
SKRIPSI APLIKASI NETWORK MONITORING BERBASIS SMS (Studi Kasus Layanan Kesehatan Cuma-Cuma) Oleh: Thoyyibah. T 107091002947 PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH JAKARTA 1432 H / 2011 M

Transcript of APLIKASI NETWORK MONITORING BERBASIS SMS...

Page 1: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

SKRIPSI

APLIKASI NETWORK MONITORING BERBASIS SMS

(Studi Kasus Layanan Kesehatan Cuma-Cuma)

Oleh:

Thoyyibah. T

107091002947

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH

JAKARTA

1432 H / 2011 M

Page 2: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

vi

ABSTRAK

Thoyyibah. T, Aplikasi Network Monitoring Berbasis SMS (Studi Kasus: Layanan Kesehatan Cuma-Cuma), di bimbing oleh Fitri Mintarsih, M.Kom dan Arimi, MT

Layanan Kesehatan Cuma-Cuma (LKC) adalah lembaga nirlaba yang memberikan pelayanan kesehatan gratis kepada masyarakat tidak mampu yang didirikan pada tanggal 6 November 2001 dan diresmikan oleh Wakil Presiden RI Bapak DR. Hamzah Haz. Pelayanan kesehatn diberikan melalui berbagai program seperti Gerai Sehat (klinik gratis), Aksi Layan Sehat (layanan kesehatan mobile di daerah kumuh), dan SIGAP Bencana (layanan kesehatan di daerah bencana dan konflik). Agar tepat sasaran, seluruh pelayanan dijalankan menggunakan sistem kepesertaan berbasis keluarga oleh anggota pasien. Namun dengan jumlah anggota pasien LKC sekitar 53.850 orang dan keterbatasan karyawan berjumlah 50 orangkhususnya karyawan IT hanya 2 orang menjadi kendala besar untuk staff IT jika tidak berada di tempat. Melihat permasalahan yang terjadi maka perlu dibuat aplikasi yang dapat mengatasi permasalahan tersebut guna mempermudah staff IT khususnya network administrator yang mengalami masalah jarak dalam mengecek koneksi jaringan yang ada. Dalam penelitian ini aplikasi dibuat dengan berbasis SMS. Aplikasi sendiri dikembangkan dengan menggunakan metode pengembangan extreme programming. Dalam aplikasi ini terdapat empat fitur utama yaitu berkas, database, sms request dan system. Hasil yang dicapai dalam penelitian ini adalah perancangan sistem network monitoring baru dengan notifikasi SMS, yang dapat digunakan oleh network administrator untuk melihat koneksi jaringan sehingga ketika network administrator tidak berada di tempat akan membantu admin untuk mengetahui keadaan komputer pada jaringan dengan cepat dan pada akhirnya dapat meningkatkan pelayanan dengan mengambil tindakan pada komputer client yang bermasalah.

Kata Kunci: Network Monitoring, SMSJumlah Daftar Pustaka : 15 Sumber (11 Buku + 4 Sumber Internet)Jumlah Halaman : 237 Halaman (49 Gambar + 12 Tabel + 4 Lampiran)

Page 3: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

vii

KATA PENGANTAR

Bismillahirrahmannirrahiim………

Puji dan syukur penulis panjatkan kehadirat Allah SWT, yang telah

memberikan rahmat, taufik dan hidayah-Nya, sehingga penulis dapat

menyelesaikan penyusunan skripsi ini. Shalawat serta salam semoga Allah

limpahkan kepada Nabi besar Muhammad SAW yang telah membawa pertunjuk

dan pedoman hidup bagi manusia, juga kepada keluarga dan sahabat yang telah

mewariskan nilai Islam kepada kita semua.

Skripsi ini penulis buat sebagai syarat kelulusan dalam menempuh

pendidikan jenjang Strata-1 (S1) di Universitas Islam Negeri Syarif Hidayatullah

Jakarta. Selain itu juga penulis berharap penelitian ini dapat bermanfaat sehingga

perkembangan ilmu pengetahuan dan teknologi di UIN Syarif Hidayatullah

Jakarta dapat lebih maju dan lulusannya dapat bekerja secara kooperatif dengan

semua elemen informatika dari seluruh dunia.

Mengingat jasa dan bantuan dari semua pihak maka dalam kesempatan ini

penulis menghaturkan terima kasih yang sedalam - dalamnya :

1. Bapak Dr. Syopiansyah Jaya Putra, M.Sis selaku Dekan Fakultas Sains

dan Teknologi UIN Syarif Hidayatullah Jakarta.

2. Bapak Yusuf Durrachman, M.Sc, MIT, Ketua Program Studi Teknik

Informatika UI Syarif Hidayatullah Jakarta.

3. Ibu Fitri Mintarsih, dosen pembimbing 1 yang telah banyak meluangkan

waktu dalam memberikan bimbingan.

Page 4: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

viii

4. Ibu Arini, MT selaku Pembimbing 2 yang telah pengarahan dan petunjuk -

petunjuk yang berharga kepada penulis sehingga skripsi dapat

diselesaikan.

5. Tim IT Layanan Kesehatan Cuma-Cuma, yang telah bekerja sama dalam

penyelesaian skripsi ini.

6. Bapak dan Ibu penguji yang memberikan kritik dan saran pada skripsi ini.

7. Dosen-Dosen Fakultas Sains dan Teknologi yang telah mengajarkan

kepada penulis berbagai macam ilmu yang dapat penulis terapkan dalam

penulisan skripsi ini.

8. Kedua orang tua penulis, yang telah mendidik, membimbing serta

memberikan motivasi dalam penyusunan skripsi ini.

9. Teman-Teman seperjuangan TI UIN 2007 yang telah membantu

memberikan support dan motivasi kepada penulis, baik selama perkuliahan

terlebih selama menyelesaikan skripsi ini. Semoga segala bantuan dan

amal baik yang telah diberikan kepada penulis akan dibalas oleh Allah

SWT dengan pahala yang berlipat ganda.

Penulis menyadari masih jauh dari sempurna dalam penelitian ini,

baik penulisan maupun aplikasinya sendiri. Oleh karena itu penulis

mengharapkan saran dan kritik yang dapat membangun skripsi ini lebih

baik lagi.

Jakarta, Juni 2011

Penulis

Page 5: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

ix

DAFTAR ISI

Halaman Judul ............................................................................................ ii

Persetujuan Pembimbing ............................................................................ iii

Halaman Pengesahan ................................................................................. iv

Halaman Pernyataan ................................................................................... v

Abstrak ....................................................................................................... vi

Kata Pengantar ........................................................................................... vii

Daftar Isi...................................................................................................... ix

Daftar Gambar ............................................................................................ xiv

Daftar Tabel ............................................................................................... xvii

Daftar Lampiran ......................................................................................... xviii

BAB I PENDAHULUAN

1.1. Latar Belakang ............................................................................ 1

1.2. Rumusan Masalah ........................................................................ 3

1.3. Batasan Masalah .......................................................................... 3

1.4. Tujuan dan Manfaat Penelitian .................................................... 4

1.4.1. Tujuan Penelitian ................................................................ 4

1.4.2. Manfaat Penelitian ............................................................. 4

1.5. Metodologi Penelitian .................................................................. 5

1.6. Sistematika Penulisan .................................................................. 6

Halaman

Page 6: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

x

BAB II LANDASAN TEORI

2.1. Aplikasi Network Monitoring ..................................................... 8

2.1.1. Pengertian Network Monitoring ...................................... 8

2.1.2. Tujuan Network Monitoring ............................................ 9

2.2. Topologi Jaringan ........................................................................ 10

2.3. UML (Unified Modelling Language) ......................................... 10

2.3.1. Definisi ............................................................................ 10

2.4. Java............................................................................................... 12

2.4.1. Sinkronisasi .................................................................... 12

2.5. Jenis-Jenis Protocol ..................................................................... 13

2.6. Model-Model Referensi .............................................................. 17

2.7. Perangkat Keras Jaringan ........................................................... 22

2.7.1. Kabel .................................................................................. 22

2.7.2. Modem ............................................................................... 24

2.8. Teknologi SMS ........................................................................... 26

2.8.1. Kelebihan SMS .................................................................. 28

2.8.2. Kekurangan SMS ............................................................... 29

2.9. Sms Gateway.................................................................................. 30

2.9.1. Pengenalan Sms Gateway .................................................. 30

2.9.2. Perangkat Komunikasi Yang Digunakan........................... 31

2.10 Metode Pengembangan Sistem Extreme Programming .............. 32

2.10.1. Extreme Programming Software Development Process .. 32

2.10.2. Nilai-nilai Dasar XP......................................................... 33

Page 7: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xi

2.10.3. Aspek Dasar XP ............................................................... 35

2.11. AT Command ............................................................................... 41

2.12. Perlengkapan Pemrograman Penunjang ....................................... 42

2.12.1. NetBeans IDE 6.7.1 ........................................................ 42

2.12.2. MySQL ........................................................................... 43

2.13. Metode Pengumpulan Data .......................................................... 44

2.13.1. Metode Observasi .......................................................... 44

2.13.2. Metode Studi Pustaka ..................................................... 44

2.13.3. Wawancara ..................................................................... 44

2.13.4. Studi Literatur ................................................................ 44

BAB III METODOLOGI PENELITIAN

3.1. Tempat dan Waktu Penelitian ..................................................... 47

3.2. Metode Pengumpulan Data ......................................................... 47

3.2.1. Metode Observasi............................................................. 47

3.2.2. Metode Studi Pustaka....................................................... 47

3.3.3. Wawancara ...................................................................... 48

3.3.4. Studi Literatur .................................................................. 48

3.3. Metode Pengembangan Sistem ................................................... 49

3.3.1. Planning ........................................................................... 49

3.3.2. Design ............................................................................ 50

3.3.3. Coding ............................................................................. 51

3.3.4. Testing ............................................................................. 52

Page 8: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xii

3.5. Kerangka Berpikir ....................................................................... 53

BAB IV IMPLEMENTASI DAN EVALUASI

4.1. Tentang Layanan Kesehatan Cuma-Cuma................................... 54

4.1.1. Sejarah LKC .................................................................... 54

4.1.2. Visi dan Misi LKC .......................................................... 55

4.1.3. Wewenang........................................................................ 56

4.1.4. Strategi ............................................................................. 57

4.1.5. Staff IT LKC ................................................................... 57

4.1.6. Tugas dan Wewenang ...................................................... 58

4.2. Perencanaan (Planning) ............................................................... 60

4.2.1. Pengumpulan Permintaan User ....................................... 60

4.2.2. Pengamatan terhadap sistem yang berjalan ..................... 61

4.2.3. Identifikasi Masalah ......................................................... 64

4.2.4. Usulan Alur Bisnis ........................................................... 64

4.3. Desain........................................................................................... 67

4.3.1. Perancangan Aplikasi....................................................... 67

4.3.2. Perancangan Basisdata (Database) .................................. 73

4.4.3. Perancangan Tampilan ..................................................... 79

4.4. Coding .......................................................................................... 84

4.4.1. Penyiapan Unit Testing .................................................... 84

4.4.2. Implementasi Coding ....................................................... 84

4.5. Pengujian (Testing) ...................................................................... 85

Page 9: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xiii

4.5.1. Analisa Pengujian............................................................. 86

4.5.2. Hasil Pengujian Mandiri .................................................. 87

4.5.3. Hasil Pengujian Lapangan (User) .................................... 90

4.5.4. Screenshot Hasil Pengujian.............................................. 92

BAB V KESIMPULAN DAN SARAN

5.1. Kesimpulan ................................................................................. 97

5.2. Saran ............................................................................................ 97

DAFTAR PUSTAKA ............................................................................... 98

LAMPIRAN-LAMPIRAN

Page 10: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xiv

DAFTAR GAMBAR

Halaman

Gambar 2.1 Topologi Star .............................................................................. 10

Gambar 2.2 Arsitektur TCP/IP........................................................................ 18

Gambar 2.3 Arsitektur OSI ............................................................................. 20

Gambar 2.4 Kabel UTP................................................................................... 24

Gambar 2.5 Modem Huawei K3565 ............................................................... 26

Gambar 2.6 Kedudukan SMS dalam jaringan................................................. 27

Gambar 2.7 Xp Practices................................................................................. 35

Gambar 3.1 Kerangka Berpikir ....................................................................... 53

Gambar 4.1 Struktur Organisasi Bagian IT LKC............................................ 58

Gambar 4.2 Proses Network Monitoring ........................................................ 62

Gambar 4.3 Pemecahan Network Monitoring yang Disarankan..................... 66

Gambar 4.4 Activity Diagram Sistem Monitoring Berbasis SMS .................. 69

Gambar 4.5 Activity Diagram Saat SMS Function Aktif ............................... 70

Gambar 4.6 STD Fitur Ping ............................................................................ 71

Gambar 4.7 STD Fitur Netstat ........................................................................ 71

Gambar 4.8 STD Fitur Telnet.......................................................................... 71

Gambar 4.9 STD Fitur Nbtstat ........................................................................ 71

Gambar 4.10 STD Fitur Ipconfig ...................................................................... 72

Gambar 4.11 STD Fitur Net Share.................................................................... 72

Gambar 4.12 STD Fitur Tracert ........................................................................ 72

Page 11: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xv

Gambar 4.13 STD Fitur Nslookup .................................................................... 72

Gambar 4.14 STD Fitur FTP............................................................................. 73

Gambar 4.15 STD Fitur Hostname.................................................................... 73

Gambar 4.16 STD Fitur Pathping...................................................................... 73

Gambar 4.17 Halaman Login ............................................................................ 79

Gambar 4.18 Halaman Utama........................................................................... 79

Gambar 4.19 Halaman Koneksi/Berkas ............................................................ 80

Gambar 4.20 Halaman Koneksi Terminal......................................................... 80

Gambar 4.21 Halaman Putus Terminal ............................................................. 80

Gambar 4.22 Halaman Kirim SMS ................................................................... 81

Gambar 4.23 Halaman Keluar........................................................................... 81

Gambar 4.24 Halaman Database ....................................................................... 81

Gambar 4.25 Halaman SMS Masuk.................................................................. 82

Gambar 4.26 Halaman SMS Keluar.................................................................. 82

Gambar 4.27 Halaman Buku Telepon............................................................... 82

Gambar 4.28 Halaman SMS Request/Monitoring Jaringan.............................. 82

Gambar 4.29 Halaman Konfigurasi Perangkat.................................................. 83

Gambar 4.30 Halaman Aktivitas System .......................................................... 83

Gambar 4.31 Halaman Login ............................................................................ 92

Gambar 4.32 Menu pada Berkas ....................................................................... 93

Gambar 4.33 Koneksi Terminal ........................................................................ 93

Gambar 4.34 Putus Terminal............................................................................. 94

Gambar 4.35 Kirim SMS................................................................................... 94

Page 12: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xvi

Gambar 4.36 Data SMS Masuk......................................................................... 94

Gambar 4.37 Data SMS Keluar......................................................................... 95

Gambar 4.38 Data Buku Telepon...................................................................... 95

Gambar 4.39 Monitoring Jaringan .................................................................... 95

Gambar 4.40 Konfigurasi Perangka .................................................................. 96

Gambar 4.41 Aktivitas System SMS Server ..................................................... 96

Page 13: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xvii

DAFTAR TABEL

Halaman

Tabel 2.1 Spesifikasi Nexian G922.................................................................. 31

Tabel 2.2 Studi Literatur .................................................................................. 45

Tabel 4.1 Index card untuk pengusulan riset.................................................... 61

Tabel 4.2 Fungsi Fiture Monitoring Jaringan................................................... 66

Tabel 4.3 Normalisasi Tahap awal Database ................................................... 74

Tabel 4.4 Normalisasi II Buku Telepon dan Sms keluar ................................. 75

Tabel 4.5 Normalisasi II Buku Telepon dan Sms Masuk................................. 76

Tabel 4.6 Tabel Data Telepon. ......................................................................... 77

Tabel 4.7 Tabel Sms Keluar ............................................................................. 78

Tabel 4.8 Tabel Sms Masuk............................................................................. 78

Tabel 4.12 Hasil pengujian aplikasi monitoring jaringan .................................. 87

Tabel 4.13 Hasil pengujian Aplikasi Monitoring oleh User .............................. 90

Page 14: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

xviii

DAFTAR LAMPIRAN

LAMPIRAN A (Surat Keterangan Izin Riset)

LAMPIRAN B (Wawancara)

LAMPIRAN C (Hasil Pengujian)

LAMPIRAN D (Source Code Program)

Page 15: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

1

BAB I

PENDAHULUAN

1.1 Latar Belakang

Di zaman sekarang ini ilmu pengetahuan semakin berkembang. Terutama

dalam bidang teknologi dan informasi. Perkembangan teknologi dan informasi ini

berpengaruh terhadap kehidupan manusia sekarang. Banyak kegiatan yang dilakukan

mengikutsertakan kemajuan teknologi itu sendiri. Sama halnya pada teknologi

jaringan computer yang terus bergerak maju seiring dengan perkembangan teknologi.

Jaringan computer saat ini merupakan suatu hal yang penting dalam sebuah

perusahaan atau lembaga, dengan adanya jaringan computer kegiatan komunikasi

yang dilakukan menjadi lebih mudah, efektif, hemat waktu dan masih banyak lagi

keuntungan lain yang di dapat dengan adanya jaringan computer dalam lembaga, agar

semua kegiatan yang dilakukan melalui jaringan computer selalu berjalan dengan

lancar tanpa adanya gangguan.

Jaringan tersebut harus senantiasa dipantau atau dimonitor. Memanfaatkan

pemantauan jaringan ini dikenal juga sebagai network monitoring. Di dalam network

monitoring ini kegiatan yang biasa dilakukan adalah memantau komponen-

komponen jaringan seperti server dan client. Monitoring ini dilakukan untuk

mengukur, mencatat, mengumpulkan dan memanfaatkan informasi yang berhubungan

dengan jaringan computer lembaga khususnya lembaga LKC (Layanan Kesehatan

Cuma-Cuma) untuk kemudian ditindak lanjuti.

Page 16: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

2

Monitoring pada jaringan ini umumnya dilakukan dengan menggunakan sebuah

perangkat computer atau PC (Personal Computer) yang bertindak sebagai server dan

terhubung ke dalam jaringan local lembaga LKC. Monitoring ini mengharuskan

network administrator untuk terus berada di depan layar dan melakukan pemantauan

terhadap berbagai situasi yang terjadi dalam jaringan agar kinerja jaringan tetap

terjaga. Ada saatnya network administrator tidak berada di depan layar untuk

memantau jaringan, hal seperti ini menyebabkan monitoring sedikit terhambat dan

hal-hal yang terjadi dalam jaringan tidak diketahui secara langsung oleh network

administrator. Pada saat seperti ini jika terjadi gangguan pada jaringan, penanganan

di network administrator akan tertunda.

Mengatasi masalah seperti ini, jalan keluarnya adalah menghubungi network

administrator sesaat setelah gangguan pada jaringan terdeteksi, sehingga diperlukan

aplikasi untuk menghubungi network administrator adalah dengan mengirim pesan

ke handphone yang dimiliki oleh network administrator dengan SMS (Short Message

Service). Aplikasi yang dibuat ini berdasarkan dengan studi literatur dengan

membandingkan aplikasi yang satu dengan yang lain baik yang berbayar ataupun

tidak berbayar sehingga muncullah berbagai fitur seperti mengecek IP, Nslookup,

Netstat, Telnet, Ping, Netstat, Nbstat, Ipconfig, Tracert, Net Share, FTP, Hostname

serta Pathping.

Sistem yang akan dibuat dalam model network monitoring ini dengan

mengunakan bahasa pemrograman java di sistem operasi Microsoft windows xp

professional. Sistem network monitoring ditanamkan pada computer network

Page 17: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

3

administrator dan melakukan monitoring terhadap konektivititas jaringan local

perusaan ke server. Dimana computer network administrator terhubung dengan

sebuah modem sebagai gatewaynya.

1.2 Rumusan Masalah

Setelah mengetahui system yang sedang berjalan di LKC dengan melakukan

wawancara dengan pihak-pihak yang terkait, maka didapat beberapa poin mengenai

masalah yang dihadapai oleh LKC Adalah sebagai berikut:

1) Bagaimana merancang aplikasi monitoring jaringan berbasis SMS.

2) Bagaimana hasil uiji coba monitoring jaringan berbasis SMS.

3) Bagaimana aplikasi dapat menyimpan pesan dari client ke database.

1.3 Batasan Masalah

Mengetahui begitu luasnya bidang jaringan computer maka ruang lingkup

penelitian difokuskan pada:

a. Aplikasi monitoring jaringan menggunakan AT-Command untuk mengirim dan

menerima SMS.

b. Aplikasi monitoring jaringan dilengkapi database untuk SMS masuk dan SMS

keluar serta data buku telepon .

c. Aplikasi menggunakan modem sebagai gateway.

Page 18: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

4

d. Monitoring jaringan yang ada dalam aplikasi ini hanya berupa perintah IP,

Nslookup, Netstat, Telnet, Ping, Netstat, Nbstat, Ipconfig, Tracert, Net Share,

FTP, Hostname serta Pathping.

e. Sistem komunikasi selular tidak dibahas.

1.4 Tujuan dan manfaat

1.4.1 Tujuan dari penelitian

1. Merancang sebuah system yang dapat digunakan oleh network administrator

untuk memantau jaringan.

2. Merancang system yang dapat mengirimkan sms notifikasi kepada nework

administrator jika terjadi gangguan dalam jaringan.

3. Mempercepat notifikasi, menghemat waktu dan biaya dalam melakukan

pemantauan jaringan.

14.2 Manfaat dari penelitian

A. Bagi Penulis

1. Menambah wawasan penulis tentang teknologi SMS gateway dan

menerapkan langsung dengan mengembangkan aplikasi monitoring

jaringan.

B. Bagi Lembaga

1. Hasil Penelitian diharapkan dapat meningkatkan fungsi sistem yang

sedang berjalan sehingga dapat meningkatkan kerja monitoring

dalam jaringan komputer LKC.

Page 19: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

5

C. Bagi Universitas

1. Mengetahui kemampuan mahasiswa dalam menguasai materi

pelajaran yang diperoleh dibangku kuliah.

2. Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan

sebagai bahan evaluasi.

3. Sebagai bahan referensi untuk penelitian yang akan datang.

1.5 Metodologi Penelitian

Metode penelitian yang penulis lakukan dalam penulisan skripsi ini yaitu:

1.5.1 Metode Pengumpulan Data

Pada penelitian ini penulis menggunakan metode pengumpulan data

berupa observasi, studi pustaka, wawancara / interview, studi literatur .

1.5.2 Metode Pengembangan Sistem

Metode pengembangan sistem yang digunakan pada penulisan ini

adalah Agile Software Development dengan Extreme Programming.

Tahapannya adalah sebagai berikut:

a. Planning

Planning merupakan perencanaan dari aplikasi yang akan dibuat dengan

menjelaskan fitur dan kegunaan dari aplikasi.

b. Design

Design merupakan kelanjutan dari tahap planning dengan mendisain

perencanaan sebelumnya.

Page 20: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

6

b. Coding

Coding merupakan pembuatan unit test untuk kemudian digunakan sebagai

pengujian pada fitur yang akan digunakan.

c. Testing

Testing merupakan pengujian terhadap kode dengan unit test yang

sebelumnya telah dibuat.

d. Release

Release merupakan tahap akhir aplikasi siap diuji atau digunakan oleh

pengguna, setelah sebelumnya dipastikan sudah melawati tahap testing.

1.6 Sistematika Penulisan

Dalam skripsi ini, penulis menjabarkan penelitian dalam merancang

dan menguji Network Monitoring berbasis SMS sebagai berikut :

BAB 1 PENDAHULUAN

Bab ini menguraikan latar belakang penelitian, ruang lingkup

penelitian, tujuan dan manfat penelitian, metodologi dan sistematika

penelitian.

BAB II LANDASAN TEORI

Bab ini membahas secara singkat teori yang diperlukan dalam

penelitian skripsi ini.

Page 21: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

7

BAB III METODOLOGI PENELITIAN

Bab ini menjelaskan tentang metode yang digunakan penulis dalam

pengumpulan data maupun metode untuk perancangan sistem

BAB IV PENGUJIAN DAN EVALUASI

Bab ini berisi tentang hasil uji sistem network monitoring berbasis

SMS yang telah dibuat ke dalam jaringan LKC. Bab ini juga berisi

hasil evaluasi dari pengujian network monitoring berbasis SMS

tersebut.

BAB 5 PENUTUP

Bab ini berisi tentang kesimpulan atas sistem yang telah dibuat,

teknologi dan sistem yang sudah ditanamkan ke dalam jaringan LKC,

dan juga saran-saran yang dapat digunakan untuk pengembangan dan

penyampaian lebih lanjut.

Page 22: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

8

Page 23: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

8

BAB II

LANDASAN TEORI

2.1 Aplikasi network monitoring

2.1.1 Pengertian network monitoring

Monitoring jaringan adalah salah satu fungsi dari manajemen jaringan.

Monitoring ini berguna untuk menganalisis apakah jaringan kita masih cukup

layak untuk digunakan atau perlu tambahan kapasitas. Hasil monitoring ini juga

dapat membantu kita untuk mendesain ulang jaringan yang ada. Banyak hal dalam

jaringan yang bisa dimonitor melalui interface komputer. Dengan adanya aplikasi

monitoring memberikan kemampuan kepada pengguna untuk memonitor dan

mengatur jaringan komputer secara sistematis dari jarak jauh atau dalam suatu

pusat kontrol saja. Pengelolaan ini dijalankan dengan mengumpulkan data dan

melakukan penetapan terhadap variabel-variabel dalam elemen jaringan yang di

kelola. Kondisi jaringan pun dapat dimonitor misalkan stus up/down dari sebuah

peralatan jaringan. Hal ini dapat dilakukan dengan berbagai fitur jaringan.

(Kusaeri, 2010:35)

Page 24: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

9

2.1.2 Tujuan network monitoring

Tujuan dari network monitoring yaitu untuk mengumpulkan informasi

yang berguna dari berbagai bagian jaringan sehinga jaringan dapat diatur dan

dikontrol dengan mengunakan informasi yang telah terkumpul tersebut. Beberapa

alasan dilakukan network monitoring.

a) Untuk mengawasi kejadian yang sedang terjadi di dalam jaringan yang

memiliki sejumlah besar mesin (host) tanpa alat pengawas yang baik.

b) Untuk mengetahui masalah pada jaringan sebelum manager menanyakan

kepada administrator dan sebelum pelanggan menelepon. Tanpa kemampuan

monitoring jaringan, seorang administrator hanya dapat breaksi terhadap

masalah jika masalah tersebut muncul dibandingkan mencegah masalah ini

sebelumnya.

c) Untuk menjaga agar jaringan selalu dalam keadan sehat.

d) Untuk mendeteksi kesalahan pada jaringan, gateway dan server yang penting.

e) Untuk memberitahukan masalah kegagalan jaringan kepada administrator

secepatnya.

f) Mendokumentasikan jaringan.

Page 25: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

10

2.2 Topologi Jaringan

Topologi menggambarkan sebuah metode yang digunakan untuk melakukan

pengkabelan secara fisik (physical topologi) dari suatu jaringan. Physical topologi

merupakan topologi suatu jaringan yang didasarkan pada cara penghubung sejumlah

node atau sentral dalam membentuk suatu sistem jaringan. Topologi jaringan yang

umum dipakai adalah : Mesh, Bintang (Star), Bus, Tree, dan Cincin (Ring). Pada

LKC menggunakan topologi star, topologi dimana setiap komputer dihubungkan

secara langsung melalui media perantara berupa hub/switch. Dalam prakteknya,

pembangunan sebuah jaringan biasanya tidak menggunakan satu topologi saja,

melainkan gabungan dari beberapa topologi yang ada.

Gambar 2.1 Topologi Star (Bintang)

Sumber: (Infokomputer, 2008)

2.3 UML (Unified Modelling Language)

2.3.1 Definisi

Page 26: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

11

UML adalah bahasa grafis untuk mendokumentasikan,

menspesifikasikan dan membangun sistem perangkat lunak. UML berorientasi objek

menerapkan banyak level abstraksi, tidak bergantung proses pengembangan, tidak

tergantung pada bahasa dan teknologi, pemaduan beberapa notasi di beragam

metodologi, usaha bersama dari banyak pihak. Standar UML dikelola oleh OMG

(Object Management Group). (Heriyanto, 2004:54)

UML merupakan bahasa permodelan untuk menspesifikasikan,

memvisualisasikan, membangun sistem. Kelebihan UML diantaranya:

1) Di dalam (system intensive process), metode diterapkan sebagai proses

untuk menurutkan atau mengevolusikan sistem.

2) Sebagai bahasa UML digunakan untuk komunikasi, yaitu alat untuk

menangkap pengetahuan (semantik) mengenai suatu subjek dan

mengapresiasikan yang memperdulikan subjek sebagai suatu komunikasi.

Subjek merupakan sistem yang dibahas.

3) Sebagai bahasa permodelan, UML fokus pada pemahaman subjek melalui

formulasi (model dari subyek dan konsep yang terhubung).

4) Berkaitan dengan unifikasi, UML memadukan praktek rekayasa terbaik

sistem informasi dan industry, meliputi beragam tipe sistem (perangkat

lunak dan non lunak), domain (bisnis, perangkat lunak) dan proses siklus

hidup.

Page 27: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

12

5) Ketika diterapkan untuk menspesifikasikan sistem,UML dapat digunakan

untuk mengkomunikasikan “apa” yang diperlukan dari sistem dan

“bagaimana” sistem dapat direalisasikan.

6) Ketika diterapkan untuk memvisualisasikan sistem, UML dapat

digunakan untuk menjelaskan sistem secara visual sebelum direalisasikan.

7) Ketika diterapkan untuk membangun sistem, UML dapat digunakan

untuk memandu realisasi sistem.

8) Ketika diterapkan untuk mendokumentasikan sistem, UML dapat

digunakan untuk menangkap pengetahuan mengenai sistem pada seluruh

siklus hidup. ( Bambang Heriyanto, 2004)

Diagram-diagram yang digunakan dalam skripsi ini sebagai berikut:

1) State transmition diagram untuk memodelkan perilaku objects di dalam

sistem.

2) Activity diagram untuk memodelkan perilaku use cases dan objects di

dalam system.

2.4Java

2.4.1 Sinkronisasi

Sinkronisasi adalah proses pengaturan jalannya beberapa proses pada

saat yang bersamaan. Tujuan utama sinkronisasi adalah menghindari terjadinya

inkonsistensi data karena pengaksesan oleh beberapa proses yang berbeda serta

Page 28: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

13

untuk mengatur urutan jalannya proses-proses sehingga dapat berjalan dengan

lancar dan terhindar dari deadlock atau starvation. (Wells, Don: 2010)

Sinkronisasi merupakan suatu proses pengendalian akses dari sumber

daya yang pemakaiannya terbagi (shared resource) oleh banyak thread

sedemikian sehingga hanya satu thread yang dapat mengakses sumber daya

tertentu pada satu waktu. Dalam aplikasi multithreaded yang tidak

tersinkronisasi, sangat mungkin terjadi adanya satu thread memodifikasi suatu

objek yang dipakai bersama pada saat thread lain sedangkan dalam proses

menggunakan atau mengubah nilai obyek tersebut. Sinkronisasi mencegah jenis

kerusakan data demikian, jika tidak disinkronkan maka dapat mengakibatkan

pembacaan yang buruk dan kesalahan yang signifikan. Secara umum bagian

kritis (critical sections) dari kode biasanya ditandai dengan kata kunci

synchronized. Suatu lock (kunci) digunakan untuk mengsinkronkan akses ke

sumber daya yang terbagi-pakai.

2.5 Jenis-Jenis Protocol

a. IP (Inernet Protocol)

Internet Protocol didesain untuk interkoneksi sistem komunikasi

komputer pada jaringan packet-switched. Pada jaringan TCP/IP, sebuah

komputer diidentifikasi dengan alamat IP. Tiap-tiap komputer memiliki alamat

IP yang unik, masing-masing berbeda satu sama lainnya. Hal ini dilakukan untuk

Page 29: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

14

mencegah kesalahan pada transfer data. Terakhir, protokol data akses

berhubungan langsung dengan media fisik. Secara umum protokol ini bertugas

untuk menangani pendeteksian kesalahan pada saat transfer data, untuk

komunikasi datanya. Internet Protokol mengimplementasikan dua fungsi dasar

yaitu addressing dan fragmentasi.

Salah satu hal penting dalam IP dalam pengiriman informasi dengan

metode pengalamatan pengirim dan penerima. Saat ini terdapat standar

pengalamatan yang sudah digunakan yaitu IPv4 dengan alamat terdiri dari 32 bit.

Jumlah alamat yang diciptakan dengan IPv4 diperkirakan tidak dapat mencukupi

kebutuhan pengalamatan IP sehingga kedepan akan diimplementasikan sistem

pengalamatan yang baru yaitu IPv6 yang menggunakan sistim pengalamatan 128

bit.

b. UDP (User Diagram Protocol)

Pada dasarnya UDP merupakan layer transport yang lebih sederhana

daripada TCP. UDP tidak mengurutkan segmen seperti apa yang dilakukan TCP.

Selain itu juga UDP tidak membuat virtual circuit dan tidak menghubungi tujuan

dalam mengirimkan informasi.

c. TCP (Transmission Control Protocol)

TCP merupakan protokol untuk mengatur jenis komunikasi connection

oriented, dimana didalamnya terdapat virtual ciruit selama proses komunikasi

Page 30: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

15

berlangsung. TCP menerima pesan lalu memecahnya kedalam segmen yang

dinomori kemudian diurutkan kembali ketika sampai tujuan.

Pada saat segmen dikirim dilakukan proses sinkronisasi permintaan dari

sumber ke tujuan. Antara sumber dengan tujuan melakukan negosiasi dari

permintaas koneksi, TCP tujuan akan memberikan tanda acknowledgement ke

TCP sumber atas permintaan koneksi. Setelah koneki tercipta maka kedua belah

pihak dapat saling bertukar informasi sesuai dengan kesepakatan yang disetujui

dan koneksi akan terputus jika komunikasi selesai.

d. DHCP (Dynamic Host Configuration Protocol)

DHCP (Dynamic Host Configuration Protocol) adalah protokol yang

berbasis arsitektur client/server yang dipakai untuk memudahkan pengalokasian

alamat IP dalam satu jaringan.

e. Hypertext Transfer Protocol (HTTP)

Hypertext Transfer Protocol (HTTP) adalah sebuah protokol jaringan

lapisan aplikasi yang digunakan untuk sistem informasi terdistribusi, kolaboratif,

dan menggunakan hipermedia. Penggunaannya banyak pada pengambilan

sumber daya yang saling terhubung dengan tautan, yang disebut dengan

dokumen hiperteks, yang kemudian membentuk World Wide Web pada tahun

1990 oleh fisikawan Inggris, Tim Berners-Lee. Hingga kini, ada dua versi mayor

Page 31: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

16

dari protokol HTTP, yakni HTTP/1.0 yang menggunakan koneksi terpisah untuk

setiap dokumen, dan HTTP/1.1 yang dapat menggunakan koneksi yang sama

untuk melakukan transaksi. Dengan demikian, HTTP/1.1 bisa lebih cepat karena

memang tidak usah membuang waktu untuk pembuatan koneksi berulang-ulang.

f. FTP (File Transfer Protocol)

FTP merupakan sebuah protokol Internet yang berjalan di dalam lapisan

aplikasi yang merupakan standar untuk pentransferan berkas komputer antar

mesin-mesin dalam sebuah internetwork.

g. TELNET

TELNET adalah singkatan dari teletype network adalah sebuah protokol

jaringan yang digunakan di koneksi Internet atau local area network.

h. SNMP (Simple Network Management Protocol)

SNMP (Simple Network Management Protocol) adalah suatu suatu sistem

Protokol yang mengatur sistem network yang ada dengan aplikasi-aplikasi

terdistribusi. Fungsi Protokol ini adalah menyederhanakan sistem network yang

kompleks menjadi sederhana. Tugas SNMP secara umum adalah:

a. Restruktur network kearah yang mudah dikontrol dengan membagi atas

bagian-bagian.

Page 32: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

17

b. Semua informasi disimpan pada Management Information Base (MIB).

c. Memiliki Security.

d. Memiliki Privacy di masing-masing kelompok maupun antar kelompok.

e. Mempunyai access control.

Sistem network managemen Protokol adalah suatu komponen yang

memegang peranan penting di dalam System Management Network. Suatu

System Management Network merupakan suatu kumpulan tools yang digunakan

untuk memonitor dan mengontrol network yang memiki sifat-sifat antara lain

sebagai berikut:

a. Seorang operator interface mampu memberikan perintah-perintah jaringan

pada aplikasi untuk melengkapi sebagian atau seluruh kerja managemen

network.

b. Sebagian hardware yang digunakan dan software yang dibutuhkan untuk

managemen network dalam jaringan dapat digabungkan ke dalam peralatan

yang ada.

Komponen-komponen yang digunakan pada suatu system management network

adalah:

a) Manager terminal kerja atau manager.

Page 33: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

18

b) Agen

c) Basic Information Management.

d) Protokol management network.

2.6 Model-Model Referensi

2.6.1 TCP/IP

TCP/IP adalah sekumpulan Protokol yang terdapat di dalam jaringan computer

(network) yang digunakan untuk berkomunikasi atau bertukar data antar komputer.

TCP/IP merupakan Protokol standar pada jaringan internet yang menghubungkan

banyak komputer yang berbeda jenis mesin maupun sistem operasi agar dapat

berinteraksi satu sama lain. (Syafrizal, Melwin : 96)

Dalam arsitektur jaringan komputer, terdapat suatu lapisan-lapisan (layer) yang

memiliki tugas spesifik serta memiliki Protokol tersendiri. ISO (International

Standard Organization) telah mengeluarkan suatu standard untuk arsitektur jaringan

komputer yang dikenal dengan nama Open Sistem Interconnection (OSI). Standard

ini terdiri dari 7 lapisan Protocol yang menjalankan fungsi komunikasi antara 2

komputer. Dalam TCP/IP hanya terdapat 5 lapisan sebagai berikut :

Gambar 2.2 Arsitektur TCP/IP

Page 34: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

19

Sumber: (Sofana, 2011)

Arsitektur OSI telah tercakup oleh arsitektur TCP/IP adapun rincian fungsi

masing-masing layer arsitektur TCP/IP adalah sebagai berikut :

a) Physical layer (lapisan fisik) merupakan lapisan terbawah yang mendefinisikan

besaran fisik seperti media komunikasi, tegangan, arus, dan sebagainya. Lapisan

ini dapat bervariasi bergantung pada media komunikasi pada jaringan yang

bersangkutan.

b) Network Access layer mempunyai fungsi yang mirip dengan Data Link layer

pada OSI. Lapisan ini mengatur penyaluran data data pada media fisik yang

digunakan secara handal. Lapisan ini biasanya memberikan servis untuk deteksi

dan koreksi kesalahan dari data yang ditransmisikan.

c) Internet layer mendefinisikan bagaimana hubungan dapat terjadi antara dua

pihak yang berada pada jaringan yang berbeda seperti Network Layer pada OSI.

Bertanggung jawab menentukan alamat jaringan, menentukan rute yang harus

diambil selama perjalanan, dan menjaga antrian di jaringan. Data pada layer ini

berbentuk paket.

d) Transport layer mendefinisikan cara-cara untuk melakukan pengiriman data

antara end to end host secara handal. Menyediakan penanganan kesalahan dan

flow control. Lapisan ini menjamin bahwa informasi yang diterima pada sisi

penerima adalah sama dengan informasi yang dikirimkan pada pengirim.

Page 35: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

20

e) Aplication layer mendefinisikan aplikasi yang dijalankan di jaringan, karena itu

banyak terdapat Protocol-protokol pada lapisan ini. Sesuai dengan banyaknya

aplikasi TCP/IP yang dijalankan. Contohnya adalah SMTP untuk pengiriman

email, FTP untuk transfer file, HTTP untuk aplikasi web dan lain-lainnya.

2.6.2 Model OSI (Open System Interconnection)

Model referensi ini disebut OSI (Open System Interconnection) Reference

Model, karena model ini ditujukan untuk pengkoneksian open sistem, yang

dikembangkan oleh International Organization for Standardization (ISO) pada tahun

1984. OSI menggambarkan bagimana informasi dari satu software aplikasi pada

sebuah komputer berpindah melewati sebuah media jaringan ke suatu software

aplikasi dikomputer lain. OSI secara konseptual terbagi kedalam 7 lapisan dimana

masing-masing lapisan memiliki fungsi jaringan yang spesifik. Model ini diciptakan

berdasarkan sebuah proposal yang dibuat oleh the International Standards

Organization (ISO) sebagai langkah awal menuju standarisasi Protocol internasional

yang digunakan pada berbagai layer. (Syafrizal Melwin : 87)

Page 36: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

21

Gambar 2.3 Arsitektur OSI

Sumber: (Sofana, 2011)OSI reference model memiliki tujuh lapis, yakni sebagai berikut:

a) Application Layer : Berfungsi sebagai antarmuka dengan aplikasi

dengan fungsionalitas jaringan, mengatur bagaimana aplikasi dapat

mengakses jaringan, dan kemudian membuat pesan-pesan kesalahan.

Protokol yang berada dalam lapisan ini adalah HTTP, FTP, SMTP,

dan NFS.

b) Presentation layer : Berfungsi untuk mentranslasikan data yang

hendak ditransmisikan oleh aplikasi ke dalam format yang dapat

ditransmisikan melalui jaringan. Protokol yang berada dalam level ini

adalah perangkat lunak redirektor (redirector software), seperti

layanan Workstation (dalam Windows NT) dan juga Network shell

(semacam Virtual Network Computing (VNC) atau Remote Desktop

Protokol (RDP)).

c) Session layer : Berfungsi untuk mendefinisikan bagaimana koneksi

dapat dibuat, dipelihara, atau dihancurkan. Selain itu, di level ini juga

dilakukan resolusi nama.

d) Transport layer : Berfungsi untuk memecah data ke dalam paket-

paket data serta memberikan nomor urut ke paket-paket tersebut

sehingga dapat disusun kembali pada sisi tujuan setelah diterima.

Page 37: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

22

Selain itu, pada level ini juga membuat sebuah tanda bahwa paket

diterima dengan sukses (acknowledgement), dan mentransmisikan

ulang terhadap paket-paket yang hilang di tengah jalan.

e) Network layer : Berfungsi untuk mendefinisikan alamat-alamat IP,

membuat header untuk paket-paket, dan kemudian melakukan

routing melalui internetworking dengan menggunakan router dan

switch layer-3.

f) Data-link layer : Befungsi untuk menentukan bagaimana bit-bit data

dikelompokkan menjadi format yang disebut sebagai frame. Selain

itu, pada level ini terjadi koreksi kesalahan, flow control,

pengalamatan perangkat keras (seperti halnya Media Access Control

Address (MAC Address)), dan menentukan bagaimana perangkat-

perangkat jaringan seperti hub, bridge, repeater, dan switch layer 2

beroperasi.

g) Physical layer : Berfungsi untuk mendefinisikan media transmisi

jaringan, metode pensinyalan, sinkronisasi bit, arsitektur jaringan

(seperti halnya Ethernet atau Token Ring), topologi jaringan dan

pengabelan. Selain itu, level ini juga mendefinisikan bagaimana

Network Interface Card (NIC) dapat berinteraksi dengan media kabel

atau radio. (Sofana: 2011)

Page 38: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

23

2.7 Perangkat keras jaringan

2.7.1 Kabel

Kebanyakan jaringan LAN dalam media komunikasi menggunakan kabel,

meskipun sudah tersedia media komunikasi lainnya tanpa kabel atau yang lebih

dikenal Wireless Local Area Network (WLAN). Hal ini dikarenakan biaya yang

dibutuhkan untuk membangun jaringan LAN dengan menggunakan media kabel jauh

lebih murah dan dapat lebih menghemat biaya dibandingkan dengan jaringan tanpa

kabel (wireless). Adapun beberapa tipe kabel yang banyak digunakan dan menjadi

standard dalam penggunaan untuk komunikasi data dalam jaringan komputer. Kabel-

kabel ini sebelumya harus diuji kelayakan sebelum dipasarkan dan digunakan pada

jaringan. Setiap jenis kabel mempunyai kemampuan dan spesifikasi yang berbeda,

jenis kabel yang dikenal secara umum dan sering dipakai untuk jaringan LAN antara

lain:

a) Kabel Koaksial (Coaxial Cable)

b) Twisted Pair Cable

Selain kabel koaksial , ethernet juga dapat menggunakan jenis kabel lain,

yakni UTP (Unshielded Twisted Pair) dan STP (Shielded Twisted Pair). Kabel UTP

atau STP yang biasa digunakan adalah kabel yang terdiri dari 4 pasang kabel yang

Page 39: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

24

terpilin. Dari 8 buah kabel yang ada, hanya 4 buah saja yang digunakan untuk

mengirim dan menerima data. Perangkat-parangkat yang berkenaan dengan

penggunakan jenis kabel ini adalah konektor RJ-45 dan HUB. Ada dua cara untuk

memasang kabel UTP ke konektor RJ-45, cara ini harus disesuaikan dengan

tujuannya, yaitu straight digunakan untuk menghubungkan 2 komputer.

Adapun cirri-ciri kabel UTP adalah:

1) Kabel ini terbagi dua, yaitu Sheilded Twisted dan Unshielded Twisted

Pair(UTP)

2) Lebih banyak dikenal karena merupakan kabel telepon

3) Relatif murah

4) Jarak yang pendek

5) Mudah terpengaruh oleh gangguan

6) Kecepatan data yang dapat didukung terbatas, 10-16 Mbps

Ada beberapa jenis kabel yang digunakan dalam jaringan network, namun

yang paling banyak dipakai pada private network/ Local Area Network saat ini adalah

kabel UTP.

Gambar 2.4 Kabel UTP

Page 40: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

25

Sumber: (Sofana, 2011)

Ada dua jenis pemasangan kabel UTP yang umum digunakan untuk jaringan

lokal, ditambah pada satu jenis pemasangan khusus untuk cisco router, yakni:

1) Pemasangan lurus (Straight Through Cable)

2) Pemasangan Menyilang (Cross Over Cable)

3) Pemasangan roll/melingkar (Roll Over Cable)

2.7.2 Modem

Modem adalah singkatan dari modulator-demodulator. Dalam melakukan

tugasnya, modem akan merubah data digital kedalam data analog yang bisa dipahami

oleh kita masing-masing ataupun sebaliknya. Proses penggambarannya adalah

sebagai berikut: modem pertama menerima data dari sumber dalam bentuk digital,

kemudian data tersebut diubah kedalam bentuk analog. Data yang diubah ke bentuk

analog kemudian ditransmisikan ke modem kedua. Lalu modem kedua

mengambilnya dari bentuk analog ke dalam bentuk digital. Jadi modem pertama yang

berada pada sumber pengirim berfungsi sebagai pengubah dari bentuk digital ke

bentuk analog, sedang modem kedua yang berada pada pihak penerima berfungsi

untuk mengembalikan dari bentuk analog ke dalam bentuk digital. Modem

merupakan salah satu komponen utama yang dapat membuat suatu jaringan computer

Page 41: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

26

menjadi optimal. Dalam hal ini modem digunakan untuk menghubungkan jaringan ke

internet dan juga digunakan untuk sarana hubungan jarak jauh dengan computer

lainnya melalui media transmisi telepon. Modem ini memiliki kecepatan transfer data

yang berkisar antara 300 bit perdetik sampai dengan 56.000 bit per detik. Kecepatan

sebuah modem dapat menentukan waktu yang dibutuhkan untuk mentransfer data,

lebih tinggi kecepatan transmisinya maka akan lebih cepat pula waktu yang

diperlukan. Modem digunakan sebagai penghubung jaringan LAN dengan internet.

(Wahidin: 7)

2.7.2.1 Modem Huawei K3565

Huawei K3565 ini merupakan modem USB berukuran mini. Modem ini

support USB 2.0 dengan interfacenya 480 Mbps sehingga compatibel dengan semua

jenis komputer. Modem ini built-in dengan Micro SD card slot sehingga modem ini

juga dapat digunakan menyimpan data sama halnya dengan Flash Disk. Modem ini

juga unlock version sehingga dapat mengunakan seluruh GSM Indonesia. Modem

yang digunakan ini mempunyai spesifikasi plug & play, Micro-SD card slot Up to

8G, Support up to 7.2 Mbps HSUPA services, Support voice-enabled and SMS

services, Support data statistics through Huawei Mobile Partner,

Support Windows 2000/XP/Vista, Win 7 and Mac operating systems.

Page 42: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

27

Gambar 2.5 Modem Huawei K3565

Sumber: (Kim, 2011)

2.8 Teknologi sms

Semenjak SMS (Short Message Service) lintas operator secara resmi

beroperasi di Indonesia, lalu lintas pengiriman pesan pendek melalui handphone di

negeri ini pun mencapai angka rata-rata empat juta pesan perhari. Ini tergolong luar

biasa. SMS adalah layanan untuk mengirim dan menerima pesan tertulis (teks) dari

maupun kepada MS (mobile station). Pesan teks yang dimaksud tersusun dari huruf,

angka atau karakter alfanumerik. Pesan teks dikemas dalam satu packet/frame yang

berkapasitas maksimum 160 byte yang dapat direpresentasikan dalam 160 karakter.

Pada proses pengiriman pesan diterima SMSC (Short Message Service Center),

dimana tujuan pesan harus sesuai dengan MS yang dituju. Untuk melakukan hal

tersebut, SMSC mengirimkan permintan SMS ke HLR (home location register) untuk

menemukan roaming (kemampuan device dalam menerima sinyal walaupun di

daerah luar) dari nomor yang dituju. (Supardi, Yuniar.2009)

Page 43: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

28

Lalu HLR akan menerima respon kepada SMSC berupa:

a) Aktif atau tidak aktif

b) Posisi dari roaming

Jika status tidak aktif, maka SMSC akan menyimpan pesan tersebut dalam

jangka waktu tertentu. Ketika pesan berhasil terkirim maka HLR akan memberitahu

SMSC, dan SMSC akan memberitahu si pengirim pesan. Dibawah ini dapat adalah

gambar kedudukan SMS dalam jaringan.

Gambar 2.6 Kedudukan SMS dalam jaringan

Sumber: (Endinos, 2011)

Dari gambar diatas terlihat bahwa SMS gateway berfungsi sebagai penghubung

yang melakukan relay SMS antara ESME (External Short Message Entitiy) dan

SMSC dan sebaliknya. Komunikasi antara ESME dan SMS Gateway dapat

menggunakan protokol SMPP atau dengan HTTP, sementara ke SMSC menggunakan

Page 44: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

29

SMPP. ESME merupakan entitas luar yang dapat berupa server aplikasi penyedia

layanan (Application Service Provider) yang dimiliki oleh Content Provider, aplikasi

dapat menerima pesan, memproses pesan dan mengirim respons atas pesan yang

masuk , serta perangkat lain seperti email gateway, WAP proxy server , Voice mail

server.

2.8.1 Kelebihan Sms

Berbagai keunggulan layanan SMS ini, sehinga dapat bertahan di era

teknologi GPRS Ssekarang ini, setidaknya ada beberapa alasan. Alasan yang pertama,

hal itu kembali pada platform SMS yang menjadi awal lahirnya GPRS. Di dalam

kerjanya, SMS muncul dalam format berbentuk teks sehingga dapat menghemat kanal

atau bandwith. Sebagai perbandingan, misalnya 160 karakter pesan yang kita

ketikkan dalam satu kali SMS, itu sama dengan satu detik dering nada panggilan

dalam mode percakapan biasa antar pengguna handphone. Selain menghemat

bandwith, SMS juga dapat tersimpan secara aman di dalam perangkat handphone.

Alasan yang kedua, yang membuat SMS dapat menyatu dalam fasilitas GPRS

adalah karena dari penggunaan keeping elektronik yang disebut sebagai kartu SIM

(Subscriber Identification Module) yang biasanya terletak di bagian belakang

perangkat handphone. Dengan kehadiran kartu SIM ini pula, maka kita akan bisa

mengirim SMS kapan saja dan kepada siapa saja. Bukan cuma itu saja, kehandalan

SMS sebagai sarana komunikasi juga telah teruji oleh keleluasaannya dalam

Page 45: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

30

menerima pengembangan teknologi baru. Kemampuannya untuk muncul dalam

bentuk unified messaging misalnya, telah memungkinkan seorang pengguna

handphone menggunakan satu piranti perantara atau interface saja di dalam

mengakses kiriman data berupa suara, email dan juga faksimili melalui SMS.

Kemampuan dan daya tarik SMS juga semakin meningkat seiring dengan

pengembangan teknologi EMS (Enhanched Message Service) di dalam perangkat

handphone. EMS merupakan bentuk pengembangan lebih lanjut dari SMS

memungkinkan pemakai handphone untuk mengirimkan grafis atau gambar-gambar

animasi, nada dering atau ringtone samapai pada penggalan headline surat kabar.

Kelebihan lain dari SMS antara lain:

a) Harga per kiriman tetap/konstan. Apabila beban biaya telepon bervariasi maka

beban biaya kiriman SMS adalah tetap. Hal ini berpengaruh terutama pada

pelangan yang mengunakan kartu prabayar yang mempunyai kredit pulsa

terbatas pada telepon selularnya.

b) Praktis, pesan dapat dikirim ke penerima tanpa harus si penerima standbay di

tempat

c) Handal, ketika pesan SMS terkirim dan masuk gateway, dan gateway telah

berhasil mengirimkanya ke nomor tujuan, maka gateway akan mengirim

pasan acknowledgement ke pengirim bahwa pesan telah terkirim.

Page 46: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

31

2.8.2 kekurangan SMS

Kekurangan SMS antara lain:

1) Tergantung pada traffic, jika traffic pada jaringan SMS padat maka

pesan yang dikirim menjadi lebih lambat sampai di tujuan dan jika

jaringan SMS sangat padat maka ada kemungkinan pesan yang dikirim

tidak bisa sampai ke penerima.

2) Tergantung sinyal, jika telepon selular pengirim atau penerima tidak

bisa mendapatkan sinyal, maka pesan SMS tidak dapat dikirim atau

diterima.

2.9 SMS Gateway

2.9.1 Pengenalan SMS gateway

Gateway dapat diartikan sebagai pintu gerbang. Namun pada dunia komputer

gateway berarti jembatan penghubung antara satu system dengan system lain yang

berbeda, sehinga dapat terjadi pertukaran data antar 2 sistem, dengan demikian SMS

gateway dapat diartikan sebagai suatu penghubung untuk lalu lintas data-data SMS,

baik yang dikirim maupun yang diterima.

SMS gateway ini ditempatkan diantara kedua SMSC (SMS Center) yang

berfungsi sebagai relay bagi keduanya yang kemudian akan menerjemahkan data dari

Page 47: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

32

protokol satu ke protokol SMSC lainya yang di tuju. Namun seiring perkembangan

teknologi komputer, baik software maupun hardware dan perkembangan teknologi

komunikasi, SMS gateway tidak lagi dimaksudkan sebagai ilustrasi di atas.

Saat ini masyarakat lebih mengartikan SMS gateway sebagai suatu jembatan

komunikasi yang menghubungkan perangkat komunikasi (handphone) dengan

perangkat computer, yang menjadikan aktifitas SMS menjadi lebih mudah dan

menyenangkan, dan pengertian SMS gateway saat ini adalah sebuah program yang

mengkomunikasikan antar sistem operasi komputer, dengan perangkat komunikasi

yang terpasang untuk mengirim atau menerima SMS.

Pada proses di atas network admin akan menerima SMS request monitoring

jaringan dari client phone, aplikasi akan me-reply SMS dari client melalui modem

sebagai gatewaynya.

2.9.2 Perangkat komunikasi yang digunakan

Perangkat komunikasi yang dimaksudkan disini adalah perangkat yang dapat

digunakan untuk mengirim dan menerima SMS Adapun tipe handphone yang

digunakan, mengunakan teknologi GSM maupun CDMA Telkomsel meluncurkan

Nexian G922, handphone ini penulis gunakan sebagai perangkat komunikasi pada

aplikasi monitoring jaringan dengan spesifikasi sebagai berikut:

Page 48: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

33

Tabel 2.1 Spesifikasi Nexian G92

2.10 Metode Pengembangan Extreme Programming

2.10.1 Extreme Programming Software Development Process

Permasalahan utama yang sering muncul dalam sebuah proyek pengembangan

perangkat lunak adalah perubahan requirement yang begitu cepat. Hal ini terjadi

sebagai akibat perubahan-perubahan yang muncul baik pada aspek bisnis maupun

teknologi yang berlangsung lebih cepat daripada proses pengembangan perangkat

lunak itu sendiri. Extreme Programming (XP) adalah sebuah pendekatan

pengembangan perangkat lunak yang mencoba meningkatkan efisiensi dan

fleksibilitas dari sebuah proyek pengembangan perangkat lunak dengan

mengkombinasikan berbagai ide sederhana.

Bayangkan diri anda seorang project leader pada sebuah proyek

pengembangan perangkat lunak. Setelah berbulan-bulan mengembangkan perangkat

lunak dan proyek hampir selesai tiba-tiba saja di perusahaan klien anda terjadi

Spesifikasi NX- G922 Spesifikasi NX- G922

Dual Gsm 900/1800, colour Lcd, Mp3 player,

fm radio, voice recorder, stereo speaker,

support external memory, waranty 12 month

Gprs, camera, support chatting,

facebook, audio Speaker,

bluetooth, handfree, language

indonesia-english

Page 49: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

34

perubahan kebijakan yang berimplikasi pada perangkat lunak anda. Betapa

frustrasinya anda dan tim karena anda tidak bisa menolak perubahan-perubahan yang

diajukan klien tersebut karena kontrak anda mengakomodasi adanya perubahan-

perubahan tersebut. Hal tersebut seringkali terjadi disebabkan lamanya proses

pengembangan perangkat lunak. Proses pengembangan perangkat lunak yang

kompleks dapat menghabiskan waktu berbulan-bulan bahkan bertahun-tahun sebelum

perangkat lunak dapat digunakan, padahal seringkali dalam waktu tersebut terjadi

perubahan besar pada situasi bisnis maupun teknologi yang bisa membuat perangkat

lunak menjadi tidak relevan lagi.

Extreme Programming (berikutnya akan disingkat sebagai XP) adalah sebuah

pendekatan atau model pengembangan perangkat lunak yang mencoba

menyederhanakan berbagai tahapan dalam proses pengembangan tersebut sehingga

menjadi lebih adaptif dan fleksibel. Walaupun menggunakan kata programming, XP

bukan hanya berfokus pada coding tetapi meliputi seluruh area pengembangan

perangkat lunak.

2.10.2 Nilai-nilai Dasar XP

Berikut adalah nilai-nilai mendasar yang menjadi roh dari XP pada setiap

tahapan proses pengembangan perangkat lunak:

Page 50: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

35

1. Communication

XP mengfokuskan pada hubungan komunikasi yang baik antar anggota

tim. Para anggota tim harus membangun saling pengertian, mereka juga wajib

saling berbagi pengetahuan dan keterampilan dalam mengembangkan perangkat

lunak. Ego dari para programer yang biasanya cukup tinggi harus ditekan dan

mereka harus membuka diri untuk bekerjasama dengan programer lain dalam

menuliskan kode program.

2. Courage

Para anggota tim dan penanggungjawab pengembangan perangkat

lunak harus selalu memiliki keyakinan dan integritas dalam melakukan

tugasnya. Integritas ini harus selalu dijaga bahkan dalam kondisi adanya

tekanan dari situasi sekitar (misalnya oleh klien atau pemilik perusahaan).

Untuk dapat melakukan sesuatu dengan penuh integritas terlebih dahulu para

anggota tim harus terlebih dahulu memiliki rasa saling percaya. Rasa saling

percaya inilah yang coba dibangun dan ditanamkan oleh XP pada berbagai

aspeknya.

3. Simplicity

Lakukan semua dengan sederhana. Hal tersebut adalah salah satu nilai

dasar dari XP. Gunakan method yang pendek dan simpel, jangan terlalu rumit

Page 51: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

36

dalam membuat desain, hilangkan fitur yang tidak ada gunanya, dan berbagai

proses penyederhanaan lain akan selalu menjadi nilai utama dari setiap aspek

XP.

4. Feedback

Berikan selalu feedback kepada sesama anggota tim maupun pihak-

pihak lain yang terlibat dalam pengembangan perangkat lunak. Utarakan selalu

pikiran anda dan diskusikan kesalahan-kesalahan yang muncul selama proses

pengembangan. Dengarkan selalu pendapat rekan yang lain, dengan adanya

feedback inilah seringkali kita menyadari bagian mana yang salah atau bisa

ditingkatkan lagi dari perangkat lunak yang dikembangkan.

5. Quality Work

Semua nilai di atas berujung pada sebuah kondisi di mana kita

melakukan pekerjaan dengan berkualitas. Dengan proses yang berkualitas maka

implikasinya akan muncul pula perangkat lunak yang berkualitas sebagai hasil

akhirnya.

2.10.3 Aspek Dasar XP

Aspek dasar XP terdiri dari berbagai teknik atau metode yang diterapkan Beck

dan Jeffries pada C3 Project. Teknik-teknik tersebut dapat diamati pada gambar 2.8.

Page 52: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

37

Gambar 2.8 Xp Practices

Sumber: (Wells, 2011)

1. The Planning Game

Pendekatan XP dalam perencanaan sangat mirip dengan metode yang

diterapkan pada RAD (Rapid Application Development). Proses pendek dan

cepat, mengutamakan aspek teknik, memisahkan unsur bisnis dengan unsur

teknis dan pertemuan intensif antara klien dengan developer. Pada XP proses ini

menggunakan terminologi “game” karena Beck menyarankan untuk

menggunakan teknik score card dalam menentukan requirements. Semakin sulit

aspek teknis yang dibutuhkan semakin tinggi pula skor pada kartu rencana

tersebut.

Page 53: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

38

2. Small Releases

Setiap release dilakukan dalam lingkup sekecil mungkin pada XP. Setiap

developer menyelesaikan sebuah unit atau bagian dari perangkat lunak maka

hasil tersebut harus segera dipresentasikan dan didiskusikan dengan klien. Jika

memungkinkan untuk menerapkan unit tersebut pada perusahaan, hal itu juga

dapat dilakukan sekaligus sebagai tes awal dari penerapan keseluruhan sistem.

Kendati demikian hal ini tidak selalu perlu dilakukan karena harus dihitung

terlebih dahulu sumberdaya yang dibutuhkan. Apakah lebih menguntungkan

langsung melakukan tes terhadap unit tersebut atau melakukan tes setelah unit

tersebut terintegrasi secara sempurna pada sistem.

3. Metaphor

Metaphor pada dasarnya sama dengan arsitektur perangkat lunak.

Keduanya menggambarkan visi yang luas terhadap tujuan dari pengembangan

perangkat lunak. Beck sendiri seperti para penandatangan Agile Manifesto

lainnya bercita-cita menyederhanakan proses pengembangan perangkat lunak

yang saat ini sudah dianggap terlalu rumit. Arsitektur yang saat ini banyak berisi

diagram dan kode semacam UML dianggap terlalu rumit untuk dimengerti,

terutama oleh klien. Metaphor, walaupun mirip dengan arsitektur lebih bersifat

naratif dan deskriptif. Dengan demikian diharapkan komunikasi antara klien

dengan developer akan berlangsung lebih baik dan lancar dengan penggunaan

metaphor.

Page 54: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

39

4. Simple Design

Sebagai salah seorang penandatangan Agile Manifesto, Beck adalah

seorang yang tidak menyukai desain yang rumit dalam sebuah pengembangan

perangkat lunak. Tidak heran jika dia memasukkan Simple Design sebagai salah

satu unsur XP. Pada XP desain dibuat dalam lingkup kecil dan sederhana. Tidak

perlu melakukan antisipasi terhadap berbagai perubahan di kemudian hari.

Dengan desain yang simpel apabila terjadi perubahan maka membuat desain baru

untuk mengatasi perubahan tersebut dapat dengan mudah dilakukan dan resiko

kegagalan desain dapat diperkecil.

5. Refactoring

Refactoring adalah salah satu aspek paling khas dari XP. Refactoring

sendiri sangat sesuai untuk menjadi bagian XP karena Refactoring mengusung

konsep penyederhanaan dari proses desain maupun struktur baris kode program.

Dengan Refactoring tim pengembang dapat melakukan berbagai usaha untuk

meningkatkan kualitas program tanpa kembali mengulang-ulang proses desain.

Fowler adalah salah satu kolega dekat dari Kent Beck karena itu tidak

mengherankan bahwa cara berpikir mereka terhadap proses pengembangan

perangkat lunak sangat mirip satu dengan lainnya.

Page 55: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

40

6. Testing

XP menganut paradigma berbeda dalam hal tes dengan model

pengembangan perangkat lunak lainnya. Jika pada pengembangan perangkat

lunak lainnya tes baru dikembangkan setelah perangkat lunak selesai menjalani

proses coding maka pada XP tim pengembang harus membuat terlebih dahulu tes

yang hendak dijalani oleh perangkat lunak. Berbagai model tes yang

mengantisipasi penerapan perangkat lunak pada sistem dikembangkan terlebih

dahulu. Saat proses coding selesai dilakukan maka perangkat lunak diuji dengan

model tes yang telah dibuat tersebut. Pengetesan akan jauh lebih baik apabila

dilakukan pada setiap unit perangkat lunak dalam lingkup sekecil mungkin

daripada menunggu sampai seluruh perangkat lunak selesai dibuat. Dengan

memahami tahap ini kita dapat melihat bahwa siklus pada XP adalah requirement

analysis test code design. Sekilas terlihat hal ini tidak mungkin

dilakukan tetapi pada kenyataannya memang gambaran inilah yang paling dapat

menjelaskan tentang XP.

7. Pair Programming

Pair programming adalah melakukan proses menulis program dengan

berpasangan. Dua orang programer saling bekerjasama di komputer yang sama

untuk menyelesaikan sebuah unit. Dengan melakukan ini maka keduanya selalu

dapat berdiskusi dan saling melakukan koreksi apabila ada kesalahan dalam

penulisan program. Aspek ini mungkin akan sulit dijalankan oleh para programer

Page 56: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

41

yang memiliki ego tinggi dan sering tidak nyaman untuk berbagi komputer

bersama rekannnya.

8. Collective Ownership

Tidak ada satupun baris kode program yang hanya dipahami oleh satu

orang programer. XP menuntut para programer untuk berbagi pengetahuan untuk

tiap baris program bahkan beserta hak untuk mengubahnya. Dengan pemahaman

yang sama terhadap keseluruhan program, ketergantungan pada programer

tertentu ataupun berbagai hambatan akibat perbedaan gaya menulis program

dapat diperkecil. Pada level yang lebih tinggi bahkan dimungkinkan para

programer dapat bertukar unit yang dibangunnya.

9. Coding Standards

Pair programming dan collective ownership hanya akan dapat berjalan

dengan baik apabila para programer memiliki pemahaman yang sama terhadap

penulisan kode program. Dengan adanya coding standards yang telah disepakati

terlebih dahulu maka pemahaman terhadap program akan menjadi mudah untuk

semua programer dalam tim. Hal ini dapat diterapkan sebagai contoh pada

penamaan variabel dan penggunaan tipe data yang sama untuk tiap elemen semua

record atau array pada program.

Page 57: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

42

10. Continous Integration

Melakukan build setiap hari kerja menjadi sebuah model yang disukai

oleh berbagai tim pengembang perangkat lunak. Hal ini terutama didorong oleh

keberhasilan penerapan sistem ini oleh Microsoft dan telah sering dipublikasikan.

Dengan melakukan build sesering mungkin berbagai kesalahan pada program

dapat dideteksi dan diperbaiki secepat mungkin. Apabila banyak tim

pengembang perangkat lunak meyakini bahwa build sekali sehari adalah

minimum maka pada XP hal tersebut adalah maksimum. Pada XP tim disarankan

untuk melakukan build sesering mungkin misalnya setiap 4 jam atau bahkan

lebih cepat lagi.

11. 40-hours Week

Beck berpendapat bekerja 8 jam sehari dan 5 hari seminggu adalah

maksimal untuk tiap programer. Lebih dari itu programer akan cenderung

membuat berbagai kesalahan pada baris-baris kode programnya karena

kelelahan.

12. On-Site Customer

Sebuah pendekatan klasik, di mana XP menganjurkan bahwa ada anggota

dari klien yang terlibat pada proses pengembangan perangkat lunak, yang lebih

penting lagi ia harus ada di tempat pemrogaman dan turut serta dalam proses

build dan test yang dilakukan. Apabila ada kesalahan dalam pengembangan

Page 58: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

43

diharapkan klien dapat segera memberikan masukan untuk koreksinya.

(Pressman, 2005)

2.11 AT Command

At-command adalah perintah yang dapat diberikan kepada handphone atau

GSM/CDMA modem untuk melakukan sesuatu hal, termasuk untuk mengirim dan

menerima SMS. Dengan memprogram pemberian perintah ini di dalam

komputer/mikrokontroler maka perangkat kita dapat melakukan pengirima atau

penerimaan SMS secara otomatis untuk mencapai tujuan tertentu. Komputer ataupun

mikrokontroler dapat memberikan perintah At-command melalui hubungan kabel data

serial ataupun bluetooth. At-command ini sebenarnya adalah pengembangan dari

perintah yang dapat diberikan kepada modem Hayes yang sudah ada sejak dulu.

Dinamakan At-command karena semua perintah diawali dengan karakter A dan T.

Antar perangkat handphone dan GSM/CDMA modem bisa memiliki At-command

yang berbeda-beda, namun biasanya mirip antara satu perangkat dengan perangkat

lain. Untuk dapat mengetahui secara persis maka kita harus mendapatkan

dokumentasi teknis dari produsen pembuat handphone atau GSM/CDMA modem

tersebut. Berikut beberapa contoh perintah At-command untuk handphone:

a) Perintah Kirim SMS

AT+CMGS=x

Page 59: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

44

Dimana x adalah jumlah pasang karakter data yang ingin dikirimkan.

Handphone atau GSM/CDMA modem kemudian akan merespon untuk

mempersilakan memasukkan data yang harus diakhiri dengan karakter CTR-Z.

b) Perintah Terima SMS

AT+CMGR=x

Dimana x adalah nomor index SMS yang ingin dibaca dalam memori tempat

penyimpanan (SIM card atau handphone/modem). Handphone atau GSM/CDMA

modem akan merespon dan diterjemahkan oleh komputer/mikrokontroler sehingga

didapatkan informasi yang ingin diketahui.

2.12 Perlengkapan Pemrograman Penunjang

2.12.1 NetBeans IDE 6.7.1

IDE NetBeans adalah suatu modul, standar dasar IDE (Integrated

Development Environment), ditulis dalam bahasa pemrograman java. NetBeans

memfokuskan pada open source IDE, artinya bersifat terbuka untuk pengembangan

dengan bahasa pemrograman dan platform aplikasi java, yang juga dapat

dipergunakan sebagai satu kerangka umum untuk membangun berbagai macam

aplikasi sejenis.

NetBeans IDE 6.7.1 mendukung teknologi dan telah diuji dengan server

aplikasi. NetBeans IDE dapat berjalan pada sistem operasi OpenSolaris 2008.11, java

Page 60: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

45

desktop sistem 2, Microsoft Windows 2000 Professional SP4, Mac OS X 10.4.1 1

Intel/Power PC, bervariasi dengan Linux, seperti Red Hat Enterprise Linux yang

telah mendukung Java Virtual Machine (VM) dan telah teruji pada daftar dibawah ini

dengan catatan resolusi minimum layar adalah 1024x768 piksel. (Walles:2011)

2.12.2 MySQL

MySQL merupakan database open source yang popular saai ini dan

digunakan pada banyak website di internet sebagai bank data. MySQL menggunakan

SQL dan bersifat free. Selain itu MySQL dapat berjalan di berbagai platform, antara

lain Linux, Windows dan lain sebagainya. (Basofi, Arif:2010)

Tahap pengolahan database menggunakan normalisasi

1) Normalisasi

Normalisasi database biasanya jarang dilakukan dalam database skala kecil,

dan dianggap tidak diperlukan pada penggunaan personal. Namun seiring dengan

berkembangnya informasi yang dikandung dalam sebuah database, proses normalisasi

akan sangat membantu proses permintaan data. (Basofi, Arif:2010)

1. Bentuk Normal Pertama (1NF)

Bentuk normal pertama apabila memiliki satu dan hanya satu nilai.

Page 61: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

46

2. Bentuk Normal Kedua (2NF)

Bentuk normal kedua apabila telah memenuhi kriteria normal pertama dan

memiliki ketergantuan pada primary key.

3. Bentuk Normal Ketiga (3NF)

Normal ketiga terjadi jika memenuhi normal kedua dan memiliki ketergantuan

terhadap atribut bukan kunci serta memiliki ketergantungan primary key.

2.13 Metode Pengumpulan Data

2.13.1 Metode Observasi

Observasi adalah cara pengambilan data dengan menggunakan mata tanpa ada

pertolongan alat standar lain untuk keperlua tersebut (Moh.Nazir,2005:175)

2.13.2 Metode Studi Pustaka

Pengumpulan data yang bersumber dari berbagai karya ilmiah baik dari media

cetak maupun media elektronik yang berkaitan dengan Network Monitoring berbasis

SMS.

2.13.3 Wawancara

Wawancara adalah proses memperoleh data untuk tujuan penelitian dengan

cara tanya jawab, sambil bertatap muka kepada penanya atau pewawancara dengan si

Page 62: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

47

penjawab atau responden dengan alat yang dinamakan interview guide (panduan

wawancara) (Moh.Nazir,2005:195)

2.13.4 Studi Literatur

Adapun Studi literatur yang akan penulis teliti, sebelumnya terdapat korelasi

satu sama lainnya yang berkesinambungan dengan judul Monitoring Jaringan,

diantaranya adalah Network Monitoring Berbasis SMS pada Universitas Bina

Nusantara (Kinadi, Andre 2010) dan Sistem Monitoring Client Jaringan Komputer

Menggunakan Short Message Service (SMS) (Mardiyani, Endah 2009) dan studi pada

Open Source Nagios. Dalam literatur ini diidentifikasi perbandingan dari beberapa

system yaitu:

Tabel 2.1 Studi literatur

No Judul skripsi/Paper

Kelebihan Kekurangan

1. Sistem

Monitoring

Client Jaringan

Komputer

Menggunakan

Short Message

Service (SMS)

Monitoring Service

seperti POP3, SMTP

dan lain-lain,

Monitoring MySQL

Metode perancangan NDLC

(Network Development Life

Cycle), berbasis web jadi

menuntut client server selalu

online, dari segi fiture hanya

difokuskan pada monitoring

servuce jaringan berupa ping,

Page 63: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

48

(Studi kasus:

IPTEKNET

BPPT).

(Mardiyani,

Endah:2009)

pengujian email notification,

pengujian SMS server tool,

hanya menggunakan Hanphone

GSM

2. Network

Monitoring

Berbasis SMS

pada PT.

Mandala

Airlines.(Kinadi,

Andre: 20101)

Berbasis java dengan

input 2 nomor,

mempunyai 8 Fiture

yaitu, ip, host look up,

netstat dan lain-lain

Tidak menggunakan metode

pengembangan sistem, hanya

menginput 2 nomer yang

berbasis JAVA, tidak

menggunakan database, ari Segi

Fiture, fokus hanya 8 fiture.

3 Monitoring

Open Source

dengan Nagios

(Tool Nagios)

Open Source, status

jaringan dengan warna,

fokus pada perangkat

jaringan

Berbasis web sehingga

menuntut untuk selalu dalam

kondisi online, hanya

monitoring perangkat jaringan

dengan melihat host &service

yang terkonfigurasi

Page 64: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

49

BAB III

METODOLOGI PENELITIAN

3.1. Tempat dan Waktu Penelitian

Penelitian ini dilakukan di Layanan Kesehatan Cuma-Cuma LKC

(Khususnya Bidang IT). Waktu penelitian ini dimulai pada bulan Februari 2011

sampai dengan Maret 2011.

3.2. Metode Pengumpulan Data

3.2.1 Metode Observasi

Mengumpulkan informasi mengenai kebutuhan sistem (system

requirements) penulis melakukan pengumpulan data dengan cara observasi di

tempat penelitian, yang dalam hal ini adalah pengambilan data dan informasi serta

pengamatan langsung terhadap fasilitas dan perangkat jaringan di Layanan

Kesehatan Cuma-Cuma pada bagian jaringan komputer.

1.2.2 Studi Pustaka

Pengumpulan data yang bersumber dari 11 buku dan 4 sumber dari internet

yang berkaitan dengan Aplikasi Network Monitoring berbasis SMS.

1.2.3 Wawancara

Wawancara dengan melakukan konsultasi tanya jawab langsung dengan

sekretaris dan staf bagian Layanan Kesehatan Cuma-Cuma (LKC) untuk

mendapatkan penjelasan mengenai sistem informasi yang sedang berjalan. Proses

Page 65: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

50

tanya jawab secara lisan dilakukan dengan harapan dapat mengungkapkan data

yang ingin digali mengenai sistem yang dibutuhkan user. Wawancaranya

dilakukan sebelum dan sesudah pembuatan aplikasi, dari hasil wawancara

diperoleh sistem yang sedang berjalan dan data-data dari hasil wawancara

digunakan untuk mengidentifikasi kebutuhan- kebutuhan pengguna akan aplikasi

monitoring jaringan . Hasil wawancara disajikan pada bagian Lampiran B.

1.2.4 Studi Literatur

Studi literatur ini dilakukan dengan mencari dan membandingkan sistem

sejenis. Dari beberapa literatur maka penulis membuat aplikasi monitoring

jaringan ini dengan beberapa kelebihan dan kekurangan yaitu:

a. Kelebihan aplikasi penulis yaitu:

1. SMS tidak asal dengan kata lain tidak random, berdasarkan dengan

anggota yang terdaftar

2. Menggunakan Program JAVA, artinya JAVA support terhadap OOP

3. Konfigurasi dinamis terhadap hardware, misalnya pembuatan aplikasi

dengan menggunakan VB hanya bisa menggunakan HP jenis yang

lama.

4. Berbasis SMS, dengan menggunkan SMS semua orang bisa langsung

bisa membaca tapi jika berbasis WEB untuk terkoneksi terhadap

internet terlebih dahulu.

5. Monitoring jaringan ini menggunakan modem sebagai gatewaynya.

Page 66: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

51

b. Kekurangan: Aplikasi sistem network monitoring ini hanya bisa dijalankan

pada sistem operasi Windows.

3.3. Metode Pengembangan Sistem

Tahapan-tahapan yang dilakukan oleh penulis dalam melakukan

penelitian pengembangan aplikasi ini dengan menggunakan metode XP

(Extreme Programming) yaitu:

1.3.1 Planning

Tahapan ini adalah tahapan perencanaan pada sistem yang akan

dikembangkan. Pada tahapan ini secara detail dapat dilihat pada sub bab 4.2.1.

a. Pengumpulan permintaan user (user stories), sehingga output yang

dihasilkan dari sistem sesuai dengan keinginan user.

b. Pengamatan terhadap sistem yang sedang berjalan di Layanan

Kesehatan Cuma-Cuma Jakarta.

c. Melakukan identifikasi masalah yang terjadi pada sistem yang sedang

berjalan.

d. Usulan alur bisnis dan aplikasi serta wilayah persoalan data yang akan

didukung oleh sistem yang akan dikembangkan serta ditentukan pula

jangkauan atau batasan sistem.

1.3.2 Design

Setelah mengetahui definisi aplikasi yang akan dikembangkan maka

tahapan berikutnya adalah melakukan perancangan (design). Perancangan di sini

Page 67: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

52

dimaksudkan untuk membuat pemodelan terhadap aplikasi baru yang dapat

mewakili sistem yang berjalan saat ini di Layanan Kesehatan Cuma-Cuma (LKC).

Desain yang dimaksud meliputi perancangan aplikasi yaitu activity diagram, state

transsition diagram dan 3 perancangan database yaitu database SMS masuk, SMS

keluar dan buku telepon untuk tampilan antarmuka (interface) aplikasi sendiri,

penulis melakukan perancangan Graphical User Interface (GUI) dari aplikasi ini

menggunakan java tool NetBeans IDE 6.7.1.

a. Perancangan Aplikasi

Pada perancangan aplikasi ini, penulis menggunakan alat bantu (tools)

yaitu JCreator Pro, NetBeans IDE 6.7.1, Mysql, JDK 6.u18, JRE 6.u18. Selain itu,

aplikasi juga didesain menggunakan Unified Modelling Language (UML) yang

mengambil model Activity Diagram dan STD (State Transmission Diagram). Hal

ini dilakukan untuk memudahkan memberikan sketsa awal aplikasi, selain itu

penggunaan UML lebih cocok digunakan dalam perancangan aplikasi yang

bersifat object oriented. Perancangan aplikasi yang penulis lakukan dengan

menggunakan tools UML ini meliputi:

1. Spesifikasi proses yang diusulkan berupa activity diagram sistem

monitoring usulan dan activity diagram SMS function aktif dapat

dilihat secara lengkap pada sub bab 4.3.1.

2. STD proses monitoring yang berupa perintah jaringan yang terdiri dari

11 STD dapat dilihat secara lengkap pada sub bab 4.3.1

b. Perancangan Basis Data

Page 68: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

53

Data - data yang digunakan dalam suatu aplikasi akan disimpan ke dalam

database. Namun, dalam implementasinya, pada aplikasi yang dibuat dengan

menggunakan akses ke database secara langsung, melainkan melalui tahapan

normalisasi pada database. Implementasi perancangan database dapat dilihat di

sub bab 4.3.2.

c. Perancangan Tampilan

Pada tahap ini, penulis melakukan perancangan terhadap user interface

dari aplikasi ini. Perancangan yang dilakukan adalah perancangan user interface

yang ada di dalam sistem dapat dilihat pada sub bab 4.3.3..

1.3.3 Coding

Pada tahapan coding, dilakukan unit testing dan implementasi coding,

sebelum dilakukan developing aplikasi berdasarkan tahapan - tahapan

sebelumnya, unit test untuk setiap user stories disiapkan penulis untuk melakukan

deployment terhadap aplikasi yang telah dikembangkan ke target server tertentu.

Setelah unit test disiapkan, kemudian baru dilakukan pembangunan aplikasi

berdasarkan design yang sebelumnya telah dilakukan. Pada implementasi aplikasi,

penulis melakukan pengembangan aplikasi dengan mengacu pada design aplikasi

yang telah dilakukan. Pada coding karena sistem dikerjakan secara tim maka

diterapkan konsep pair programming yaitu konsep dimana programmer duduk

bersama untuk saling membantu.

Page 69: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

54

1.3.4 Testing

Pada tahapan testing, testing dilakukan pada unit test yang sebelumnya

telah disiapkan, yaitu dengan menguji source code yang digunakan. Pengujian

meliputi penginputan database dan testing monitoring ke server, yang dalam hal

ini apache, serta pengujian fungsional aplikasi yang meliputi tampilan data,

pemasukan, perubahan, serta penghapusan data. Untuk pengujian ini, penulis

menerapkan 2 (dua) macam pengujian yaitu pengujian mandiri dan pengujian oleh

user dengan metode blackbox. Pada pengujian tahap awal berupa pengujian

mandiri oleh programmer yaitu penulis dan Bpk. Adi dan tahap kedua berupa

pengujian user oleh staf IT LKC Bpk. Suratman dan hasilnya dapat dilihat pada

sub bab 4.5.2.

3.4. Kerangka Berpikir

Dalam melakukan penelitian ini, penulis melakukan tahapan-tahapan

kegiatan dengan mengikuti rencana kegiatan yang tertuang dalam model

konseptual penelitian ini.

Page 70: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

55

Gambar 3.1. Kerangka Berpikir

Page 71: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

56

BAB IV

IMPLEMENTASI DAN EVALUASI

4.1 Tentang Layanan Kesehatan Cuma-Cuma

4.1.1 Sejarah LKC

Layanan Kesehatan Cuma-Cuma (LKC) adalah lembaga nirlaba yang

memberikan pelayanan kesehatan gratis kepada masyarakat tidak mampu yang

didirikan pada tanggal 6 November 2001 dan diresmikan oleh Wakil Presiden RI

Bapak DR. Hamzah Haz. Pelayanan diberikan melalui berbagai program seperti

Gerai Sehat (klinik gratis), Aksi Layan Sehat (layanan kesehatan mobile di daerah

kumuh), dan SIGAP Bencana (layanan kesehatan di daerah bencana dan konflik).

Agar tepat sasaran, seluruh pelayanan dijalankan menggunakan sistem

kepesertaan berbasis keluarga.

Sejak enam tahun berkiprah, LKC sudah meng-cover sekitar 53.850 jiwa

sebagai peserta dari tiga lokasi Gerai Sehat dan puluhan daerah binaan yang

dilayani melalui program Aksi Layan Sehat. Selain itu, LKC juga membantu

kesehatan ribuan jiwa korban bencana alam dan konflik, seperti bencana banjir

nasional 2002 dan 2007, konflik Ambon, bencana tanah longsor Bandung dan

bencana tsunami Aceh dan gempa Nias. Serta tsunami Yogya dan Pangandaran.

LKC merupakan alternatif solusi atas permasalahan kaum miskin.

Page 72: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

57

Dasar pemikirannya adalah memecahkan masalah tanpa menimbulkan

masalah baru. LKC telah berevolusi menjadi sebuah model yang melibatkan

partisipasi aktif seluruh masyarakat. Gambarannya, kaum miskin dapat berobat

gratis sementara pembiayaan kesehatannya didanai oleh seluruh elemen

masyarakat, mulai dari individu sampai perusahaan. Selain dana, masyarakat juga

membantu dari berbagai sisi, seperti tenaga dengan menjadi relawan LKC.

Dengan model ini, besar biaya kesehatan per keluarga miskin yang ditanggung

pun menjadi murah.

Keberadaan LKC sebagai mitra masyarakat tidak mampu di daerah

Jadebotabek dapat menjadi pilihan pelaksana kegiatan Corporate Social

Responsibility. Bidang garapan yang jelas dan fokus, jumlah cakupan masyarakat

tidak mampu yang besar dan luas, dan program-program unggulan yang strategis,

efektif, efisien dan terukur, serta pengelolaan lembaga yang akuntabel dan

profesional merupakan faktor pendukung LKC. Selain itu, afiliasi LKC pada

Yayasan Dompet Dhuafa yang telah berkiprah selama 14 tahun di kancah lembaga

nirlaba di Indonesia menjadi kekuatan tersendiri yang unik. Dan puluhan

perusahaan lokal maupun multinasional besar yang telah menaruh kepercayaan

pada LKC untuk bekerja sama menjadi sebuah bukti nyata.

4.1.2 Visi dan Misi LKC

Sebagai suatu lembaga kesehatan, Layanan Kesehatan Cuma-Cuma (LKC)

ini memiliki visi dan misi untuk menjalankan tugasnya. Berikut visi dan misi dari

LKC yaitu:

Page 73: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

58

1. Terwujudnya Keluarga Sehat Mandiri

2. Mengoptimalkan upaya promosi kesehatan bagi keluarga dhuafa

3. Menjalankan pelayanan kesehatan keluarga dhuafa yang ramah,

amanah dan professional

4. Membina model pelayanan kesehatan masyarakat dhuafa yang

terpadu

5. Mengembangkan sistem pelayanan kesehatan yang berbasis ilmu

pengetahuan dan teknologi (IPTEK)

6. Mengembangkan kualitas Sumber Daya Manusia (SDM)

7. Mengembangkan kemitraan dengan sesama jejaring Dompet

Dhuafa (DD) dan di luar jejaring DD, baik Nasional maupun

Internasional

8. Mengembangkan metode pemberdayaan yang berbasis komunitas

kesehatan dan menganut pendekatan promotif-kuratif secara

holistic

4.1.3 Wewenang

Dalam menyelenggarakan fungsinya, relawan (karena yang terlibat di

LKC ini mayoritas relawan) mempunyai kewenangan:

1. Relawan berhak mensosialisasian keberadaan LKC kepada pihak

luar

2. Relawan berwenang untuk mengikuti semua kegiatan yang

diadakan LKC

Page 74: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

59

3. Relawan berwenang untuk menerima informasi perkembangan

LKC secara global

4.1.4 Strategi

Layanan kesehatan ini menjunjung tingi keberpihakan pada rakyat melalui

kerjasama tim yang cepat dan integritas yang tinggi, transparan untuk itu

diperlukan strategi dalam menjalankan tuganya, berikut ini akan diurankan

beberapa startegi LKC yaitu:

1. Optimalisasi Promosi kesehatan keluarga

2. Pemberdayaan kesehatan keluarga mandiri

3. Pelayanan kesehatan bermutu dan terpadu

4. Pembinaan Kampung sehat

5. Pembentukan Masyarakat siaga bencana

6. Bermitra dengan Pemerintah dan Swasta, NGO nasional dan

internasional dlm program kesehatan masyarakat

7. Memiliki budaya organisasi unggul

8. Membentuk karyawan yg berkarakter social enterpreneur

4.1.5 Staff IT LKC

Staff IT LKC adalah orang-orang yang terlibat dalam pemantauan

komputer termasuk pemantauan jaringan.

Page 75: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

60

Gambar 4.1 Struktur Organisasi bagian IT di

LKC

4.1.6 Tugas dan wewenang

Berikut tugas dan wewenang dari masing-masing jabatan yang ada di

bagian IT pada LKC:

1. Head of it

a) Mengarahkan dan mengembangkan strategi dan rencana IT

lembaga

b) Mengkoordinasikan dan mengontrol implementasi layanan IT baik

secara korporat maupun operasional

c) Memastikan tersedianya dukungan teknologi informasi yang

handal, efektif dan efisien bagi kelancaran operasional perusahaan

dalam mencapai sasaran sesuai dengan strategi perusahaan.

2. IT network manager

Page 76: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

61

a) Memantau kegiatan IT yang dilakukan setiap hari

b) Mengatur fungsi-fungsi pelayanan IT dan kinerjanya.

c) Me-maintain system pada server dan mengatasi troubleshooting

yang terjadi

3. Callcenter supervisor

a) Memantau jalannya operasional call center

b) Memastikan proses kerja berjalan sesuai dengan management mutu

yang diterapkan

c) Membuat laporan terhadap kinerja call center

4. Staff of online business

a) Melakukan pengembangan terhadap website LKC

5. Staff of it support

a) Melakukan pengecekan terhadap perangkat computer yang rusak

b) Melakukan perbaikan apabila ada laporan tentang computer yang

rusak

c) Melakukan back-up data lembaga

6. Staff of call center

Page 77: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

62

a) Melakukan komunikasi dengan customer

b) Menjawab pertanyaan-pertanyaan mengenai pelayanan lembaga

yang masuk melalui telepon

c) Memberikan informasi kepada customer

4.2 Perencanaan (Planning)

Pada tahapan planning dilakukan perencanaan untuk mulai membangun

sistem. Berikut adalah uraiannya :

1. Sistem informasi riset dikerjakan secara tim yang beranggotakan

tiga orang di LKC.

2. Aplikasi yang dibuat menggunakan bahasa pemrograman Java dan

basisdata XAMPP.

3. Pembuatan aplikasi dibutuhkan waktu kurang lebih 3 bulan.

4.2.1 Pengumpulan permintaan user (user stories)

Pada tahap ini penulis melakukan pengumpulan cerita user/user stories

dengan mewawancarai pengguna utama dari sistem yang ada, yaitu Bapak

Suratman sebagai sebagai staf IT LKC.

1. Penelitian

Tabel 4.1 Index card untuk pengusulan riset

Page 78: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

63

Project : Pengajuan Riset

Tanggal wawancara : 20 Januari 2011

Interviewer : Thoyyibah. T

Interviewee : Staf IT, Bapak Suratman.

Summary : “Pada sistem diharapkan peneliti dapat mengajukan

proposal riset dan dapat mengupload file-file yang

mendukung penelitian serta mengajukan usulan

monitoring jaringan .”

4.2.2 Pengamatan Terhadap Sistem Yang Sedang Bejalan

a. Aplikasi yang sedang berjalan

Layanan Kesehatan Cuma-Cuma menggunakan OP manager dalam

memantau jaringan komputer yanga ada. OP Manager ini merupakan aplikasi

berbasis web (Web-based Monitor) yang digunakan untuk melakukan pemantauan

terhadap jaringan. OP manager ini diakses melalui browser dengan pengetikan url

tertentu yang terhubung ke OP Manager, selanjutnya network administrator akan

diminta untuk memasukkan username dan password untuk dapat masuk ke

Page 79: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

64

halaman administrator. Setelah itu, network administrator dapat melihat status

koneksi dari server ke jaringan komputer.

b. Server monitoring

Pada umumnya monitoring merupakan kumpulan dari kegiatan-kegiatan

dalam melakukan proses pemantauan terhadap satu atau beberapa proses yang

telah direncanakan, dimana diperlukan suatu tindak lanjut jika ternyata terjadi

kesalahan pada satu atau beberapa bagian dari proses tersebut. Pada jaringan

komputer, monitoring biasanya dilakuakn untuk mengetahui konektivitas

jaringan.

Gambar 4.2 Proses network monitoring

Network adminisrator yang bekerja pada LKC mengandalkan OP Manager

untuk memantau jaringan LKC. OP Manager yang digunakan ini akan melakukan

proses ping ke server yang ada setiap 1 jam selama 24 jam. Tujuan dari

dilakukannya proses ping secara terus menerus adalah untuk mengetahui status

konektivitas jaringan dan mengetahui apakah ada gangguan yang terjadi. Bila

terjadi gangguan, OP Manager akan mengirimkan notifikasi berupa e-mail ke

alamat e-mail network administrator.

Notifikasi email akan muncul seperti biasa, saat network administrator

mengetahui adanya email notifikasi yang dikirimkan OP Manager masuk ke

Page 80: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

65

account yang dimilikinya, maka network administrator akan segera memeriksa isi

email tersebut. Melalui email yang dikirimkan, network administrator akan

menentukan tindakan yang harus dilakukan berikutnya. Bila e-mail yang

dikirimkan oleh OP manager berisi peringatan bahwa server terputus atau (down)

maka network administrator akan segera mengatasi ganguan tersebut.

c. Networking Device

Networking device yang digunakan pada jaringan komputer di LKC adalah:

a. 6 Switch

b. 3 Access Point

c. Kabel UTP

Spesifikasi hardware yang digunakan oleh server untuk terhubung dengan

OP manager adalah sebagai berikut:

a) Server Name :Windows Server 2003

b) Processor : Intel Pentium 4, 1,7 GHz

c) Hard disk : 40 Gb, ATA

d) RAM : 256 MB

e) Sistem Operasi : Microsoft Windows XP Professional

4.2.3 Identifikasi Masalah

Page 81: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

66

Setelah mengetahui sistem yag sedang berjalan pada LKC dengan

melakukan wawancara dengan pihak-pihak yang terkait, maka didapat beberapa

point mengenai masalah yang dihadapi oleh LKC adalah sebagai berikut:

1. Notifikasi gangguan hanya dapat dilakuakan melalui e-mail,

pemberitahuan terjadinya gangguan pada jaringan haya dilakukan

melalui e-mail yang dikirimkan ke network administrator. Hal

seperti ini menyebabkan penanganan dari network administrator

menjadi terlambat karena tidak setiap saat network administrator

berada di depan komputer untuk memeriksa e-mail. Hal lainnya

adalah saat koneksi ke jaringan internet terputus, maka notifikasi

gangguan tidak akan terima oleh network administrator.

2. Penggunaan OP manager yang harus melalui website, karena OP

manager merupakan aplikasi network monitoring berbasis web

(web-based), network administrator harus membuaka halaman web

tersebut untuk bisa memantau jaringan yang ada. Hal seperti ini

menambah pekerjaan network administrator dan juga menyita

waktu.

4.2.4 Usulan Alur Bisnis

Ada banyak aplikasin network monitoring yang bisa digunakan untuk

memantau jaringan komputer dan memiliki fitur-fitur yang dapat memberikan

informasi mengenai keadaan suatu jaringan dengan cepat dan akurat, namun

hanya sedikit aplikasi network monitoring yang dapat memberikan informasi

Page 82: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

67

mengenai kondisi sustu jaringan yang dapat diakses dimana saja. Hal seperti ini

memungkinkan network administrator untuk tidak terus berada di depan

perangkat komputer secara terus menerus untuk memantau jaringan.

Setelah menganalisis sisitem yang berjalan di LKC serta mengetahui

permasalahan yang terjadi, maka pemecahan masalah yang baik untuk dilakukan

pada saat ini adalah dengan membuat suatu sistem yang dapat memantau jaringan

sekaligus mengirim notifikasi berupa SMS (Short Message Service) ke handphone

yang dimiliki network administrator. Dengan adanya sistem seperti ini, apabila

terjadi gangguan pada jaringan perusahaan, maka sistem tersebut akan mengirim

notifikasi berupa SMS ke handphone yang dimiliki oleh network administrator.

Network administrator juga dapat melakukan proses ping ke jaringan LKC

melalui handphone yang dimilikinya dengan mengirim SMS dengan format

tertentu ke modem yang terhubung ke server, kemudian network administrator

juga akan mendapatkan SMS balasan (reply) mengenai status konektivitas.

Dengan bantuan sistem ini, diharapkan tugas network administrator untuk

memantau jaringan menjadi lebih mudah. Penanganan terhadap gangguan pada

jaringan pun menjadi lebih cepat karena notifikasi dikirim melalui SMS. Dengan

adanya sistem ini, diharapkan network administrator tidak harus terus menerus

berada di depan perangkat komputer untuk memantau jaringan. Solusi untuk

network monitoring melalui modem lebih jelasnya dapat dilihat dari gambar 4.3.

Page 83: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

68

Gambar 4.3 Pemecahan network monitoring yang disarankan

Fiture-fiture yang digunakan dalam monitoring jaringan adalah ping,

netstat, telnet, netstat, ipconfig, netshare, tracert, nslookup, ftp, hostname,

pathping. Berikut penjelasan dari fungsi-fungsi fiture jaringan yang akan dibuat:

Tabel 4.2 Fungsi Fiture monitoring Jaringan

No Perintah

ke

Fiture Fungsi

1 0 Ping Digunakan untuk koneksi jaringan, apakah sudah

terkoneksi jaringan atau tidak

2 1 Netstat Menempilkan koneksi jaringan, tabel routing dan

statistik interface.

3 2 Telnet Perintah untuk melakukan login ke remote host.

4 3 Nbstat Perintah yang digunakan untuk melihat sistem

komputer yang digunakan.

5 4 Ipconfig Perintah yang digunakan untuk memperlihatkan

Page 84: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

69

status kartu jaringan yang sedak aktif dan mengetahui

berapa IP yang dimiliki

6 5 Netshare Perintah yang digunkana untuk sharing data.

7 6 Tracert Untuk memeriksa berapa lama suatu paket melewati

masing-masing hop ke host yang dituju, tracert host

tujuan

8 7 Nslookup Server lookup mengetahui berbagai macam hal teknis

mengenai domain

9 8 Ftp Memulai koneksi file transfer protokol

10 9 Hostname Menampilkan nama komputer

11 10 Pathping Untuk melihat statika paket yang hilang

4.3 Desain

4.3.1 Perancangan Aplikasi

a. Activity Diagram

Activity diagram menggambarkan secara grafis aliran proses bisnis dan

langkah-langkah sebuah metode objek. Berikut ini adalah gambar Activity

Diagram pada saat network administrator melakukan permintaan informasi pada

sistem. Disini network administrator mengirimkan SMS ke nomor yang dipakai

Page 85: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

70

oleh modem. Setelah diterima oleh modem maka akan dilakukan periksaan format

SMS, jika format SMS yang dikirimkan oleh network administrator sesuai dengan

format yang sudah ditentukan maka SMS akan dieksekusi. Jika SMS yang

dikirimkan oleh network administrator tidak sesuai, maka SMS yang dikirimkan

tersebut diabaikan. Setelah SMS dieksekusi, maka sistem akan mengirimkan SMS

balasan ke nomor handphone network administrator. SMS balasan ini berisi hasil

dari eksekusi SMS yang telah dikirimkan sebelumnya.

Page 86: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

71

Gambar 4.4 Activity Diagram Sistem monitoring Berbasis SMS

Berikut ini adalah gambar Activity Diagram pada saat fitur SMS function

dijalankan. Sistem akan melakukan ping yang ditujukan ke server. Server akan

merespon, kemuadian respon tersebut akan dikirimkan kembali ke sistem. Sistem

akan melakukan pengecekan respon, jika respon yang diterima menunjukkan

perubahan status konektivitas pada jaringan , misalnya dari status Connection is

Down berubah menjadi Connection is UP, sistem akan mengirimkan respon yang

diperoleh dari server network administrator melalui SMS. Tetapi jika respon yang

diterima tidak mengalami perubahan, sistem tidak akan mengirimkan respon

tersebut ke network administrator.

Gambar 4.5 Activity Diagram Saat SMS function Aktif

Page 87: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

72

b. State Transsition Diagram

State Taransition Diagram (STD) merupakan alat yang digunakan untuk

menggambarkan urutan variasi layar yang dapat terjadi selama satu sesi

pengguna yang mana STD yang digunakan sebagai berikut:

1. STD Fitur Ping

Gambar 4.6 STD Fitur Ping

2. STD Fitur Netstat

Gambar 4.7 STD Fitur Netstat

3. STD Fitur Telnet

Gambar 4.8 STD Fitur Telnet

Page 88: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

73

4. STD Fitur Nbtstat

Gambar 4.9 STD Fitur Nbtstat

5. STD Fitur Ipconfig

Gambar 4.10 STD Fitur IPconfig

6. STD Fitur Net Share

Gambar 4.11 STD Fitur Net Share

7. STD Fitur Tracert

Gambar 4.12 STD Fitur Tracert

Page 89: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

74

8. STD Fitur Nslookup

Gambar 4.13 STD Fitur NSlookup

9. STD Fitur Ftp

Gambar 4.14 STD Fitur Ftp

10. STD Fitur Hostname

Gambar 4.15 STD Fitur Hostname

11. STD Fitur Pathping

Gambar 4.16 STD Fitur Pathping

Page 90: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

75

4.3.2 Perancangan Basisdata (Database)

Sebelum melakukan perancangan database, dilakukan normalisasi pada

tabel yang akan dibuat setelah itu dibuat kelengkapan tabel atribut. Berikut

merupakan tabel yang belum normal, karena masih terdapat data yang bernilai

ganda, yaitu : id_data_buku_telepon, nomor_telepon, nama_kontak, alamat,

id_sms_keluar, no_telepon_keluar, isi_pesan_keluar, status_keluar,

tanggal_keluar, jam_keluar, id_sms_masuk, no_telepon_masuk, isi_pesan_masuk,

status_masuk, tanggal_masuk, jam_masuk. Primary key dari tabel di bawah ini

adalah, id_data_buku_telepon, id_sms_keluar, id_sms_masuk melalui tahap

normalisasi sebagai berikut:

4.3.2.1 Normalisasi Tahap I

Langkah pertama dalam normalisasi adalah menghilangkan data yang

bernilai ganda. Tabel 4.3 merupakan tabel yang sudah melalui normalisasi

tahap I. Setelah terjadi dekomposisi data, maka terlihat tidak ada data yang

bernilai ganda.

Tabel 4.3 Normalisasi Tahap awal Database

Nama Field Tipe Data Keterangan

Id_keluar Int (8) Id sms keluar

No_telepon_keluar Text No telepon sms terkirim

Isi_pesan_keluar Varchar (20) Isi pesan sms

Page 91: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

76

Status_keluar Varchar (20) Status notifikasi

Tanggal_keluar Varchar (20) Tanggal sms yang keluar

Jam_keluar Varchar (20) Waktu pengiriman sms

Id_masuk Int (8) Id sms masuk

No_telepon_masuk Text No telepon sms yang diterima

Isi_pesan_masuk Varchar (20) Isi pesan sms

Status_masuk Varchar (20) Notifikasi sms masuk

Tanggal_masuk Varchar (20) Tanggal penerimaan sms

Jam_masuk Varchar (20) Waktu sms diterima

4.3.2.2 Normalisasi Tahap II

Pada normalisasi tahap II terdapat dependensi parsial, yaitu semua

atribut bukan kunci bergantung pada primary key. Normalisasi tahap II ini

tabel pertama data buku telepon dan data sms keluar serta tabel kedua buku

telepon dan SMS masuk.

Tabel 4.4 Normalisasi II Buku Telepon dan sms keluar

Nama Field Tipe Data Keterangan

Id Int (8) Id data dalam buku telepon

Page 92: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

77

Nomor_telepon Varchar (20) Nomor telepon yang di input

Nama_kontak Varchar (20) Nama kontak yang di input

Alamat Text Alamat yang diinput jika perlu

Id_keluar Int (8) Id sms keluar

No_telepon_keluar Text No telepon sms terkirim

Isi_pesan_keluar Varchar (20) Isi pesan sms

Status_keluar Varchar (20) Status notifikasi

Tanggal_keluar Varchar (20) Tanggal sms yang keluar

Jam_keluar Varchar (20) Waktu pengiriman sms

Tabel 4.5 Normalisasi II Buku Telepon dan SMS Masuk

Nama Field Tipe Data Keterangan

Id Int (8) Id data dalam buku telepon

Nomor_telepon Varchar (20) Nomor telepon yang di input

Nama_kontak Varchar (20) Nama kontak yang di input

Alamat Text Alamat yang perlu diinput

Page 93: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

78

Id_masuk Int (8) Id sms masuk

No_telepon_masuk Text No telepon sms yang diterima

Isi_pesan_masuk Varchar (20) Isi pesan sms

Status_masuk Varchar (20) Notifikasi sms masuk

Tanggal_masuk Varchar (20) Tanggal penerimaan sms

Jam_masuk Varchar (20) Waktu sms diterima

Page 94: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

79

4.3.2.3 Normalisasi Tahap III

Pada normalisasi tahap II masih terdapat dependensi transitif, maka

pada tahap III dependensi transitif harus dihilangkan. Dependensi transitif

yaitu ada beberapa atribut bukan kunci yang tidak sepenuhnya bergantung

pada atribut bukan kunci. Dikarenakan hal tersebut, maka tabel harus dipisah

lagi menjadi tabel buku telepon, tabel SMS keluar, tabel SMS masuk.

Normalisasi tahap III menjadi 3 tabel yaitu tabel data telepon, tabel SMS

keluar dan tabel sms masuk.

Tabel 4.6 Tabel Data Telepon

Nama Field Tipe Data Keterangan

Id Int (8) Id data dalam buku telepon

Nomor_telepon Varchar (20) Nomor telepon yang di input

Nama_kontak Varchar (20) Nama kontak yang di input

Page 95: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

80

Alamat Text Alamat yang diinput jika perlu

Tabel 4.7 Tabel SMS Keluar

Nama Field Tipe Data Keterangan

Id_keluar Int (8) Id sms keluar

No_telepon_keluar Text No telepon sms terkirim

Isi_pesan_keluar Varchar (20) Isi pesan sms

Status_keluar Varchar (20) Status notifikasi

Tanggal_keluar Varchar (20) Tanggal sms yang keluar

Jam_keluar Varchar (20) Waktu pengiriman sms

Tabel 4.8 Tabel SMS Masuk

Nama Field Tipe Data Keterangan

Id_masuk Int (8) Id sms masuk

No_telepon_masuk Text No telepon sms yang

diterima

Isi_pesan_masuk Varchar (20) Isi pesan sms

Page 96: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

81

Status_masuk Varchar (20) Notifikasi sms masuk

Tanggal_masuk Varchar (20) Tanggal penerimaan sms

Jam_masuk Varchar (20) Waktu sms diterima

4.3.3 Perancangan Tampilan

1.Perancangan User Interface

a) Halaman login

Gambar 4.17 Halaman login

b) Halaman Utama

Gambar 4.18 Halaman Utama

c) Halaman koneksi / berkas

Gambar 4.19 Halaman koneksi / berkas

Page 97: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

82

d) Halaman Koneksi terminal

Gambar 4.20 Halaman koneksi Terminal

e) Halaman Putus terminal

Gambar 4.21 Halaman Putus terminal

f) Halaman kirim SMS

Gambar 4.22 Halaman Kirim SMS

Page 98: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

83

g) Halaman Keluar

Gambar 4.23 Halaman Keluar

h) Halaman Database

Gambar 4.24 Halaman Database

i) Halaman SMS Masuk

Gambar 4.25 Halaman SMS Masuk

Page 99: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

84

j) Halaman SMS Keluar

Gambar 4.26 Halaman SMS Keluar

k) Halaman Buku Telepon

Gambar 4.27 Halaman Buku Telepon

l) Halaman SMS Request/ monitoring Jaringan

Gambar 4.28 Halaman SMS Request/ monitoring Jaringan

Page 100: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

85

m) Halaman Konfigurasi Perangkat System

Gambar 4.29 Halaman Konfigurasi Perangkat System

n) Halaman Aktivitas System

Gambar 4.30 Halaman Aktivitas System

4.4 Coding

Pada tahap ini dilaksanakan implementasi dari rancangan-rancangan, baik

rancangan basis data, rancangan aplikasi, maupun rancangan tampilan.

4.4.1 Penyiapan Unit Testing

Bahasa pemrograman yang digunakan pada pengembangan aplikasi ini

adalah menggunakan java 6.18, yang diantaranya terdiri dari java development kit

Page 101: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

86

dan java runtime environment 6.18, MYSQL sebagai database dan tool Editor

XAMPP, tool lain yang digunakan adalah Jcreator Pro 4.50 dan NetBeans IDE

6.7.1 serta menggunakan Modem Huawei K3565.

Program jaringan yang dijalankan pada awalnya menggunakan tool

Jcreator Pro 4.50, perintah jaringan yang digunakan adalah ping, netstat, telnet,

nbtstat, ipconfig, net share, tracert, nslookup, ftp, hostname, pathping kemudian

setelah itu pembuatan design aplikasi menggunakan tool NetBeans IDE 6.7.1,

Untuk menggunakan fitur sms maka dibuatlah database menggunakan MYSQL.

Modem yang digunakan dengan memanfaatkan port yang ada dan bit rate yang

ada pada modem.

4.4.2 Implementasi Coding

Pada implementasi coding terdapat beberapa package yang dibuat

diantaranya adalah:

a. Package Action

Package action ini digunakan untuk menerima request dari user.

Package action ini juga berfungsi sebagai pengontrol proses login.

b. Package Common

Package ini digunakan untuk method-method cara pehitungan

misalnya pada perhitungan tanggal, hari dan lainnya. Untuk source code

lengkap pada package common terdapat di lampiran.

c. Package DB

Page 102: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

87

Package db adalah package yang digunakan sebagai representasi dari

database. Pada package ini terbagi atas tiga bagian yaitu data buku

telepon, data SMS keluar dan data SMS masuk. Pada bagian model

merupakan representasi dari tabel.

d. Package UI

Package UI adalah package yang digunakan sebagai tampilan dari

aplikasi.

4.5 Pengujian (Testing)

Setelah selesai melakukan pengembangan, maka aplikasi ini harus diuji

coba yang bertujuan untuk mengetahui sejauh mana aplikasi ini dapat bekerja

dengan baik dan apakah aplikasi ini dapat memenuhi tujuan yang ingin diperoleh

sebelum diserahkan kepada end user. Pengujian dilakukan dengan deployment

terhadap aplikasi yang telah dikembangkan ke target server pada LKC. Pengujian

dilakukan dalam 2 (dua) tahap yaitu pengujian mandiri dan pengujian oleh user

secara black box.

4.5.1 Analisa Pengujian

Pengujian black box merupakan teknik pengujian sistem yang digunakan

untuk menguji fungsi-fungsi khusus dari perangkat lunak yang dirancang. Pada

teknik ini, kebenaran perangkat lunak yang diuji hanya dilihat berdasarkan

keluaran yang dihasilkan dari data Jaringan.

a) Analisa Pengujian

Page 103: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

88

Pengujian black box adalah teknik pengujian sistem yang

digunakan untuk menguji fungsi-fungsi khusus dari perangkat lunak yang

dirancang. Pada teknik ini, kebenaran perangkat lunak yang diuji hanya

dilihat berdasarkan keluaran yang dihasilkan dari data atau kondisi

masukan yang diberikan untuk fungsi yang ada tanpa melihat bagaimana

proses untuk mendapatkan keluaran tersebut. Dari keluaran yang

dihasilkan, kemampuan program dalam memenuhi kebutuhan pemakai

dapat diukur sekaligus dapat diiketahui kesalahan-kesalahannya. Beberapa

jenis kesalahan yang dapat diidentifikasi:

1) Kesalahan antar muka, contohnya pada saat aplikasi dibuka terjadi

error, dalam artian tidak mengakses dan membuka halaman

selanjutnya.

2) Kesalahan pada struktur data (pengaksesan basis data) ketika data

di input, hasil inputan tidak tampil atau tidak masuk ke dalam

databasenya.

4.5.2 Hasil Pengujian Mandiri

a. Kompetisi Riset

Tabel 4.12 Hasil pengujian aplikasi

No Modul Prasyarat Hasil yang

diharapkan

Hasil uji coba

1 Mengaktifkan Install database Mysql Database Apache Berjalan dengan

Page 104: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

89

database

MYSQL

menggunakan

tool XAMPP

dan XAMPP, running

Apache dan Mysql

dan Mysql

Running

baik lihat pada

lampiran C, gambar

1 (Database)

2 Masuk ke

halaman

sebelum login

Port sudah terdeteksi

sehingga bisa

melakukan proses

koneksi ke terminal

Masukkan port

yang digunakan

setelah itu cek

rate per bite yang

digunakan

kemuadian cek

nama database

yang digunakan

Berjalan dengan

baik lihat pada

lampiran C, gambar

3 (Berkas)

3 Konfigurasi

Terminal

Serial port, bit per

second, data bit, nama

host, nama database,

nama pegguna

Peneliti dapat

menginput dan

mengecek

konfigurasi

terminal

Berjalan dengan

baik lihat pada

lampiran C, gambar

3 (Berkas)

4 Koneksi

terminal

Server membuka port,

malkukan hubungan

ke port setelah

terhubung maka

Peneliti bisa

melakukan

koneksi terhadap

terminal dan

Berjalan dengan

baik lihat pada

lampiran C, gambar

Page 105: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

90

dilakukan pengaturan

terminal

menunggu

sebentar karena

server sedang

mengenali port

3 (Berkas)

5 Kirim SMS No telp dan pencarian

no telp, Kirim SMS

Peneliti dapat

melakukan input

no telp, mengirim

SMS dan hapus

SMS

Berjalan dengan

baik lihat pada

lampiran C, gambar

3 (Berkas)

6 Keluar

aplikasi

Pemutusan terhadap

terminal

Peneliti dapat

melakukan

pemutusan

terhadap terminal

dan keluar dari

aplikasi

Berjalan dengan

baik lihat pada

lampiran C, gambar

3 (Berkas)

7 SMS Masuk No telp yang dipilih,

balas SMS, hapus

pesan atau hapus

semua SMS

Peneliti bisa

melakukan hapus

pesan dan

memilih no telp

Berjalan dengan

baik lihat pada

lampiran C, gambar

1 (Database)

Page 106: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

91

8 SMS keluar Teruskan Kiriman,

Hapus pesan

Peneliti bisa

meneruskan pesan

setelah itu

menghapus pesan

yang ada

Berjalan dengan

baik lihat pada

lampiran C, gambar

1 (Database)

9 Buku telepon Tambah data baru,

pilih 1 no telp, hapus

data dari nama kontak

Peneliti bisa

menambah data

baru dan

menghapus data

dari nama kontak

Berjalan dengan

baik lihat pada

lampiran C, gambar

1 (Database)

10 Monitoring

jaringan

Memasukkan no

perintah sehingga

keluar hasil dari

perintah jaringan

yang telah di format

Bisa melakukan

monitoring

jaringan

Berjalan dengan

baik lihat pada

lampiran C, gambar

4 (Monitoring

Jaringan)

11 Konfigurasi

perangkat

system

Mendeteksi

penggunaaan port,

tipe SIM card dan

serial perangkat

Peneliti bisa

mendeteksi port

dari modem yang

digunakan

Berjalan dengan

baik lihat pada

lampiran C, gambar

3 (Berkas)

12 Aktivitas

system

Penyegaran File

dengan me refresh At-

Peneliti bisa

melakukan

Berjalan dengan

baik lihat pada

Page 107: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

92

command penyegaran file

dan merefresh At-

Command

lampiran C, gambar

2 (System)

4.5.3 Hasil Pengujian lapangan (User)

Tabel 4.13 Hasil pengujian Aplikasi monitoring oleh User

No Pengujian Penilaian

1. Fitur Konfigurasi terminal Berjalan dengan baik lihat pada lampiran C, gambar 3 (Berkas)

2. Fitur Koneksi terminal Berjalan dengan baik lihat pada lampiran C, gambar 3 (Berkas)

3. Fitur Kirim SMS Berjalan dengan baik lihat pada lampiran C, gambar 3 (Berkas)

4. Fitur Keluar aplikasi Berjalan dengan baik lihat pada lampiran C, gambar 3 (Berkas)

5. Fitur SMS masuk Berjalan dengan baik lihat pada lampiran C, gambar 1 (Database)

6. Fitur SMS keluar Berjalan dengan baik lihat pada lampiran C, gambar 1 (Database)

7. Fitur buku telepon Berjalan dengan baik lihat pada lampiran C, gambar 1 (Database)

8. Fitur monitoring Jaringan Berjalan dengan baik lihat pada lampiran C, gambar 4 (SMS Request)

9. Fitur Konfigurasi perangkat system

Berjalan dengan baik lihat pada lampiran C, gambar 2 (System)

Page 108: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

93

Pada pengujian kedua ini dilakukan pengujian oleh user, bukti hasil uji

coba terdapat pada lampiran C.

4.5.4 Screenshot hasil pengujian

1. Proses Konfigurasi Perangkat

Pada penggunakan aplilkasi ini, pengguna dalam hal ini yaitu user

harus melakukan proses login terleebih dahulu seperti terlihat pada gambar

ini.

Gambar 4.31 Halaman login

Pengguna memasukkan serial port, bits per Second yang telah dimiliki,

kemudian klik tombol untuk proses otentifikasi. Jika otentifikasi

pengguna telah berhasil, akan ditampilkan menu SMS monitoring dengan

database. Menu pada koordinator riset ini berisi pengaturan berkas, database,

SMS request, system. Sebelum memasuki aplikasi ini user harus mengecek

terlebih dahulu port yang digunakan oleh modem dengan cara klik kanan menu

10. Fitur aktivitas sistem Berjalan dengan baik lihat pada lampiran C, gambar 2 (System)

Page 109: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

94

Computer->Manage-> Computer Management->Device Manager->Ports

(COM&LPT) -> huawei Mobile Connect->klik kanan->properties->Port Settings.

2. Berkas

1. Aturan

Disini user dapat melakukan konfigurasi role-role apa saja yang

terlibat pada Network monitoring Berbasis SMS LKC pada fiture berkas

ini kita dapat melakukan pengaturan koneksi terminal, putus terminal,

kirim SMS, pengaturan terminal, keluar aplikasi dengan form

konfigurasi ikuti pada gambar 4.32.

Gambar 4.32 Menu pada berkas

Maka akan tampil halaman seperti berikut ini :

a. Koneksi terminal

Gambar 4.33 koneksi Terminal

User masuk ke koneksi terminal, kemudian klik tombol untuk proses

otentifikasi. Jika otentifikasi pengguna telah berhasil, akan ditampilkan menu

SMS monitoring dengan database.

Page 110: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

95

b. Putus Terminal

Gambar 4.34 Putus Terminal

Gambar 4.34 merupakan notifikasi apabila kita akan keluar dari aplikasi.

c. Kirim SMS

Gambar 4.35 Kirim SMS

3. Database

Pada halaman ini user dapat melakukan input terhadap database

Tampilan halaman seperti berikut ini :

a. Data SMS Masuk

Gambar 4.36 Data SMS Masuk

Page 111: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

96

b. Data SMS Keluar

Gambar 4.37 Data SMS Keluar

c. Data Buku Telepon

Gambar 4.38 Data Buku Telepon

4. SMS Request

Pada halaman ini user dapat melakukan input SMS Request terhadap

monitoring jaringan, Tampilan halaman seperti berikut ini :

Page 112: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

97

Gambar 4.39 monitoring Jaringan

5. System

Pada halaman ini user dapat melihat konfigurasi perangkat dan AT-

Command pada sistem, tampilan halaman seperti pada gambar 4.40.

a. Data Konfigurasi Perangkat

Gambar 4.40 Konfigurasi Perangkat

b. Info AT Command System

Gambar 4.41 Aktivitas System SMS Server

Page 113: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

101

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Dengan adanya aplikasi monitoring jaringan dengan notifikasi melalui

SMS ini akan membantu admin mengetahui keadaan komputer pada jaringan

LKC dengan cepat, dan dapat meningkatkan pelayanan dengan mengambil

tindakan pada komputer client yang bermasalah.

5.2 Saran

Setelah melakukan analisis dan perancangan sistem network monitoring

berbasis SMS, ada beberapa saran yang dapat digunakan sebagai acuan untuk

mengembangkan sistem ini dimasa mendatang, antara lain:

1. Sebaiknya aplikasi dapat dijalankan dengan OS berbasis Open Source

karena aplikasi ini hanya bisa dijalankan pada sistem operasi Windows.

2. Monitoring jaringan yang ada dalam aplikasi ini hanya berupa perintah IP,

Nslookup, Netstat, Telnet, Ping, Netstat, Nbstat, Ipconfig, Tracert, Net

Share, FTP, Hostname serta Pathping dapat dikembangkan dengan

menambahkan perintah jaringan yang lain seperti monitoring router,

switch atau monitoring service berupa POP3, SMTP.

Page 114: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

102

DAFTAR PUSTAKA

Basofi, Arif. 2010. Normalisasi Database. Information Technology ITS.

Surabaya.

Hariyanto, Bambang. 2004. Rekayasa Sistem Berorientasi Objek. Bandung:

Informatika.

Kinadi, Andre. 2010. Network Monitoring Berbasis SMS pada PT. Mandala

Airlines. Bina Nusantara. Jakarta.

Kusaeri, Ahmad.2010.Monitoring Jaringan .Andi.Yogyakarta

Mardiyani, Endah. 2009. Sistem Monitoring Client Jaringan Komputer

Menggunakan Short Message Service (SMS). UIN Syarifhidayatullah.

Jakarta.

Melwin, Safrizal.2005, Pengantar Jaringan Komputer. Andi.Yogyakarta.

Nazir, Moh. 2005. Metode Penelitian. Jakarta: Ghalia Indonesia.

Redaksi Infokomputer,2008, Panduan Praktis Membangun Lan, Prima

Infosarana Media, Jakarta.

Pressman, Roger. S.2005.Software Engineering.6th edition.Mc GrawHill.

Sofana, Iwan.2011. Teori & Modul Praktikum Jaringan Komputer.Bandung.

Modula.

Wahidin,2007, Jaringan Komputer untuk Orang Awam. Maximom.

Palembang.

Page 115: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

103

Endino.2011.SMS [Online] Tersedia:www.Cara kerja SMS pada

GSM/CDMA.htm [13 Mei 2011]

Kim.2011.Huawei K3565 [Online] Tersedia: www.modem/ Huawei

K3565.html [13 Mei 2011]

Wells, Don. 2011. Extreme Programming. [Online] Tersedia:

www.extremeprogramming.org.[13 Mei 2010]

Welas. 2011.Netbeans[Online] Tersedia: www.netbeans.org.[13 Mei 2010]

Page 116: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

LAMPIRAN

1. Database

Data SMS Masuk

Data SMS Keluar

Page 117: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

Buku Telepon

2. SYSTEM

Konfigurasi Perangkat

Aktivitas System

Page 118: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

3. BERKAS

Keluar Aplikasi

Kirim sms

Koneksi Terminal

Page 119: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

Konfigurasi Terminal

Page 120: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

4. SMS REQUEST(Monitoring Jaringan)

Proses ipconfig

Proses Netstat

Proses Telnet

Page 121: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

Proses Hostname

Proses Tracert

Proses Ping

Page 122: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

Proses Nslookup

Proses Netshare

Proses Pathping

Page 123: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

Proses Nbtstat

Proses Ftp

Page 124: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

HASIL TESTING APLIKASI10 April 2011, 13.00 wib, ruang rapat IT STAFF

Peserta :

NO. Unit Organisasi

1. Lembaga Penelitian

a. Hasil Pengujian Monitoring Jaringan

No Modul Prasyarat Hasil yang diharapkan Hasil uji

coba

1 Mengaktifkan

database

MYSQL

menggunakan

tool XAMPP

Install database Mysql

dan XAMPP, running

Apache dan Mysql

Database Apache dan

Mysql Running

Baik

2 Masuk ke

halaman

sebelum login

Port sudah terdeteksi

sehingga bisa

melakukan proses

Masukkan port yang

digunakan setelah itu cek

rate per bite yang

digunakan kemuadian cek

Baik

Page 125: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

koneksi ke terminal nama database yang

digunakan

3 Konfigurasi

Terminal

Serial port, bit per

second, data bit, nama

host, nama database,

nama pegguna

Peneliti dapat menginput

dan mengecek

konfigurasi terminal

Baik

4 Koneksi

terminal

Server membuka port,

malkukan hubungan ke

port setelah terhubung

maka dilakukan

pengaturan terminal

Peneliti bisa melakukan

koneksi terhadap

terminal dan menunggu

sebentar karena server

sedang mengenali port

Baik

5 Kirim SMS No telp dan pencarian

no telp, Kirim SMS

Peneliti dapat melakukan

input no telp, mengirim

SMS dan hapus SMS

Baik

6 Keluar aplikasi Pemutusan terhadap

terminal

Peneliti dapat melakukan

pemutusan terhadap

terminal dan keluar dari

aplikasi

Baik

7 SMS Masuk No telp yang dipilih,

balas SMS, hapus pesan

Peneliti bisa

melakukan hapus

Baik

Page 126: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

atau hapus semua SMS pesan dan memilih no

telp

8 SMS keluar Teruskan Kiriman,

Hapus pesan

Peneliti bisa meneruskan

pesan setelah itu

menghapus pesan yang

ada

Baik

9 Buku telepon Tambah data baru, pilih

1 no telp, hapus data

dari nama kontak

Peneliti bisa menambah

data baru dan

menghapus data dari

nama kontak

Baik

10 Monitoring

jaringan

Memasukkan no

perintah sehingga

keluar hasil dari

perintah jaringan yang

telah di format

Bisa melakukan

monitoring jaringan

Baik

11 Konfigurasi

perangkat

system

Mendeteksi

penggunaaan port, tipe

SIM card dan serial

perangkat

Peneliti bisa mendeteksi

port dari modem yang

digunakan

Baik

12 Aktivitas

sistem

Penyegaran File dengan

me refresh At-command

Peneliti bisa melakukan

penyegaran file dan

Baik

Page 127: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

merefresh At-Command

HASIL SOSIALISASI APLIKASI10 April 2011, 13.00 wib, ruang rapat IT STAFF

Peserta :

NO. Unit Organisasi

1. Lembaga Penelitian

Kesimpulan Hasil Sosialisasi Sistem :

No Pengujian Penilaian

1. Fitur aplikasi secara keseluruhan Baik

2. Fitur Konfigurasi terminal Baik

3. Fitur Koneksi terminal Baik

4. Fitur Kirim SMS Baik

5. Fitur Keluar aplikasi Baik

6. Fitur SMS masuk Baik

7. Fitur SMS keluar Baik

8. Fitur buku telepon Baik

9. Fitur Monitoring Jaringan Baik

10. Fitur Konfigurasi perangkat sistem Baik

11. Fitur aktivitas sistem Baik

12. Kesesuaian dengan Kebutuhan Baik

Page 128: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

WAWANCARA

Lampiran 1

Tanggal wawancara : 20 Januari 2011

Interviewee : Staf IT, Bapak Suratman A. Md

Hasil Wawancara Sistem Yang Sedang Berjalan

Wawancara ini dilakukan untuk mengetahiu sistem pemantau jaringan

yang dilakukan oleh Layanan Kesehatan Cuma-Cuma. Pertanyaan-Pertanyaan

dalam wawancara ini diajukan kepada network administrator, berikut adalah

pertanyaanya:

1. Dalam memantau jaringan komputer yang ada, apa yang umumnya

dilakukan?

Dalam memantau jaringan komputer yang ada di perusahaan ini, network

administrator menggunkan OP Manager yang merupakan aplikasi pematau

jaringan yang berbasis web (web-based).

2. Sistem yang dimiliki pemantau jaringan tersebut?

OP Manager yang digunakan untuk memantau jaringan Layanan

Kesehatan Cuma-Cuma memiliki fungsi ping. Fungsi ping ini digunakan

oleh network administrator untuk memantau jaringan komputer terhadap

server.

Page 129: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

3. Apakah ada keluhan dari sistem jaringan tersebut?

Selama ini network admnistrator menggunakan OP Manager untuk

memantau jaringan komputer yang ada. Keluhan yang dirasakaan adalah

tidak adanya fasilitas/fitur yang dapat digunakan untuk mengetahui status

konektivitas jaringan terhadap server secara realtime.

Network administrator tidak bisa meninggalkan kantor terlalu lama

karekna harus segera kembali ke kantor untuk memantau jaringan.

4. Dari sisi kebutuha hardware(perangkat keras) komputer yang dibutuhkan

untuk menjalankan sistem pemantau jaringan tersebut. Apakah ada

kebutuhan hardware khusus?

OP Manager ini tergolong ringan dan tidak memerlukan perangkat keras

khusus.

5. Fasilitas atau fitur lain yang diharapkan dari sistem pemantau jaringan

yang sudah ada?

Untuk saat ini, fasilitas atau fitur yang diharapkan ada pada sistem yang

sedang berjalan adalah fasilitas atau fitur SMS sehingga network

administrator dapat mengetahui kkonektivitas jaringan komputer yang ada

terhadap server secara realtime.

6. Mengapa fasilitas atau fitur tersebut penting?

Fasilitas atau fitur tersebut penting agar network administrator dapat

mengetahui status konektivitas jaringan meski tidak berada di kantor atau

di depan komputer untuk memantau jaringan.

Page 130: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

Lampiran 2

Tanggal wawancara : 18 April 2011

Interviewee : Staf IT, Bapak Suratman A. Md

Hasil Wawancara Setelah Ujicoba Implementasi Sistem

Berikut ini adalah hasil wawancara setelah ujicoba implementasi

sistem yang dilakuakan. Pertanyaan-pertanyaan dala wawancara ini

diajukan kepada network administrator:

1. Setelah melakukan uji coba dengan sistem yang baru ini, apakah cara

penggunaanya menyulitkan?

Tidak sulit, karena sisitem yang baru ini mempunyai interface yang user

friendly.

2. Apakah setelah implememtasi ini akan dapat mengatasi masalah yang

sebelumnya dirasakan?

Ya, menurut saya dengan adanya sistem yang baru ini, masalah yanga ada

sebelumnya menjadi terpecahkan. Selama ini, kendalanya adalah saya

harus berada di depan komputer untuk memantau jaringan. Dengan adanya

sistem yang baru ini, saya dapat mengetahui status jaringan saat saya tidak

berada di depan komputer.

3. Apakah dengan adanya fasilitas SMS pada sistem yang baru membantu

network administrator dalam prose pemantauan jaringan?

Page 131: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

Ya, sangat membantu dengan adanya fasilitas atau fitur SMS pada sistem

yang baru, karena saya dapat mengetahui status konktifitas jaringan melalui

SMS saat saya tidak berada di depan komputer. Sedangkan pada sisitem

yang lama, saya harus selalu memeriksa e-mail saya untuk mengetahui

status konektivitasnya.

4. Apa keuntungan yang diperoleh dari solusi sistem pemantau jaringan

berbasis SMS ini?

Keuntungannya adalah saya dapat mengetahui konektivitas jaringan dengan

cepat walaupun saya tidak berada di komputer.

Page 132: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

SOURCE CODE

import java.io.*;

public class tecCmd {

private static String getPrintOut(String

cmd) {

StringBuffer sb = new StringBuffer();

Runtime rt = Runtime.getRuntime();

try {

Process p = rt.exec(cmd);

// Mendapatkan InputStream dan

menciptakan

// objek BufferedReader

BufferedReader in = new

BufferedReader

(new

InputStreamReader(p.getInputStream()));

String s;

// Membaca input dan simpan ke

StringBuffer

while ((s = in.readLine()) != null) {

sb.append(s);

sb.append("\n");

}

in.close();

} catch (Exception ex) {

System.out.println(ex.getMessage());

}

return sb.toString();

}

public String baca(String cmd) {

//String cmd = "netstat -an";

//System.out.println("Output: " + cmd);

//System.out.println(getPrintOut(cmd));

return getPrintOut(cmd);

}

}

public class pengaturan_Terminal extends

javax.swing.JDialog {

public pengaturan_Terminal(boolean

modal) {

super(new java.awt.Frame(), modal);

}

public pengaturan_Terminal() {

}

public void tampilanGUI(){

initComponents();

}

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jPanel4 = new javax.swing.JPanel();

jPanel6 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

dataSerial = new

javax.swing.JComboBox();

jPanel7 = new javax.swing.JPanel();

jLabel2 = new javax.swing.JLabel();

dataBps = new

javax.swing.JComboBox();

jPanel8 = new javax.swing.JPanel();

jLabel3 = new javax.swing.JLabel();

dataBits = new

javax.swing.JComboBox();

jPanel9 = new javax.swing.JPanel();

jLabel4 = new javax.swing.JLabel();

dataParity = new

javax.swing.JComboBox();

jPanel10 = new javax.swing.JPanel();

jLabel5 = new javax.swing.JLabel();

dataStop = new

javax.swing.JComboBox();

jPanel11 = new javax.swing.JPanel();

Page 133: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jLabel6 = new javax.swing.JLabel();

dataFlowControl = new

javax.swing.JComboBox();

jPanel5 = new javax.swing.JPanel();

jPanel12 = new javax.swing.JPanel();

jLabel7 = new javax.swing.JLabel();

dataNamaHost = new

javax.swing.JTextField();

jPanel13 = new javax.swing.JPanel();

jLabel8 = new javax.swing.JLabel();

dataNamaPort = new

javax.swing.JTextField();

jPanel14 = new javax.swing.JPanel();

jLabel9 = new javax.swing.JLabel();

dataNamaDatabase = new

javax.swing.JTextField();

jPanel16 = new javax.swing.JPanel();

jPanel15 = new javax.swing.JPanel();

jLabel10 = new javax.swing.JLabel();

dataNamaPengguna = new

javax.swing.JTextField();

jPanel17 = new javax.swing.JPanel();

jLabel11 = new javax.swing.JLabel();

dataPassword = new

javax.swing.JTextField();

jPanel3 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

jPanel2 = new javax.swing.JPanel();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("Pengaturan Terminal SMS

Server");

setCursor(new

java.awt.Cursor(java.awt.Cursor.DEFAULT_

CURSOR));

jPanel1.setLayout(new

javax.swing.BoxLayout(jPanel1,

javax.swing.BoxLayout.Y_AXIS));

jPanel4.setLayout(new

javax.swing.BoxLayout(jPanel4,

javax.swing.BoxLayout.Y_AXIS));

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.setBorder(new

javax.swing.border.TitledBorder(new

javax.swing.border.LineBorder(new

java.awt.Color(0, 0, 0), 2, true), "

Konfigurasi Terminal ",

javax.swing.border.TitledBorder.DEFAULT_J

USTIFICATION,

javax.swing.border.TitledBorder.DEFAULT_P

OSITION, new java.awt.Font("Tahoma", 1,

12)));

jPanel6.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel6.setBackground(new

java.awt.Color(255, 255, 255));

jLabel1.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel1.setText("Serial Port :");

jLabel1.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel6.add(jLabel1);

dataSerial =

SmitDev.SmsServer.Port.daftarSerialPort();

dataSerial.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel6.add(dataSerial);

jPanel4.add(jPanel6);

jPanel7.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 0));

Page 134: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

jLabel2.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel2.setText("Bits per Second :");

jLabel2.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel7.add(jLabel2);

dataBps =

SmitDev.SmsServer.Port.BitsPerSecond();

dataBps.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel7.add(dataBps);

jPanel4.add(jPanel7);

jPanel8.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jLabel3.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel3.setText("Data bits :");

jLabel3.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel8.add(jLabel3);

dataBits =

SmitDev.SmsServer.Port.DataBits();

dataBits.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel8.add(dataBits);

jPanel4.add(jPanel8);

jPanel9.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 0));

jPanel9.setBackground(new

java.awt.Color(255, 255, 255));

jLabel4.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel4.setText("Parity :");

jLabel4.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel9.add(jLabel4);

dataParity =

SmitDev.SmsServer.Port.Parity();

dataParity.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel9.add(dataParity);

jPanel4.add(jPanel9);

jPanel10.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel10.setBackground(new

java.awt.Color(255, 255, 255));

jLabel5.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel5.setText("Stop bits :");

jLabel5.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel10.add(jLabel5);

dataStop =

SmitDev.SmsServer.Port.StopBits();

dataStop.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel10.add(dataStop);

jPanel4.add(jPanel10);

jPanel11.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 0));

Page 135: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel11.setBackground(new

java.awt.Color(255, 255, 255));

jLabel6.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel6.setText("Flow control :");

jLabel6.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel11.add(jLabel6);

dataFlowControl =

SmitDev.SmsServer.Port.FlowControl();

dataFlowControl.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel11.add(dataFlowControl);

jPanel4.add(jPanel11);

jPanel1.add(jPanel4);

jPanel5.setLayout(new

javax.swing.BoxLayout(jPanel5,

javax.swing.BoxLayout.Y_AXIS));

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

jPanel5.setBorder(new

javax.swing.border.TitledBorder(new

javax.swing.border.LineBorder(new

java.awt.Color(0, 0, 0), 2, true), "

Konfigurasi Database (MySQL Database

Server) ",

javax.swing.border.TitledBorder.DEFAULT_J

USTIFICATION,

javax.swing.border.TitledBorder.DEFAULT_P

OSITION, new java.awt.Font("Tahoma", 1,

12)));

jPanel12.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel12.setBackground(new

java.awt.Color(255, 255, 255));

jLabel7.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel7.setText("Nama Host :");

jLabel7.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel12.add(jLabel7);

dataNamaHost.setText("localhost");

dataNamaHost.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel12.add(dataNamaHost);

jPanel5.add(jPanel12);

jPanel13.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 0));

jPanel13.setBackground(new

java.awt.Color(255, 255, 255));

jLabel8.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel8.setText("Nama Port :");

jLabel8.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel13.add(jLabel8);

dataNamaPort.setText("3306");

dataNamaPort.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel13.add(dataNamaPort);

jPanel5.add(jPanel13);

jPanel14.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel14.setBackground(new

java.awt.Color(255, 255, 255));

Page 136: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jLabel9.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel9.setText("Nama Database :");

jLabel9.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel14.add(jLabel9);

dataNamaDatabase.setPreferredSize(new

java.awt.Dimension(150, 22));

dataNamaDatabase.setText("db_thoyyibah")

;

jPanel14.add(dataNamaDatabase);

jPanel5.add(jPanel14);

jPanel16.setBackground(new

java.awt.Color(255, 255, 255));

jPanel5.add(jPanel16);

jPanel15.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 0));

jPanel15.setBackground(new

java.awt.Color(255, 255, 255));

jLabel10.setHorizontalAlignment(javax.swin

g.SwingConstants.RIGHT);

jLabel10.setText("Nama Pengguna :");

jLabel10.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel15.add(jLabel10);

dataNamaPengguna.setText("root");

dataNamaPengguna.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel15.add(dataNamaPengguna);

jPanel5.add(jPanel15);

jPanel17.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel17.setBackground(new

java.awt.Color(255, 255, 255));

jLabel11.setHorizontalAlignment(javax.swin

g.SwingConstants.RIGHT);

jLabel11.setText("Password :");

jLabel11.setPreferredSize(new

java.awt.Dimension(160, 16));

jPanel17.add(jLabel11);

dataPassword.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel17.add(dataPassword);

jPanel5.add(jPanel17);

jPanel1.add(jPanel5);

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

jPanel3.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.R

IGHT, 5, 10));

jButton1.setText("Setuju");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel3.add(jButton1);

jButton2.setText("Tidak");

jButton2.addActionListener(new

java.awt.event.ActionListener() {

Page 137: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton2ActionPerformed(evt);

}

});

jPanel3.add(jButton2);

getContentPane().add(jPanel3,

java.awt.BorderLayout.SOUTH);

getContentPane().add(jPanel2,

java.awt.BorderLayout.NORTH);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-400)/2,

(screenSize.height-500)/2, 400, 500);

}

// </editor-fold>

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

String serialPort =

this.dataSerial.getSelectedItem().toString();

String bps =

this.dataBps.getSelectedItem().toString();

String bits =

this.dataBits.getSelectedItem().toString();

String parity =

this.dataParity.getSelectedItem().toString()

;

String stopBit =

this.dataStop.getSelectedItem().toString();

String flowControl =

this.dataFlowControl.getSelectedItem().toSt

ring();

String driverJDBC

="com.mysql.jdbc.Driver";

String url = "jdbc:mysql://" +

this.dataNamaHost.getText() + ":"

+ this.dataNamaPort.getText() +

"/" + this.dataNamaDatabase.getText();

String user =

this.dataNamaPengguna.getText();

String password =

this.dataPassword.getText();

if(this.dataNamaDatabase.getText().length(

)<= 0 ){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Melakukan Pengaturan Terminal",

"Nama Database Belum di Masukkan");

this.dataNamaDatabase.requestFocus();

} else {

this.dispose();

Utama_SMS utama = new

Utama_SMS(serialPort,

bps,

bits,

parity,

stopBit,

flowControl,

driverJDBC,

url,

user,

password);

utama.setVisible(true);

}

}

private void

jButton2ActionPerformed(java.awt.event.Act

ionEvent evt) {

System.exit(0);

}

/**

* @param args the command line

arguments

*/

Page 138: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

// Variables declaration - do not modify

private javax.swing.JComboBox dataBits;

private javax.swing.JComboBox dataBps;

private javax.swing.JComboBox

dataFlowControl;

private javax.swing.JTextField

dataNamaDatabase;

private javax.swing.JTextField

dataNamaHost;

private javax.swing.JTextField

dataNamaPengguna;

private javax.swing.JTextField

dataNamaPort;

private javax.swing.JComboBox

dataParity;

private javax.swing.JTextField

dataPassword;

private javax.swing.JComboBox

dataSerial;

private javax.swing.JComboBox

dataStop;

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel10;

private javax.swing.JLabel jLabel11;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel7;

private javax.swing.JLabel jLabel8;

private javax.swing.JLabel jLabel9;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel10;

private javax.swing.JPanel jPanel11;

private javax.swing.JPanel jPanel12;

private javax.swing.JPanel jPanel13;

private javax.swing.JPanel jPanel14;

private javax.swing.JPanel jPanel15;

private javax.swing.JPanel jPanel16;

private javax.swing.JPanel jPanel17;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JPanel jPanel9;

// End of variables declaration

}

public class jendelaAktivitasSystem extends

javax.swing.JFrame {

public jendelaAktivitasSystem() {

initComponents();

bacaFile();

}

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jScrollPane1 = new

javax.swing.JScrollPane();

jTextArea1 = new

javax.swing.JTextArea();

jPanel2 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jPanel3 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

jPanel4 = new javax.swing.JPanel();

jPanel5 = new javax.swing.JPanel();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("Aktivitas System SMS

Server");

jPanel1.setLayout(new

java.awt.GridLayout());

jScrollPane1.setHorizontalScrollBarPolicy(jav

Page 139: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

ax.swing.ScrollPaneConstants.HORIZONTAL

_SCROLLBAR_ALWAYS);

jScrollPane1.setVerticalScrollBarPolicy(javax

.swing.ScrollPaneConstants.VERTICAL_SCR

OLLBAR_ALWAYS);

jTextArea1.setEditable(false);

jTextArea1.setDragEnabled(true);

jScrollPane1.setViewportView(jTextArea1);

jPanel1.add(jScrollPane1);

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

jPanel2.setBackground(java.awt.Color.black

);

jLabel1.setBackground(java.awt.Color.green

);

jLabel1.setFont(new

java.awt.Font("Tahoma", 1, 12));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("jLabel1");

jPanel2.add(jLabel1);

getContentPane().add(jPanel2,

java.awt.BorderLayout.NORTH);

jPanel3.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jButton1.setText("Penyegaran File");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel3.add(jButton1);

jButton2.setText("Tutup Jendela");

jButton2.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton2ActionPerformed(evt);

}

});

jPanel3.add(jButton2);

getContentPane().add(jPanel3,

java.awt.BorderLayout.SOUTH);

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel4,

java.awt.BorderLayout.EAST);

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel5,

java.awt.BorderLayout.WEST);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-550)/2,

(screenSize.height-400)/2, 550, 400);

}

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

jTextArea1.setText("");

bacaFile();

}

Page 140: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

private void

jButton2ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

}

public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new

Runnable() {

public void run() {

new

jendelaAktivitasSystem().setVisible(true);

}

});

}

String data;

private void bacaFile(){

java.util.Calendar dt =

java.util.Calendar.getInstance();

int tgl =

dt.get(java.util.Calendar.DAY_OF_MONTH);

int bln =

dt.get(java.util.Calendar.MONTH) + 1;

int thn =

dt.get(java.util.Calendar.YEAR);

String tgl_nol = "";

String bln_nol = "";

if (tgl < 10) {

tgl_nol = "0";

}

if (bln < 10) {

bln_nol = "0";

}

String tanggal = tgl_nol +

Integer.toString(tgl);

String bulan = bln_nol +

Integer.toString(bln);

String ddmmyy = tanggal + bulan +

Integer.toString(thn);

java.io.File file = new

java.io.File(ddmmyy +

".SmitDevSmsServer");

jTextArea1.setDocument(new

javax.swing.text.PlainDocument());

this.jLabel1.setText("Aktivitas System

" + tanggal + "-" + bulan + "-" + thn);

try{

java.io.BufferedReader read = new

java.io.BufferedReader(new

java.io.FileReader(file));

StringBuffer textBuffer = new

StringBuffer();

String tempText = "";

while(true){

tempText = read.readLine();

if(tempText != null){

textBuffer.append(tempText +

"\n");

} else {

break;

}

}

String text = textBuffer.toString();

jTextArea1.setText(text);

} catch (java.io.IOException e){}

}

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JLabel jLabel1;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JScrollPane

jScrollPane1;

private javax.swing.JTextArea

jTextArea1;

} class AplikasiUji extends

javax.swing.JFrame {

Page 141: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

// String [] perintah={"request ping

192.168.0.1 ","request netstat","request

telnet 192.168.0.1","request nbtstat

192.168.0.3","request ipconfig","request net

share 192.168.0.3","request tracert

192.168.0.1","request nslookup

192.168.0.1","request ftp","request

hostname","request pahtping"};

public AplikasiUji() {

initComponents();

}

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jPanel6 = new javax.swing.JPanel();

jPanel7 = new javax.swing.JPanel();

jLabel2 = new javax.swing.JLabel();

jPanel8 = new javax.swing.JPanel();

jLabel3 = new javax.swing.JLabel();

jPanel9 = new javax.swing.JPanel();

jLabel4 = new javax.swing.JLabel();

jPanel10 = new javax.swing.JPanel();

jLabel8 = new javax.swing.JLabel();

jPanel12 = new javax.swing.JPanel();

jPanel2 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jPanel3 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jPanel4 = new javax.swing.JPanel();

jPanel5 = new javax.swing.JPanel();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("Monitoring");

jPanel1.setLayout(new

javax.swing.BoxLayout(jPanel1,

javax.swing.BoxLayout.Y_AXIS));

jPanel1.setBackground(new

java.awt.Color(255, 255, 255));

jPanel6.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel6);

jPanel7.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

jLabel2.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel2.setText("Perintah :");

jLabel2.setPreferredSize(new

java.awt.Dimension(100, 14));

jPanel7.add(jLabel2);

jPanel1.add(jPanel7);

jPanel8.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jLabel3.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel3.setText("Hasil :");

jLabel3.setPreferredSize(new

java.awt.Dimension(100, 14));

jPanel8.add(jLabel3);

jPanel1.add(jPanel8);

jPanel10.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel1.add(jPanel10);

Page 142: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel12.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel12);

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

jPanel2.setBackground(new

java.awt.Color(0, 0, 0));

jLabel1.setFont(new

java.awt.Font("Tahoma", 1, 18));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("Monitoring SMS");

jPanel2.add(jLabel1);

getContentPane().add(jPanel2,

java.awt.BorderLayout.NORTH);

jButton1.setText("Tutup Jendela");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel3.add(jButton1);

btnTest.setText("Test");

btnTest.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

btnTestActionPerformed(evt);

}

});

jPanel3.add(btnTest);

//getContentPane().add(jPanel3,

java.awt.BorderLayout.SOUTH);

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel4,

java.awt.BorderLayout.EAST);

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel5,

java.awt.BorderLayout.WEST);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-300)/2,

(screenSize.height-300)/2, 300, 300);

}

// </editor-fold>//GEN-

END:initComponents

public static void main(String args[]) {

try {

javax.swing.UIManager.setLookAndFeel("co

m.stefankrause.xplookandfeel.XPLookAndFe

el");

} catch (Exception e) {

e.printStackTrace();

}

java.awt.EventQueue.invokeLater(new

Runnable() {

public void run() {

new

AplikasiUji().setVisible(true);

}

});

}

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {//GEN-

FIRST:event_jButton1ActionPerformed

Page 143: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

dispose();

}

private void

btnTestActionPerformed(java.awt.event.Acti

onEvent evt) {

// int

pil=Integer.parseInt(txtPerintah.getText());

// String hsl= new

mydata().splitMe(perintah[pil],' ',pil);

// txtHasil.setText(hsl);

}

// Variables declaration - do not

modify//GEN-BEGIN:variables

private javax.swing.JButton jButton1;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel8;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel10;

private javax.swing.JPanel jPanel12;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JPanel jPanel9;

private javax.swing.JLabel lblPerintah;

private javax.swing.JLabel lblHasil;

private javax.swing.JTextField

txtPerintah;

private javax.swing.JTextField txtHasil;

private javax.swing.JButton btnTest;

}

public class jendelaKonfigurasiPerangkat

extends javax.swing.JFrame {

public jendelaKonfigurasiPerangkat(String

merek, String seri, String imei, String

operator) {

initComponents();

this.nilaiMerek.setText(merek);

this.nilaiSeri.setText(seri);

this.nilaiImei.setText(imei);

this.nilaiOperator.setText(operator);

}

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jPanel6 = new javax.swing.JPanel();

jPanel7 = new javax.swing.JPanel();

jLabel2 = new javax.swing.JLabel();

nilaiMerek = new

javax.swing.JLabel();

jPanel8 = new javax.swing.JPanel();

jLabel3 = new javax.swing.JLabel();

nilaiSeri = new javax.swing.JLabel();

jPanel9 = new javax.swing.JPanel();

jLabel4 = new javax.swing.JLabel();

nilaiImei = new javax.swing.JLabel();

jPanel10 = new javax.swing.JPanel();

jLabel8 = new javax.swing.JLabel();

nilaiOperator = new

javax.swing.JLabel();

jPanel12 = new javax.swing.JPanel();

jPanel2 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jPanel3 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jPanel4 = new javax.swing.JPanel();

jPanel5 = new javax.swing.JPanel();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("Monitoring SMS");

jPanel1.setLayout(new

javax.swing.BoxLayout(jPanel1,

javax.swing.BoxLayout.Y_AXIS));

Page 144: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel1.setBackground(new

java.awt.Color(255, 255, 255));

jPanel6.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel6);

jPanel7.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

jLabel2.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel2.setText("Tipe :");

jLabel2.setPreferredSize(new

java.awt.Dimension(100, 14));

jPanel7.add(jLabel2);

nilaiMerek.setFont(new

java.awt.Font("Tahoma", 1, 11));

nilaiMerek.setText("jLabel5");

jPanel7.add(nilaiMerek);

jPanel1.add(jPanel7);

jPanel8.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jLabel3.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel3.setText("Hasil :");

jLabel3.setPreferredSize(new

java.awt.Dimension(100, 14));

jPanel8.add(jLabel3);

nilaiSeri.setFont(new

java.awt.Font("Tahoma", 1, 11));

nilaiSeri.setText("jLabel6");

jPanel8.add(nilaiSeri);

jPanel1.add(jPanel8);

jPanel9.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel9.setBackground(new

java.awt.Color(255, 255, 255));

jLabel4.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel4.setText("IMEI Perangkat :");

jLabel4.setPreferredSize(new

java.awt.Dimension(100, 14));

jPanel9.add(jLabel4);

nilaiImei.setFont(new

java.awt.Font("Tahoma", 1, 11));

nilaiImei.setText("jLabel7");

jPanel9.add(nilaiImei);

jPanel1.add(jPanel9);

jPanel10.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel10.setBackground(new

java.awt.Color(255, 255, 255));

jLabel8.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel8.setText("Operator SIM Card

:");

jLabel8.setPreferredSize(new

java.awt.Dimension(100, 14));

jPanel10.add(jLabel8);

nilaiOperator.setFont(new

java.awt.Font("Tahoma", 1, 11));

nilaiOperator.setText("jLabel9");

jPanel10.add(nilaiOperator);

Page 145: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel1.add(jPanel10);

jPanel12.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel12);

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

jPanel2.setBackground(new

java.awt.Color(0, 0, 0));

jLabel1.setFont(new

java.awt.Font("Tahoma", 1, 18));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("Konfigurasi

Perangkat");

jPanel2.add(jLabel1);

getContentPane().add(jPanel2,

java.awt.BorderLayout.NORTH);

jButton1.setText("Tutup Jendela");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel3.add(jButton1);

getContentPane().add(jPanel3,

java.awt.BorderLayout.SOUTH);

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel4,

java.awt.BorderLayout.EAST);

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel5,

java.awt.BorderLayout.WEST);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-300)/2,

(screenSize.height-300)/2, 300, 300);

}

// </editor-fold>

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

}

// Variables declaration - do not modify

private javax.swing.JButton jButton1;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel8;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel10;

private javax.swing.JPanel jPanel12;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JPanel jPanel9;

private javax.swing.JLabel nilaiImei;

private javax.swing.JLabel nilaiMerek;

private javax.swing.JLabel nilaiOperator;

private javax.swing.JLabel nilaiSeri;

// End of variables declaration

Page 146: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

} import

java.net.InetAddress;

public class bacaLan {

public static void main(String[] args) {

try {

/*

String ip = "167.205.3.133";

// Mendapatkan nama host dari IP terkait

System.out.println("Nama host: " +

InetAddress.getByName(ip).getHostName())

;

String host = "www.gmail.com";

// Mendapatkan alamat IP dari nama host

terkait

System.out.println("Alamat IP: " +

InetAddress.getByName(host).getHostAddre

ss());

// Mendapatkan nama host dan alamat IP

System.out.println("Host/IP: " +

InetAddress.getByName(host));

*/

InetAddress ia =

InetAddress.getLocalHost();

// Mendapatkan nama host lokal

System.out.println(ia.getHostName());

// Mendapatkan alamat IP lokal

System.out.println(ia.getHostAddress());

// Mendapatkan nama host dan alamat IP

lokal

System.out.println(ia);

} catch(Exception ex) {

System.out.println(ex);

}

}

}

import java.sql.*;

import javax.swing.*;

class Koneksi {

public Koneksi(){}

public Connection bakso()throws

SQLException{

Connection cery=null;

try{

Class.forName("com.mysql.jdbc.Dri

ver");

cery=DriverManager.getConnection

("jdbc:mysql://localhost/dbsms","root","");

//Class.forName("sun.jdbc.odbc.Jd

bcOdbcDriver");

//cery=DriverManager.getConnecti

on("jdbc:odbc:KoneksiAcces","","");

}

catch(Exception e){

JOptionPane.showMessageDialog(n

ull,"Driver Nya Belum Ketemu!!!");

System.out.println("Terjadi

Kesalahan,mungkin database atau tabelnya

belum ada");}

return cery;

}

}

public class Konfigurasi extends

javax.swing.JFrame {

/** Creates new form Konfigurasi */

public Konfigurasi() {

initComponents();

}

Page 147: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

/** This method is called from within the

constructor to

* initialize the form.

* WARNING: Do NOT modify this code.

The content of this method is

* always regenerated by the Form

Editor.

*/

// <editor-fold defaultstate="collapsed"

desc="Generated Code">

private void initComponents() {

jLabel1 = new javax.swing.JLabel();

jLabel2 = new javax.swing.JLabel();

jTextField1 = new

javax.swing.JTextField();

jButton1 = new javax.swing.JButton();

jLabel3 = new javax.swing.JLabel();

jLabel4 = new javax.swing.JLabel();

jScrollPane1 = new

javax.swing.JScrollPane();

jTextArea1 = new

javax.swing.JTextArea();

jPanel2 = new javax.swing.JPanel();

jLabel5 = new javax.swing.JLabel();

jLabel6 = new javax.swing.JLabel();

jLabel7 = new javax.swing.JLabel();

jLabel8 = new javax.swing.JLabel();

jLabel9 = new javax.swing.JLabel();

jLabel10 = new javax.swing.JLabel();

jLabel11 = new javax.swing.JLabel();

jLabel12 = new javax.swing.JLabel();

jLabel13 = new javax.swing.JLabel();

jLabel14 = new javax.swing.JLabel();

jLabel15 = new javax.swing.JLabel();

jLabel16 = new javax.swing.JLabel();

setDefaultCloseOperation(javax.swing.Wind

owConstants.EXIT_ON_CLOSE);

jLabel1.setText("Perintah");

jLabel2.setText(":");

jTextField1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jTextField1ActionPerformed(evt);

}

});

jButton1.setText("Test");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jLabel3.setText("Hasil ");

jLabel4.setText(":");

jTextArea1.setColumns(20);

jTextArea1.setRows(5);

jScrollPane1.setViewportView(jTextArea1);

jPanel2.setBackground(new

java.awt.Color(0, 0, 0));

jLabel5.setFont(new

java.awt.Font("Tahoma", 1, 18));

jLabel5.setForeground(java.awt.Color.green

);

jLabel5.setText("Monitoring

Jaringan");

jPanel2.add(jLabel5);

jLabel6.setText("0. ping");

Page 148: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jLabel7.setText("1. Netstat");

jLabel8.setText("2. Telnet");

jLabel9.setText("3. Nbtstat");

jLabel10.setText("4. Ipconfig");

jLabel11.setText("5. Net Share");

jLabel12.setText("6. Tracert");

jLabel13.setText("7. Nslookup");

jLabel14.setText("8. Ftp");

jLabel15.setText("9. Hostname");

jLabel16.setText("10. Pathping");

javax.swing.GroupLayout layout =

new

javax.swing.GroupLayout(getContentPane()

);

getContentPane().setLayout(layout);

layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.Grou

pLayout.Alignment.LEADING)

.addComponent(jPanel2,

javax.swing.GroupLayout.DEFAULT_SIZE,

499, Short.MAX_VALUE)

.addGroup(layout.createSequentialGroup()

.addContainerGap()

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addComponent(jLabel3)

.addComponent(jLabel1))

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addComponent(jButton1)

.addContainerGap())

.addGroup(layout.createSequentialGroup()

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addComponent(jLabel2)

.addGap(10, 10, 10)

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addComponent(jScrollPane1,

javax.swing.GroupLayout.PREFERRED_SIZE,

307,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(18, 18,

18)

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addComponent(jLabel16)

.addComponent(jLabel15)

.addComponent(jLabel13)

.addComponent(jLabel14)

.addComponent(jLabel12)

.addComponent(jLabel11)

Page 149: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

.addComponent(jLabel10)

.addComponent(jLabel9)

.addComponent(jLabel8)

.addComponent(jLabel7)

.addComponent(jLabel6,

javax.swing.GroupLayout.PREFERRED_SIZE,

55,

javax.swing.GroupLayout.PREFERRED_SIZE)

))

.addComponent(jTextField1,

javax.swing.GroupLayout.PREFERRED_SIZE,

395,

javax.swing.GroupLayout.PREFERRED_SIZE)

))

.addComponent(jLabel4))

.addContainerGap(34,

Short.MAX_VALUE))))

);

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.Grou

pLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addComponent(jPanel2,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED, 29,

Short.MAX_VALUE)

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jTextField1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jLabel1)

.addComponent(jLabel2))

.addGap(19, 19, 19)

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addGap(65, 65, 65)

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel3)

.addComponent(jLabel4)))

.addGroup(layout.createSequentialGroup()

.addGap(41, 41, 41)

.addGroup(layout.createParallelGroup(javax

.swing.GroupLayout.Alignment.LEADING)

.addComponent(jScrollPane1,

javax.swing.GroupLayout.PREFERRED_SIZE,

225,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addGroup(layout.createSequentialGroup()

.addComponent(jLabel6)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

Page 150: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

.addComponent(jLabel7)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel8)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel9)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel10)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel11)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel12)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel13)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel14)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel15)

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED)

.addComponent(jLabel16)))))

.addPreferredGap(javax.swing.LayoutStyle.

ComponentPlacement.RELATED))

.addGroup(layout.createSequentialGroup()

.addGap(91, 91, 91)

.addComponent(jButton1)

.addGap(211, 211, 211)))

.addGap(49, 49, 49))

);

pack();

}// </editor-fold>

private void

jTextField1ActionPerformed(java.awt.event.

ActionEvent evt) {

// TODO add your handling code here:

}

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

// TODO add your handling code here:

// TODO add your handling code here:

String [] perintah={"request ping

192.168.0.1 ","request netstat","request

telnet 192.168.0.1","request nbtstat

192.168.0.3","request ipconfig","request net

share 192.168.0.3","request tracert

192.168.0.1","request nslookup

192.168.0.1","request ftp","request

hostname","request pahtping"};

int

pil=Integer.parseInt(jTextField1.getText());

String hsl= new

mydata().splitMe(perintah[pil],' ',pil);

jTextArea1.setText(hsl);

}

Page 151: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

/**

* @param args the command line

arguments

*/

public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new

Runnable() {

public void run() {

new

Konfigurasi().setVisible(true);

}

});

}

// Variables declaration - do not modify

private javax.swing.JButton jButton1;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel10;

private javax.swing.JLabel jLabel11;

private javax.swing.JLabel jLabel12;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel14;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel16;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel6;

private javax.swing.JLabel jLabel7;

private javax.swing.JLabel jLabel8;

private javax.swing.JLabel jLabel9;

private javax.swing.JPanel jPanel2;

private javax.swing.JScrollPane

jScrollPane1;

private javax.swing.JTextArea

jTextArea1;

private javax.swing.JTextField

jTextField1;

// End of variables declaration

}

public class mydata {

public String splitMe(String s, char c,int n)

{

System.out.println("String : "+s);

System.out.println("Separator : "+c);

String [] tmp = null;

tmp = s.split("\\"+c, -1);

for (int i = 0 ; i < tmp.length-1 ; i++) {

System.out.println("tmp["+i+"] =

"+tmp[i]);

}

System.out.println("");

return CekPerintah(n,tmp);

}

//==========================

===========================

============

public String CekPerintah(int n,String

[]result) {

String smsbalik="";

smsbalik+=("HASIL:");

if(result[0].equalsIgnoreCase("request")){

if(n==0){

ping tesPing =new ping();

if(result[1].equalsIgnoreCase("ping

")){

try{

String running=result[1]+"

"+result[2];

if(result[2].equals("192.168.0.1"))

{smsbalik+="Proses Ping 192.168.0.1

=>";smsbalik+=(tesPing.myping(result[2]))

;}

else

if(result[2].equals("192.168.0.2")){smsbalik

+="Proses Ping 192.168.0.2

Page 152: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

=>";smsbalik+=(tesPing.myping(result[2]))

;}

else

if(result[2].equals("192.168.0.3")){smsbalik

+="Proses Ping 192.168.0.3

=>";smsbalik+=(tesPing.myping(result[2]))

;}

else {smsbalik+="Anda salah tulis

kode tujuan...";}

}

catch(Exception e){

smsbalik+="Silakan tulis IP tujuan

terlebih dahulu"; }

}

else{smsbalik+="Gunakan

perintah kedua: PING";}

}

else if(n==1){

String running=result[1];

if(result[1].equalsIgnoreCase("nets

tat")){smsbalik+="Proses

Netstat...=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else{smsbalik+="Gunakan

perintah kedua: NETSTAT";}

}

else if(n==2){

if(result[1].equalsIgnoreCase("teln

et")){

try{

String running=result[1]+"

"+result[2];

if(result[2].equals("192.168.0.1"))

{smsbalik+="Proses telnet 192.168.0.1

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.2")){smsbalik

+="Proses telnet 192.168.0.2 =>";tecCmd

call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.3")){smsbalik

+="Proses telnet 192.168.0.3 =>";tecCmd

call=new

tecCmd();smsbalik+=(call.baca(running));}

else {smsbalik+="Anda salah tulis

kode tujuan...";}

}

catch(Exception e){

smsbalik+="Silakan tulis IP tujuan

terlebih dahulu"; }

}

else{smsbalik+="Gunakan

perintah kedua: TELNET";}

}

else if(n==3){

if(result[1].equalsIgnoreCase("nbts

tat")){

try{

String running=result[1]+"

"+result[2];

if(result[2].equals("192.168.0.1"))

{smsbalik+="Proses nbtstat 192.168.0.1

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.2")){smsbalik

Page 153: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

+="Proses nbtstat 192.168.0.2

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.3")){smsbalik

+="Proses nbtstat 192.168.0.3

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else {smsbalik+="Anda salah tulis

kode tujuan...";}

}

catch(Exception e){

smsbalik+="Silakan tulis IP tujuan

terlebih dahulu"; }

}

else{smsbalik+="Gunakan

perintah kedua: NBTSTAT";}

}

else if(n==4){

String running=result[1];

if(result[1].equalsIgnoreCase("ipco

nfig")){smsbalik+="Proses

ipconfig...=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else{smsbalik+="Gunakan

perintah kedua: IPCONFIG";}

}

else if(n==5){

if(result[1].equalsIgnoreCase("net"

) && result[2].equalsIgnoreCase("share")){

try{

String running=result[1]+"

"+result[2]+" "+result[3];

if(result[3].equals("192.168.0.1"))

{smsbalik+="Proses netshare 192.168.0.1

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[3].equals("192.168.0.2")){smsbalik

+="Proses netshare192.168.0.2

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[3].equals("192.168.0.3")){smsbalik

+="Proses netshare 192.168.0.3

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else {smsbalik+="Anda salah tulis

kode tujuan...";}

}

catch(Exception e){

smsbalik+="Silakan tulis IP tujuan

terlebih dahulu"; }

}

else{smsbalik+="Gunakan

perintah kedua: NET SHARE";}

}

else if(n==6){

if(result[1].equalsIgnoreCase("trac

ert")){

try{

String running=result[1]+"

"+result[2];

if(result[2].equals("192.168.0.1"))

{smsbalik+="Proses tracert 192.168.0.1

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.2")){smsbalik

Page 154: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

+="Proses tracert 192.168.0.2

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.3")){smsbalik

+="Proses tracert 192.168.0.3

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else {smsbalik+="Anda salah tulis

kode tujuan...";}

}

catch(Exception e){

smsbalik+="Silakan tulis IP tujuan

terlebih dahulu"; }

}

else{smsbalik+="Gunakan

perintah kedua: TRACERT";}

}

else if(n==7){

if(result[1].equalsIgnoreCase("nslo

okup")){

try{

String running=result[1]+"

"+result[2];

if(result[2].equals("192.168.0.1"))

{smsbalik+="Proses nslookup 192.168.0.1

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.2")){smsbalik

+="Proses nslookup 192.168.0.2

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else

if(result[2].equals("192.168.0.3")){smsbalik

+="Proses nslookup 192.168.0.3

=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else {smsbalik+="Anda salah tulis

kode tujuan...";}

}

catch(Exception e){

smsbalik+="Silakan tulis IP tujuan

terlebih dahulu"; }

}

else{smsbalik+="Gunakan

perintah kedua: NSLOOKUP";}

}

else if(n==8){

String running=result[1];

if(result[1].equalsIgnoreCase("ftp")

){smsbalik+="Proses ftp...=>";tecCmd

call=new

tecCmd();smsbalik+=(call.baca(running));}

else{smsbalik+="Gunakan

perintah kedua: FTP";}

}

else if(n==9){

String running=result[1];

if(result[1].equalsIgnoreCase("host

name")){smsbalik+="Proses

hostname...=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else{smsbalik+="Gunakan

perintah kedua: HOSTNAME";}

}

else

if(n==10){

String running=result[1];

Page 155: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

if(result[1].equalsIgnoreCase("path

ping")){smsbalik+="Proses

pathping...=>";tecCmd call=new

tecCmd();smsbalik+=(call.baca(running));}

else{smsbalik+="Gunakan

perintah kedua: PATHPING";}

}

}//result0

else{smsbalik+="Gunakan kata

pertama='REQUEST'";}

smsbalik+=(smsbalik);

return smsbalik;

} //CekPerintah

}

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class calc implements ActionListener{

public JLabel lblPerintah,lblHasil;

public JTextField txtPerintah,txtHasil;

public JButton btnTest;

String [] perintah={"request ping

192.168.0.1 ","request netstat","request

telnet 192.168.0.1","request nbtstat

192.168.0.1","request ipconfig","request net

share 192.168.0.1","request tracert

192.168.0.1","request nslookup

192.168.0.1","request ftp","request

hostname","request pahtping"};

public calc (){

//untuk membuat label

lblPerintah=new JLabel("Perintah");

lblPerintah.setLocation(20,20);

lblPerintah.setSize(lblPerintah.getPreferredS

ize());

lblHasil=new JLabel("Hasil");

lblHasil.setLocation(20,50);

lblHasil.setSize(lblHasil.getPreferredSize());

//untuk pembuatan textfield

txtPerintah=new JTextField(10);

txtPerintah.setLocation(100,20);

txtPerintah.setSize(txtPerintah.getPreferred

Size());

txtHasil=new JTextField(15);

txtHasil.setLocation(100,50);

txtHasil.setSize(txtHasil.getPreferredSize());

txtHasil.setEditable(false);

//untuk pembuatan button

btnTest=new JButton ("Test");

btnTest.setLocation(20,85);

btnTest.setSize(btnTest.getPreferredSize());

btnTest.addActionListener(this);

btnTest.setMnemonic('T');

}

//-----------------------------------------------

-------

public void tampilanFrame(){

JFrame.setDefaultLookAndFeelDecorated(tru

e);

JFrame frm=new JFrame("calc");

frm.setLayout(null);

frm.setDefaultCloseOperation(JFrame.EXIT_

ON_CLOSE);

frm.getContentPane().add(lblPerintah);

frm.getContentPane().add(lblHasil);

frm.getContentPane().add(txtPerintah);

frm.getContentPane().add(txtHasil);

frm.getContentPane().add(btnTest);

frm.setBounds(0, 0, 300, 260);

frm.setLocationRelativeTo(null);

frm.setVisible(true);

Page 156: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

}

//-----------------------------------------------

-------

public void actionPerformed(ActionEvent

event){

String hasil="";

JButton btn=(JButton)

event.getSource();

if(btn==btnTest){

int

pil=Integer.parseInt(txtPerintah.getText());

String hsl= new

mydata().splitMe(perintah[pil],' ',pil);

txtHasil.setText(hsl);

}

else{

if

(JOptionPane.showConfirmDialog(null,

"Apakah Anda Yakin akan Mengakhiri

Aplikasi ini??",

"Konfirmasi",JOptionPane.YES_NO_

OPTION,JOptionPane.QUESTION_MESSAGE)

==JOptionPane.YES_OPTION){

JOptionPane.showMessageDialog(n

ull, "Bye Bye...");

System.exit(0);

}

}

}

//-----------------------------------------------

-------

public static void main (String args []){

javax.swing.SwingUtilities.invokeLa

ter(new Runnable (){

public void run(){

calc app=new

calc();

app.tampilanFrame();

}

});

}

}

public class prosesSmsRequest {

java.sql.Connection koneksi;

public

prosesSmsRequest(java.sql.Connection

koneksi, String notlp, String kode2, String

kode3) {

this.koneksi = koneksi;

prosesValidasiKode(notlp, kode2,

kode3);

}

private void prosesValidasiKode(String

notlp, String kode2, String kode3){

if (kode2.equalsIgnoreCase("DATA"))

{

prosesRequestDataPelanggan(notlp,

kode3);

} else if

(kode2.equalsIgnoreCase("PAJAK")) {

prosesRequestPajakPelanggan(notlp,

kode3);

} else if

(kode2.equalsIgnoreCase("null")) {

String kode_1_salah = "Format

SMS yang Anda Masukkan Salah.";

String kode_1_format =

"\nFORMAT SMS adalah

REQUEST DATA <IdPelang> atau REQUEST

PAJAK <IdPelang>";

String pesanSalahKode_1 =

kode_1_salah + kode_1_format;

new

prosesDatabaseSmsServer(koneksi).inputDa

Page 157: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

taTabelSmsKeluar(notlp,

pesanSalahKode_1);

} else {

String kode_1_salah = "Kode2 yang

Anda Masukkan Salah" + "\nkode : " +

kode2 + "\nTidak terdaftar";

String kode_1_format = "\nKode2

yang diijinkan adalah DATA atau PAJAK.

\nFORMAT SMS adalah REQUEST DATA

<ID> atau REQUEST PAJAK <ID>";

String pesanSalahKode_1 =

kode_1_salah + kode_1_format;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(notlp,

pesanSalahKode_1);

}

}

private void

prosesRequestDataPelanggan(String notlp,

String kode3){

boolean status_cari = false;

if(kode3.equalsIgnoreCase("null")){

String kode_1_salah = "Format

SMS yang Anda Masukkan Salah.";

String kode_1_format =

"\nFORMAT SMS adalah

REQUEST DATA <IdPelang> atau REQUEST

PAJAK <IdPelang>";

String pesanSalahKode_1 =

kode_1_salah + kode_1_format;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(notlp,

pesanSalahKode_1);

} else {

String sql = "SELECT * FROM

data_pelanggan WHERE id_pelanggan =

'"+kode3+"'";

try{

java.sql.Statement stat =

koneksi.createStatement();

java.sql.ResultSet rSet =

stat.executeQuery(sql);

while(rSet.next()){

String nama =

rSet.getString("nama_pelanggan");

String alamat =

rSet.getString("alamat_pelanggan");

String daya =

rSet.getString("daya");

String dataPesan = "ID

Pelanggan : "+kode3+"\nNama :

"+nama+"\nAlamat : "+alamat+"\nDaya :

"+daya;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(notlp, dataPesan);

status_cari = true;

}

if(!status_cari){

String kode_1_salah = "Data

Pelanggan dengan ID : "+kode3+"\nTidak

Ditemukan.";

String kode_1_format =

"\nKetik REQUEST DATA

<IdPelang> atau REQUEST PAJAK

<IdPelang>";

String pesanSalahKode_1 =

kode_1_salah + kode_1_format;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(notlp,

pesanSalahKode_1);

}

} catch(Exception e){}

}

}

private void

prosesRequestPajakPelanggan(String notlp,

String kode3){

prosesDatabaseSmsServer pd = new

prosesDatabaseSmsServer(koneksi);

pd.getWaktu();

String tahun = pd.tahun;

Page 158: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

String bulan = pd.bulan;

String namaBulan =

SmitDev.SmsServer.Jam.konversiBulan(Inte

ger.parseInt(bulan)-1);

String kode =

kode3+namaBulan+tahun;

System.out.println(kode);

boolean status_cari = false;

if(kode3.equalsIgnoreCase("null")){

String kode_1_salah = "Format

SMS yang Anda Masukkan Salah.";

String kode_1_format =

"\nFORMAT SMS adalah

REQUEST DATA <IdPelang> atau REQUEST

PAJAK <IdPelang>";

String pesanSalahKode_1 =

kode_1_salah + kode_1_format;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(notlp,

pesanSalahKode_1);

} else {

String sql = "SELECT * FROM

data_pajak_listrik WHERE kode =

'"+kode+"'";

try{

java.sql.Statement stat =

koneksi.createStatement();

java.sql.ResultSet rSet =

stat.executeQuery(sql);

while(rSet.next()){

String beban =

rSet.getString("biaya_beban");

String pakai =

rSet.getString("biaya_pemakaian");

String terlambat =

rSet.getString("biaya_keterlambatan");

String lain =

rSet.getString("biaya_lain");

String jml =

rSet.getString("jumlah");

String ppj =

rSet.getString("ppj");

String total_bayar =

rSet.getString("total_pembayaran");

String dataPesan =

kode3+"\nBulan:"+namaBulan+tahun+"\nB

bn:"+beban+"\nPkai:"+pakai+"\nDenda:"+

terlambat+"\nLain:"+lain+"\nJml:"+jml+"\n

PPJ:"+ppj+"\n\nTotalPajak:"+total_bayar;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(notlp, dataPesan);

status_cari = true;

}

if(!status_cari){

String kode_1_salah = "Data

Pajak Listrik dengan ID pelanggan :

"+kode3+"\nTidak Ditemukan.";

String kode_1_format =

"\nFORMAT SMS adalah

REQUEST DATA <IdPelang> atau REQUEST

PAJAK <IdPelang>";

String pesanSalahKode_1 =

kode_1_salah + kode_1_format;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(notlp,

pesanSalahKode_1);

}

} catch(Exception e){}

}

}

}

public class prosesDatabaseSmsServer {

java.sql.Connection koneksi;

public

prosesDatabaseSmsServer(java.sql.Connect

ion koneksi) {

this.koneksi = koneksi;

}

String tahun;

String bulan;

String tanggal;

String jam;

String menit;

Page 159: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

String detik;

public void getWaktu(){

String tgl_nol = "";

String bln_nol = "";

java.util.Calendar dt =

java.util.Calendar.getInstance();

int tgl =

dt.get(java.util.Calendar.DAY_OF_MONTH);

int bln =

dt.get(java.util.Calendar.MONTH)+1;

int thn =

dt.get(java.util.Calendar.YEAR);

if (tgl < 10) {

tgl_nol = "0";

}

if (bln < 10) {

bln_nol = "0";

}

tanggal = tgl_nol +

Integer.toString(tgl);

bulan = bln_nol +

Integer.toString(bln);

tahun = Integer.toString(thn);

//**********************************

**********

String nol_jam = "";

String nol_menit = "";

String nol_detik = "";

// Membuat Date

// Mengambil nilaj JAM, MENIT, dan

DETIK Sekarang

int nilai_jam =

dt.get(java.util.Calendar.HOUR_OF_DAY);

int nilai_menit =

dt.get(java.util.Calendar.MINUTE);

int nilai_detik =

dt.get(java.util.Calendar.SECOND);

// Jika nilai JAM lebih kecil dari 10

(hanya 1 digit)

if (nilai_jam <= 9) {

// Tambahkan "0" didepannya

nol_jam = "0";

}

// Jika nilai MENIT lebih kecil dari 10

(hanya 1 digit)

if (nilai_menit <= 9) {

// Tambahkan "0" didepannya

nol_menit = "0";

}

// Jika nilai DETIK lebih kecil dari 10

(hanya 1 digit)

if (nilai_detik <= 9) {

// Tambahkan "0" didepannya

nol_detik = "0";

}

// Keadaan Waktu Sekarang

// Membuat String JAM, MENIT, DETIK

jam = nol_jam +

Integer.toString(nilai_jam);

menit = nol_menit +

Integer.toString(nilai_menit);

detik = nol_detik +

Integer.toString(nilai_detik);

}

//**********************************

***********************************

*******************************

public void prosesTabelMasuk(String id,

String notlp, String pesan){

int pil=Integer.parseInt(pesan);

String [] perintah={"request ping

192.168.0.1 ","request netstat","request

telnet 192.168.0.1","request nbtstat

192.168.0.3","request ipconfig","request net

share 192.168.0.3","request tracert

192.168.0.1","request nslookup

192.168.0.1","request ftp","request

hostname","request pahtping"};

String hsl= new

mydata().splitMe(perintah[pil],' ',pil);

Page 160: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

System.out.println("Hasil: "+hsl);

if(hsl.length()>160){hsl=hsl.substr

ing(0,160);}

inputDataTabelSmsKeluar(notlp, hsl);

}

//**********************************

***********************************

*******************************

boolean statusInputSmsKeluar = false;

public boolean

inputDataTabelSmsKeluar(String notlp,

String pesan){

getWaktu();

String tanggalHari = tanggal + "-" +

bulan + "-" + tahun;

String jamHari = jam + ":" + menit +

":" + detik;

try {

// SQL (Masukkan ke tabel TERIMA)

java.sql.PreparedStatement

pStatement = koneksi.prepareStatement(

"Insert Into

SMS_KELUAR(NO_TELEPON_KELUAR,ISI_PE

SAN_KELUAR,STATUS_KELUAR,TANGGAL_K

ELUAR, JAM_KELUAR) Values (?,?,?,?,?)");

try {

pStatement.setString(1, notlp);

pStatement.setString(2, pesan);

pStatement.setString(3,

"WAIT");

pStatement.setString(4,

tanggalHari);

pStatement.setString(5,

jamHari);

pStatement.executeUpdate();

statusInputSmsKeluar = true;

} // Akhir try

catch (Exception ei) {}

// Menutup Statement

pStatement.close();

} // Akhir try

catch (Exception e)

{System.out.println("GAGAL KIRIM

BALIK"+e);}

return statusInputSmsKeluar;

}

public void

inputDataTabelSmsMasuk(String notlp,

String pesan){

getWaktu();

String tanggalHari = tanggal + "-" +

bulan + "-" + tahun;

String jamHari = jam + ":" + menit +

":" + detik;

try {

java.sql.PreparedStatement

pStatement = koneksi.prepareStatement(

"Insert Into

SMS_MASUK(NO_TELEPON_MASUK,ISI_PES

AN_MASUK,STATUS_MASUK,TANGGAL_MAS

UK, JAM_MASUK) Values (?,?,?,?,?)");

try {

pStatement.setString(1, notlp);

pStatement.setString(2, pesan);

pStatement.setString(3,

"WAIT");

pStatement.setString(4,

tanggalHari);

pStatement.setString(5,

jamHari);

pStatement.executeUpdate();

} // Akhir try

catch (Exception ei) {}

// Menutup Statement

pStatement.close();

} // Akhir try

catch (Exception e) {}

}

public void updateStatusData(String id,

String status) {

String tulisStatus = "";

Page 161: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

try {

if (status.equals("SEND")) {

tulisStatus = "Update

SMS_KELUAR Set STATUS_KELUAR='SEND'

Where ID_KELUAR=?";

} else if (status.equals("NO")) {

tulisStatus = "Update

SMS_KELUAR Set STATUS_KELUAR='NO'

Where ID_KELUAR=?";

}else if (status.equals("PROCESS"))

{

tulisStatus = "Update

SMS_KELUAR Set

STATUS_KELUAR='PROCESS' Where

ID_KELUAR=?";

} else if (status.equals("OK")) {

tulisStatus = "Update

SMS_MASUK Set STATUS_MASUK='OK'

Where ID_MASUK=?";

}

java.sql.PreparedStatement

pStatement =

koneksi.prepareStatement(tulisStatus);

try {

pStatement.setString(1, id);

pStatement.executeUpdate();

} // Akhir try

catch (Exception e) {}

pStatement.close();

} // Akhir try

catch (Exception e) {}

}

}

import java.awt.event.*;

import javax.swing.*;

import java.sql.*;

import java.sql.Statement;

import javax.swing.table.DefaultTableModel;

public class Anggota implements

ActionListener{

Connection cery;

Koneksi somay;

String SQLt;

Statement sawo;

String

skode,snama,stelepon,semail,salamat,suser

name,spassword,sstatus;

public JLabel

lblkode,lblnama,lbltelepon,lblemail,lblalamat

,lblusername,lblpassword,lblstatus;

public JTextField

txtkode,txtnama,txttelepon,txtemail,txtalam

at,txtusername,txtpassword,txtstatus;

public JButton

btnNew,btnSave,btnDelete,btnUpdate,btnEx

it,btnCari;

String[]judul={"No","kode","nama","telepon

","email","alamat","username","password","

status"};

DefaultTableModel

modelnya=new

DefaultTableModel(null,judul);

JTable tabelnya=new JTable();

JScrollPane scrollnya=new

JScrollPane();

JOptionPane jpane=new

JOptionPane();

//---------------------------------------

--------------------

public Anggota(){

tabelnya.setModel(modelnya);

scrollnya.getViewport().add(tabelnya);

tabelnya.setEnabled(true);

scrollnya.setBounds(10,350,520,300);

lblkode=new JLabel("kode:");

lblkode.setLocation(10,10);

lblkode.setSize(lblkode.getPreferredSize());

Page 162: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

txtkode=new JTextField(20);

txtkode.setLocation(10,25);

txtkode.setSize(txtkode.getPreferredSize());

lblnama=new JLabel("nama:");

lblnama.setLocation(10,45);

lblnama.setSize(lblnama.getPreferredSize())

;

txtnama=new JTextField(20);

txtnama.setLocation(10,60);

txtnama.setSize(txtnama.getPreferredSize()

);

lbltelepon=new

JLabel("telepon:");

lbltelepon.setLocation(10,80);

lbltelepon.setSize(lbltelepon.getPreferredSiz

e());

txttelepon=new JTextField(20);

txttelepon.setLocation(10,95);

txttelepon.setSize(txttelepon.getPreferredSi

ze());

lblemail=new JLabel("email:");

lblemail.setLocation(10,115);

lblemail.setSize(lblemail.getPreferredSize())

;

txtemail=new JTextField(20);

txtemail.setLocation(10,130);

txtemail.setSize(txtemail.getPreferredSize()

);

lblalamat=new

JLabel("alamat:");

lblalamat.setLocation(10,150);

lblalamat.setSize(lblalamat.getPreferredSize

());

txtalamat=new JTextField(20);

txtalamat.setLocation(10,165);

txtalamat.setSize(txtalamat.getPreferredSiz

e());

lblusername=new

JLabel("username:");

lblusername.setLocation(10,185);

lblusername.setSize(lblusername.getPreferr

edSize());

txtusername=new

JTextField(20);

txtusername.setLocation(10,200);

txtusername.setSize(txtusername.getPreferr

edSize());

lblpassword=new

JLabel("password:");

lblpassword.setLocation(10,220);

lblpassword.setSize(lblpassword.getPreferre

dSize());

txtpassword=new

JTextField(20);

txtpassword.setLocation(10,235);

txtpassword.setSize(txtpassword.getPreferr

edSize());

lblstatus=new

JLabel("status:");

lblstatus.setLocation(10,255);

Page 163: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

lblstatus.setSize(lblusername.getPreferredSi

ze());

txtstatus=new JTextField(20);

txtstatus.setLocation(10,270);

txtstatus.setSize(txtusername.getPreferredS

ize());

btnNew=new JButton("New");

btnNew.setLocation(10,300);

btnNew.setSize(btnNew.getPreferredSize());

btnNew.addActionListener(this);

btnNew.setMnemonic('e');

btnSave=new JButton("Save");

btnSave.setLocation(70,300);

btnSave.setSize(btnSave.getPreferredSize()

);

btnSave.addActionListener(this);

btnSave.setMnemonic('a');

btnDelete=new JButton("Del");

btnDelete.setLocation(135,300);

btnDelete.setSize(btnDelete.getPreferredSiz

e());

btnDelete.addActionListener(this);

btnDelete.setMnemonic('I');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnExit=new JButton("Exit");

btnExit.setLocation(310,300);

btnExit.setSize(

btnExit.getPreferredSize());

btnExit.addActionListener(this);

btnExit.setMnemonic('t');

btnCari=new JButton("Cari");

btnCari.setLocation(250,300);

btnCari.setSize(

btnCari.getPreferredSize());

btnCari.addActionListener(this);

btnCari.setMnemonic('C');

}

//------------------------------------

-----------------------

public void lp2maray(){

JFrame.setDefaultLookAndFeelDecorated(tru

e);

JFrame frame=new

JFrame("Data Siswa");

frame.setLayout(null);

frame.setDefaultCloseOperation(JFrame.EXI

T_ON_CLOSE);

frame.getContentPane().add(lblkode);

frame.getContentPane().add(txtkode);

Page 164: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

frame.getContentPane().add(lblnama);

frame.getContentPane().add(txtnama);

frame.getContentPane().add(lbltelepon);

frame.getContentPane().add(txttelepon);

frame.getContentPane().add(lblemail);

frame.getContentPane().add(txtemail);

frame.getContentPane().add(lblalamat);

frame.getContentPane().add(txtalamat);

frame.getContentPane().add(lblusername);

frame.getContentPane().add(txtusername);

frame.getContentPane().add(lblpassword);

frame.getContentPane().add(txtpassword);

frame.getContentPane().add(lblstatus);

frame.getContentPane().add(txtstatus);

frame.getContentPane().add(btnNew);

frame.getContentPane().add(btnSave);

frame.getContentPane().add(btnDelete);

frame.getContentPane().add(btnUpdate);

frame.getContentPane().add(btnExit);

frame.getContentPane().add(btnCari);

frame.setBounds(0, 0,

550, 700);

frame.setLocationRelativeTo(null);

frame.getContentPane().add(scrollnya);

try{somay=new

Koneksi();}

catch(Exception e){

JOptionPane.showMessageDialog(null,

"Terjadi Kesalahan, Mungkin Databasenya

Belum Konek!!!");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

lihatdata();

frame.setVisible(true);

}

//------------------------------------

-----------------------

public void

actionPerformed(ActionEvent event){

JButton

btn=(JButton)event.getSource();

if(btn==btnSave){

Simpan();

}

else if(btn==btnNew){

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

}

else if(btn==btnDelete){

Page 165: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " + "Mengakhiri

Aplikasi Ini???","KOnfirmasi",

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

Hapus();

}

}

else if(btn==btnUpdate){

Ubah();

}

else if(btn==btnExit){

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " +

"Mengakhiri Aplikasi

Ini???","KOnfirmasi",

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

System.exit(0);

}

}

else if(btn==btnCari){

Cari();

}

}

//-=

void Simpan(){

skode=txtkode.getText();

snama=txtnama.getText();

stelepon=txttelepon.getText();

semail=txtemail.getText();

salamat=txtalamat.getText();

susername=txtusername.getText();

spassword=txtpassword.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="insert into

tbanggota

values('"+skode+"','"+snama+"','"+stelepo

n+"','"+semail+"','"+salamat+"','"+suserna

me+"','"+spassword+"','"+sstatus+"')";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Simpan");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA

SUKSES DITAMBAHKAN");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

Page 166: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//------------------------------------

-----------------------

void Hapus(){

skode=txtkode.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="delete from

tbanggota where kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Hapus");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA

SUKSES DIHAPUS");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//----------------------------------

-------------------------

void Ubah(){

skode=txtkode.getText();

snama=txtnama.getText();

stelepon=txttelepon.getText();

semail=txtemail.getText();

salamat=txtalamat.getText();

susername=txtusername.getText();

spassword=txtpassword.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Update tbanggota

set

nama='"+snama+"',telepon='"+stelepon+"'

,email='"+semail+"',alamat='"+salamat+"',

username='"+susername+"',password='"+s

password+"',status='"+sstatus+"' where

kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+"Sukses Di Ubah");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

Page 167: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

System.out.println("DATA SUKSES

DIUBAH");

System.out.println("===============

=============");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,belum konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

lihatdata();

}

//-----------------

--------------------------------------

void Cari(){

skode=txtkode.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Select * from tbanggota where

kode='"+skode+"'";

ResultSet cari=sawo.executeQuery(SQLt);

if(cari.next()){

String a=cari.getString("kode");

String aa=cari.getString("nama");

String aaa=cari.getString("telepon");

String aaaa=cari.getString("email");

String aaaaa=cari.getString("alamat");

String

susername=cari.getString("username");

String

spassword=cari.getString("password");

String sstatus=cari.getString("status");

System.out.println("Data detail dengan

kode="+a);

System.out.println("nama="+aa);

System.out.println("telepon="+aaa);

System.out.println("email="+aaaa);

System.out.println("alamat="+aaaaa);

System.out.println("username="+susernam

e);

System.out.println("password="+spassword

);

System.out.println("status="+sstatus);

txtkode.setText(a);

txtnama.setText(aa);

txttelepon.setText(aaa);

txtemail.setText(aaaa);

txtalamat.setText(aaaaa);

txtusername.setText(susername);

txtpassword.setText(spassword);

txtstatus.setText(sstatus);

Page 168: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+

skode+"Sukses

Di Cari!!!");

txtkode.setEditable(false);

txtnama.requestFocus();

System.out.println("Data anda

kode="+skode+"sukses di cari!!!");

}

else{

JOptionPane.showMessageDialog(null,"Data

tidak Ditemukan");

}

System.out.println("===============

===========================

==============");

}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

Kesalahan,mungkin database atau tabelnya

belum ada");}

}

//-----------------

--------------------------------

public static void

main(String[]args){

javax.swing.SwingUtilities.invokeLater(new

Runnable(){

public void run(){

Anggota app=new Anggota();

app.lp2maray();

}

});

}

//-----------------

-------------------------------

void Bersih(){

txtkode.setText("");

txtnama.setText("");

txttelepon.setText("");

txtemail.setText("");

txtalamat.setText("");

txtusername.setText("");

txtpassword.setText("");

txtstatus.setText("");

txtkode.requestFocus();

}

//-----------------

------------------------------

void lihatdata(){

try{

hapustabel();

cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Select * from tbanggota";

ResultSet

cari=sawo.executeQuery(SQLt);

while(cari.next()){

Page 169: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

String

sskode=cari.getString("kode");

String

ssnama=cari.getString("nama");

String

sstelepon=cari.getString("telepon");

String

ssemail=cari.getString("email");

String

ssalamat=cari.getString("alamat");

String

ssusername=cari.getString("username");

String

sspassword=cari.getString("password");

String

ssstatus=cari.getString("status");

String[]data={"",sskode,ssnama,sstelepon,s

semail,ssalamat,ssusername,sspassword,sss

tatus};

modelnya.addRow(data);

//

System.out.println(a+"\t"+aa+"\t"+aaa+"\t

"+aaaa+"\t"+aaaaa\t"+susername\t"+spas

sword\t"+sstatus);

System.out.println("----------------

--------------------------");

resetNo();

}

sawo.close();

cery.close();

}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek lihat data");

System.out.println("Terjadi

kesalahanAA,mungkin database atau

tabelnya belum ada");}

}

//------------------------------------

-----------------------

void resetNo(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

String

Nomor=String.valueOf(i+1);

modelnya.setValueAt(Nomor,i,0);

}

}

//-------------------------------------

----------------------

void hapustabel(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

modelnya.removeRow(0);

Bersih();

}

Page 170: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

}

//-------------------------------------

----------------------

}

public class Utama_SMS extends

javax.swing.JFrame implements

javax.comm.SerialPortEventListener{

String nilaiSerialPort;

String nilaiBitPerSecond;

String nilaiDataBits;

String nilaiParity;

String nilaiStopBit;

String nilaiFlowControl;

String driverJDBC;

String url;

String user;

String password;

public Utama_SMS(String nilaiSerialPort,

String nilaiBitPerSecond,

String nilaiDataBits,

String nilaiParity,

String nilaiStopBit,

String nilaiFlowControl,

String driverJDBC,

String url,

String user,

String password) {

this.nilaiSerialPort = nilaiSerialPort;

this.nilaiBitPerSecond =

nilaiBitPerSecond;

this.nilaiDataBits = nilaiDataBits;

this.nilaiParity = nilaiParity;

this.nilaiStopBit = nilaiStopBit;

this.nilaiFlowControl =

nilaiFlowControl;

this.driverJDBC = driverJDBC;

this.url = url;

this.user = user;

this.password = password;

initComponents();

belumTerhubung();

}

int bufferOffset = 0;

byte[] bacaBuffer = new byte[100000];

int n;

java.io.InputStream input;

public void

serialEvent(javax.comm.SerialPortEvent

event) {

try {

input =

SmitDev.SmsServer.Server.port.getInputStr

eam();

// Apabila ada respons dari

terminal, lakukan pembacaan

while ( (n = input.available()) > 0)

{

n = input.read(bacaBuffer,

bufferOffset, n);

bufferOffset += n;

Page 171: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

// Jika ada respons "\15" (Line

Feed Carriage Return),

if ( (bacaBuffer[bufferOffset - 1]

== 10) &&

(bacaBuffer[bufferOffset -

2] == 13)) {

String buffer = new

String(bacaBuffer, 0, bufferOffset - 2);

// Berikan ke methode

terimaResponAT

terimaResponAT(buffer);

bufferOffset = 0;

}

} // Akhir while

} // Akhir try

catch (java.io.IOException e) {

}

}

int Index = 0;

String id_sms = "";

boolean perintah = false;

boolean hasil = false;

boolean imei = false;

boolean bacaSMS = false;

String respons = "";

String nilaiperintah = "Unknow Device";

String nilaihasil= "Unknow Device";

String nilaiIMEI= "Unknow Device";

String nilaiOperator= "Unknow Network";

private void terimaResponAT(String

buffer){

String tanggal_sms = "";

String jam_sms = "";

String tlp_sms = "";

String isi_sms = "";

java.util.StringTokenizer st = new

java.util.StringTokenizer(buffer, "\r\n");

while (st.hasMoreTokens()) {

// mengambil token yang ada pada

obyek

respons = st.nextToken();

tulis_proses(respons);

if (perintah) {

nilaiperintah = respons;

perintah = false;

} else if (hasil) {

nilaihasil = respons;

hasil = false;

} else if (imei) {

nilaiIMEI = respons;

imei = false;

}

// Respon Jika Terminal Sudah

Tersambung

if(respons.startsWith("ATH0")){

sedangTerhubung();

} else if

(respons.startsWith("+COPS:")) {

java.util.regex.Pattern pattern =

java.util.regex.Pattern.compile(",");

String[] hasil =

pattern.split(respons.trim());

nilaiOperator = hasil[2].trim();

} else if

(respons.startsWith("AT+CGMI")) {

perintah = true;

} else if

(respons.startsWith("AT+CGMM")) {

hasil = true;

} else if

(respons.startsWith("AT+CGSN")) {

imei = true;

} else if

(respons.startsWith("+CMGR:")) {

bacaSMS = true;

} else if (bacaSMS) {

try{

SmitDev.SmsServer.Server.terimaSMS(resp

ons.trim());

id_sms =

String.valueOf(Index);

tlp_sms =

SmitDev.SmsServer.Server.noTlpPengirim;

Page 172: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

isi_sms =

SmitDev.SmsServer.Server.isiPesanTerima;

new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsMasuk(tlp_sms, isi_sms);

SmitDev.SmsServer.Server.kirimAT("AT+C

MGD=" + id_sms + "\15", 1250);

bacaSMS = false;

} catch (Exception

e){e.getMessage();}

} else if

(respons.startsWith("+CMTI:")) {

java.util.regex.Pattern pattern =

java.util.regex.Pattern.compile(":");

String[] hasil =

pattern.split(respons.trim());

pattern =

java.util.regex.Pattern.compile(",");

hasil =

pattern.split(hasil[1].trim());

Index =

Integer.parseInt(hasil[1].trim());

SmitDev.SmsServer.Server.kirimAT("AT+CP

MS=" + hasil[0].trim() + "\15", 1250);

SmitDev.SmsServer.Server.kirimAT("AT+C

MGR=" + Index + "\15", 1250); // Baca

Pesan Baru yang Masuk

} else if

(respons.startsWith("+CMGS:")) {

tulis_proses("Pesan Berhasil

Dikirim");

new

prosesDatabaseSmsServer(koneksi).update

StatusData(id_Sms_Kirim, "SEND");

this.thKirim.resume();

} else if (respons.startsWith("+CMS

ERROR:")) {

tulis_proses("Pesan GAGAL

Dikirim");

new

prosesDatabaseSmsServer(koneksi).update

StatusData(id_Sms_Kirim, "NO");

this.thKirim.resume();

}

}

}

public void tulis_proses(String data) {

getWaktu();

String waktu = jam + ":" + menit +

":" + detik;

String ddmmyy = tanggal + bulan +

tahun;

data = "\"" + waktu + "\", \"" + data

+ "\"\015";

try {

byte b[] = data.getBytes();

java.io.File outputx = new

java.io.File(ddmmyy +

".SmitDevSmsServer");

java.io.RandomAccessFile random =

new java.io.RandomAccessFile(outputx,

"rw");

random.seek(outputx.length());

random.write(b);

random.close();

} catch (java.io.IOException ex) {

System.out.println(ex);

}

}

javax.swing.table.DefaultTableModel

tabSMSMasuk = new

javax.swing.table.DefaultTableModel(

null, new String[] {"No. Telepon",

"Nama Kontak", "Tanggal", "Jam", "Isi

Pesan", "Status"}){

public boolean isCellEditable(int

iRows, int iCols) {

return false;

}};

Page 173: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

javax.swing.table.DefaultTableModel

tabSMSTerkirim = new

javax.swing.table.DefaultTableModel(

null, new String[] {"No.

Telepon", "Nama Kontak", "Tanggal", "Jam",

"Isi Pesan", "Status"}){

public boolean

isCellEditable(int iRows, int iCols) {

return false;

}};

private void initComponents() {

buttonGroup1 = new

javax.swing.ButtonGroup();

panelTengah = new

javax.swing.JPanel();

panelAwal = new

javax.swing.JPanel();

jPanel1 = new javax.swing.JPanel();

waktuLokal = new

javax.swing.JLabel();

jPanel2 = new javax.swing.JPanel();

jPanel4 = new javax.swing.JPanel();

jScrollPane1 = new

javax.swing.JScrollPane();

tabelSmsMasukHariIni = new

javax.swing.JTable();

jPanel5 = new javax.swing.JPanel();

jScrollPane2 = new

javax.swing.JScrollPane();

tabelSmsTerkirimHariIni = new

javax.swing.JTable();

jPanel3 = new javax.swing.JPanel();

jPanel6 = new javax.swing.JPanel();

jPanel8 = new javax.swing.JPanel();

jLabel3 = new javax.swing.JLabel();

labelJumlahMasuk = new

javax.swing.JLabel();

jPanel9 = new javax.swing.JPanel();

jLabel7 = new javax.swing.JLabel();

labelSuksesProses = new

javax.swing.JLabel();

jPanel10 = new javax.swing.JPanel();

jLabel5 = new javax.swing.JLabel();

labelAntriProses = new

javax.swing.JLabel();

jPanel11 = new javax.swing.JPanel();

jLabel9 = new javax.swing.JLabel();

jLabel10 = new javax.swing.JLabel();

jPanel7 = new javax.swing.JPanel();

jPanel12 = new javax.swing.JPanel();

jLabel11 = new javax.swing.JLabel();

labelJumlahKeluar = new

javax.swing.JLabel();

jPanel13 = new javax.swing.JPanel();

jLabel13 = new javax.swing.JLabel();

labelSuksesTerkirim = new

javax.swing.JLabel();

jPanel14 = new javax.swing.JPanel();

jLabel15 = new javax.swing.JLabel();

labelJumlahAntrianKeluar = new

javax.swing.JLabel();

jPanel15 = new javax.swing.JPanel();

jLabel17 = new javax.swing.JLabel();

labelGagalTerkirim = new

javax.swing.JLabel();

panelAtas = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

panelBawah = new

javax.swing.JPanel();

jLabel2 = new javax.swing.JLabel();

jMenuBar1 = new

javax.swing.JMenuBar();

menuBerkas = new

javax.swing.JMenu();

subMenuKoneksi = new

javax.swing.JMenuItem();

subMenuPutus = new

javax.swing.JMenuItem();

jSeparator1 = new

javax.swing.JSeparator();

subMenuKirimSms = new

javax.swing.JMenuItem();

subMenuPengaturanTerminal = new

javax.swing.JMenuItem();

Page 174: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jSeparator4 = new

javax.swing.JSeparator();

subMenuKeluar = new

javax.swing.JMenuItem();

menuDatabase = new

javax.swing.JMenu();

subMenuSmsMasuk = new

javax.swing.JMenuItem();

subMenuSmsTerkirim = new

javax.swing.JMenuItem();

jSeparator3 = new

javax.swing.JSeparator();

subMenuBukuTelepon = new

javax.swing.JMenuItem();

menuSMSRequest = new

javax.swing.JMenu();

menuInputDataPelanggan = new

javax.swing.JMenuItem();

menuInputDataPajakPembayaran =

new javax.swing.JMenuItem();

menuSystem = new

javax.swing.JMenu();

subMenuKonfigurasi = new

javax.swing.JMenuItem();

subMenuAktivitasSystem = new

javax.swing.JMenuItem();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DO_NOTHING_ON_CLOSE);

setTitle(".:: SMS Monitoring dengan

Database ::.");

setBackground(new

java.awt.Color(255, 255, 255));

setCursor(new

java.awt.Cursor(java.awt.Cursor.DEFAULT_

CURSOR));

setResizable(false);

addWindowListener(new

java.awt.event.WindowAdapter() {

public void

windowClosing(java.awt.event.WindowEvent

evt) {

formWindowClosing(evt);

}

});

panelTengah.setLayout(new

java.awt.GridLayout(1, 0));

panelAwal.setLayout(new

javax.swing.BoxLayout(panelAwal,

javax.swing.BoxLayout.Y_AXIS));

panelAwal.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.R

IGHT, 5, 1));

jPanel1.setBackground(new

java.awt.Color(0, 0, 0));

waktuLokal.setFont(new

java.awt.Font("Dialog", 1, 12));

waktuLokal.setForeground(new

java.awt.Color(255, 255, 255));

waktuLokal.setText("jLabel19");

waktuLokal.setText(SmitDev.SmsServer.Ja

m.getWaktu());

waktu();

jPanel1.add(waktuLokal);

panelAwal.add(jPanel1);

jPanel2.setLayout(new

javax.swing.BoxLayout(jPanel2,

javax.swing.BoxLayout.X_AXIS));

jPanel2.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.setLayout(new

java.awt.GridLayout(1, 0));

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.setBorder(new

javax.swing.border.TitledBorder(new

Page 175: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

javax.swing.border.LineBorder(new

java.awt.Color(0, 0, 0), 2, true), " SMS

Masuk Hari Ini ",

javax.swing.border.TitledBorder.DEFAULT_J

USTIFICATION,

javax.swing.border.TitledBorder.DEFAULT_P

OSITION, new java.awt.Font("Tahoma", 1,

12)));

jScrollPane1.setBackground(new

java.awt.Color(255, 255, 255));

jScrollPane1.setBorder(new

javax.swing.border.BevelBorder(javax.swing

.border.BevelBorder.LOWERED));

jScrollPane1.setHorizontalScrollBarPolicy(jav

ax.swing.ScrollPaneConstants.HORIZONTAL

_SCROLLBAR_NEVER);

jScrollPane1.setToolTipText("");

jScrollPane1.setVerticalScrollBarPolicy(javax

.swing.ScrollPaneConstants.VERTICAL_SCR

OLLBAR_ALWAYS);

tabelSmsMasukHariIni.setModel(new

javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null},

{null, null, null, null},

{null, null, null, null},

{null, null, null, null}

},

new String [] {

"Title 1", "Title 2", "Title 3", "Title

4"

}

));

tabelSmsMasukHariIni.setToolTipText("");

tabelSmsMasukHariIni.setModel(tabSMSMas

uk);

javax.swing.table.TableColumn colx =

this.tabelSmsMasukHariIni.getColumn("No.

Telepon");

colx.setWidth(80);

colx.setMinWidth(80);

colx.setMaxWidth(90);

colx =

this.tabelSmsMasukHariIni.getColumn("Tan

ggal");

colx.setWidth(0);

colx.setMinWidth(0);

colx.setMaxWidth(0);

colx =

this.tabelSmsMasukHariIni.getColumn("Jam

");

colx.setWidth(0);

colx.setMinWidth(0);

colx.setMaxWidth(0);

colx =

this.tabelSmsMasukHariIni.getColumn("Nam

a Kontak");

colx.setWidth(80);

colx.setMinWidth(80);

colx.setMaxWidth(80);

colx =

this.tabelSmsMasukHariIni.getColumn("Stat

us");

colx.setWidth(40);

colx.setMinWidth(40);

colx.setMaxWidth(50);

this.tabelSmsMasukHariIni.sizeColumnsToFit

(0);

jScrollPane1.setViewportView(tabelSmsMasu

kHariIni);

jPanel4.add(jScrollPane1);

jPanel2.add(jPanel4);

jPanel5.setLayout(new

java.awt.GridLayout(1, 0));

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

jPanel5.setBorder(new

javax.swing.border.TitledBorder(new

Page 176: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

javax.swing.border.LineBorder(new

java.awt.Color(0, 0, 0), 2, true), " SMS

Keluar Hari Ini ",

javax.swing.border.TitledBorder.DEFAULT_J

USTIFICATION,

javax.swing.border.TitledBorder.DEFAULT_P

OSITION, new java.awt.Font("Tahoma", 1,

12)));

jScrollPane2.setBackground(new

java.awt.Color(255, 255, 255));

jScrollPane2.setBorder(new

javax.swing.border.BevelBorder(javax.swing

.border.BevelBorder.LOWERED));

jScrollPane2.setHorizontalScrollBarPolicy(jav

ax.swing.ScrollPaneConstants.HORIZONTAL

_SCROLLBAR_NEVER);

jScrollPane2.setToolTipText("");

jScrollPane2.setVerticalScrollBarPolicy(javax

.swing.ScrollPaneConstants.VERTICAL_SCR

OLLBAR_ALWAYS);

tabelSmsTerkirimHariIni.setModel(new

javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null},

{null, null, null, null},

{null, null, null, null},

{null, null, null, null}

},

new String [] {

"Title 1", "Title 2", "Title 3", "Title

4"

}

));

tabelSmsTerkirimHariIni.setToolTipText("");

tabelSmsTerkirimHariIni.setModel(tabSMSTe

rkirim);

javax.swing.table.TableColumn col =

this.tabelSmsTerkirimHariIni.getColumn("No

. Telepon");

col.setWidth(80);

col.setMinWidth(80);

col.setMaxWidth(90);

col =

this.tabelSmsTerkirimHariIni.getColumn("Ta

nggal");

col.setWidth(0);

col.setMinWidth(0);

col.setMaxWidth(0);

col =

this.tabelSmsTerkirimHariIni.getColumn("Ja

m");

col.setWidth(0);

col.setMinWidth(0);

col.setMaxWidth(0);

col =

this.tabelSmsTerkirimHariIni.getColumn("Na

ma Kontak");

col.setWidth(80);

col.setMinWidth(80);

col.setMaxWidth(80);

col =

this.tabelSmsTerkirimHariIni.getColumn("St

atus");

col.setWidth(40);

col.setMinWidth(40);

col.setMaxWidth(50);

this.tabelSmsTerkirimHariIni.sizeColumnsTo

Fit(0);

jScrollPane2.setViewportView(tabelSmsTerki

rimHariIni);

jPanel5.add(jScrollPane2);

jPanel2.add(jPanel5);

panelAwal.add(jPanel2);

jPanel3.setLayout(new

javax.swing.BoxLayout(jPanel3,

javax.swing.BoxLayout.X_AXIS));

Page 177: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel6.setLayout(new

java.awt.GridLayout(2, 0));

jPanel6.setBackground(new

java.awt.Color(255, 255, 255));

jPanel6.setBorder(new

javax.swing.border.TitledBorder(new

javax.swing.border.LineBorder(new

java.awt.Color(0, 0, 0), 2, true), " Traffic

SMS Terima Hari ini ",

javax.swing.border.TitledBorder.DEFAULT_J

USTIFICATION,

javax.swing.border.TitledBorder.DEFAULT_P

OSITION, new java.awt.Font("Tahoma", 1,

12)));

jPanel8.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jLabel3.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel3.setText("Jml SMS Masuk :");

jLabel3.setHorizontalTextPosition(javax.swin

g.SwingConstants.RIGHT);

jLabel3.setPreferredSize(new

java.awt.Dimension(102, 16));

jPanel8.add(jLabel3);

labelJumlahMasuk.setText("0");

labelJumlahMasuk.setPreferredSize(new

java.awt.Dimension(40, 16));

jPanel8.add(labelJumlahMasuk);

jPanel6.add(jPanel8);

jPanel9.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel9.setBackground(new

java.awt.Color(255, 255, 255));

jLabel7.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel7.setText("Proses Sukses :");

jLabel7.setPreferredSize(new

java.awt.Dimension(103, 16));

jPanel9.add(jLabel7);

labelSuksesProses.setText("0");

labelSuksesProses.setPreferredSize(new

java.awt.Dimension(40, 16));

jPanel9.add(labelSuksesProses);

jPanel6.add(jPanel9);

jPanel10.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel10.setBackground(new

java.awt.Color(255, 255, 255));

jLabel5.setBackground(new

java.awt.Color(51, 102, 255));

jLabel5.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel5.setText("Jml Antrian :");

jLabel5.setPreferredSize(new

java.awt.Dimension(102, 16));

jPanel10.add(jLabel5);

labelAntriProses.setText("0");

labelAntriProses.setPreferredSize(new

java.awt.Dimension(40, 16));

jPanel10.add(labelAntriProses);

jPanel6.add(jPanel10);

jPanel11.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

Page 178: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel11.setBackground(new

java.awt.Color(255, 255, 255));

jLabel9.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel9.setText("Proses Gagal :");

jLabel9.setPreferredSize(new

java.awt.Dimension(103, 16));

jPanel11.add(jLabel9);

jLabel10.setText("0");

jLabel10.setPreferredSize(new

java.awt.Dimension(40, 16));

jPanel11.add(jLabel10);

jPanel6.add(jPanel11);

jPanel3.add(jPanel6);

jPanel7.setLayout(new

java.awt.GridLayout(2, 0));

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

jPanel7.setBorder(new

javax.swing.border.TitledBorder(new

javax.swing.border.LineBorder(new

java.awt.Color(0, 0, 0), 2, true), " Traffic

SMS Keluar Hari Ini ",

javax.swing.border.TitledBorder.DEFAULT_J

USTIFICATION,

javax.swing.border.TitledBorder.DEFAULT_P

OSITION, new java.awt.Font("Tahoma", 1,

12)));

jPanel12.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel12.setBackground(new

java.awt.Color(255, 255, 255));

jLabel11.setHorizontalAlignment(javax.swin

g.SwingConstants.RIGHT);

jLabel11.setText("Jml SMS Keluar :");

jLabel11.setPreferredSize(new

java.awt.Dimension(102, 14));

jPanel12.add(jLabel11);

labelJumlahKeluar.setText("0");

labelJumlahKeluar.setPreferredSize(new

java.awt.Dimension(40, 16));

jPanel12.add(labelJumlahKeluar);

jPanel7.add(jPanel12);

jPanel13.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel13.setBackground(new

java.awt.Color(255, 255, 255));

jLabel13.setHorizontalAlignment(javax.swin

g.SwingConstants.RIGHT);

jLabel13.setText("Suskses Terkirim

:");

jLabel13.setPreferredSize(new

java.awt.Dimension(103, 14));

jPanel13.add(jLabel13);

labelSuksesTerkirim.setText("0");

labelSuksesTerkirim.setPreferredSize(new

java.awt.Dimension(40, 16));

jPanel13.add(labelSuksesTerkirim);

jPanel7.add(jPanel13);

jPanel14.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel14.setBackground(new

java.awt.Color(255, 255, 255));

Page 179: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jLabel15.setHorizontalAlignment(javax.swin

g.SwingConstants.RIGHT);

jLabel15.setText("Jml Antrian :");

jLabel15.setPreferredSize(new

java.awt.Dimension(102, 16));

jPanel14.add(jLabel15);

labelJumlahAntrianKeluar.setText("0");

labelJumlahAntrianKeluar.setPreferredSize(n

ew java.awt.Dimension(40, 16));

jPanel14.add(labelJumlahAntrianKeluar);

jPanel7.add(jPanel14);

jPanel15.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel15.setBackground(new

java.awt.Color(255, 255, 255));

jLabel17.setHorizontalAlignment(javax.swin

g.SwingConstants.RIGHT);

jLabel17.setText("Gagal Terkirim :");

jLabel17.setPreferredSize(new

java.awt.Dimension(103, 16));

jPanel15.add(jLabel17);

labelGagalTerkirim.setText("0");

labelGagalTerkirim.setPreferredSize(new

java.awt.Dimension(40, 16));

jPanel15.add(labelGagalTerkirim);

jPanel7.add(jPanel15);

jPanel3.add(jPanel7);

panelAwal.add(jPanel3);

panelTengah.add(panelAwal);

getContentPane().add(panelTengah,

java.awt.BorderLayout.CENTER);

panelAtas.setBackground(new

java.awt.Color(0, 0, 0));

panelAtas.setForeground(new

java.awt.Color(102, 255, 0));

jLabel1.setFont(new

java.awt.Font("DialogInput", 1, 24));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("Network Monitoring

Berbasis SMS LKC");

panelAtas.add(jLabel1);

getContentPane().add(panelAtas,

java.awt.BorderLayout.NORTH);

panelBawah.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 0));

panelBawah.setBorder(new

javax.swing.border.BevelBorder(javax.swing

.border.BevelBorder.LOWERED));

jLabel2.setFont(new

java.awt.Font("Dialog", 1, 12));

jLabel2.setText("Belum Terhubung");

panelBawah.add(jLabel2);

getContentPane().add(panelBawah,

java.awt.BorderLayout.SOUTH);

menuBerkas.setText("Berkas");

subMenuKoneksi.setText("Koneksi

Terminal");

subMenuKoneksi.addActionListener(new

java.awt.event.ActionListener() {

Page 180: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuKoneksiActionPerformed(evt);

}

});

menuBerkas.add(subMenuKoneksi);

subMenuPutus.setText("Putus

Terminal");

subMenuPutus.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuPutusActionPerformed(evt);

}

});

menuBerkas.add(subMenuPutus);

menuBerkas.add(jSeparator1);

subMenuKirimSms.setText("Kirim

SMS");

subMenuKirimSms.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuKirimSmsActionPerformed(evt);

}

});

menuBerkas.add(subMenuKirimSms);

subMenuPengaturanTerminal.setText("Peng

aturan Terminal");

subMenuPengaturanTerminal.addActionListe

ner(new java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuPengaturanTerminalActionPerforme

d(evt);

}

});

menuBerkas.add(subMenuPengaturanTermi

nal);

menuBerkas.add(jSeparator4);

subMenuKeluar.setText("Keluar");

subMenuKeluar.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuKeluarActionPerformed(evt);

}

});

menuBerkas.add(subMenuKeluar);

jMenuBar1.add(menuBerkas);

menuDatabase.setText("Database");

subMenuSmsMasuk.setText("SMS

Masuk");

subMenuSmsMasuk.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuSmsMasukActionPerformed(evt);

Page 181: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

}

});

menuDatabase.add(subMenuSmsMasuk);

subMenuSmsTerkirim.setText("SMS

Keluar");

subMenuSmsTerkirim.addActionListener(ne

w java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuSmsTerkirimActionPerformed(evt);

}

});

menuDatabase.add(subMenuSmsTerkirim);

menuDatabase.add(jSeparator3);

subMenuBukuTelepon.setText("Buku

Telepon");

subMenuBukuTelepon.addActionListener(ne

w java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuBukuTeleponActionPerformed(evt);

}

});

menuDatabase.add(subMenuBukuTelepon);

jMenuBar1.add(menuDatabase);

menuSMSRequest.setText(" SMS

Request");

menuInputDataPelanggan.setText("Proses

Monitoring");

menuInputDataPelanggan.addActionListener

(new java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

menuInputDataPelangganActionPerformed(e

vt);

}

});

menuSMSRequest.add(menuInputDataPelan

ggan);

menuInputDataPajakPembayaran.setText("I

nput Data Pajak Pembayaran");

menuInputDataPajakPembayaran.addAction

Listener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

menuInputDataPajakPembayaranActionPerf

ormed(evt);

}

});

//menuSMSRequest.add(menuInputDataPaj

akPembayaran);

jMenuBar1.add(menuSMSRequest);

menuSystem.setText("System");

Page 182: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

subMenuKonfigurasi.setText("Konfigurasi

Perangkat");

subMenuKonfigurasi.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuKonfigurasiActionPerformed(evt);

}

});

menuSystem.add(subMenuKonfigurasi);

subMenuAktivitasSystem.setText("Aktivitas

System");

subMenuAktivitasSystem.addActionListener(

new java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

subMenuAktivitasSystemActionPerformed(ev

t);

}

});

menuSystem.add(subMenuAktivitasSystem)

;

jMenuBar1.add(menuSystem);

setJMenuBar(jMenuBar1);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-800)/2,

(screenSize.height-600)/2, 800, 600);

}

private void

menuInputDataPajakPembayaranActionPerf

ormed(java.awt.event.ActionEvent evt) {

// new JIP(koneksi,

tahun).setVisible(true);

}

private void

menuInputDataPelangganActionPerformed(j

ava.awt.event.ActionEvent evt) {

new

Konfigurasi().setVisible(true);//AplikasiUji

}

private void

subMenuKonfigurasiActionPerformed(java.a

wt.event.ActionEvent evt) {

new

jendelaKonfigurasiPerangkat(nilaiperintah,

nilaihasil, nilaiIMEI,

nilaiOperator).setVisible(true);

}

private void

subMenuSmsTerkirimActionPerformed(java.

awt.event.ActionEvent evt) {

new

jendelaSmsKeluar(koneksi).setVisible(true);

}

private void

subMenuAktivitasSystemActionPerformed(ja

va.awt.event.ActionEvent evt) {

new

jendelaAktivitasSystem().setVisible(true);

}

Page 183: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

private void

subMenuSmsMasukActionPerformed(java.aw

t.event.ActionEvent evt) {

new

jendelaSmsMasuk(koneksi).setVisible(true);

}

private void

subMenuPengaturanTerminalActionPerforme

d(java.awt.event.ActionEvent evt) {

this.dispose();

setting.setVisible(true);

}

private void

subMenuKirimSmsActionPerformed(java.awt

.event.ActionEvent evt) {

new jendelaKirimSms(koneksi, "",

"").setVisible(true);

}

private void

subMenuBukuTeleponActionPerformed(java.

awt.event.ActionEvent evt) {

new jendelaBukuTelepon(koneksi, "",

"", "").setVisible(true);

}

private void

subMenuPutusActionPerformed(java.awt.eve

nt.ActionEvent evt) {

SmitDev.SmsServer.Server.tutupTerminal()

;

tulis_proses("Pemutusan Terminal");

tulis_proses("Serial Port Ditutup");

belumTerhubung();

}

private void

subMenuKoneksiActionPerformed(java.awt.e

vent.ActionEvent evt) {

tulis_proses("");

tulis_proses(

"------------------------------------

--------------------------------");

tulis_proses("New Session");

tulis_proses(

"------------------------------------

--------------------------------");

koneksiDatabase();

}

java.sql.Connection koneksi = null;

private void koneksiDatabase(){

boolean driver = false;

try {

// Penyambungan Driver

Class.forName(this.driverJDBC);

tulis_proses("Mencoba Loading

Driver JDBC");

tulis_proses(this.driverJDBC);

driver = true;

// Apabila Kelas Driver Tidak

Ditemukan

} catch (ClassNotFoundException not)

{

SmitDev.SmsServer.Server.proses_Gagal("

Sms Server Error", "Tidak Menemukan

Driver -- " + this.driverJDBC +

"\n" + not.getMessage());

tulis_proses("Tidak Menemukan

Driver -- " + this.driverJDBC + "\n"+

not.getMessage());

}

if (driver == true) {

tulis_proses("Loading Driver JDBC

Sukses");

tulis_proses("Mencoba melakukan

sambungan dengan Database Server");

try {

tulis_proses(url);

koneksi =

java.sql.DriverManager.getConnection(url,

user, password);

tulis_proses("Koneksi Database

Server Sukses");

Page 184: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

koneksiPerangkat();

// sedangTerhubung(); // Only

Testing

} // Akhir try

// Apabila Gagal melakukan

penyambungan Database

catch (java.sql.SQLException sqln)

{

SmitDev.SmsServer.Server.proses_Gagal("

Sms Server Error", "Gagal Koneksi Database

-- " + sqln.getMessage());

tulis_proses("Gagal Koneksi

Database -- " + sqln.getMessage());

}

}

}

private void koneksiPerangkat(){

SmitDev.SmsServer.Server.koneksiTerminal

(nilaiSerialPort, nilaiBitPerSecond,

nilaiDataBits, nilaiParity, nilaiStopBit,

nilaiFlowControl);

try {

SmitDev.SmsServer.Server.port.addEventLi

stener(this);

} //Akhir try addEvenListener

catch

(java.util.TooManyListenersException tmle)

{

System.out.print(tmle.getMessage());

}

SmitDev.SmsServer.Server.kirimAT("ATE1"

+ "\15", 1000); // Merek

SmitDev.SmsServer.Server.kirimAT("AT+CN

MI=1,1,2,2,1" + "\15", 1250);

SmitDev.SmsServer.Server.kirimAT("AT+CG

MI" + "\15", 1000); // Merek

SmitDev.SmsServer.Server.kirimAT("AT+CG

MM" + "\15", 1000); // Seri

SmitDev.SmsServer.Server.kirimAT("AT+CG

SN" + "\15", 1000); // IMEI

SmitDev.SmsServer.Server.kirimAT("AT+CO

PS?" + "\15", 1000); // Network

SmitDev.SmsServer.Server.kirimAT("ATH0"

+ "\15", 500);

}

private void belumTerhubung(){

menuDatabase.setEnabled(false);

subMenuKoneksi.setEnabled(true);

subMenuKirimSms.setEnabled(false);

subMenuPutus.setEnabled(false);

subMenuPengaturanTerminal.setEnabled(tru

e);

subMenuKonfigurasi.setEnabled(false);

jLabel2.setText("Belum Terhubung");

jLabel2.setForeground(java.awt.Color.RED);

menuSMSRequest.setEnabled(false);

}

ThreadPeriksaDataSmsKeluar thKirim=

new ThreadPeriksaDataSmsKeluar();

ThreadPeriksaDataSmsMasuk thTerima=

new ThreadPeriksaDataSmsMasuk();

private void sedangTerhubung(){

menuDatabase.setEnabled(true);

subMenuKoneksi.setEnabled(false);

subMenuKirimSms.setEnabled(true);

subMenuPutus.setEnabled(true);

subMenuPengaturanTerminal.setEnabled(fal

se);

subMenuKonfigurasi.setEnabled(true);

Page 185: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jLabel2.setText("Sedang Terhubung");

jLabel2.setForeground(java.awt.Color.BLUE)

;

menuSMSRequest.setEnabled(true);

javax.swing.JOptionPane.showMessageDialo

g(null,

"Selamat !!!\nSMS Server

Berhasil Terhubung");

tulis_proses("Terminal Berhasil

Terhubung");

tulis_proses("");

if(!thTerima.isAlive()){

thKirim.start();

thTerima.start();

}

tampilTabelSmsKeluar();

tampilTabelSmsMasuk();

}

private void waktu(){

java.awt.event.ActionListener

taskPerformer = new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

waktuLokal.setText(SmitDev.SmsServer.Ja

m.getWaktu());

}

};

// Timer

new javax.swing.Timer(1000,

taskPerformer).start();

}

String tahun;

String bulan;

String tanggal;

String jam;

String menit;

String detik;

private void getWaktu(){

String tgl_nol = "";

String bln_nol = "";

// Mengambil Waktu sekarang

java.util.Calendar dt =

java.util.Calendar.getInstance();

int tgl =

dt.get(java.util.Calendar.DAY_OF_MONTH);

int bln =

dt.get(java.util.Calendar.MONTH)+1;

int thn =

dt.get(java.util.Calendar.YEAR);

// Apabila nilai tanggal lebih kecil dari 10

if (tgl < 10) {

tgl_nol = "0";

}

if (bln < 10) {

bln_nol = "0";

}

// Membuat String Tanggal dan Tahun

tanggal = tgl_nol +

Integer.toString(tgl);

bulan = bln_nol +

Integer.toString(bln);

tahun = Integer.toString(thn);

//**********************************

**********

String nol_jam = "";

String nol_menit = "";

String nol_detik = "";

// Membuat Date

// Mengambil nilaj JAM, MENIT, dan

DETIK Sekarang

int nilai_jam =

dt.get(java.util.Calendar.HOUR_OF_DAY);

int nilai_menit =

dt.get(java.util.Calendar.MINUTE);

int nilai_detik =

dt.get(java.util.Calendar.SECOND);

// Jika nilai JAM lebih kecil dari 10

(hanya 1 digit)

if (nilai_jam <= 9) {

Page 186: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

// Tambahkan "0" didepannya

nol_jam = "0";

}

// Jika nilai MENIT lebih kecil dari 10

(hanya 1 digit)

if (nilai_menit <= 9) {

// Tambahkan "0" didepannya

nol_menit = "0";

}

// Jika nilai DETIK lebih kecil dari 10

(hanya 1 digit)

if (nilai_detik <= 9) {

// Tambahkan "0" didepannya

nol_detik = "0";

}

// Keadaan Waktu Sekarang

// Membuat String JAM, MENIT, DETIK

jam = nol_jam +

Integer.toString(nilai_jam);

menit = nol_menit +

Integer.toString(nilai_menit);

detik = nol_detik +

Integer.toString(nilai_detik);

}

private void

formWindowClosing(java.awt.event.Window

Event evt) {

keluar();

}

private void

subMenuKeluarActionPerformed(java.awt.ev

ent.ActionEvent evt) {

keluar();

}

private void keluar(){

if (this.subMenuKoneksi.isEnabled()){

int n =

javax.swing.JOptionPane.showConfirmDialog

(null, "Anda Ingin Keluar dari Aplikasi ini ?",

"Keluar Aplikasi",

javax.swing.JOptionPane.YES_NO_OPTION);

if(n == 0){

System.exit(1);

}

} else {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Opss.. Aplikasi Belum bisa

ditutup\nSilahkan lakukan pemutusan

terminal terlebih dahulu\nsebelum menutup

aplikasi ini");

}

}

private void tampilTabelSmsMasuk() {

int row =

tabSMSMasuk.getRowCount();

for (int i = 0; i < row; i++) {

tabSMSMasuk.removeRow(0);

}

getWaktu();

String tanggal_hari_ini = tanggal+"-

"+bulan+"-"+tahun;

String sql =

"SELECT COUNT(id_MASUK) as

jml FROM SMS_MASUK WHERE

tanggal_MASUK = '"+tanggal_hari_ini+"'";

String sql2 = "SELECT * FROM

SMS_MASUK WHERE tanggal_MASUK =

'"+tanggal_hari_ini+"' ORDER BY

TANGGAL_MASUK DESC , JAM_MASUK

DESC";

String sql3 =

"SELECT COUNT(id_MASUK) as

jml2 FROM SMS_MASUK WHERE

status_MASUK = 'WAIT' AND

TANGGAL_MASUK =

'"+tanggal_hari_ini+"'";

String jml_all = "";

String jml_antri = "";

Page 187: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

try {

// SQL

java.sql.Statement stat =

koneksi.createStatement();

java.sql.Statement statu =

koneksi.createStatement();

try {

java.sql.ResultSet rSet =

stat.executeQuery(sql);

while (rSet.next()) {

jml_all =

rSet.getString("jml");

this.labelJumlahMasuk.setText(jml_all);

} // Akhir while

java.sql.ResultSet rSt =

stat.executeQuery(sql2);

while (rSt.next()) {

String no =

rSt.getString("NO_TELEPON_MASUK");

String psn =

rSt.getString("ISI_PESAN_MASUK");

String sts =

rSt.getString("STATUS_MASUK");

String time =

rSt.getString("JAM_MASUK");

String tg =

rSt.getString("TANGGAL_MASUK");

String nama =

"";//085279959497 :+6285279959498

String sqlKontak = "SELECT *

FROM data_buku_telepon WHERE

nomor_telepon like

'%"+no.substring(3,4)+"%'";

java.sql.ResultSet rStN =

statu.executeQuery(sqlKontak);

if (rStN.next()) {

nama =

rStN.getString("NAMA_KONTAK");

}

Object[] data = {no, nama,

tg, time, psn, sts};

tabSMSMasuk.addRow(data);

int adi =

this.tabelSmsMasukHariIni.getRowCount();

}

java.sql.ResultSet rSet2 =

stat.executeQuery(sql3);

while (rSet2.next()) {

jml_antri =

rSet2.getString("jml2");

this.labelAntriProses.setText(jml_antri);

this.labelSuksesProses.setText(String.value

Of(Integer.parseInt(jml_all) -

Integer.parseInt(jml_antri)));

} // Akhir while

} // Akhir try

catch (java.sql.SQLException e) {

tulis_proses(e.getMessage());

e.printStackTrace();

}

// Menutup Statement

} // Akhir try

catch (Exception e) {

System.out.println(e.getMessage()

+ " tampil_kirim");

}

}

private void tampilTabelSmsKeluar() {

int row =

tabSMSTerkirim.getRowCount();

for (int i = 0; i < row; i++) {

tabSMSTerkirim.removeRow(0);

}

getWaktu();

String tanggal_hari_ini = tanggal+"-

"+bulan+"-"+tahun;

String sql =

"SELECT COUNT(id_KELUAR) as

jml FROM SMS_KELUAR WHERE

tanggal_KELUAR = '"+tanggal_hari_ini+"'";

Page 188: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

String sql2 = "SELECT * FROM

SMS_keluar WHERE tanggal_KELUAR =

'"+tanggal_hari_ini+"' ORDER BY

TANGGAL_KELUAR DESC , JAM_KELUAR

DESC ";

String sql3 =

"SELECT COUNT(id_KELUAR) as

jml2 FROM SMS_keluar WHERE

status_KELUAR = 'WAIT' AND

TANGGAL_KELUAR =

'"+tanggal_hari_ini+"'";

String sql4 =

"SELECT COUNT(id_KELUAR) as

jml3 FROM SMS_keluar WHERE

status_KELUAR = 'SEND' AND

TANGGAL_KELUAR =

'"+tanggal_hari_ini+"'";

String sql5 =

"SELECT COUNT(id_KELUAR) as

jml4 FROM SMS_keluar WHERE

status_KELUAR = 'NO' AND

TANGGAL_KELUAR =

'"+tanggal_hari_ini+"'";

String jml_all = "";

String jml_antri = "";

try {

// SQL

java.sql.Statement stat =

koneksi.createStatement();

java.sql.Statement statu =

koneksi.createStatement();

try {

java.sql.ResultSet rSet =

stat.executeQuery(sql);

while (rSet.next()) {

jml_all =

rSet.getString("jml");

this.labelJumlahKeluar.setText(jml_all);

} // Akhir while

java.sql.ResultSet rSt =

stat.executeQuery(sql2);

while (rSt.next()) {

String no =

rSt.getString("NO_TELEPON_KELUAR");

String psn =

rSt.getString("ISI_PESAN_KELUAR");

String sts =

rSt.getString("STATUS_KELUAR");

String time =

rSt.getString("JAM_KELUAR");

String tg =

rSt.getString("TANGGAL_KELUAR");

String nama = "";

String sqlKontak = "SELECT *

FROM data_buku_telepon WHERE

nomor_telepon = '"+no+"'";

java.sql.ResultSet rStN =

statu.executeQuery(sqlKontak);

if (rStN.next()) {

nama =

rStN.getString("NAMA_KONTAK");

}

Object[] data = {no, nama,

tg, time, psn, sts};

tabSMSTerkirim.addRow(data);

int adi =

this.tabelSmsTerkirimHariIni.getRowCount()

;

}

java.sql.ResultSet rSet2 =

stat.executeQuery(sql3);

while (rSet2.next()) {

jml_antri =

rSet2.getString("jml2");

this.labelJumlahAntrianKeluar.setText(jml_a

ntri);

} // Akhir while

java.sql.ResultSet rSet3 =

stat.executeQuery(sql4);

while (rSet3.next()) {

String jml_suk =

rSet3.getString("jml3");

Page 189: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

this.labelSuksesTerkirim.setText(jml_suk);

} // Akhir while

java.sql.ResultSet rSet4 =

stat.executeQuery(sql5);

while (rSet4.next()) {

String jml_gal =

rSet4.getString("jml4");

this.labelGagalTerkirim.setText(jml_gal);

} // Akhir while

} // Akhir try

catch (java.sql.SQLException e) {

tulis_proses(e.getMessage());

e.printStackTrace();

}

// Menutup Statement

} // Akhir try

catch (Exception e) {

System.out.println(e.getMessage()

+ " tampil_kirim");

}

}

/**

* @param args the command line

arguments

*/

static pengaturan_Terminal setting =

new pengaturan_Terminal(true);

public static void main(String args[]) {

try {

javax.swing.UIManager.setLookAndFeel("co

m.stefankrause.xplookandfeel.XPLookAndFe

el");

} catch (Exception e) {

e.printStackTrace();

}

java.awt.EventQueue.invokeLater(new

Runnable() {

public void run() {

setting.tampilanGUI();

setting.setVisible(true);

}

});

}

public void periksaDataSmsMasuk() {

getWaktu();

String tanggal_hari_ini = tanggal+"-

"+bulan+"-"+tahun;

try {

if (koneksi.isClosed()) {

// System.out.println("koneksi

terima null");

} else {

try {

String sqljml = "SELECT

COUNT(id_masuk) as jmlnya FROM

SMS_MASUK WHERE tanggal_masuk =

'"+tanggal_hari_ini+"'";

java.sql.PreparedStatement

pStatement =

koneksi.prepareStatement(sqljml);

java.sql.ResultSet rs =

pStatement.executeQuery();

while (rs.next()) {

String jm2 =

rs.getString("jmlnya");

if

(jm2.equalsIgnoreCase(this.labelJumlahMas

uk.getText())) {

} else {

tampilTabelSmsMasuk();

}

}

rs.close();

} catch (java.sql.SQLException

ex) {

tulis_proses(ex.getMessage());

}

try {

String sqljml = "SELECT

COUNT(id_masuk) as jmlnya FROM

Page 190: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

SMS_MASUK WHERE status_masuk = 'ok'

AND tanggal_masuk =

'"+tanggal_hari_ini+"'";

java.sql.PreparedStatement

pStatement =

koneksi.prepareStatement(sqljml);

java.sql.ResultSet rs =

pStatement.executeQuery();

while (rs.next()) {

String jm2 =

rs.getString("jmlnya");

if

(jm2.equalsIgnoreCase(this.labelSuksesPros

es.getText())) {

} else {

tampilTabelSmsMasuk();

}

}

rs.close();

} catch (java.sql.SQLException

ex) {

tulis_proses(ex.getMessage());

}

try {

// Statement SQL

String sql ="Select * From

SMS_MASUK Where STATUS_MASUK =

'WAIT'";

java.sql.PreparedStatement

pStatement =

koneksi.prepareStatement(sql);

try {

java.sql.ResultSet rSet =

pStatement.executeQuery();

while (rSet.next()) {

// Mengambil data dari

tabel TERIMA

String dataId =

rSet.getString("ID_MASUK"); // ID Pesan

String dataNotlp =

rSet.getString("NO_TELEPON_MASUK"); //

Nomer Telepon Pengirim

String dataPesan =

rSet.getString("ISI_PESAN_MASUK"); // Isi

Pesan

new

prosesDatabaseSmsServer(koneksi).prosesT

abelMasuk(dataId, dataNotlp, dataPesan);

}

pStatement.close();

rSet.close();

} catch (Exception ie) {

}

} catch (Exception e) {

}

}

} catch (Exception ex1) {

}

}

String id_Sms_Kirim = "0";

public void periksaDataSmsKeluar() {

getWaktu();

String tanggal_hari_ini = tanggal+"-

"+bulan+"-"+tahun;

try {

if (koneksi.isClosed()) {

// System.out.println("koneksi

terima null");

} else {

try {

String sqljml = "SELECT

COUNT(id_KELUAR) as jmlnya FROM

SMS_KELUAR WHERE tanggal_KELUAR =

'"+tanggal_hari_ini+"'";

java.sql.PreparedStatement

pStatement =

koneksi.prepareStatement(sqljml);

java.sql.ResultSet rs =

pStatement.executeQuery();

while (rs.next()) {

String jm2 =

rs.getString("jmlnya");

Page 191: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

if

(jm2.equalsIgnoreCase(this.labelJumlahKelu

ar.getText())) {

} else {

tampilTabelSmsKeluar();

}

}

rs.close();

} catch (java.sql.SQLException

ex) {

tulis_proses(ex.getMessage());

}

try {

String sqljml = "SELECT

COUNT(id_KELUAR) as jmlnya FROM

SMS_KELUAR WHERE status_KELUAR =

'SEND' AND tanggal_KELUAR =

'"+tanggal_hari_ini+"'";

java.sql.PreparedStatement

pStatement =

koneksi.prepareStatement(sqljml);

java.sql.ResultSet rs =

pStatement.executeQuery();

while (rs.next()) {

String jm2 =

rs.getString("jmlnya");

if

(jm2.equalsIgnoreCase(this.labelSuksesTerk

irim.getText())) {

} else {

tampilTabelSmsKeluar();

}

}

rs.close();

} catch (java.sql.SQLException

ex) {

tulis_proses(ex.getMessage());

}

}

} catch (Exception ex1) {

}

}

public void periksaDataSiapKirim(){

try {

// Statement SQL

String sql =

"Select * From SMS_KELUAR

Where STATUS_KELUAR = 'WAIT'";

java.sql.PreparedStatement

pStatement =

koneksi.prepareStatement(sql);

System.out.println("sql="+sql);

try {

java.sql.ResultSet rSet =

pStatement.executeQuery();

while (rSet.next()) {

// Mengambil data dari tabel

TERIMA

String dataId =

rSet.getString("ID_KELUAR"); // ID Pesan

String dataNotlp =

rSet.getString("NO_TELEPON_KELUAR"); //

Nomer Telepon Pengirim

String dataPesan =

rSet.getString("ISI_PESAN_KELUAR"); // Isi

Pesan

id_Sms_Kirim = dataId;

prosesKirimSms(dataNotlp,

dataPesan);

}

pStatement.close();

rSet.close();

} catch (Exception ie) {

}

} catch (Exception e) {

}

}

public void prosesKirimSms(String notlp,

String pesan) {

new

prosesDatabaseSmsServer(koneksi).update

StatusData(id_Sms_Kirim, "PROCESS");

String nop = notlp;

Page 192: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

if (notlp.startsWith("0")) {

nop = notlp.replaceFirst("0", "62");

}

try {

String pesanPDUKirim =

SmitDev.SmsServer.formatPDU.PduKirimSm

s(nop.trim(), pesan.trim(), false);

// Proses Mengirim Pesan

SmitDev.SmsServer.Server.kirimAT("AT+C

MGS=" + (pesanPDUKirim.length() / 2) +

"\15", 500);

SmitDev.SmsServer.Server.kirimAT("00" +

pesanPDUKirim, 2500); // Kirim Pesan

Format PDU

SmitDev.SmsServer.Server.kirimAT("\032",

100); // Ctrl + Z

this.thKirim.suspend();

} catch (Exception e) {}

System.out.println("sql=SUKSES

KIRIM");

}

// Akhir Methode prosesKirimSms

//

***********************************

***********************************

// Class Untuk Selalu memanggil

methode ambilDataMasuk()

class ThreadPeriksaDataSmsMasuk

extends Thread {

public ThreadPeriksaDataSmsMasuk()

{

this.setDaemon(true);

}

public void run() {

while (true) {

periksaDataSmsMasuk();

periksaDataSmsKeluar();

try {

Thread.sleep(1000);

} catch (InterruptedException e)

{}

}

}

}

//

***********************************

***********************************

// Class Untuk Selalu memanggil

methode ambilDataKeluar()

class ThreadPeriksaDataSmsKeluar

extends Thread {

public ThreadPeriksaDataSmsKeluar()

{

this.setDaemon(true);

}

public void run() {

while (true) {

periksaDataSiapKirim();

try {

Thread.sleep(1500);

} catch (InterruptedException e)

{}

}

}

}

// Variables declaration - do not modify

private javax.swing.ButtonGroup

buttonGroup1;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel10;

private javax.swing.JLabel jLabel11;

private javax.swing.JLabel jLabel13;

private javax.swing.JLabel jLabel15;

private javax.swing.JLabel jLabel17;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel5;

private javax.swing.JLabel jLabel7;

private javax.swing.JLabel jLabel9;

Page 193: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

private javax.swing.JMenuBar

jMenuBar1;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel10;

private javax.swing.JPanel jPanel11;

private javax.swing.JPanel jPanel12;

private javax.swing.JPanel jPanel13;

private javax.swing.JPanel jPanel14;

private javax.swing.JPanel jPanel15;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JPanel jPanel9;

private javax.swing.JScrollPane

jScrollPane1;

private javax.swing.JScrollPane

jScrollPane2;

private javax.swing.JSeparator

jSeparator1;

private javax.swing.JSeparator

jSeparator3;

private javax.swing.JSeparator

jSeparator4;

private javax.swing.JLabel

labelAntriProses;

private javax.swing.JLabel

labelGagalTerkirim;

private javax.swing.JLabel

labelJumlahAntrianKeluar;

private javax.swing.JLabel

labelJumlahKeluar;

private javax.swing.JLabel

labelJumlahMasuk;

private javax.swing.JLabel

labelSuksesProses;

private javax.swing.JLabel

labelSuksesTerkirim;

private javax.swing.JMenu menuBerkas;

private javax.swing.JMenu

menuDatabase;

private javax.swing.JMenuItem

menuInputDataPajakPembayaran;

private javax.swing.JMenuItem

menuInputDataPelanggan;

private javax.swing.JMenu

menuSMSRequest;

private javax.swing.JMenu menuSystem;

private javax.swing.JPanel panelAtas;

private javax.swing.JPanel panelAwal;

private javax.swing.JPanel panelBawah;

private javax.swing.JPanel panelTengah;

private javax.swing.JMenuItem

subMenuAktivitasSystem;

private javax.swing.JMenuItem

subMenuBukuTelepon;

private javax.swing.JMenuItem

subMenuKeluar;

private javax.swing.JMenuItem

subMenuKirimSms;

private javax.swing.JMenuItem

subMenuKoneksi;

private javax.swing.JMenuItem

subMenuKonfigurasi;

private javax.swing.JMenuItem

subMenuPengaturanTerminal;

private javax.swing.JMenuItem

subMenuPutus;

private javax.swing.JMenuItem

subMenuSmsMasuk;

private javax.swing.JMenuItem

subMenuSmsTerkirim;

private javax.swing.JTable

tabelSmsMasukHariIni;

private javax.swing.JTable

tabelSmsTerkirimHariIni;

private javax.swing.JLabel waktuLokal;

}

public class jendelaBukuTelepon extends

javax.swing.JFrame {

java.awt.CardLayout cardTengah = new

java.awt.CardLayout();

java.awt.CardLayout cardTombol = new

java.awt.CardLayout();

Page 194: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

public

jendelaBukuTelepon(java.sql.Connection

koneksi) {

this.koneksi = koneksi;

initComponents();

awal();

}

java.sql.Connection koneksi = null;

String notlp ="";

String namaKontak ="";

String Alamat = "";

public

jendelaBukuTelepon(java.sql.Connection

koneksi, String notlp, String namaKontak,

String Alamat) {

this.notlp = notlp;

this.namaKontak = namaKontak;

this.Alamat = Alamat;

this.koneksi = koneksi;

initComponents();

awal();

tampilTabelBukuTelepon();

}

String temp = "";

public

jendelaBukuTelepon(java.sql.Connection

koneksi, String temp) {

this.koneksi = koneksi;

initComponents();

this.temp = temp;

tampilTabelBukuTelepon();

}

private void awal(){

this.dataNomorTelepon.setText(notlp);

this.dataNamaKontak.setText(namaKontak)

;

this.dataAlamat.setText(Alamat);

}

private void tampilTabelBukuTelepon(){

int row = tabBuku.getRowCount();

for (int i = 0; i < row; i++){

tabBuku.removeRow(0);

}

String sql = "SELECT * FROM

data_buku_telepon";

try{

java.sql.Statement stat =

koneksi.createStatement();

java.sql.ResultSet rSet =

stat.executeQuery(sql);

while(rSet.next()){

String no =

rSet.getString("nomor_telepon");

String nama =

rSet.getString("nama_kontak");

String alamat =

rSet.getString("alamat");

String[] data = {no, nama,

alamat};

this.tabBuku.addRow(data);

}

} catch(Exception e){}

}

javax.swing.table.DefaultTableModel

tabBuku = new

javax.swing.table.DefaultTableModel(

null, new String[] {"No. Telepon",

"Nama Kontak", "Alamat"}){

public boolean isCellEditable(int

iRows, int iCols) {

return false;

}};

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jPanel4 = new javax.swing.JPanel();

jScrollPane1 = new

javax.swing.JScrollPane();

jTable1 = new javax.swing.JTable();

jPanel13 = new javax.swing.JPanel();

jPanel14 = new javax.swing.JPanel();

jPanel15 = new javax.swing.JPanel();

jPanel16 = new javax.swing.JPanel();

Page 195: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel5 = new javax.swing.JPanel();

jPanel10 = new javax.swing.JPanel();

jPanel6 = new javax.swing.JPanel();

jLabel2 = new javax.swing.JLabel();

dataNomorTelepon = new

javax.swing.JTextField();

jPanel7 = new javax.swing.JPanel();

jLabel3 = new javax.swing.JLabel();

dataNamaKontak = new

javax.swing.JTextField();

jPanel8 = new javax.swing.JPanel();

jLabel4 = new javax.swing.JLabel();

dataAlamat = new

javax.swing.JTextField();

jPanel2 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jPanel3 = new javax.swing.JPanel();

jPanel11 = new javax.swing.JPanel();

jButton2 = new javax.swing.JButton();

jButton7 = new javax.swing.JButton();

jButton3 = new javax.swing.JButton();

jButton1 = new javax.swing.JButton();

jPanel12 = new javax.swing.JPanel();

jButton4 = new javax.swing.JButton();

jButton5 = new javax.swing.JButton();

jButton6 = new javax.swing.JButton();

jPanel9 = new javax.swing.JPanel();

jButton8 = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("Buku Telepon");

jPanel1.setLayout(new

java.awt.CardLayout());

jPanel1.setLayout(cardTengah);

jPanel4.setLayout(new

java.awt.BorderLayout());

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

jTable1.setModel(new

javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null},

{null, null, null, null},

{null, null, null, null},

{null, null, null, null}

},

new String [] {

"Title 1", "Title 2", "Title 3", "Title

4"

}

));

jTable1.setModel(tabBuku);

javax.swing.table.TableColumn colx =

this.jTable1.getColumn("No. Telepon");

colx.setWidth(100);

colx.setMinWidth(100);

colx.setMaxWidth(100);

colx = this.jTable1.getColumn("Nama

Kontak");

colx.setWidth(130);

colx.setMinWidth(130);

colx.setMaxWidth(130);

this.jTable1.sizeColumnsToFit(0);

jScrollPane1.setViewportView(jTable1);

jPanel4.add(jScrollPane1,

java.awt.BorderLayout.CENTER);

jPanel13.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.add(jPanel13,

java.awt.BorderLayout.NORTH);

jPanel14.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.add(jPanel14,

java.awt.BorderLayout.SOUTH);

jPanel15.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.add(jPanel15,

java.awt.BorderLayout.EAST);

Page 196: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel16.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.add(jPanel16,

java.awt.BorderLayout.WEST);

jPanel1.add(jPanel4, "panelTabel");

jPanel5.setLayout(new

java.awt.GridLayout(7, 0));

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

jPanel10.setBackground(new

java.awt.Color(255, 255, 255));

jPanel5.add(jPanel10);

jPanel6.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel6.setBackground(new

java.awt.Color(255, 255, 255));

jPanel6.setPreferredSize(new

java.awt.Dimension(121, 32));

jLabel2.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel2.setText("Nomor Telepon :");

jLabel2.setPreferredSize(new

java.awt.Dimension(100, 16));

jPanel6.add(jLabel2);

dataNomorTelepon.setDocument(SmitDev.S

msServer.saring_karakter.setAllOnlyDigit())

;

dataNomorTelepon.setPreferredSize(new

java.awt.Dimension(200, 22));

jPanel6.add(dataNomorTelepon);

jPanel5.add(jPanel6);

jPanel7.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

jLabel3.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel3.setText("Nama Kontak :");

jLabel3.setPreferredSize(new

java.awt.Dimension(100, 16));

jPanel7.add(jLabel3);

dataNamaKontak.setPreferredSize(new

java.awt.Dimension(200, 22));

jPanel7.add(dataNamaKontak);

jPanel5.add(jPanel7);

jPanel8.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jLabel4.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel4.setText("Alamat :");

jLabel4.setPreferredSize(new

java.awt.Dimension(100, 16));

jPanel8.add(jLabel4);

dataAlamat.setPreferredSize(new

java.awt.Dimension(200, 22));

jPanel8.add(dataAlamat);

jPanel5.add(jPanel8);

jPanel1.add(jPanel5, "panelData");

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

Page 197: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel2.setBackground(new

java.awt.Color(0, 0, 0));

jLabel1.setFont(new

java.awt.Font("Dialog", 1, 14));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("Buku Telepon");

jPanel2.add(jLabel1);

getContentPane().add(jPanel2,

java.awt.BorderLayout.NORTH);

jPanel3.setLayout(new

java.awt.CardLayout());

jPanel3.setLayout(cardTombol);

jPanel11.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 10));

jButton2.setText("Tambah Data

Baru");

jButton2.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton2ActionPerformed(evt);

}

});

jPanel11.add(jButton2);

jButton7.setText("Kirim SMS");

jButton7.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton7ActionPerformed(evt);

}

});

jPanel11.add(jButton7);

jButton3.setText("Hapus Data");

jButton3.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton3ActionPerformed(evt);

}

});

jPanel11.add(jButton3);

jButton1.setText("Tutup Jendela");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel11.add(jButton1);

jPanel3.add(jPanel11,

"tombolPanelTabel");

jPanel12.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 10));

jButton4.setText("Simpan Data");

jButton4.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton4ActionPerformed(evt);

}

});

Page 198: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel12.add(jButton4);

jButton5.setText("Batal");

jButton5.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton5ActionPerformed(evt);

}

});

jPanel12.add(jButton5);

jButton6.setText("Tutup Jendela");

jButton6.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton6ActionPerformed(evt);

}

});

jPanel12.add(jButton6);

jPanel3.add(jPanel12,

"tombolPanelData");

jPanel9.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jButton8.setText("Ambil Nomor

Telepon");

jButton8.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton8ActionPerformed(evt);

}

});

jPanel9.add(jButton8);

jPanel3.add(jPanel9, "cardAmbil");

getContentPane().add(jPanel3,

java.awt.BorderLayout.SOUTH);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-550)/2,

(screenSize.height-400)/2, 550, 400);

}

private void

jButton3ActionPerformed(java.awt.event.Act

ionEvent evt) {

int xrow =

this.jTable1.getSelectedRow();

if (xrow < 0) {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Silahkan pilih dulu data tabel

yang ingin dihapus !!");

} else {

String no =

tabBuku.getValueAt(xrow, 0).toString();

String nama =

tabBuku.getValueAt(xrow, 1).toString();

String alamat =

tabBuku.getValueAt(xrow, 2).toString();

int hapus =

javax.swing.JOptionPane.showConfirmDialog

(null, "No. Telepon : " +

no + "\nNama Kontak : " +

nama + "\nAlamat : " + alamat +

"\n\nAnda Ingin menghapus

data tersebut ?", "Konfirmasi Hapus Data",

javax.swing.JOptionPane.YES_NO_OPTION);

if (hapus == 0){

String sql = "DELETE FROM

data_buku_telepon WHERE nomor_telepon

= ?";

Page 199: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

try{

java.sql.PreparedStatement

stat = koneksi.prepareStatement(sql);

try{

stat.setString(1, no);

stat.executeUpdate();

tampilTabelBukuTelepon();

} catch

(java.sql.SQLException s){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", s.getMessage());

}

} catch (Exception se){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", se.getMessage());

}

}

}

}

private void

jButton8ActionPerformed(java.awt.event.Act

ionEvent evt) {

int xrow =

this.jTable1.getSelectedRow();

if (xrow < 0) {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Silahkan pilih dahulu nomor

telepon yang dituju !!");

} else {

String no =

tabBuku.getValueAt(xrow, 0).toString();

dispose();

jendelaKirimSms sms = new

jendelaKirimSms(koneksi, no, temp);

sms.setVisible(true);

}

}

private void

jButton7ActionPerformed(java.awt.event.Act

ionEvent evt) {

int xrow =

this.jTable1.getSelectedRow();

if (xrow < 0) {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Silahkan pilih dahulu nomor

telepon yang dituju !!");

} else {

String no =

tabBuku.getValueAt(xrow, 0).toString();

dispose();

jendelaKirimSms sms = new

jendelaKirimSms(koneksi, no, temp);

sms.setVisible(true);

}

}

private void

jButton2ActionPerformed(java.awt.event.Act

ionEvent evt) {

this.dataNomorTelepon.setText("");

this.dataNamaKontak.setText("");

this.dataAlamat.setText("");

cardTengah.show(jPanel1,

"panelData");

cardTombol.show(jPanel3,

"tombolPanelData");

}

private void

jButton5ActionPerformed(java.awt.event.Act

ionEvent evt) {

cardTengah.show(jPanel1,

"panelTabel");

cardTombol.show(jPanel3,

"tombolPanelTabel");

}

Page 200: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

}

private void

jButton6ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

}

private void

jButton4ActionPerformed(java.awt.event.Act

ionEvent evt) {

String no =

this.dataNomorTelepon.getText();

String nama =

this.dataNamaKontak.getText();

String alamat =

this.dataAlamat.getText();

String sql = "INSERT INTO

data_buku_telepon(nomor_telepon,

nama_kontak, alamat) VALUES(?,?,?)";

try{

java.sql.PreparedStatement stat =

koneksi.prepareStatement(sql);

try{

stat.setString(1, no);

stat.setString(2, nama);

stat.setString(3, alamat);

stat.executeUpdate();

tampilTabelBukuTelepon();

cardTengah.show(jPanel1,

"panelTabel");

cardTombol.show(jPanel3,

"tombolPanelTabel");

} catch (java.sql.SQLException s){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menyimpan Data Buku Telepon",

s.getMessage());

}

} catch (Exception se){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menyimpan Data Buku Telepon",

se.getMessage());

}

}

private javax.swing.JTextField

dataAlamat;

private javax.swing.JTextField

dataNamaKontak;

private javax.swing.JTextField

dataNomorTelepon;

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JButton jButton3;

private javax.swing.JButton jButton4;

private javax.swing.JButton jButton5;

private javax.swing.JButton jButton6;

private javax.swing.JButton jButton7;

private javax.swing.JButton jButton8;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JLabel jLabel4;

public javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel10;

private javax.swing.JPanel jPanel11;

private javax.swing.JPanel jPanel12;

private javax.swing.JPanel jPanel13;

private javax.swing.JPanel jPanel14;

private javax.swing.JPanel jPanel15;

private javax.swing.JPanel jPanel16;

private javax.swing.JPanel jPanel2;

public javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JPanel jPanel9;

private javax.swing.JScrollPane

jScrollPane1;

private javax.swing.JTable jTable1;

Page 201: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

}

public class jendelaKirimSms extends

javax.swing.JFrame {

java.sql.Connection koneksi = null;

public

jendelaKirimSms(java.sql.Connection

koneksi, String notlp, String pesan) {

this.koneksi = koneksi;

initComponents();

this.dataNoTlp.setText(notlp);

this.dataIsiPesan.setText(pesan);

this.dataIsiPesan.requestFocus();

}

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jPanel9 = new javax.swing.JPanel();

jPanel4 = new javax.swing.JPanel();

jLabel2 = new javax.swing.JLabel();

dataNoTlp = new

javax.swing.JTextField();

jButton4 = new javax.swing.JButton();

jPanel5 = new javax.swing.JPanel();

jScrollPane1 = new

javax.swing.JScrollPane();

dataIsiPesan = new

javax.swing.JTextArea();

jPanel7 = new javax.swing.JPanel();

jPanel10 = new javax.swing.JPanel();

jPanel11 = new javax.swing.JPanel();

jLabel3 = new javax.swing.JLabel();

sisaKarakter = new

javax.swing.JLabel();

jPanel8 = new javax.swing.JPanel();

jPanel2 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jPanel3 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

jButton3 = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("Kirim SMS");

jPanel1.setLayout(new

javax.swing.BoxLayout(jPanel1,

javax.swing.BoxLayout.Y_AXIS));

jPanel1.setBackground(new

java.awt.Color(255, 255, 255));

jPanel9.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel9);

jPanel4.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

jLabel2.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel2.setText("Nomor Telepon :");

jLabel2.setPreferredSize(new

java.awt.Dimension(100, 16));

jPanel4.add(jLabel2);

dataNoTlp.setDocument(SmitDev.SmsServe

r.saring_karakter.setAllOnlyDigit());

dataNoTlp.setPreferredSize(new

java.awt.Dimension(150, 22));

jPanel4.add(dataNoTlp);

jButton4.setText("Cari");

jButton4.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton4ActionPerformed(evt);

}

});

Page 202: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel4.add(jButton4);

jPanel1.add(jPanel4);

jPanel5.setLayout(new

java.awt.BorderLayout());

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

dataIsiPesan.setLineWrap(true);

dataIsiPesan.setRows(200);

dataIsiPesan.setWrapStyleWord(true);

dataIsiPesan.setPreferredSize(new

java.awt.Dimension(300, 3400));

dataIsiPesan.addFocusListener(new

java.awt.event.FocusAdapter() {

public void

focusGained(java.awt.event.FocusEvent evt)

{

dataIsiPesanFocusGained(evt);

}

});

dataIsiPesan.addKeyListener(new

java.awt.event.KeyAdapter() {

public void

keyReleased(java.awt.event.KeyEvent evt)

{

dataIsiPesanKeyReleased(evt);

}

});

jScrollPane1.setViewportView(dataIsiPesan)

;

jPanel5.add(jScrollPane1,

java.awt.BorderLayout.CENTER);

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

jPanel5.add(jPanel7,

java.awt.BorderLayout.EAST);

jPanel10.setBackground(new

java.awt.Color(255, 255, 255));

jPanel5.add(jPanel10,

java.awt.BorderLayout.WEST);

jPanel1.add(jPanel5);

jPanel11.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.R

IGHT));

jPanel11.setBackground(new

java.awt.Color(255, 255, 255));

jLabel3.setHorizontalAlignment(javax.swing.

SwingConstants.RIGHT);

jLabel3.setText("Sisa Karakter :");

jLabel3.setPreferredSize(new

java.awt.Dimension(100, 16));

jPanel11.add(jLabel3);

sisaKarakter.setText("160");

sisaKarakter.setPreferredSize(new

java.awt.Dimension(30, 16));

jPanel11.add(sisaKarakter);

jPanel1.add(jPanel11);

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel8);

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

jPanel2.setBackground(new

java.awt.Color(0, 0, 0));

jLabel1.setFont(new

java.awt.Font("Dialog", 1, 14));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("Kirim SMS");

jPanel2.add(jLabel1);

Page 203: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

getContentPane().add(jPanel2,

java.awt.BorderLayout.NORTH);

jPanel3.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT, 5, 10));

jButton1.setText("Kirim SMS");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel3.add(jButton1);

jButton2.setText("Hapus");

jButton2.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton2ActionPerformed(evt);

}

});

jPanel3.add(jButton2);

jButton3.setText("Tutup Jendela");

jButton3.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton3ActionPerformed(evt);

}

});

jPanel3.add(jButton3);

getContentPane().add(jPanel3,

java.awt.BorderLayout.SOUTH);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-400)/2,

(screenSize.height-300)/2, 400, 300);

}

private void

dataIsiPesanFocusGained(java.awt.event.Fo

cusEvent evt) {

hitungSisaKarakter();

}

private void

jButton2ActionPerformed(java.awt.event.Act

ionEvent evt) {

this.dataIsiPesan.setText("");

this.dataNoTlp.setText("");

}

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

String no_tlp = dataNoTlp.getText();

String pesan =

dataIsiPesan.getText();

boolean status = new

prosesDatabaseSmsServer(koneksi).inputDa

taTabelSmsKeluar(no_tlp, pesan);

if(status){

dispose();

}

}

private void hitungSisaKarakter(){

int nilai =

dataIsiPesan.getText().length();

int sisa = 160;

int kar = sisa - nilai;

if (kar <= 0) {

Page 204: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

dataIsiPesan.setText(dataIsiPesan.getText()

.substring(0, 160));

sisaKarakter.setText(String.valueOf(0));

} else {

sisaKarakter.setText(String.valueOf(kar));

}

}

private void

dataIsiPesanKeyReleased(java.awt.event.Ke

yEvent evt) {

hitungSisaKarakter();

}

private void

jButton4ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

String temp =

this.dataIsiPesan.getText();

jendelaBukuTelepon bk = new

jendelaBukuTelepon(koneksi, temp);

bk.cardTombol.show(bk.jPanel3,

"cardAmbil");

bk.setVisible(true);

}

private void

jButton3ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

}

private javax.swing.JTextArea

dataIsiPesan;

public javax.swing.JTextField dataNoTlp;

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JButton jButton3;

private javax.swing.JButton jButton4;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel10;

private javax.swing.JPanel jPanel11;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JPanel jPanel9;

private javax.swing.JScrollPane

jScrollPane1;

private javax.swing.JLabel sisaKarakter;

}

public class jendelaSmsKeluar extends

javax.swing.JFrame {

javax.swing.table.DefaultTableModel

tabSMSKeluar = new

javax.swing.table.DefaultTableModel(

null, new String[] {"id", "No.

Telepon", "Nama Kontak", "Tanggal", "Jam",

"Isi Pesan", "Status"}){

public boolean isCellEditable(int

iRows, int iCols) {

return false;}

};

java.sql.Connection koneksi;

public

jendelaSmsKeluar(java.sql.Connection

koneksi) {

this.koneksi = koneksi;

initComponents();

tampilDataTabel();

}

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jPanel6 = new javax.swing.JPanel();

jScrollPane1 = new

javax.swing.JScrollPane();

jTable1 = new javax.swing.JTable();

Page 205: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jPanel7 = new javax.swing.JPanel();

jPanel8 = new javax.swing.JPanel();

jPanel2 = new javax.swing.JPanel();

jPanel4 = new javax.swing.JPanel();

jPanel3 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jPanel5 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

jButton3 = new javax.swing.JButton();

jButton4 = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("SMS Keluar");

jPanel1.setLayout(new

java.awt.BorderLayout());

jPanel6.setLayout(new

java.awt.GridLayout(1, 0));

jPanel6.setBackground(new

java.awt.Color(255, 255, 255));

jScrollPane1.setBackground(new

java.awt.Color(255, 255, 255));

jTable1.setModel(new

javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null},

{null, null, null, null},

{null, null, null, null},

{null, null, null, null}

},

new String [] {

"Title 1", "Title 2", "Title 3", "Title

4"

}

));

jTable1.setModel(tabSMSKeluar);

javax.swing.table.TableColumn colx =

this.jTable1.getColumn("id");

colx.setWidth(0);

colx.setMinWidth(0);

colx.setMaxWidth(0);

colx = this.jTable1.getColumn("No.

Telepon");

colx.setWidth(80);

colx.setMinWidth(80);

colx.setMaxWidth(90);

colx =

this.jTable1.getColumn("Tanggal");

colx.setWidth(60);

colx.setMinWidth(60);

colx.setMaxWidth(60);

colx = this.jTable1.getColumn("Jam");

colx.setWidth(60);

colx.setMinWidth(60);

colx.setMaxWidth(60);

colx = this.jTable1.getColumn("Nama

Kontak");

colx.setWidth(80);

colx.setMinWidth(80);

colx.setMaxWidth(80);

colx =

this.jTable1.getColumn("Status");

colx.setWidth(40);

colx.setMinWidth(40);

colx.setMaxWidth(50);

this.jTable1.sizeColumnsToFit(0);

jScrollPane1.setViewportView(jTable1);

jPanel6.add(jScrollPane1);

jPanel1.add(jPanel6,

java.awt.BorderLayout.CENTER);

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel7,

java.awt.BorderLayout.NORTH);

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel8,

java.awt.BorderLayout.SOUTH);

Page 206: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

jPanel2.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel2,

java.awt.BorderLayout.WEST);

jPanel4.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel4,

java.awt.BorderLayout.EAST);

jPanel3.setBackground(new

java.awt.Color(0, 0, 0));

jLabel1.setFont(new

java.awt.Font("Tahoma", 1, 18));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("Data SMS Keluar");

jPanel3.add(jLabel1);

getContentPane().add(jPanel3,

java.awt.BorderLayout.NORTH);

jPanel5.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jButton1.setText("Teruskan Kirim

SMS");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel5.add(jButton1);

jButton2.setText("Hapus");

jButton2.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton2ActionPerformed(evt);

}

});

jPanel5.add(jButton2);

jButton3.setText("Hapus Semua");

jButton3.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton3ActionPerformed(evt);

}

});

jPanel5.add(jButton3);

jButton4.setText("Tutup Jendela");

jButton4.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton4ActionPerformed(evt);

}

});

jPanel5.add(jButton4);

getContentPane().add(jPanel5,

java.awt.BorderLayout.SOUTH);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-550)/2,

(screenSize.height-400)/2, 550, 400);

}

Page 207: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

private void

jButton3ActionPerformed(java.awt.event.Act

ionEvent evt) {

int hapus =

javax.swing.JOptionPane.showConfirmDialog

(null, "Anda Yakin Ingin Menghapus Semua

Data\nyang ada di database SMS Masuk

?\n\nPerhatian : Semua Data SMS Masuk

akan hilang", "Konfirmasi Hapus Data",

javax.swing.JOptionPane.YES_NO_OPTION);

if (hapus == 0){

String sql = "DELETE FROM

SMS_KELUAR";

try{

java.sql.PreparedStatement stat

= koneksi.prepareStatement(sql);

try{

stat.executeUpdate();

tampilDataTabel();

} catch (java.sql.SQLException

s){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", s.getMessage());

}

} catch (Exception se){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", se.getMessage());

}

}

}

private void

jButton2ActionPerformed(java.awt.event.Act

ionEvent evt) {

int xrow =

this.jTable1.getSelectedRow();

if (xrow < 0) {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Silahkan pilih dulu data tabel

yang ingin dihapus !!");

} else {

String id =

tabSMSKeluar.getValueAt(xrow,

0).toString();

String no =

tabSMSKeluar.getValueAt(xrow,

1).toString();

String tgl =

tabSMSKeluar.getValueAt(xrow,

3).toString();

String jam =

tabSMSKeluar.getValueAt(xrow,

4).toString();

int hapus =

javax.swing.JOptionPane.showConfirmDialog

(null, "No. Telepon : " +

no + "\nTanggal : " + tgl +

"\nJam : " + jam +

"\n\nAnda Ingin menghapus

data tersebut ?", "Konfirmasi Hapus Data",

javax.swing.JOptionPane.YES_NO_OPTION);

if (hapus == 0){

String sql = "DELETE FROM

SMS_KELUAR WHERE id_keluar = ?";

try{

java.sql.PreparedStatement

stat = koneksi.prepareStatement(sql);

try{

stat.setString(1, id);

stat.executeUpdate();

tampilDataTabel();

} catch

(java.sql.SQLException s){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", s.getMessage());

}

} catch (Exception se){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", se.getMessage());

Page 208: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

}

}

}

}

private void tampilDataTabel(){

int row =

tabSMSKeluar.getRowCount();

for (int i = 0; i < row; i++){

tabSMSKeluar.removeRow(0);

}

String sql = "SELECT * FROM

SMS_KELUAR ORDER BY TANGGAL_KELUAR

DESC , JAM_KELUAR DESC ";

try{

java.sql.Statement stat =

koneksi.createStatement();

java.sql.Statement statu =

koneksi.createStatement();

java.sql.ResultSet rSet =

stat.executeQuery(sql);

while(rSet.next()){

String id =

rSet.getString("ID_KELUAR");

String no =

rSet.getString("NO_TELEPON_KELUAR");

String psn =

rSet.getString("ISI_PESAN_KELUAR");

String sts =

rSet.getString("STATUS_KELUAR");

String time =

rSet.getString("JAM_KELUAR");

String tg =

rSet.getString("TANGGAL_KELUAR");

String nama = "";

String sqlKontak = "SELECT *

FROM data_buku_telepon WHERE

nomor_telepon = '"+no+"'";

java.sql.ResultSet rStN =

statu.executeQuery(sqlKontak);

if (rStN.next()) {

nama =

rStN.getString("NAMA_KONTAK");

}

Object[] data = {id, no, nama,

tg, time, psn, sts};

tabSMSKeluar.addRow(data);

}

} catch(Exception e){}

}

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

int xrow =

this.jTable1.getSelectedRow();

if (xrow < 0) {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Silahkan pilih dahulu Pesan

yang akan diteruskan !!");

} else {

String no =

tabSMSKeluar.getValueAt(xrow,

1).toString();

String pesan =

tabSMSKeluar.getValueAt(xrow,

5).toString();

dispose();

jendelaKirimSms sms = new

jendelaKirimSms(koneksi, no, pesan);

sms.setVisible(true);

}

}

private void

jButton4ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

}

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

Page 209: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

private javax.swing.JButton jButton3;

private javax.swing.JButton jButton4;

private javax.swing.JLabel jLabel1;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JScrollPane

jScrollPane1;

private javax.swing.JTable jTable1;

}

public class jendelaSmsMasuk extends

javax.swing.JFrame {

javax.swing.table.DefaultTableModel

tabSMSMasuk = new

javax.swing.table.DefaultTableModel(

null, new String[] {"id", "No.

Telepon", "Nama Kontak", "Tanggal", "Jam",

"Isi Pesan", "Status"}){

public boolean isCellEditable(int

iRows, int iCols) {

return false;}

};

java.sql.Connection koneksi;

public

jendelaSmsMasuk(java.sql.Connection

koneksi) {

this.koneksi = koneksi;

initComponents();

tampilDataTabel();

}

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jPanel4 = new javax.swing.JPanel();

jScrollPane1 = new

javax.swing.JScrollPane();

jTable1 = new javax.swing.JTable();

jPanel5 = new javax.swing.JPanel();

jPanel8 = new javax.swing.JPanel();

jPanel2 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jPanel3 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

jButton3 = new javax.swing.JButton();

jButton4 = new javax.swing.JButton();

jPanel6 = new javax.swing.JPanel();

jPanel7 = new javax.swing.JPanel();

setDefaultCloseOperation(javax.swing.Wind

owConstants.DISPOSE_ON_CLOSE);

setTitle("SMS Masuk");

jPanel1.setLayout(new

java.awt.BorderLayout());

jPanel1.setBackground(new

java.awt.Color(255, 255, 255));

jPanel4.setLayout(new

java.awt.GridLayout(1, 0));

jTable1.setModel(new

javax.swing.table.DefaultTableModel(

new Object [][] {

{null, null, null, null},

{null, null, null, null},

{null, null, null, null},

{null, null, null, null}

},

new String [] {

"Title 1", "Title 2", "Title 3", "Title

4"

}

));

jTable1.setModel(tabSMSMasuk);

javax.swing.table.TableColumn colx =

this.jTable1.getColumn("id");

colx.setWidth(0);

Page 210: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

colx.setMinWidth(0);

colx.setMaxWidth(0);

colx = this.jTable1.getColumn("No.

Telepon");

colx.setWidth(80);

colx.setMinWidth(80);

colx.setMaxWidth(90);

colx =

this.jTable1.getColumn("Tanggal");

colx.setWidth(60);

colx.setMinWidth(60);

colx.setMaxWidth(60);

colx = this.jTable1.getColumn("Jam");

colx.setWidth(60);

colx.setMinWidth(60);

colx.setMaxWidth(60);

colx = this.jTable1.getColumn("Nama

Kontak");

colx.setWidth(80);

colx.setMinWidth(80);

colx.setMaxWidth(80);

colx =

this.jTable1.getColumn("Status");

colx.setWidth(40);

colx.setMinWidth(40);

colx.setMaxWidth(50);

this.jTable1.sizeColumnsToFit(0);

jScrollPane1.setViewportView(jTable1);

jPanel4.add(jScrollPane1);

jPanel1.add(jPanel4,

java.awt.BorderLayout.CENTER);

jPanel5.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel5,

java.awt.BorderLayout.NORTH);

jPanel8.setBackground(new

java.awt.Color(255, 255, 255));

jPanel1.add(jPanel8,

java.awt.BorderLayout.SOUTH);

getContentPane().add(jPanel1,

java.awt.BorderLayout.CENTER);

jPanel2.setBackground(new

java.awt.Color(0, 0, 0));

jLabel1.setFont(new

java.awt.Font("Tahoma", 1, 18));

jLabel1.setForeground(java.awt.Color.green

);

jLabel1.setText("Data SMS Masuk");

jPanel2.add(jLabel1);

getContentPane().add(jPanel2,

java.awt.BorderLayout.NORTH);

jPanel3.setLayout(new

java.awt.FlowLayout(java.awt.FlowLayout.L

EFT));

jButton1.setText("Balas SMS");

jButton1.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton1ActionPerformed(evt);

}

});

jPanel3.add(jButton1);

jButton2.setText("Hapus");

jButton2.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton2ActionPerformed(evt);

}

});

jPanel3.add(jButton2);

Page 211: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

jButton3.setText("Hapus Semua");

jButton3.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton3ActionPerformed(evt);

}

});

jPanel3.add(jButton3);

jButton4.setText("Tutup Jendela");

jButton4.addActionListener(new

java.awt.event.ActionListener() {

public void

actionPerformed(java.awt.event.ActionEvent

evt) {

jButton4ActionPerformed(evt);

}

});

jPanel3.add(jButton4);

getContentPane().add(jPanel3,

java.awt.BorderLayout.SOUTH);

jPanel6.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel6,

java.awt.BorderLayout.EAST);

jPanel7.setBackground(new

java.awt.Color(255, 255, 255));

getContentPane().add(jPanel7,

java.awt.BorderLayout.WEST);

java.awt.Dimension screenSize =

java.awt.Toolkit.getDefaultToolkit().getScre

enSize();

setBounds((screenSize.width-550)/2,

(screenSize.height-400)/2, 550, 400);

}

// </editor-fold>

private void

jButton3ActionPerformed(java.awt.event.Act

ionEvent evt) {

int hapus =

javax.swing.JOptionPane.showConfirmDialog

(null, "Anda Yakin Ingin Menghapus Semua

Data\nyang ada di database SMS Masuk

?\n\nPerhatian : Semua Data SMS Masuk

akan hilang", "Konfirmasi Hapus Data",

javax.swing.JOptionPane.YES_NO_OPTION);

if (hapus == 0){

String sql = "DELETE FROM

SMS_MASUK";

try{

java.sql.PreparedStatement stat

= koneksi.prepareStatement(sql);

try{

stat.executeUpdate();

tampilDataTabel();

} catch (java.sql.SQLException

s){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", s.getMessage());

}

} catch (Exception se){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", se.getMessage());

}

}

}

private void

jButton4ActionPerformed(java.awt.event.Act

ionEvent evt) {

dispose();

}

Page 212: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

private void

jButton2ActionPerformed(java.awt.event.Act

ionEvent evt) {

int xrow =

this.jTable1.getSelectedRow();

if (xrow < 0) {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Silahkan pilih dulu data tabel

yang ingin dihapus !!");

} else {

String id =

tabSMSMasuk.getValueAt(xrow,

0).toString();

String no =

tabSMSMasuk.getValueAt(xrow,

1).toString();

String tgl =

tabSMSMasuk.getValueAt(xrow,

3).toString();

String jam =

tabSMSMasuk.getValueAt(xrow,

4).toString();

int hapus =

javax.swing.JOptionPane.showConfirmDialog

(null, "No. Telepon : " +

no + "\nTanggal : " + tgl +

"\nJam : " + jam +

"\n\nAnda Ingin menghapus

data tersebut ?", "Konfirmasi Hapus Data",

javax.swing.JOptionPane.YES_NO_OPTION);

if (hapus == 0){

String sql = "DELETE FROM

SMS_MASUK WHERE id_masuk = ?";

try{

java.sql.PreparedStatement

stat = koneksi.prepareStatement(sql);

try{

stat.setString(1, id);

stat.executeUpdate();

tampilDataTabel();

} catch

(java.sql.SQLException s){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", s.getMessage());

}

} catch (Exception se){

SmitDev.SmsServer.Server.proses_Gagal("

Gagal Menghapus Data", se.getMessage());

}

}

}

}

private void

jButton1ActionPerformed(java.awt.event.Act

ionEvent evt) {

int xrow =

this.jTable1.getSelectedRow();

if (xrow < 0) {

javax.swing.JOptionPane.showMessageDialo

g(null,

"Silahkan pilih dahulu Pesan

yang akan dibalas !!");

} else {

String no =

tabSMSMasuk.getValueAt(xrow,

1).toString();

String pesan = "\n--- Pesan Asli ----

\n" + tabSMSMasuk.getValueAt(xrow,

5).toString();

dispose();

jendelaKirimSms sms = new

jendelaKirimSms(koneksi, no, pesan);

sms.setVisible(true);

}

}

private void tampilDataTabel(){

Page 213: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

int row =

tabSMSMasuk.getRowCount();

for (int i = 0; i < row; i++){

tabSMSMasuk.removeRow(0);

}

String sql = "SELECT * FROM

SMS_MASUK ORDER BY TANGGAL_MASUK

DESC , JAM_MASUK DESC ";

try{

java.sql.Statement stat =

koneksi.createStatement();

java.sql.Statement statu =

koneksi.createStatement();

java.sql.ResultSet rSet =

stat.executeQuery(sql);

while(rSet.next()){

String id =

rSet.getString("ID_MASUK");

String no =

rSet.getString("NO_TELEPON_MASUK");

String psn =

rSet.getString("ISI_PESAN_MASUK");

String sts =

rSet.getString("STATUS_MASUK");

String time =

rSet.getString("JAM_MASUK");

String tg =

rSet.getString("TANGGAL_MASUK");

String nama = "";

String sqlKontak = "SELECT *

FROM data_buku_telepon WHERE

nomor_telepon = '"+no+"'";

java.sql.ResultSet rStN =

statu.executeQuery(sqlKontak);

if (rStN.next()) {

nama =

rStN.getString("NAMA_KONTAK");

}

Object[] data = {id, no, nama,

tg, time, psn, sts};

tabSMSMasuk.addRow(data);

}

} catch(Exception e){}

}

// Variables declaration - do not modify

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JButton jButton3;

private javax.swing.JButton jButton4;

private javax.swing.JLabel jLabel1;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel2;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JPanel jPanel7;

private javax.swing.JPanel jPanel8;

private javax.swing.JScrollPane

jScrollPane1;

private javax.swing.JTable jTable1;

// End of variables declaration

} import java.awt.event.*;

import javax.swing.*;

import java.sql.*;

import java.sql.Statement;

import javax.swing.table.DefaultTableModel;

public class peristiwa implements

ActionListener{

Connection cery;

Koneksi somay;

String SQLt;

Statement sawo;

String

skode,stanggal,sjam,speristiwa,sdeskripsi,ss

tatus;

public JLabel

lblkode,lbltanggal,lbljam,lblperistiwa,lbldesk

ripsi,lblstatus;

Page 214: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

public JTextField

txtkode,txttanggal,txtjam,txtperistiwa,txtde

skripsi,txtstatus;

public JButton

btnNew,btnSave,btnDelete,btnUpdate,btnEx

it,btnCari;

String[]judul={"No","kode","tanggal","jam",

"peristiwa","deskripsi","status"};

DefaultTableModel

modelnya=new

DefaultTableModel(null,judul);

JTable tabelnya=new JTable();

JScrollPane scrollnya=new

JScrollPane();

JOptionPane jpane=new

JOptionPane();

//---------------------------------------

--------------------

public peristiwa(){

tabelnya.setModel(modelnya);

scrollnya.getViewport().add(tabelnya);

tabelnya.setEnabled(true);

scrollnya.setBounds(10,350,520,300);

lblkode=new JLabel("kode:");

lblkode.setLocation(10,10);

lblkode.setSize(lblkode.getPreferredSize());

txtkode=new JTextField(20);

txtkode.setLocation(10,25);

txtkode.setSize(txtkode.getPreferredSize());

lbltanggal=new

JLabel("tanggal:");

lbltanggal.setLocation(10,45);

lbltanggal.setSize(lbltanggal.getPreferredSiz

e());

txttanggal=new JTextField(20);

txttanggal.setLocation(10,60);

txttanggal.setSize(txttanggal.getPreferredSi

ze());

lbljam=new JLabel("jam:");

lbljam.setLocation(10,80);

lbljam.setSize(lbljam.getPreferredSize());

txtjam=new JTextField(20);

txtjam.setLocation(10,95);

txtjam.setSize(txtjam.getPreferredSize());

lblperistiwa=new

JLabel("peristiwa:");

lblperistiwa.setLocation(10,115);

lblperistiwa.setSize(lblperistiwa.getPreferred

Size());

txtperistiwa=new

JTextField(20);

txtperistiwa.setLocation(10,130);

txtperistiwa.setSize(txtperistiwa.getPreferre

dSize());

lbldeskripsi=new

JLabel("deskripsi:");

lbldeskripsi.setLocation(10,150);

lbldeskripsi.setSize(lbldeskripsi.getPreferred

Size());

txtdeskripsi=new

JTextField(20);

txtdeskripsi.setLocation(10,165);

txtdeskripsi.setSize(txtdeskripsi.getPreferre

dSize());

Page 215: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

lblstatus=new JLabel("status:");

lblstatus.setLocation(10,185);

lblstatus.setSize(lblstatus.getPreferredSize()

);

txtstatus=new JTextField(20);

txtstatus.setLocation(10,200);

txtstatus.setSize(txtstatus.getPreferredSize(

));

btnNew=new JButton("New");

btnNew.setLocation(10,300);

btnNew.setSize(btnNew.getPreferredSize());

btnNew.addActionListener(this);

btnNew.setMnemonic('e');

btnSave=new JButton("Save");

btnSave.setLocation(70,300);

btnSave.setSize(btnSave.getPreferredSize()

);

btnSave.addActionListener(this);

btnSave.setMnemonic('a');

btnDelete=new JButton("Del");

btnDelete.setLocation(135,300);

btnDelete.setSize(btnDelete.getPreferredSiz

e());

btnDelete.addActionListener(this);

btnDelete.setMnemonic('I');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnExit=new JButton("Exit");

btnExit.setLocation(310,300);

btnExit.setSize(

btnExit.getPreferredSize());

btnExit.addActionListener(this);

btnExit.setMnemonic('t');

btnCari=new JButton("Cari");

btnCari.setLocation(250,300);

btnCari.setSize(

btnCari.getPreferredSize());

btnCari.addActionListener(this);

btnCari.setMnemonic('C');

}

//------------------------------------

-----------------------

public void FrmPeristiwa(){

JFrame.setDefaultLookAndFeelDecorated(tru

e);

JFrame frame=new

JFrame("Data Siswa");

frame.setLayout(null);

frame.setDefaultCloseOperation(JFrame.EXI

T_ON_CLOSE);

frame.getContentPane().add(lblkode);

Page 216: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

frame.getContentPane().add(txtkode);

frame.getContentPane().add(lbltanggal);

frame.getContentPane().add(txttanggal);

frame.getContentPane().add(lbljam);

frame.getContentPane().add(txtjam);

frame.getContentPane().add(lblperistiwa);

frame.getContentPane().add(txtperistiwa);

frame.getContentPane().add(lbldeskripsi);

frame.getContentPane().add(txtdeskripsi);

frame.getContentPane().add(lblstatus);

frame.getContentPane().add(txtstatus);

frame.getContentPane().add(btnNew);

frame.getContentPane().add(btnSave);

frame.getContentPane().add(btnDelete);

frame.getContentPane().add(btnUpdate);

frame.getContentPane().add(btnExit);

frame.getContentPane().add(btnCari);

frame.setBounds(0, 0,

550, 700);

frame.setLocationRelativeTo(null);

frame.getContentPane().add(scrollnya);

try{somay=new

Koneksi();}

catch(Exception e){

JOptionPane.showMessageDialog(null,

"Terjadi Kesalahan, Mungkin Databasenya

Belum Konek!!!");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

lihatdata();

frame.setVisible(true);

}

//------------------------------------

-----------------------

public void

actionPerformed(ActionEvent event){

JButton

btn=(JButton)event.getSource();

if(btn==btnSave){

Simpan();

}

else if(btn==btnNew){

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

}

else if(btn==btnDelete){

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " + "Mengakhiri

Aplikasi Ini???","KOnfirmasi",

Page 217: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

Hapus();

}

}

else if(btn==btnUpdate){

Ubah();

}

else if(btn==btnExit){

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " +

"Mengakhiri Aplikasi

Ini???","KOnfirmasi",

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

System.exit(0);

}

}

else if(btn==btnCari){

Cari();

}

}

//-=

void Simpan(){

skode=txtkode.getText();

stanggal=txttanggal.getText();

sjam=txtjam.getText();

speristiwa=txtperistiwa.getText();

sdeskripsi=txtdeskripsi.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="insert into

tbperistiwa

values('"+skode+"','"+stanggal+"','"+sjam

+"','"+speristiwa+"','"+sdeskripsi+"','"+ssta

tus+"')";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Simpan");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA

SUKSES DITAMBAHKAN");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//------------------------------------

-----------------------

Page 218: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

void Hapus(){

skode=txtkode.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="delete from

tbperistiwa where kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Hapus");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA

SUKSES DIHAPUS");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//----------------------------------

-------------------------

void Ubah(){

skode=txtkode.getText();

stanggal=txttanggal.getText();

sjam=txtjam.getText();

speristiwa=txtperistiwa.getText();

sdeskripsi=txtdeskripsi.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Update tbperistiwa

set

tanggal='"+stanggal+"',jam='"+sjam+"',per

istiwa='"+speristiwa+"',deskripsi='"+sdeskri

psi+"',status='"+sstatus+"' where

kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+"Sukses Di Ubah");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA SUKSES

DIUBAH");

System.out.println("===============

=============");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,belum konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

Page 219: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

lihatdata();

}

//-----------------

--------------------------------------

void Cari(){

skode=txtkode.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Select * from tbperistiwa where

kode='"+skode+"'";

ResultSet cari=sawo.executeQuery(SQLt);

if(cari.next()){

String a=cari.getString("kode");

String aa=cari.getString("tanggal");

String aaa=cari.getString("jam");

String aaaa=cari.getString("peristiwa");

String aaaaa=cari.getString("deskripsi");

String sstatus=cari.getString("status");

System.out.println("Data detail dengan

kode="+a);

System.out.println("tanggal="+aa);

System.out.println("jam="+aaa);

System.out.println("peristiwa="+aaaa);

System.out.println("deskripsi="+aaaaa);

System.out.println("status="+sstatus);

txtkode.setText(a);

txttanggal.setText(aa);

txtjam.setText(aaa);

txtperistiwa.setText(aaaa);

txtdeskripsi.setText(aaaaa);

txtstatus.setText(sstatus);

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+

skode+"Sukses

Di Cari!!!");

txtkode.setEditable(false);

txttanggal.requestFocus();

System.out.println("Data anda

kode="+skode+"sukses di cari!!!");

}

else{

JOptionPane.showMessageDialog(null,"Data

tidak Ditemukan");

}

System.out.println("===============

===========================

==============");

}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

Page 220: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

System.out.println("Terjadi

Kesalahan,mungkin database atau tabelnya

belum ada");}

}

//-----------------

--------------------------------

public static void

main(String[]args){

javax.swing.SwingUtilities.invokeLater(new

Runnable(){

public void run(){

peristiwa app=new peristiwa();

app.FrmPeristiwa();

}

});

}

//-----------------

-------------------------------

void Bersih(){

txtkode.setText("");

txttanggal.setText("");

txtjam.setText("");

txtperistiwa.setText("");

txtdeskripsi.setText("");

txtstatus.setText("");

txtkode.requestFocus();

}

//-----------------

------------------------------

void lihatdata(){

try{

hapustabel();

cery=somay.bakso();

sawo=cery.createStatement();

SQLt="SELECT * FROM `tbperistiwa`";

ResultSet cari=sawo.executeQuery(SQLt);

while(cari.next()){

String

sskode=cari.getString("kode");

String

sstanggal=cari.getString("tanggal");

String

ssjam=cari.getString("jam");

String

ssperistiwa=cari.getString("peristiwa");

String

ssdeskripsi=cari.getString("deskripsi");

String

ssstatus=cari.getString("status");

String[]data={"",

sskode,sstanggal,ssjam,ssperistiwa,ssdeskri

psi,ssstatus};

modelnya.addRow(data);

//

System.out.println(a+"\t"+aa+"\t"+aaa+"\t

"+aaaa+"\t"+aaaaa\t"+sstatus\t"+spasswor

d\t"+sstatus);

System.out.println("----------------

--------------------------");

resetNo();

}

Page 221: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

sawo.close();

cery.close();

}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek lihat data");

System.out.println("Terjadi

kesalahanAA,mungkin database atau

tabelnya belum ada");}

}

//------------------------------------

-----------------------

void resetNo(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

String

Nomor=String.valueOf(i+1);

modelnya.setValueAt(Nomor,i,0);

}

}

//-------------------------------------

----------------------

void hapustabel(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

modelnya.removeRow(0);

Bersih();

}

}

//-------------------------------------

----------------------

}

import java.io.IOException;

import java.net.InetAddress;

import java.net.UnknownHostException;

public class ping {

public String myping(String host ) {

Page 222: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

int timeout=3000;

String result="";

try {if

(InetAddress.getByName(host).isReachable(

timeout)) {result="Aktif";} else

{result="Tidak Aktif";}}

catch (UnknownHostException ex) {

result="Nomor Salah";

} catch(IOException ex) {result="Nomor

Salah";}

return result;

}

} import java.awt.event.*;

import javax.swing.*;

import java.sql.*;

import java.sql.Statement;

import javax.swing.table.DefaultTableModel;

public class smskeluar implements

ActionListener{

Connection cery;

Koneksi somay;

String SQLt;

Statement sawo;

String

skode,stanggal,sjam,suntuk,spesan,sstatus;

public JLabel

lblkode,lbltanggal,lbljam,lbluntuk,lblpesan,lb

lstatus;

public JTextField

txtkode,txttanggal,txtjam,txtuntuk,txtpesan

,txtstatus;

public JButton

btnNew,btnSave,btnDelete,btnUpdate,btnEx

it,btnCari;

String[]judul={"No","kode","tanggal","jam",

"untuk","pesan","status"};

DefaultTableModel

modelnya=new

DefaultTableModel(null,judul);

JTable tabelnya=new JTable();

JScrollPane scrollnya=new

JScrollPane();

JOptionPane jpane=new

JOptionPane();

//---------------------------------------

--------------------

public smskeluar(){

tabelnya.setModel(modelnya);

scrollnya.getViewport().add(tabelnya);

tabelnya.setEnabled(true);

scrollnya.setBounds(10,350,520,300);

lblkode=new JLabel("kode:");

lblkode.setLocation(10,10);

lblkode.setSize(lblkode.getPreferredSize());

txtkode=new JTextField(20);

txtkode.setLocation(10,25);

txtkode.setSize(txtkode.getPreferredSize());

lbltanggal=new

JLabel("tanggal:");

lbltanggal.setLocation(10,45);

lbltanggal.setSize(lbltanggal.getPreferredSiz

e());

txttanggal=new JTextField(20);

txttanggal.setLocation(10,60);

txttanggal.setSize(txttanggal.getPreferredSi

ze());

lbljam=new JLabel("jam:");

lbljam.setLocation(10,80);

lbljam.setSize(lbljam.getPreferredSize());

txtjam=new JTextField(20);

txtjam.setLocation(10,95);

txtjam.setSize(txtjam.getPreferredSize());

Page 223: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

lbluntuk=new JLabel("untuk:");

lbluntuk.setLocation(10,115);

lbluntuk.setSize(lbluntuk.getPreferredSize())

;

txtuntuk=new JTextField(20);

txtuntuk.setLocation(10,130);

txtuntuk.setSize(txtuntuk.getPreferredSize()

);

lblpesan=new JLabel("pesan:");

lblpesan.setLocation(10,150);

lblpesan.setSize(lblpesan.getPreferredSize()

);

txtpesan=new JTextField(20);

txtpesan.setLocation(10,165);

txtpesan.setSize(txtpesan.getPreferredSize(

));

lblstatus=new JLabel("status:");

lblstatus.setLocation(10,185);

lblstatus.setSize(lblstatus.getPreferredSize()

);

txtstatus=new JTextField(20);

txtstatus.setLocation(10,200);

txtstatus.setSize(txtstatus.getPreferredSize(

));

btnNew=new JButton("New");

btnNew.setLocation(10,300);

btnNew.setSize(btnNew.getPreferredSize());

btnNew.addActionListener(this);

btnNew.setMnemonic('e');

btnSave=new JButton("Save");

btnSave.setLocation(70,300);

btnSave.setSize(btnSave.getPreferredSize()

);

btnSave.addActionListener(this);

btnSave.setMnemonic('a');

btnDelete=new JButton("Del");

btnDelete.setLocation(135,300);

btnDelete.setSize(btnDelete.getPreferredSiz

e());

btnDelete.addActionListener(this);

btnDelete.setMnemonic('I');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnExit=new JButton("Exit");

btnExit.setLocation(310,300);

btnExit.setSize(

btnExit.getPreferredSize());

btnExit.addActionListener(this);

btnExit.setMnemonic('t');

Page 224: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

btnCari=new JButton("Cari");

btnCari.setLocation(250,300);

btnCari.setSize(

btnCari.getPreferredSize());

btnCari.addActionListener(this);

btnCari.setMnemonic('C');

}

//------------------------------------

-----------------------

public void lp2maray(){

JFrame.setDefaultLookAndFeelDecorated(tru

e);

JFrame frame=new

JFrame("Data Siswa");

frame.setLayout(null);

frame.setDefaultCloseOperation(JFrame.EXI

T_ON_CLOSE);

frame.getContentPane().add(lblkode);

frame.getContentPane().add(txtkode);

frame.getContentPane().add(lbltanggal);

frame.getContentPane().add(txttanggal);

frame.getContentPane().add(lbljam);

frame.getContentPane().add(txtjam);

frame.getContentPane().add(lbluntuk);

frame.getContentPane().add(txtuntuk);

frame.getContentPane().add(lblpesan);

frame.getContentPane().add(txtpesan);

frame.getContentPane().add(lblstatus);

frame.getContentPane().add(txtstatus);

frame.getContentPane().add(btnNew);

frame.getContentPane().add(btnSave);

frame.getContentPane().add(btnDelete);

frame.getContentPane().add(btnUpdate);

frame.getContentPane().add(btnExit);

frame.getContentPane().add(btnCari);

frame.setBounds(0, 0,

550, 700);

frame.setLocationRelativeTo(null);

frame.getContentPane().add(scrollnya);

try{somay=new

Koneksi();}

catch(Exception e){

JOptionPane.showMessageDialog(null,

"Terjadi Kesalahan, Mungkin Databasenya

Belum Konek!!!");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

lihatdata();

frame.setVisible(true);

}

Page 225: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

//------------------------------------

-----------------------

public void

actionPerformed(ActionEvent event){

JButton

btn=(JButton)event.getSource();

if(btn==btnSave){

Simpan();

}

else if(btn==btnNew){

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

}

else if(btn==btnDelete){

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " + "Mengakhiri

Aplikasi Ini???","KOnfirmasi",

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

Hapus();

}

}

else if(btn==btnUpdate){

Ubah();

}

else if(btn==btnExit){

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " +

"Mengakhiri Aplikasi

Ini???","KOnfirmasi",

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

System.exit(0);

}

}

else if(btn==btnCari){

Cari();

}

}

//-=

void Simpan(){

skode=txtkode.getText();

stanggal=txttanggal.getText();

sjam=txtjam.getText();

suntuk=txtuntuk.getText();

spesan=txtpesan.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="insert into

tbsmskeluar

values('"+skode+"','"+stanggal+"','"+sjam

+"','"+suntuk+"','"+spesan+"','"+sstatus+"'

)";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Simpan");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

Page 226: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

System.out.println("DATA

SUKSES DITAMBAHKAN");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//------------------------------------

-----------------------

void Hapus(){

skode=txtkode.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="delete from

tbsmskeluar where kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Hapus");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA

SUKSES DIHAPUS");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//----------------------------------

-------------------------

void Ubah(){

skode=txtkode.getText();

stanggal=txttanggal.getText();

sjam=txtjam.getText();

suntuk=txtuntuk.getText();

spesan=txtpesan.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Update

tbsmskeluar set

tanggal='"+stanggal+"',jam='"+sjam+"',unt

uk='"+suntuk+"',pesan='"+spesan+"',statu

s='"+sstatus+"' where kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+"Sukses Di Ubah");

Bersih();

Page 227: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA SUKSES

DIUBAH");

System.out.println("===============

=============");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,belum konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

lihatdata();

}

//-----------------

--------------------------------------

void Cari(){

skode=txtkode.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Select * from tbsmskeluar where

kode='"+skode+"'";

ResultSet cari=sawo.executeQuery(SQLt);

if(cari.next()){

String skode=cari.getString("kode");

String stanggal=cari.getString("tanggal");

String sjam=cari.getString("jam");

String suntuk=cari.getString("untuk");

String spesan=cari.getString("pesan");

String sstatus=cari.getString("status");

System.out.println("Data detail dengan

kode="+skode);

System.out.println("tanggal="+stanggal);

System.out.println("jam="+sjam);

System.out.println("untuk="+ suntuk);

System.out.println("pesan="+spesan);

System.out.println("status="+sstatus);

txtkode.setText(skode);

txttanggal.setText(stanggal);

txtjam.setText(sjam);

txtuntuk.setText(suntuk);

txtpesan.setText(spesan);

txtstatus.setText(sstatus);

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+

skode+"Sukses

Di Cari!!!");

txtkode.setEditable(false);

txttanggal.requestFocus();

Page 228: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

System.out.println("Data anda

kode="+skode+"sukses di cari!!!");

}

else{

JOptionPane.showMessageDialog(null,"Data

tidak Ditemukan");

}

System.out.println("===============

===========================

==============");

}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

Kesalahan,mungkin database atau tabelnya

belum ada");}

}

//-----------------

--------------------------------

public static void

main(String[]args){

javax.swing.SwingUtilities.invokeLater(new

Runnable(){

public void run(){

smskeluar app=new smskeluar();

app.lp2maray();

}

});

}

//-----------------

-------------------------------

void Bersih(){

txtkode.setText("");

txttanggal.setText("");

txtjam.setText("");

txtuntuk.setText("");

txtpesan.setText("");

txtstatus.setText("");

txtkode.requestFocus();

}

//-----------------

------------------------------

void lihatdata(){

try{

hapustabel();

cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Select * from tbsmskeluar";

ResultSet

cari=sawo.executeQuery(SQLt);

while(cari.next()){

String

sskode=cari.getString("kode");

String

sstanggal=cari.getString("tanggal");

String

ssjam=cari.getString("jam");

String

ssuntuk=cari.getString("untuk");

String

sspesan=cari.getString("pesan");

String

ssstatus=cari.getString("status");

Page 229: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

String[]data={"",sskode,sstanggal,ssjam,ss

untuk,sspesan,ssstatus};

modelnya.addRow(data);

//

System.out.println(a+"\t"+aa+"\t"+aaa+"\t

"+aaaa+"\t"+aaaaa\t"+sstatus\t"+spasswor

d\t"+sstatus);

System.out.println("----------------

--------------------------");

resetNo();

}

sawo.close();

cery.close();

}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek lihat data");

System.out.println("Terjadi

kesalahanAA,mungkin database atau

tabelnya belum ada");}

}

//------------------------------------

-----------------------

void resetNo(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

String

Nomor=String.valueOf(i+1);

modelnya.setValueAt(Nomor,i,0);

}

}

//-------------------------------------

----------------------

void hapustabel(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

modelnya.removeRow(0);

Bersih();

}

}

//-------------------------------------

----------------------

}

import java.awt.event.*;

import javax.swing.*;

import java.sql.*;

import java.sql.Statement;

import javax.swing.table.DefaultTableModel;

Page 230: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

public class smsmasuk implements

ActionListener{

Connection cery;

Koneksi somay;

String SQLt;

Statement sawo;

String

skode,stanggal,sjam,sdari,spesan,sstatus;

public JLabel

lblkode,lbltanggal,lbljam,lbldari,lblpesan,lbls

tatus;

public JTextField

txtkode,txttanggal,txtjam,txtdari,txtpesan,t

xtstatus;

public JButton

btnNew,btnSave,btnDelete,btnUpdate,btnEx

it,btnCari;

String[]judul={"No","kode","tanggal","jam",

"dari","pesan","status"};

DefaultTableModel

modelnya=new

DefaultTableModel(null,judul);

JTable tabelnya=new JTable();

JScrollPane scrollnya=new

JScrollPane();

JOptionPane jpane=new

JOptionPane();

//---------------------------------------

--------------------

public smsmasuk(){

tabelnya.setModel(modelnya);

scrollnya.getViewport().add(tabelnya);

tabelnya.setEnabled(true);

scrollnya.setBounds(10,350,520,300);

lblkode=new JLabel("kode:");

lblkode.setLocation(10,10);

lblkode.setSize(lblkode.getPreferredSize());

txtkode=new JTextField(20);

txtkode.setLocation(10,25);

txtkode.setSize(txtkode.getPreferredSize());

lbltanggal=new

JLabel("tanggal:");

lbltanggal.setLocation(10,45);

lbltanggal.setSize(lbltanggal.getPreferredSiz

e());

txttanggal=new JTextField(20);

txttanggal.setLocation(10,60);

txttanggal.setSize(txttanggal.getPreferredSi

ze());

lbljam=new JLabel("jam:");

lbljam.setLocation(10,80);

lbljam.setSize(lbljam.getPreferredSize());

txtjam=new JTextField(20);

txtjam.setLocation(10,95);

txtjam.setSize(txtjam.getPreferredSize());

lbldari=new JLabel("dari:");

lbldari.setLocation(10,115);

lbldari.setSize(lbldari.getPreferredSize());

txtdari=new JTextField(20);

txtdari.setLocation(10,130);

txtdari.setSize(txtdari.getPreferredSize());

lblpesan=new JLabel("pesan:");

lblpesan.setLocation(10,150);

lblpesan.setSize(lblpesan.getPreferredSize()

);

txtpesan=new JTextField(20);

txtpesan.setLocation(10,165);

Page 231: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

txtpesan.setSize(txtpesan.getPreferredSize(

));

lblstatus=new JLabel("status:");

lblstatus.setLocation(10,185);

lblstatus.setSize(lblstatus.getPreferredSize()

);

txtstatus=new JTextField(20);

txtstatus.setLocation(10,200);

txtstatus.setSize(txtstatus.getPreferredSize(

));

btnNew=new JButton("New");

btnNew.setLocation(10,300);

btnNew.setSize(btnNew.getPreferredSize());

btnNew.addActionListener(this);

btnNew.setMnemonic('e');

btnSave=new JButton("Save");

btnSave.setLocation(70,300);

btnSave.setSize(btnSave.getPreferredSize()

);

btnSave.addActionListener(this);

btnSave.setMnemonic('a');

btnDelete=new JButton("Del");

btnDelete.setLocation(135,300);

btnDelete.setSize(btnDelete.getPreferredSiz

e());

btnDelete.addActionListener(this);

btnDelete.setMnemonic('I');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnUpdate=new JButton("Upd");

btnUpdate.setLocation(190,300);

btnUpdate.setSize(

btnUpdate.getPreferredSize());

btnUpdate.addActionListener(this);

btnUpdate.setMnemonic('U');

btnExit=new JButton("Exit");

btnExit.setLocation(310,300);

btnExit.setSize(

btnExit.getPreferredSize());

btnExit.addActionListener(this);

btnExit.setMnemonic('t');

btnCari=new JButton("Cari");

btnCari.setLocation(250,300);

btnCari.setSize(

btnCari.getPreferredSize());

btnCari.addActionListener(this);

btnCari.setMnemonic('C');

}

//------------------------------------

-----------------------

public void lp2maray(){

JFrame.setDefaultLookAndFeelDecorated(tru

e);

JFrame frame=new

JFrame("Data Siswa");

frame.setLayout(null);

frame.setDefaultCloseOperation(JFrame.EXI

T_ON_CLOSE);

Page 232: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

frame.getContentPane().add(lblkode);

frame.getContentPane().add(txtkode);

frame.getContentPane().add(lbltanggal);

frame.getContentPane().add(txttanggal);

frame.getContentPane().add(lbljam);

frame.getContentPane().add(txtjam);

frame.getContentPane().add(lbldari);

frame.getContentPane().add(txtdari);

frame.getContentPane().add(lblpesan);

frame.getContentPane().add(txtpesan);

frame.getContentPane().add(lblstatus);

frame.getContentPane().add(txtstatus);

frame.getContentPane().add(btnNew);

frame.getContentPane().add(btnSave);

frame.getContentPane().add(btnDelete);

frame.getContentPane().add(btnUpdate);

frame.getContentPane().add(btnExit);

frame.getContentPane().add(btnCari);

frame.setBounds(0, 0,

550, 700);

frame.setLocationRelativeTo(null);

frame.getContentPane().add(scrollnya);

try{somay=new

Koneksi();}

catch(Exception e){

JOptionPane.showMessageDialog(null,

"Terjadi Kesalahan, Mungkin Databasenya

Belum Konek!!!");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

lihatdata();

frame.setVisible(true);

}

//------------------------------------

-----------------------

public void

actionPerformed(ActionEvent event){

JButton

btn=(JButton)event.getSource();

if(btn==btnSave){

Simpan();

}

else if(btn==btnNew){

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

}

else if(btn==btnDelete){

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " + "Mengakhiri

Aplikasi Ini???","KOnfirmasi",

Page 233: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

Hapus();

}

}

else if(btn==btnUpdate){

Ubah();

}

else if(btn==btnExit){

if(JOptionPane.showConfirmDialog(null,"Apa

kah Anda yakin akan " +

"Mengakhiri Aplikasi

Ini???","KOnfirmasi",

JOptionPane.YES_NO_OPTION,JOpt

ionPane.QUESTION_MESSAGE)==

JOptionPane.YES_OPTION){

System.exit(0);

}

}

else if(btn==btnCari){

Cari();

}

}

//-=

void Simpan(){

skode=txtkode.getText();

stanggal=txttanggal.getText();

sjam=txtjam.getText();

sdari=txtdari.getText();

spesan=txtpesan.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="insert into

tbsmsmasuk

values('"+skode+"','"+stanggal+"','"+sjam

+"','"+sdari+"','"+spesan+"','"+sstatus+"')"

;

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Simpan");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA

SUKSES DITAMBAHKAN");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//------------------------------------

-----------------------

void Hapus(){

skode=txtkode.getText();

try{cery=somay.bakso();

Page 234: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

sawo=cery.createStatement();

SQLt="delete from

tbsmsmasuk where kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+" Sukses Di

Hapus");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA

SUKSES DIHAPUS");

System.out.println("===============

=========");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");

}

lihatdata();

}

//----------------------------------

-------------------------

void Ubah(){

skode=txtkode.getText();

stanggal=txttanggal.getText();

sjam=txtjam.getText();

sdari=txtdari.getText();

spesan=txtpesan.getText();

sstatus=txtstatus.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Update

tbsmsmasuk set

tanggal='"+stanggal+"',jam='"+sjam+"',dar

i='"+sdari+"',pesan='"+spesan+"',status='"

+sstatus+"' where kode='"+skode+"'";

sawo.executeUpdate(SQLt);

sawo.close();

cery.close();

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+skode+"Sukses Di Ubah");

Bersih();

txtkode.setEditable(true);

txtkode.requestFocus();

System.out.println("DATA SUKSES

DIUBAH");

System.out.println("===============

=============");}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,belum konek");

System.out.println("Terjadi

kesalahan,mungkin database atau tabelnya

belum ada");}

lihatdata();

}

//-----------------

--------------------------------------

Page 235: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

void Cari(){

skode=txtkode.getText();

try{cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Select * from tbsmsmasuk where

kode='"+skode+"'";

ResultSet cari=sawo.executeQuery(SQLt);

if(cari.next()){

String a=cari.getString("kode");

String aa=cari.getString("tanggal");

String aaa=cari.getString("jam");

String aaaa=cari.getString("dari");

String aaaaa=cari.getString("pesan");

String sstatus=cari.getString("status");

System.out.println("Data detail dengan

kode="+a);

System.out.println("tanggal="+aa);

System.out.println("jam="+aaa);

System.out.println("dari="+aaaa);

System.out.println("pesan="+aaaaa);

System.out.println("status="+sstatus);

txtkode.setText(a);

txttanggal.setText(aa);

txtjam.setText(aaa);

txtdari.setText(aaaa);

txtpesan.setText(aaaaa);

txtstatus.setText(sstatus);

JOptionPane.showMessageDialog(null,"Data

Dengan kode="+

skode+"Sukses

Di Cari!!!");

txtkode.setEditable(false);

txttanggal.requestFocus();

System.out.println("Data anda

kode="+skode+"sukses di cari!!!");

}

else{

JOptionPane.showMessageDialog(null,"Data

tidak Ditemukan");

}

System.out.println("===============

===========================

==============");

}

catch(Exception e){

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek");

System.out.println("Terjadi

Kesalahan,mungkin database atau tabelnya

belum ada");}

}

Page 236: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

//-----------------

--------------------------------

public static void

main(String[]args){

javax.swing.SwingUtilities.invokeLater(new

Runnable(){

public void run(){

smsmasuk app=new smsmasuk();

app.lp2maray();

}

});

}

//-----------------

-------------------------------

void Bersih(){

txtkode.setText("");

txttanggal.setText("");

txtjam.setText("");

txtdari.setText("");

txtpesan.setText("");

txtstatus.setText("");

txtkode.requestFocus();

}

//-----------------

------------------------------

void lihatdata(){

try{

hapustabel();

cery=somay.bakso();

sawo=cery.createStatement();

SQLt="Select * from tbsmsmasuk";

ResultSet

cari=sawo.executeQuery(SQLt);

while(cari.next()){

String

sskode=cari.getString("kode");

String

sstanggal=cari.getString("tanggal");

String

ssjam=cari.getString("jam");

String

ssdari=cari.getString("dari");

String

sspesan=cari.getString("pesan");

String

ssstatus=cari.getString("status");

String[]data={"",sskode,sstanggal,ssjam,ss

dari,sspesan,ssstatus};

modelnya.addRow(data);

//

System.out.println(a+"\t"+aa+"\t"+aaa+"\t

"+aaaa+"\t"+aaaaa\t"+sstatus\t"+spasswor

d\t"+sstatus);

System.out.println("----------------

--------------------------");

resetNo();

}

sawo.close();

cery.close();

}

catch(Exception e){

Page 237: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

JOptionPane.showMessageDialog(null,"Terja

di Kesalahan,Belum Konek lihat data");

System.out.println("Terjadi

kesalahanAA,mungkin database atau

tabelnya belum ada");}

}

//------------------------------------

-----------------------

void resetNo(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

String

Nomor=String.valueOf(i+1);

modelnya.setValueAt(Nomor,i,0);

}

}

//-------------------------------------

----------------------

void hapustabel(){

int

baris=modelnya.getRowCount();

for(int i=0;i<baris;i++){

modelnya.removeRow(0);

Bersih();

}

}

//-------------------------------------

----------------------

}

import java.io.*;

public class tecCmd {

private static String getPrintOut(String

cmd) {

StringBuffer sb = new StringBuffer();

Runtime rt = Runtime.getRuntime();

try {

Process p = rt.exec(cmd);

// Mendapatkan InputStream dan

menciptakan

// objek BufferedReader

BufferedReader in = new

BufferedReader

Page 238: APLIKASI NETWORK MONITORING BERBASIS SMS …repository.uinjkt.ac.id/dspace/bitstream/123456789/4791/1/THOYYIBAH... · program studi teknik informatika fakultas sains dan teknologi

(new

InputStreamReader(p.getInputStream()));

String s;

// Membaca input dan simpan ke

StringBuffer

while ((s = in.readLine()) != null) {

sb.append(s);

sb.append("\n");

}

in.close();

} catch (Exception ex) {

System.out.println(ex.getMessage());

}

return sb.toString();

}

public String baca(String cmd) {

//String cmd = "netstat -an";

//System.out.println("Output: " + cmd);

//System.out.println(getPrintOut(cmd));

return getPrintOut(cmd);

}

}