215
APLIKASI MANAJEMEN ASTERISK VoIP SERVER BERBASIS WEB PADA SISTEM OPERASI LINUX SKRIPSI Ditujukan Untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Teknik Jurusan Teknik Informatika Oleh : Albert Kurnia 03 5314 043 JURUSAN TEKNIK INFORMATIKA FAKULTAS SAINS DAN TEKNOLOGI UNIVERSITAS SANATA DHARMA YOGYAKARTA 2008 i

BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

APLIKASI MANAJEMEN ASTERISK VoIP SERVER

BERBASIS WEB PADA SISTEM OPERASI LINUX

SKRIPSI

Ditujukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Jurusan Teknik Informatika

Oleh :

Albert Kurnia

03 5314 043

JURUSAN TEKNIK INFORMATIKA

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

2008

i

Page 2: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

WEB BASED MANAGEMENT APPLICATION OF ASTERISK

VoIP SERVER IN LINUX OPERATING SYSTEM

A Thesis

Presented as Partial Fulfillment of the Requirements

To Obtain the Sarjana Teknik Degree

In Informatics Engineering

By :

Albert Kurnia

03 5314 043

DEPARTMENT OF INFORMATICS ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2008

ii

Page 3: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

SKRIPSI

APLIKASI MAITAJEMEN ASTERISK VOIP SERYERBERBASIS WEB PADA SISTEM OPERASI LINUX

Oleh:

Albert Kurnia

Tanggal

lll

Page 4: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

SKRIPSI

APLIKASI MANAJEMEN,4 S TERISK VOIP SERVERBERBASTS WEB PADA SISTEM OPERASI LINUX

Dipersiapkan dan ditulis oleh :Albert Kurnia

NIM : 03 5314 043

Telah dipertahankan di depan Panitia Penguji

Pada Tanggnl2l Mei 2008

Dan dinyatakan memenuhi syarat

Susunan Panitia Penguji

Nama Lengkap Tand:

Alb. Agung Hadhiatma, S.T.o M.T.

Sekretaris St. Wi'snu \Mijaya, S.T., M.T.

Ketua

Anggota

Anggota

H. Agung Hennawan, S.T.

Puspaningtyas Sanjoyo Adi, S.T., M.T.

Itas Sains dan Teknologis Sanata Dharma

lv

Tanda Tangan

Yogyakarta, Mei 2008

s.J., s.s., B.s.T., M.A., M.Sc.

Page 5: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

PER}IYATAA}I KEASLIAN KARYA

Saya menyatakan bahwa skripsi yang saya tulis ini tidak memuat karya

atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan

daftar pustaka" sebagaimana layalcrya karya ilmiah.

Yogyakart4 Mei 2008

Albert Kurnia

Page 6: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LEMBAR PERNYATAAN PERSETUJUANPUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan dibawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : Albert Kurnia

NIM :03 5314 043

Demi pengembangan ilmu pengetahuan, saya memberikan kepada PerpustakaanUniversitas Sanata Dharma karya ilmiah saya yang berjudul :

APLIKASI MANAJEMEN ASTERISK VOIP SERVERBERBASIS WEB PADA SISTEM OPERASI LINAX

Beserta perangkat yang diperlukan ( bila ada ). Dengan demikian sayamemberikan kepada Perpustakaan Universitas Sanata Dharma hak untukmenyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentukpangkalan dat4 mendistribusikan secara terbatas, dan mempublikasikannya diInternet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin darisaya maupun memberikan royalti kepada saya selama tetap mencantumkan namasaya sebagai penulis.

Demikian pernyataan ini yang saya buat dengan sebenarnya.

Dibuat di Yogyakarta

Pada tanggal: 12 Juni 2008

Yang menyatakan

( Albert Kurnia )

vi

Page 7: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

HALAMAN PERSEMBAHAN

Karya ini ku persembahkan untuk :

....

Tuhan Yesus-ku, panutan sekaligus sumber kekuatan-ku

….

Kedua orang tua-ku yang telah membesarkan aku dengan penuh perhatian

dan kasih sayang

….

Keluarga besarku yang selalu senantiasa memberikan support dan bantuan

selama aku kuliah

….

Kakak dan Adik-ku, partner sejati dalam hidup-ku

....

Marsinah ( Mbak Sinah ), yang telah ikut membesarkan dan merawat aku

dengan penuh perhatian

....

Teman – teman Up 2 U, Sahabat sejati dalam hidupku

....

vii

Page 8: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

HALAMAN MOTTO

.....

Practice Makes Perfect

.....

Selalu ada jalan bagi orang yang mau berusaha dan

belajar dengan keras

.....

Lakukan yang terbaik dan berdoalah, maka tidak ada

sesuatu yang mustahil untuk dilakukan

.....

Setiap masalah yang datang pasti akan membawa serta

solusi untuk menyelesaikannya

.....

viii

Page 9: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

ABSTRAKSI

Proses konfigurasi Asterisk sebagai VoIP server pada sistem operasi Linux

dapat dilakukan melalui dua cara yaitu berbasis text ( text based ) dan berbasis teknik Asterisk Realtime. Apabila berbasis text konfigurasi dilakukan dengan cara mengetikkan serangkaian parameter pada file tertentu. Sedangkan jika dilakukan dengan menggunakan teknik Asterisk Realtime konfigurasi dilakukan dengan cara menginsertkan data konfigurasi pada tabel yang ada pada database, dimana struktur tabel yang digunakan merupakan struktur tabel standard yang dapat dikenali oleh sistem Asterisk. File atau tabel yang dibutuhkan untuk konfigurasi bergantung dari jenis protokol VoIP yang akan digunakan. Selain itu juga seorang administrator harus melakukan proses konfigurasi Asterisk pada komputer yang dijadikan VoIP Server secara langsung.

Pada penelitian ini akan dibuat sebuah aplikasi konfigurasi Asterisk VoIP server berbasis web yang dapat digunakan untuk konfigurasi Asterisk dengan menggunakan teknik Asterisk Realtime serta berbasis protokol SIP.Dengan menggunakan aplikasi ini seorang Administrator dapat melakukan konfigurasi Asterisk dengan berbasis grafis ( GUI ) dan juga Administrator tidak perlu lagi mendatangi komputer yang dijadikan VoIP server lagi karena aplikasi ini dapat diakses melalui web browser. Dalam pembuatan aplikasi ini digunakan PHP sebagai bahasa pemrograman dan database MySQL.sebagai database aplikasi ini.

ix

Page 10: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

ABSTRACT

Asterisk configuration process as VoIP server in Linux operation system could be done in two ways, they are text-based and Asterisk Realtime technique-based. Text-based configuration could be done by typing a set of parameter in a certain file. While, in Asterisk Realtime technique, configuration could be done by inserting configuration data in the table that is available in database, in which table structure used was the standard table structure that could be recognized by Asterisk system. File or table needed for configuration depended on the type of VoIP protocol that would be used. Besides, an administrator has to conduct Asterisk configuration process in the computer that was used as VoIP Server directly.

This study developed a web-based application which could be used in Asterisk configuration using Asterisk realtime technique and protocol-based SIP. By using this application, an administrator could conduct graphic-based Asterisk configuration. Beside that, an administrator did not need to face the computer that was used as VoIP anymore because this application could be accessed through web browser. In making this application, PHP was used as programming language and database MySQL as the database of this application.

x

Page 11: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

KATA PENGANTAR

Puji syukur saya haturkan kepada Tuhan Yesus Kristus yang telah

melimpahkan berkat-Nya. Sehingga saya dapat menyelesaikan Laporan Tugas

Akhir ini.

Pada kesempatan ini saya ingin mengucapkan terima kasih kepada pihak –

pihak yang telah membantu saya dalam menyelesaikan skripsi ini, baik dalam hal

bimbingan, perhatian, kasih sayang, semangat, kritik, dan saran yang telah

diberikan. Ucapan terima kasih ini saya sampaikan antara lain kepada :

1. Bapak Ir. Gregorius Heliarko, S.J., S.S., B.S.T., M.A., M.Sc., selaku Dekan

Fakultas Saint dan Teknologi Universitas Sanata Dharma Yogyakarta.

2. Ibu Agnes Maria Polina, S.Kom., M.Sc., selaku Ketua Jurusan Teknik

Informatika Universitas Sanata Dharma.

3. Ibu Ridowati Gunawan, S.Kom., M.T., selaku Dosen Pembimbing Akademik

Teknik Informatika angkatan 2003.

4. Bapak Alb. Agung Hadhiatma, S.T, M.T, selaku Dosen Pembimbing I.

Terima kasih atas bimbingan selama saya mengerjakan Laporan Skripsi ini.

5. Bapak H. Agung Hernawan, S.T, selaku Dosen Pembimbing II. Terima kasih

atas bimbingan dan juga atas ide yang bapak berikan kepada saya untuk

mengerjakan Tugas Akhir dengan topik ini. Dan terima kasih juga atas

kesempatan yang diberikan kepada saya untuk kerja part time diwarnet

Bapak.

xi

Page 12: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

6. Seluruh staf dan dosen di Universitas Sanata Dharma pada umumnya dan

Jurusan Teknik Informatika pada khususnya.

7. Kedua orangtua dan keluarga tercinta, terima kasih atas dukungan, kasih

sayang dan semangat yang tiada henti sehingga saya dapat menyelesaikan

Tugas Akhir ini.

8. Norbertine Risma Asteria Wardhani, Someone special yang pernah ada

mengisi hari – hariku dengan kebahagiaan dan cinta. Terima kasih atas

semuanya.

9. Staf Laboran Teknik Informatika, Pak Bele terima kasih atas pinjaman kunci

Lab Jarkomnya, Mas Danang dan Pak Dar atas kesabaran dan kesetiannya

selama menemani saya di Lab Jarkom.

10. Teman – teman dari forum voiprakyat : pak Anton Rahardja ( anton_rd ), pak

Onno W.Purbo, Dwidy Putut ( doank_29 ), Salman Kalista, terima kasih atas

bimbingan dan jawaban – jawaban yang diberikan atas pertanyaan yang saya

tulis di forum voiprakyat.

11. Teman – teman Up2U : Ari P.K, Arief ( Surip ), Gunawan ( Bobo ), Grace,

Titiek, Nanick, Dewi, Lolo, Lulu, Risma, Rio ( mbah Dukun ), Wawan

( Liong ), Nunug, Heri ( Boyo ), Galih ( Gaband ), Ibu Khatarina Sri H.D ( bu

Uciek ), Ninin. Yang telah memberikan arti persahabatan bagi hidup saya.

12. Teman – teman Informatika angkatan 2003 yang telah berjuang bersama

dengan saya sewaktu kuliah, special buat Evi ( epot ) dan Ari Tunggul

( Teman dikala susah dan senang ☺ ), Yansen ( yang telah mengenalkan

Linux pada saya ) , Albert C.P ( Sang Kepala Suku ), Si Jun, Bergas, Eko

xii

Page 13: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

( Ucup ), Hendrik ( Cilblek ), Ellen, Jeje, Dion, Adwi, Danang, Heni, Angga

( TooCool ), Marcell, Irvan, Hendro, Dian, Isti, Si Nug ( akhirnya selesai juga

yach www.kalithi.com nya ☺ ), Acied, Kristin dan Tika ( Teman seperjuangan

waktu pendadaran ☺ ), Ruth, Onezzt, Sarah, Ina, Ratih, Gina, Dea, Agus

( Gepenk ), Devi, Anis, Dani, Wikan ( Erros ), Linda, Risa, Santhos, Amin,

Winda, Fendy, Seno, Chandra, Hana, David, Merry, Monic, Yeyen, Pamako

Renda ( Anak TI 03 yang pertama kali saya kenal ), Nur, Rubin, Esther, Oscar,

Ria, Rachel, serta teman – teman jurusan Teknik Informatika lainnya.

13. Seluruh pihak yang membantu saya baik secara langsung maupun tidak

langsung, yang tidak dapat saya sebutkan satu persatu.

Saya menyadari masih banyak kekurangan yang terdapat pada laporan ini.

Saran dan kritik selalu saya harapkan dari pembaca untuk perbaikan – perbaikan

di masa yang akan datang.

Akhir kata, saya berharap tulisan ini dapat bermanfaat bagi kemajuan dan

perkembangan ilmu pengetahuan dan berbagai pihak pengguna pada umumnya.

Yogyakarta, Mei 2008

Penulis

xiii

Page 14: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

DAFTAR ISI

HALAMAN JUDUL .................................................................................................

HALAMAN PERSETUJUAN ..................................................................................

HALAMAN PENGESAHAN ...................................................................................

PERNYATAAN KEASLIAN KARYA ...................................................................

PERNYATAAN PUBLIKASI KARYA ..................................................................

HALAMAN PERSEMBAHAN ...............................................................................

HALAMAN MOTTO ...............................................................................................

ABSTRAK ................................................................................................................

ABSTRACT ..............................................................................................................

KATA PENGANTAR ..............................................................................................

DAFTAR ISI .............................................................................................................

DAFTAR GAMBAR ................................................................................................

DAFTAR TABEL .....................................................................................................

i

iii

iv

v

vi

vii

viii

ix

x

xi

xiv

xviii

xxv

BAB I. PENDAHULUAN

1.1 Latar Belakang Masalah ................................................................................

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

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

1.4 Tujuan Penelitian ...........................................................................................

1.5 Manfaat Penelitian .........................................................................................

1.6 Metodologi Penelitian ...................................................................................

1

3

4

5

5

6

xiv

Page 15: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

1.7 Sistematika Penulisan .................................................................................... 7

BAB II. LANDASAN TEORI

2.1 Transmission Control Protocol / Internet Protocol (TCP/IP) .......................

2.1.1 Transmission Control Protocol ( TCP ) ...................................................

2.1.2 Internet Protocol ( IP ) .............................................................................

2.2 Voice over Internet Protocol ( VoIP ) ..........................................................

2.2.1 Format Paket VoIP ....................................................................................

2.2.2 Protokol Standard dalam sistem VoIP ......................................................

2.2.3 Kebutuhan Bandwith untuk VoIP .............................................................

2.2.4 Jenis Konfigurasi Jaringan VoIP ..............................................................

2.3 Session Initiation Protocol ( SIP ) ................................................................

2.3.1 Susunan Protokol SIP ...............................................................................

2.3.2 Komponen Protokol SIP ...........................................................................

2.3.3 Pengalamatan Protokol SIP ......................................................................

2.3.4 Format Pesan Protokol SIP .......................................................................

2.3.5 Header Field pada Protokol SIP ...............................................................

2.3.6 SIP Request dan SIP Response .................................................................

2.3.6.1 SIP Request ...........................................................................................

2.3.6.2 SIP Response ........................................................................................

2.3.7 Prosedur Persinyalan pada Protokol SIP ...................................................

2.3.7.1 Prosedur Persinyalan menggunakan Proxy Server ...............................

2.3.7.2 Prosedur Persinyalan menggunakan Redirect Server ...........................

2.3.8 Fungsi dari Protokol SIP ..........................................................................

9

9

12

13

14

15

15

16

19

20

22

23

24

25

26

26

27

28

28

29

31

xv

Page 16: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

2.4 Internet Protocol Private Branch Exchange ( IP PBX ) ...............................

2.4.1 Komponen Dasar IP PBX .........................................................................

2.5 Asterisk ..........................................................................................................

2.5.1 Features Asterisk ......................................................................................

2.5.2 File Konfigurasi Asterisk ..........................................................................

2.5.3 Konfigurasi Asterisk .................................................................................

2.6 Asterisk Realtime Architecture ( ARA ) ........................................................

2.6.1 Langkah – Langkah Konfigurasi ARA pada Asterisk ..............................

2.7 Web Browser .................................................................................................

2.8 Web Server ....................................................................................................

2.9 PHP ...............................................................................................................

31

33

34

35

36

36

39

40

45

46

46

BAB III. ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM

3.1 Analisis Kebutuhan Sistem ...........................................................................

3.2 Gambaran Umum Sistem Komunikasi VoIP menggunakan Asterisk ...........

3.3 Penggunaan Teknik Asterisk Realtime Dalam Konfigurasi Asterisk

Berbasis Protokol SIP ..................................................................................

3.4 Perancangan Sistem ......................................................................................

3.4.1 Flowchart Komunikasi VoIP ....................................................................

3.4.2 Use Case Diagram Aplikasi .....................................................................

3.4.3 Sequence Diagram Aplikasi ......................................................................

3.4.4 Konfigurasi Hardware dan Software ........................................................

3.4.5 Skenario Pengujian Sistem .......................................................................

3.4.6 Struktur Tabel Database ...........................................................................

47

50

51

56

56

57

60

68

71

73

xvi

Page 17: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

3.4.7 Perancangan Antarmuka ( User Interface ) .............................................. 78

BAB IV. IMPLEMENTASI SISTEM

4.1 Spesifikasi Hardware dan Software yang digunakan ...................................

4.2 Setting Koneksi Asterisk dengan database MySQL .....................................

4.3 Implementasi Antarmuka ( User Interface ) .................................................

4.4 Implementasi File Antarmuka dan File Action .............................................

4.5 Implementasi Skenario Pengujian Sistem .....................................................

4.6 Implementasi IP Phone sebagai client Asterisk VoIP Server ........................

4.7 Implementasi X-Lite sebagai client Asterisk VoIP Server ............................

4.8 Implementasi VoIP Gateway ( ITG ) sebagai media penghubung antara

jaringan VoIP dengan jaringan PABX ..........................................................

95

97

101

141

141

153

157

161

BAB V. ANALISIS HASIL IMPLEMENTASI

5.1 .Hasil Uji Coba Program ................................................................................

5.2 .Analisis Konfigurasi Asterisk sebagai VoIP Server Berbasis Protokol SIP ..

5.3 .Kelebihan dan Kekurangan Program ............................................................

5.3.1 Kelebihan Program ...................................................................................

5.3.2 Kekurangan Program ................................................................................

167

167

172

172

173

BAB VI KESIMPULAN DAN SARAN

6.1 Kesimpulan ....................................................................................................

6.2 Saran ..............................................................................................................

174

175

DAFTAR PUSTAKA

LAMPIRAN

xvii

Page 18: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

DAFTAR GAMBAR

Gambar Keterangan Halaman

2.1 Format Paket Voice over Internet Protocol ( VoIP ) 14

2.2 Hubungan Telepon menggunakan N:1 Gateway 17

2.3 Hubungan PC menggunakan Router 17

2.4 Hubungan Telepon ke PC 18

2.5 Hubungan dengan Gateway 1:1 18

2.6 Hubungan menggunakan LAN ( Local Area Network ) 19

2.7 Susunan Protokol SIP 20

2.8 Format Pengalamatan pada Protokol SIP 24

2.9 Format Pesan SIP 24

2.10 Prosedur Persinyalan SIP menggunakan Proxy Server 28

2.11 Prosedur Persinyalan SIP menggunakan Redirect Server 29

2.12 Komponen Dasar IP PBX 33

2.13 Format Blok text Data Account 37

2.14 Contoh Konfigurasi Data Account ( menggunakan SIP ) 37

2.15 Format Penulisan DialPlan 37

2.16 Contoh Konfigurasi DialPlan 39

2.17 Contoh Konfigurasi file res_mysql.conf 41

2.18 Contoh Konfigurasi file cdr_mysql.conf 41

2.19 Contoh Konfigurasi file extconfig.conf 42

xviii

Page 19: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

2.20 Contoh Konfigurasi file extensions.conf 42

2.21 Perintah SQL untuk membuat tabel sip_buddies 43

2.22 Perintah SQL untuk membuat tabel extensions_table 44

2.23 Perintah SQL untuk membuat tabel voicemail_users 44

2.24 Perintah SQL untuk membuat tabel cdr 45

3.1 Perangkat Telepon VoIP Hardware ( IP Phone ) 48

3.2 Perangkat Telepon VoIP Software ( X-Lite ) 48

3.3 Perangkat VoIP Gateway 49

3.4 Sistem Komunikasi VoIP Menggunakan Asterisk 51

3.5 Contoh Konfigurasi Otentikasi User Pada File sip.conf 53

3.6 Contoh Konfigurasi DialPlan Pada File extensions.conf 54

3.7 Contoh Konfigurasi Voicemail Pada File voicemail.conf 55

3.8 Flowchart Proses Komunikasi VoIP 56

3.9 Use Case Diagram Aplikasi 57

3.10 Sequence Diagram Login 60

3.11 Sequence Diagram Asterisk File 61

3.12 Sequence Diagram Service Asterisk 61

3.13 Sequence Diagram Menambah Extensions Line 62

3.14 Sequence Diagram Mengedit Extensions Line 62

3.15 Sequence Diagram Menghapus Extensions Line 63

3.16 Sequence Diagram Menambah PABX Line 63

3.17 Sequence Diagram Mengedit PABX Line 64

xix

Page 20: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

3.18 Sequence Diagram Menghapus PABX Line 64

3.19 Sequence Diagram Menambah Trunking Server Line 65

3.20 Sequence Diagram Mengedit Trunking Server Line 65

3.21 Sequence Diagram Menghapus Trunking Server Line 66

3.22 Sequence Diagram Change Password Administrator 66

3.23 Sequence Diagram Cari Data Call Detail Record 67

3.24 Sequence Diagram Menghapus Data Call Detail Record 67

3.25 Sequence Diagram Phonebook 68

3.26 Skenario Komunikasi VoIP menggunakan

Sebuah VoIP Server 71

3.27 Skenario Komunikasi VoIP PC to Phone dan Phone to PC 72

3.28 Skenario Komunikasi VoIP menggunakan dua buah

VoIP Server ( Trunking Server ) 73

3.29 Perancangan Antarmuka Login Administrator 78

3.30 Perancangan Antarmuka Phonebook 79

3.31 Perancangan Antarmuka Index Configuration 80

3.32 Perancangan Antarmuka Asterisk File 81

3.33 Perancangan Antarmuka Edit Asterisk File 82

3.34 Perancangan Antarmuka Service Asterisk 83

3.35 Perancangan Antarmuka Extensions Line Type Local 84

3.36 Perancangan Antarmuka Extensions Line Type Trunk 85

3.37 Perancangan Antarmuka Edit Extensions Line Type Trunk 86

xx

Page 21: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

3.38 Perancangan Antarmuka Edit Extensions Line Type Local 87

3.39 Perancangan Antarmuka PABX Line 88

3.40 Perancangan Antarmuka Edit PABX Line 89

3.41 Perancangan Antarmuka Trunking Server Line 90

3.42 Perancangan Antarmuka Trunking Registration Status 91

3.43 Perancangan Antarmuka Edit Trunking Server Line 92

3.44 Perancangan Antarmuka Call Detail Record 93

3.45 Perancangan Antarmuka Change Password Administrator 94

4.1 Hasil Load Module Koneksi Asterisk Ke database MySQL 98

4.2 Implementasi Antarmuka Login Administrator 101

4.3 Implementasi Antarmuka Phonebook 102

4.4 Antarmuka Hasil Data Phonebook ditemukan 103

4.5 Implementasi Antarmuka Index Configuration 104

4.6 Implementasi Antarmuka Asterisk File 106

4.7 Implementasi Antarmuka Edit Asterisk File 108

4.8 Implementasi Antarmuka Asterisk File 109

4.9 Implementasi Antarmuka Extensions Line Type Local 110

4.10 Antarmuka Hasil Penambahan Extensions Line

Type Local 113

4.11 Antarmuka Konfirmasi Delete Extensions Line Type Local 114

4.12 Implementasi Antarmuka Edit Extensions Type Local 116

4.13 Antarmuka Informasi Proses Edit Extensions Type Local 118

xxi

Page 22: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

4.14 Implementasi Antarmuka Extensions Line type Trunk 118

4.15 Antarmuka Hasil Penambahan Extensions Line

Type Trunk 120

4.16 Antarmuka Konfirmasi Hapus Extensions Line

Type Trunk 121

4.17 Implementasi Antarmuka Edit Extensions Type Trunk 122

4.18 Implementasi Antarmuka PABX Line 123

4.19 Antarmuka Hasil Penambahan Account PABX Line 126

4.20 Antarmuka Konfirmasi Hapus Data PABX Line 127

4.21 Implementasi Antarmuka Edit PABX Line 128

4.22 Antarmuka Informasi Proses Edit PABX Line 129

4.23 Implementasi Antarmuka Trunking Server Line 130

4.24 Antarmuka Informasi Hasil Penambahan

Trunking Server Line 133

4.25 Antarmuka Hasil Penambahan Trunking Server Line 133

4.26 Antarmuka Konfirmasi Hapus data Trunking Server Line 134

4.27 Implementasi Antarmuka Edit Trunking Server Line 136

4.28 Implementasi Antarmuka Trunking Registration Status 137

4.29 Implementasi Antarmuka Call Detail Record 139

4.30 Implementasi Antarmuka Change Password Administrator 140

4.31 Skenario Jaringan VoIP Menggunakan Sebuah

VoIP Server 141

xxii

Page 23: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

4.32 Tabel Data Account Extensions Local Skenario Jaringan I 142

4.33 Skenario Komunikasi VoIP PC to Phone dan Phone to PC 143

4.34 Tabel Data Account Extensions Local Skenario Jaringan II 145

4.35 Tabel Data Account PABX Line Skenario Jaringan II 146

4.36 Skenario Komunikasi VoIP menggunakan dua buah

VoIP Server ( Trunking Server ) 147a

4.37 Tabel Data Account Extensions Local dan Trunk

Pada VoIP Server I Skenario Jaringan III 149

4.38 Tabel Data Account Extensions Local dan Trunk

Pada VoIP Server II Skenario Jaringan III 150

4.39 Tabel Data Account Trunking Server Line

Pada VoIP Server I Skenario Jaringan III 151

4.40 Tabel Data Account Trunking Server Line Pada

VoIP Server II Skenario Jaringan III 152

4.41 Halaman Login Admin pada Perangkat IP Phone 153

4.42 Halaman Informasi Perangkat IP Phone 154

4.43 Menu Network Configuration pada Perangkat IP Phone 155

4.44 Menu SIP Configuration pada Perangkat IP Phone 156

4.45 Tampilan Proses Registering IP Phone 156

4.46 Tampilan Status IP Phone siap digunakan 157

4.47 Tampilan Awal Program X-Lite 158

4.48 Jendela Menu Konfigurasi pada X-Lite 158

xxiii

Page 24: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

4.49 Menu SIP Account Pada X-Lite 159

4.50 Konfigurasi SIP Account Pada X-Lite 159

4.51 Aktifasi X-Lite 160

4.52 Tampilan Proses Registering Pada X-Lite 160

4.53 Tampilan X-Lite Siap Digunakan 161

4.54 Tampilan Login Admin Perangkat ITG 162

4.55 Tampilan Awal Menu Konfigurasi ITG 163

4.56 Menu WAN Setting pada Perangkat ITG 163

4.57 Pemasangan Kabel Pada ITG 164

4.58 Tampilan Form Input Data Registrasi Pada ITG 165

4.59 Setting Data SIP Proxy Pada ITG 166

4.60 Tampilan Status registrasi Perangkat ITG

ke Asterisk VoIP Server 166

5.1 Konfigurasi otentikasi user pada file sip.conf 169

5.2 Konfigurasi DialPlan pada file extensions.conf 170

5.3 Konfigurasi voicemailbox pada file voicemail.conf 171

xxiv

Page 25: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

DAFTAR TABEL

Tabel Keterangan Halaman

2.1 Protokol Standard VoIP 15

2.2 Kebutuhan Bandwith VoIP 16

2.3 Pesan SIP Response 27

3.1 Contoh Konfigurasi Otentikasi User Pada

Tabel sip_buddies 53

3.2 Contoh Konfigurasi DialPlan Pada Tabel extensions_table 54

3.3 Contoh Konfigurasi Voicemail Pada Tabel voicemail_users 55

3.4 Tabel Admin 74

3.5 Tabel sip_buddies 74

3.6 Tabel extensions_table 75

3.7 Tabel Voicemail_users 75

3.8 Tabel CDR 76

3.9 Tabel PABX_tables 76

3.10 Tabel Trunking_tables 77

4.1 Daftar file Antarmuka dan file Action 141

4.2 Data Register Client Skenario Jaringan I 143

4.3 Data Registrasi Client Skenario Jaringan II 145

4.4 Data Registrasi Perangkat VoIP Gateway 146

xxv

Page 26: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

Skenario Jaringan II

4.5 Data Registrasi Client Pada VoIP Server I

Skenario Jaringan III 149

4.6 Data Registrasi Client Pada VoIP Server II

Skenario Jaringan III 150

4.7 Data Registrasi Trunking VoIP Server I

ke VoIP Server II 151

4.8 Data Registrasi Trunking VoIP Server II

ke VoIP Server I 152

5.1 Kebutuhan Konfigurasi Asterisk Berdasarkan

Cara Konfigurasi 168

5.2 Konfigurasi otentikasi user pada tabel sip_buddies 169

5.3 Konfigurasi DialPlan pada tabel extensions_table 170

5.4 Konfigurasi voicemail pada tabel voicemail_users 171

xxvi

Page 27: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Tingginya tarif komunikasi, terutama untuk sambungan jarak jauh

misalkan : SLJJ ( Sambungan Langsung Jarak Jauh ) maupun SLI ( Sambungan

Langsung Internasional ) seringkali menjadi kendala dalam berkomunikasi

melalui jaringan telepon biasa ( PSTN ). Tingginya tarif komunikasi tersebut

dipengaruhi oleh beberapa faktor diantaranya jarak dan waktu, sehingga semakin

jauh jarak dan semakin lama panggilan yang dilakukan melalui jaringan telepon

tersebut, maka tarif yang harus dibayarkan juga semakin tinggi.

Salah satu alternatif untuk mengatasi kendala dalam berkomunikasi tersebut

adalah dengan memanfaatkan teknologi Internet. Salah satunya dengan

menggunakan teknologi telepon via Internet yang dikenal dengan IP Telephony,

selanjutnya dikenal dengan istilah VoIP ( Voice over Internet Protocol ). Secara

sederhana, VoIP bisa diartikan bertelepon menggunakan jaringan IP ( Internet

Protocol ) atau Internet. Dengan bertelepon menggunakan VoIP banyak

keuntungan yang dapat diambil, diantaranya adalah dari segi biaya jelas lebih

murah dibandingkan dengan telepon biasa ( PSTN ), hal ini dikarenakan jaringan

IP atau Internet bersifat global. Sehingga faktor jarak dan waktu tidak lagi

mempengaruhi tarif komunikasi. Dan sudah bukan merupakan hal yang asing lagi

bahwa biaya pulsa untuk akses Internet lebih murah dibandingkan dengan biaya

telepon biasa ( PSTN ).

1

Page 28: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

2

Salah satu software yang dapat digunakan untuk implementasi teknologi

VoIP adalah Asterisk. Asterisk merupakan salah satu software IP PBX ( Internet

Protocol Private Branch Exchange ) jenis SIP Proxy, dengan menggunakan

Asterisk dimungkinkan untuk membangun sebuah sentral telepon sederhana

berbasis jaringan IP ( Internet Protocol ). Asterisk berupa file konfigurasi yang

dapat digunakan untuk membangun sebuah sentral telepon berbasis jaringan IP

( VoIP Server ). Asterisk didukung oleh beberapa protokol untuk komunikasi

VoIP, antara lain SIP ( Session Initiation Protocol ), IAX ( Inter-Asterisk

Exchange ), H.323, MGCP ( Media Gateway Control Protocol ), dan SCCP

( Cisso Skinny ).

Setting konfigurasi pada Asterisk untuk membangun VoIP Server pada

dasarnya meliputi proses dua proses yaitu pertama, proses otentikasi user

(dengan nomor telepon dan password) dan kedua, proses konfigurasi DialPlan.

DialPlan merupakan konfigurasi yang digunakan untuk mengatur apa yang harus

dilakukan untuk melakukan panggilan ke sebuah nomor telepon tertentu.

Setting konfigurasi Asterisk untuk membangun sebuah sentral telepon

( VoIP Server ) dapat dilakukan melalui dua cara yaitu : berbasis text ( text based )

dan berbasis Asterisk Reealtime. Konfigurasi Asterisk berbasis text ( text based ),

merupakan konfigurasi Asterisk yang dilakukan dengan cara mengetikkan

serangkaian aturan konfigurasi pada file tertentu secara langsung, sedangkan

konfigurasi Asterisk berbasis Asterisk Realtime merupakan cara konfigurasi

Asterisk yang dilakukan dengan cara mengentrykan data pada tabel tertentu pada

database yang telah disiapkan sebelumnya.

Page 29: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

3

Selain itu juga setting konfigurasi masih dilakukan dengan cara mendatangi

komputer ( PC ) yang dijadikan VoIP Server tersebut secara langsung, hal ini

tentu saja sangat merepotkan bagi seorang pengguna khususnya yang ingin

membuat sebuah sentral telepon sederhana dengan menggunakan Asterisk.

Dengan melihat permasalahan yang ada pada setting konfigurasi pada

Asterisk tersebut, maka pada penelitian ini akan dibangun sebuah aplikasi

manajemen Asterisk VoIP Server, khususnya untuk mengatur proses otentikasi

username dan password dari client VoIP Server dan proses pengaturan DialPlan

yang berbasis web dan dengan menggunakan teknik Asterisk Realtime dan

berbasis protokol SIP pada sistem operasi Linux. Aplikasi ini akan dibuat dengan

menggunakan bahasa pemrograman PHP ( Hypertext Preprocessor ) dan database

MySQL.

1.2 Rumusan Masalah

Permasalahan pada penelitian ini adalah :

1. Bagaimana mengkonfigurasi Asterisk sebagai VoIP Server dengan

menggunakan teknik Asterisk Realtime dan berbasis protokol SIP

sehingga dapat digunakan untuk implementasi teknologi VoIP,

khususnya untuk membangun sebuah sentral telepon berbasis jaringan IP

( Internet Protocol ).

2. Bagaimana mengimplementasikan teknologi berbasis web untuk

membuat sebuah program aplikasi manajemen Asterisk pada sistem

operasi Linux yang dapat diakses jarak jauh ( remote ), sehingga

Page 30: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

4

memberikan kemudahan bagi pengguna ( administrator ) untuk setting

konfigurasi Asterisk, khususnya untuk proses otensikasi user dan proses

pengaturan DialPlan yang berbasis GUI ( Graphical User Interface ).

1.3 Batasan Masalah

Karena keterbatasan waktu, tenaga dan kemampuan, penelitian ini di batasi

sebagai berikut :

1. Sistem yang dibuat dibatasi untuk implementasi VoIP menggunakan

Asterisk sebagai VoIP Server, khususnya untuk membuat sebuah sentral

telepon berbasis jaringan IP atau internet yang menyediakan layanan

komunikasi suara seperti layaknya komunikasi pada jaringan telepon

biasa ( PSTN ).

2. Sistem yang dibuat dibatasi pada proses konfigurasi Asterisk untuk

proses otensikasi user dan pengaturan DialPlan dengan menggunakan

teknik Asterisk Realtime.

3. Pada penelitian ini tidak membahas mengenai kebutuhan dan

perhitungan bandwith yang dibutuhkan pada implementasi VoIP yang

dapat digunakan untuk membangun layanan telepon berbasis jaringan IP.

4. Protokol VoIP yang akan digunakan adalah SIP ( Session Initiation

Protocol ).

5. Features Asterisk yang digunakan pada penelitian ini antara lain :

voicemail system, call detail record, caller id, remote call agents, local

call agents.

Page 31: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

5

6. Setting konfigurasi yang digunakan adalah setting konfigurasi yang

berhubungan dengan konfigurasi Asterisk dengan Teknik Asterisk

Realtime dan berbasis protokol SIP.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah membangun aplikasi berbasis grafis (GUI)

yang dapat digunakan untuk mengkonfigurasi Asterisk VoIP server, khususnya

untuk konfigurasi proses otensikasi user ( dengan username dan password ) dan

proses pengaturan DialPlan sehingga dapat digunakan untuk membantu dalam

membangun sebuah sentral telepon berbasis jaringan IP ( Internet Protocol ).

1.5 Manfaat Penelitian

Dengan adanya aplikasi yang akan dibuat pada penelitian ini, ada beberapa

manfaat yang diperoleh, yaitu :

1. Memberikan alternatif solusi untuk mengatasi kendala dalam

berkomunikasi, khususnya berkaitan dengan tingginya biaya komunikasi

menggunakan jaringan telepon biasa (PSTN) dengan cara

mengimplementasikan teknologi komunikasi melalui jaringan VoIP

dengan menggunakan Asterisk.

2. Proses konfigurasi pada Asterisk, khususnya untuk menangani otentikasi

user dan pengaturan DialPlan dapat dilakukan dengan berbasis grafis

( GUI ), yaitu dengan cara menginputkan data pada form yang telah

disediakan pada aplikasi ini.

Page 32: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

6

1.6 Metodologi Penelitian

Metode yang dipergunakan untuk perancangan sistem dan pembuatan

perangkat lunak ( aplikasi ) , serta menyelesaikan permasalahan adalah dengan

cara :

1. Studi Literatur

Kegiatan ini merupakan pendalaman materi yang berkaitan dengan

pembuatan program dan sistem yang akan dibuat meliputi :

a. Mengenal serta pendalaman konfigurasi dan cara kerja Asterisk

sebagai VoIP Server pada sistem operasi Linux, sehingga mendukung

untuk membangun sebuah sentral telepon berbasis jaringan IP dan

berbasis protokol SIP.

b.Pendalaman bahasa pemrogaman PHP dan aplikasi database MySQL

untuk membangun aplikasi manajemen Asterisk VoIP Server.

2. Perancangan Sistem

Setelah melakukan studi Literatur selanjutnya dilanjutkan dengan

perancangan sistem yang akan dibuat, perancangan meliputi topologi sistem

beserta piranti – piranti yang digunakan dan desain user interface.

3. Implementasi

Pada tahap ini adalah penerapan desain ke dalam bentuk program dengan

memanfaatkan bahasa pemrograman yang ada.

Page 33: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

7

1.7 Sistematika Penulisan

BAB I PENDAHULUAN

Berisi latar belakang masalah, batasan masalah, tujuan tugas akhir,

rumusan masalah, metodologi penelitian dan sistematika penulisan.

BAB II LANDASAN TEORI

Bab ini berisi landasan teori yang mendukung kegiatan penelitian,

baik dalam analisis, desain dan implementasi sistem.

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM

Berisi tentang langkah – langkah pembuatan perangkat lunak serta

piranti yang digunakan untuk menyelesaikan masalah.

BAB IV IMPLEMENTASI SISTEM

Bab ini menjelaskan mengenai implementasi rancangan ( desain )

ke dalam bentuk utilitas yang nyata yang dapat dipergunakan

secara langsung.

BAB V ANALISIS HASIL IMPLEMENTASI

Bab ini berisi analisa mengenai aplikasi perangkat lunak yang telah

dibuat, serta kelebihan dan kekurangan aplikasi.

Page 34: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

8

BAB VI PENUTUP

Bab ini berisi kesimpulan yang diperoleh dari keseluruhan proses

pembuatan tugas akhir ini, serta beberapa saran untuk

pengembangan aplikasi lebih lanjut.

Page 35: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

9

BAB II

LANDASAN TEORI

2.1. Transmission Control Protocol / Internet Protocol (TCP/IP)

2.1.1.Transmission Control Protocol ( TCP )

Dalam komunikasi dua atau lebih network device diperlukan sebuah standar

yang saling dimengerti satu sama lain, seperti layaknya sebuah bahasa bagi

manusia agar dapat berkomunikasi dengan baik antara satu sama lain. Dalam

sebuah network istilah “bahasa” tersebut disebut dengan protokol. TCP/IP sendiri

merupakan kumpulan protokol yang terdiri dari dua protokol utama, yaitu :

Transmission Control Protocol dan Internet Protocol. TCP/IP memungkinkan

terjadinya komunikasi antar komputer yang memiliki perbedaan karakteristik dari

segi hardware ataupun software.

Model TCP/IP dikembangkan pertama kali oleh Departmen Pertahanan

Amerika Serikat (U.S. Department of Defense – DoD) dengan tujuan membangun

jaringan yang dapat bertahan pada segala kondisi. Sejak saat itu TCP/IP dijadikan

model dasar yang terus digunakan, contoh model dasar dari TCP/IP adalah

internet.

Fitur – fitur yang di miliki oleh TCP / IP ( menurut Hunt 2002 ) :

1) Merupakan open protokol standard, tersedia secara bebas dan

dikembangkan terlepas dari perangkat keras komputer dan sistem operasi.

Karena dukungan yang luas inilah, TCP/IP sangat ideal untuk menyatukan

berbagai perangkat keras dan lunak komputer yang beraneka ragam.

Page 36: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

10

2) Independen dari perangkat keras jaringan yang khusus. Hal ini

memungkinkan penyatuan dari berbagai macam jenis jaringan. TCP/IP

dapat di pakai pada Ethernet, koneksi DSL, dial-up line, dan semua jenis

medium transmisi fisik lainnya.

3) Memiliki skema pengalamatan yang memungkinkan setiap TCP/IP device

dapat di kenali secara spesifik walaupun berada dalam jaringan yang

sangat besar seperti internet.

TCP merupakan bagian dari protokol TCP/IP yang digunakan bersama

dengan IP untuk mengirimkan data dalam bentuk unit-unit pesan antara komputer

ke internet. Pengiriman data ini dapat terjamin karena TCP memilki dua proses

data acknowledgement yaitu retransmisi dan sequencing di mana TCP selalu

meminta konfirmasi setiap kali selesai mengirim data , apakah data telah sampai

ditempat tujuan. Kemudian TCP akan mengirimkan data urutan berikutnya atau

melakukan retransmisi yaitu pengiriman ulang data tersebut. Data yang dikirim

dan diterima diatur berdasarkan nomor urut. TCP juga mengawasi unit data

individual atau dikenal dengan nama paket, dimana pesan-pesan dibagi efisiensi

routing melewati internet (Gilbert, 1995).

Protokol TCP bertanggung jawab untuk pengiriman data dari sumber ke

tujuan dengan benar. TCP juga bertugas mendeteksi kesalahan atau hilangnya data

dan melakukan pengiriman kembali sampai data yang benar diterima dengan

lengkap. TCP menyediakan pelayanan seperti connection oriented, reliable, byte

stream service. Connection oriented berarti dua aplikasi pengguna TCP harus

melakukan pembentukan hubungan dalam melakukan pertukaran data tersebut.

Page 37: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

11

Reliable berarti TCP menerapkan proses deteksi kesalahan paket dan retransmisi.

Byte stream service berarti paket dikirimkan dan sampai ke tempat tujuan secara

berurutan.

TCP/IP terdiri dari empat layer kumpulan protokol. layer tersebut antara

lain :

Network interface layers

Dikenal juga sebagai link layer, merupakan layer terbawah yang

bertanggung jawab mengirim dan menerima data ke dan dari fisik. Media

fisiknya dapat berupa kabel, kabel optik, atau gelombang radio. Karena

tugasnya ini, protokol pada layer ini harus mampu menjadi data digital yang

di mengerti komputer yang berasal dari peralatan lain yang sejenis.

Network layer biasanya disebut Internet layers

Protokol yang berada pada layer ini bertanggung jawab dalam proses

pengiriman paket ke alamat yang tepat. Pada layer ini terdapat tiga macam

protokol yaitu IP, ARP, dan ICMP.

Transport layers

Layer ini berisi protokol yang bertanggung jawab untuk mengadakan

komunikasi antara dua host. Kedua protokol yang terdapat pada layer ini

adalah TCP ( Transmission Control Protocol ) dan UDP ( User Datagram

Protokol ).

Applications layers

Pada lapisan ini terletak semua aplikasi yang menggunakan protokol

TCP/IP. Pada lapisan ini terdapat beberapa protokol seperti TFTP, FTP,

Page 38: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

12

NFS untuk file transfer. SMTP dan POP3 sebagai protokol aplikasi e-mail.

Telnet dan ssh sebagai aplikasi remote login. SNMP sebagai protokol

manajemen jaringan. Kemudian DNS, sebagai protokol aplikasi sistem

penamaan di internet. Serta HTTP, sebagai protokol aplikasi web.

2.1.2 Internet Protocol ( IP )

IP adalah protokol pada TCP/IP yang mengatur bagaimana suatu data dapat

dikenal dan dikirim dari satu komputer ke komputer lain sampai tujuan dalam

suatu jaringan komputer. IP memiliki karakteristik sebagai connectionless

protocol. Ini berarti IP tidak melakukan erorr – detection- and-recovery dan

pertukaran kontrol informasi ( disebut juga “handshake” ) untuk membangun

sebuah koneksi sebelum mengirim data. Sebuah koneksi baru akan terjadi apabila

proses handshake tersebut dilakukan, sehinga dalam hal ini IP bergantung pada

layer lainnya untuk melakukan handshake tersebut ( hunt, 2002 ).

IP memiliki 5 fungsi utama dalam jaringan berbasiskan TCP/IP ( Menurut

Hunt ) :

1. Mendefinisikan paket yang merupakan unit dasar transmisi di Internet

2. Mendefinisikan skema pengalamatan Internet

3. Memindahkan data antara Transport layer dengan Network Access layer

4. Melakukan routing paket

5. Melakukan fragmentasi dan penyusunan ulang paket.

Page 39: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

13

2.2. Voice over Internet Protocol ( VoIP )

Voice over Internet Protocol ( VoIP ) atau yang dikenal juga dengan sebutan

IP Telephony, adalah sistem yang mampu mengirimkan data paket suara

menggunakan jaringan internet dari suatu tempat ke tempat yang lain

menggunakan perantara protokol IP ( Internet Protocol ).

Bentuk paling sederhana dalam sistem VoIP adalah dua buah komputer yang

terhubung dalam suatu jaringan yang dapat berkomunikasi suara. Syarat dasar

untuk mengadakan koneksi sistem VoIP adalah pada ke dua buah komputer

tersebut mempunyai sound card ( kartu suara ), speaker dan mikropon. Dengan

menggunakan perangkat lunak khusus, kedua pemakai komputer bisa saling

terhubung dalam koneksi VoIP satu sama lain. Penekanan hubungan tersebut

adalah dalam bentuk suara ( voice ).

Pada perkembangannya, sistem koneksi VoIP mengalami evolusi. Bentuk

peralatan pun berkembang, tidak hanya berbentuk hubungan antar komputer

dalam suatu jaringan, tetapi juga hubungan komputer dengan peralatan yang lain

( contoh : pesawat telepon analog milik jaringan “ TELKOM “ ) yang terhubung

dengan jaringan VoIP. Untuk hubungan yang berbentuk seperti ini dibutuhkan

sebuah VoIP gateway, agar telepon analog biasa tersebut bisa berhubungan

dengan komputer dalam satu jaringan VoIP.

Page 40: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

14

2.2.1. Format Paket VoIP

Tiap paket VoIP terdiri atas dua bagian, yaitu header dan payload (beban).

Header terdiri atas IP Header, Real-time Transport Protocol ( RTP ) header, User

Datagram Protocol ( UDP ) header dan link header. Lihat gambar 2.1.

Masing - masing bagian dalam header tersebut memiliki tugas dan fungsi

sebagai berikut :

1. IP Header bertugas menyimpan informasi routing untuk mengirimkan

paket – paket ke tujuan. Pada setiap header IP disertakan tipe layanan atau

Type of Service ( ToS ) yang memungkinkan paket tertentu seperti paket

suara diperlakukan berbeda dengan paket yang non real-time.

2. UDP header sangat peka terhadap delay dan latency sehingga UDP sangat

cocok digunakan dalam aplikasi voice real-time. Selain itu juga UDP

memiliki ciri khusus yaitu tidak menjamin paket sampai tujuan.

3. RTP header adalah header yang dapat dimanfaatkan untuk melakukan

framing dan segmentasi data real-time. Pada RTP menggunakan protokol

kendali yang disebut RTCP ( Real-time Transport Control Protocol ) yang

akan mengendalikan QoS dan sinkronisasi media stream yang berbeda.

4. Besarnya Link header bergantung dari jenis media yang digunakan.

Gambar 2.1 Format Paket Voice over Internet Protocol ( VoIP )

Link Header IP Header Voice Payload UDP Header RTP Header

X Bytes 20 Bytes X Bytes 8 Bytes 12 Bytes

FORMAT PAKET VoIP

Page 41: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

15

2.2.2. Protokol Standard dalam sistem VoIP dari site www.Protocols.com

Tabel 2.1 Protokol Standard VoIP

Signaling

H.323 H.323

Megaco H.248 Gateway Control Protocol

MGCP Media Gateway Control Protocol

RVP over IP Remote Voice Protocol Over IP Specification

SAPv2 Session Announcement Protocol

SGCP Simple Gateway Control Protocol

SIP Session Initiation Protocol

Skinny Skinny Client Control Protocol (Cisco)

Media

DVB Digital Video Broadcasting

H.261 Video stream for transport using the real-time transport

H.263 Bitstream in the Real-time Transport Protocol

RTCP RTP Control protocol

RTP Real-Time Transport

2.2.3. Kebutuhan Bandwith untuk VoIP

Salah satu hal yang menjadi kendala dalam komunikasi VoIP adalah

ketersedian bandwith jaringan yang akan dipakai, karena ketersediaan bandwith

akan berpengaruh kepada kualitas suara dalam komunikasi VoIP. Ada beberapa

faktor yang mempengaruhi kebutuhan bandwith salah satunya adalah teknik

kompresi yang digunakan dalam jaringan tersebut atau yang biasa disebut dengan

codec ( coder decoder ). Ada beberapa jenis codec yang umum digunakan dalam

jaringan VoIP, antara lain : G.711, G.723, G.726, G.729, ILBC, LPC, dan GSM.

Untuk memperoleh perkiraan penggunaan dari berbagai codec dapat dilihat pada

Page 42: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

16

tabel berikut ( dihitung dengan menggunakan bandwith calculator dari site

http://www.asteriskguru.com/tools/bandwith_calculator.php) :

Tabel 2.2 Kebutuhan Bandwith VoIP

Codec Incoming ( Kbps ) Outgoing ( Kbps ) GSM-13.00 Kibps 28.63 28.63

ILBC – 15.20 Kibps 30.83 30.83

LPC – 2.50 Kibps 18.13 18.13

G.711 – 64.00 Kibps 79.63 79.63

G.723 – 1-6.10 Kibps 21.73 21.73

G.726 – 32.00 Kibps 47.63 47.63

G.729 – 8.00 Kibps 23.63 23.63

Tabel 2.2, merupakan tabel hasil perkiraan perhitungan bandwith yang

dibutuhkan dalam setiap 1 panggilan / percakapan pada jaringan VoIP dengan

menggunakan codec tertentu. Kebutuhan bandwith untuk masing – masing codec

dapat dilihat pada hasil incoming bandwith dan outgoing bandwith.

2.2.4. Jenis Konfigurasi Jaringan VoIP

Jenis Konfigurasi VoIP dapat dibuat dalam berbagai skenario, konfigurasi

ini bergantung pada perangkat apa saja yang akan diterapkan dalam membangun

jaringan VoIP. Secara umum konfigurasi VoIP dapat dijelaskan sebagai berikut :

1. Hubungan Telepon dengan menggunakan N:1 Gateway

Konfigurasi VoIP ini menggunakan jaringan telepon dan merupakan

hubungan phone to phone. VoIP gateway berfungsi sebagai translator atau

konversi voice ke data ataupun sebaliknya.

Page 43: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

17

Gambar 2.2 Hubungan Telepon menggunakan N:1 Gateway

2. Hubungan PC menggunakan Router

Konfigurasi ini merupakan konfigurasi komunikasi PC to PC

menggunakan router. Pada konfigurasi ini, proses encoding, kompresi, serta

enkapsulasi dilakukan di PC. Tugas router adalah mempelajari IP address

tujuan yang terdapat pada datagram dan me-routing-kan sesuai dengan

tujuannya. Pada konfigurasi ini, sangat bergantung pada kemampuan

microphone PC dalam hal penerimaan suara yang biasanya background noise

juga akan mengikuti sebagai bagian dari suara pembicara.

Gambar 2.3 Hubungan PC menggunakan Router

3. Hubungan Telepon ke PC

Konfigurasi ini digunakan untuk menghilangkan permasalahan noise yang

timbul pada konfigurasi hubungan PC menggunakan router, yaitu dengan

menggunakan telepon sebagai pengganti microphone. Pada konfigurasi ini PC

Page 44: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

18

berfungsi sebagai pada operasi konversi A/D ( Analog to Digital ) dan D/A

( Digital to Analog ).

Gambar 2.4 Hubungan Telepon ke PC

4. Hubungan dengan Gateway 1:1

Konfigurasi ini merupakan bentuk lain dari hubungan phone to phone.

Rasio 1:1 berarti hanya ada satu voice connection ( koneksi suara ) yang

didukung oleh gateway. Fungsi dari gateway pada konfigurasi jenis ini adalah

untuk menerima sinyal analog dari telepon dan melakukan proses A/D

( Analog to Digital ) pada sinyal. Pada konfigurasi jenis ini memiliki beberapa

parameter antara lain : IP-address, nomor telepon, ISP yang akan dimasukkan

melalui dialpad pesawat telepon. Konfigurasi ini memiliki kelemahan yaitu

penerima dan pengirim harus mempunyai gateway 1:1.

Gambar 2.5 Hubungan dengan Gateway 1:1

Page 45: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

19

5. Hubungan menggunakan LAN ( Local Area Network )

Konfigurasi jenis ini merupakan kombinasi dari konfigurasi hubungan

telepon ke PC dan konfigurasi hubungan dengan gateway 1:1. Pada

konfigurasi ini semua user dihubungkan dalam suatu LAN dan suatu site.

Panggilan Lokal pada LAN akan diatur oleh gateway. Fungsi dari gateway

adalah melakukan suatu fungsi manajemen hubungan, sedangkan PC dan

workstation akan menjalankan VoIP dan mengeksekusi low bit rate voice dari

voice coder.

Gambar 2.6 Hubungan menggunakan LAN ( Local Area Network )

2.3. Session Initiation Protocol ( SIP )

Session Initiation Protocol ( SIP ) merupakan standar protokol multimedia

yang dikeluarkan oleh group yang tergabung dalam Multiparty Multimedia

Session Control ( MMUSIC ) yang berada dalam organisasi Internet Engineering

Task Force ( IETF ) yang didokumentasikan kedalam dokumen request for

command ( RFC ) 2543 pada bulan Maret 1999.

Page 46: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

20

SIP sendiri merupakan protokol yang berada pada layer aplikasi yang

mendefinisikan proses awal, pengubahan dan pengakhiran ( pemutusan ) suatu

sesi komunikasi. Protokol SIP ini memiliki karakter client-server, yang berarti

bahwa request diberikan oleh client dan request ini akan dikirimkan ke server.

Kemudian server akan mengolah dan memberikan tanggapan terhadap request

tersebut ke client. Request dan tanggapan ini disebut sebagai sebuah transaksi

SIP. SIP disebut juga sebagai protokol yang text-based ( berbasis text ).

2.3.1 Susunan Protokol SIP

Protokol SIP didukung oleh beberapa protokol, antara lain RSVP, RTP,

RCTP dan SDP. Tetapi secara default SIP menggunakan protokol RTP atau UDP

sebagai protokol transport. Susunan protokol SIP dapat digambarkan sebagai

berikut :

Gambar 2.7 Susunan Protokol SIP

UDP

RTP

IP

IP SDP SIP

TCP

Page 47: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

21

1. Protokol RSVP ( Resource Reservation Protocol )

Protokol ini berfungsi untuk menyediakan bandwith agar data suara yang

dikirimkan tidak mengalami delay atau kerusakan saat mencapai alamat tujuan

unicast maupun multicast.

RSVP merupakan signaling protocol tambahan pada VoIP yang

mempengaruhi QoS. RSVP bekerja dengan mengirimkan request pada setiap

node dalam jaringan yang digunakan untuk pengiriman data stream dan pada

setiap node RSVP akan membuat resource reservation untuk pengiriman data.

2. RTP ( Real-time Transport Protocol )

Protokol RTP menyediakan transfer media secara real-time pada jaringan

paket. Protokol RTP menggunakan protokol UDP dan header RTP

mengandung informasi kode bit yang spesifik pada tiap paket yang

dikirimkan, hal ini digunakan untuk membantu penerima mengantisipasi

apabila ada paket yang hilang.

3. RCTP ( Real-time Control Transport Protocol )

Protokol RCTP merupakan protokol yang mengendalikan transfer media.

Protokol ini akan bekerja sama dengan protokol RTP. Dalam satu sesi

komunikasi, protokol RTP mengirimkan paket RCTP secara periodik untuk

memperoleh informasi transfer media dalam memperbaiki kualitas layanan.

4. SDP ( Session Description Protocol )

Protokol SDP merupakan protokol yang mendeskripsikan media dalam

suatu komunikasi. Tujuan protokol SDP adalah untuk memberikan informasi

aliran media dalam satu sesi komunikasi agar penerima yang menerima

Page 48: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

22

informasi tersebut dapat berkomunikasi. Pada protokol SDP ini mencakup

beberapa hal antara lain : nama sesi komunikasi dan tujuannya, waktu sesi

(jika) aktif, media dalam sesi komunikasi, informasi bagaimana cara

menerima media ( misalnya : port dan format ), bandwith yang digunakan

dalam komunikasi, orang yang dapat dihubungi.

2.3.2 Komponen Protokol SIP

Dalam hubungannya dengan IP telephony atau VoIP, ada dua komponen

utama dalam sistem SIP, yaitu :

1. User Agent

User agent merupakan sistem akhir ( end system ) yang digunakan untuk

berkomunikasi. User agent terdiri atas dua bagian yaitu :

a. User Agent Client ( UAC )

UAC merupakan aplikasi pada client yang didesain untuk memulai SIP

request.

b. User Agent Server ( UAS )

UAS merupakan aplikasi server yang memberitahukan user jika

menerima request dan memberikan respon terhadap request tersebut.

Respon yang diberikan dapat berupa menerima atau menolak request.

2. Network Server

Agar user pada jaringan SIP dapat memulai suatu panggilan dan dapat

pula dipanggil, maka user terlebih dahulu harus melakukan registrasi agar

lokasinya dapat diketahui. Registrasi dapat dilakukan dengan mengirimkan

Page 49: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

23

pesan REGISTER ke server SIP. Pada jaringan SIP ada dua tipe network

server yaitu :

a. Proxy Server

Proxy Server adalah server yang menerima request, mengolahnya serta

meneruskan request yang diterimanya ke next hop server setelah

mengubah beberapa header pada pesan request. Next hop server dapat

berupa server SIP atau server lainnya dimana proxy server tidak perlu

tahu. Proxy server dapat berfungsi sebagai client dan server karena proxy

server dapat memberikan request dan respon.

b. Redirect Server

Redirect Server merupakan server yang menerima pesan request serta

memberikan respon terhadap request tersebut yang berisikan alamat dari

next hop server.

2.3.3 Pengalamatan Protokol SIP

Entitas pada jaringan SIP mempunyai alamat yang diberi attribut berupa SIP

URL ( SIP Uniform Resource Locator ) agar mudah dikenali. SIP URL yang

digunakan pada jaringan SIP berbentuk seperti alamat email yaitu user@host.

Dimana user dapat berupa nama user, nomor telepon, atau nama instansi. Host

dapat berupa nama domain atau IP address. Alamat SIP dengan bentuk

phone_number@gateway menunjukkan nomor telepon pada jaringan General

Switched Telephone Network ( GSTN ) yang dapat dihubungi dengan nama

gateway yang diketahui.

Page 50: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

24

Pengalamatan pada protokol SIP memiliki format sebagai berikut :

Gambar 2.8 Format Pengalamatan pada Protokol SIP

Contoh alamat SIP adalah sebagai berikut :

Sip : [email protected], merupakan host independent

Sip : [email protected], merupakan host spesific

Sip : [email protected], merupakan nomor

telepon user dengan domain gateway information.telkom.net

2.3.4 Format Pesan Protokol SIP

Secara keseluruhan, pesan SIP terdiri atas dua bagian, yaitu request dan

respon. Ketika client mengirimkan pesan request maka server akan memberikan

tanggapan terhadap pesan request dari client dengan menggunakan pesan respon.

Pesan request dan pesan respon menggunakan gereneric-message yang

didefinisikan pada standar pesan berbasis text dalam komunikasi internet yang

dapat dijumpai didalam RFC 822.

Pesan request dan respon terdiri atas start line, satu atau lebih header field

( message header ) , empty line yang digunakan sebagai petunjuk akhir dari

header field serta message body yang mendefinisikan sesi komunikasi. Format

pesan pada SIP dapat dilihat pada gambar dibawah ini :

Gambar 2.9 Format Pesan SIP

[sip:] < username@host >

Generic-message : Start-line ( dalam pesan request) Status-Line ( dalam pesan respon ) Message Header Empty Line Message body

Page 51: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

25

2.3.5 Header Field pada protokol SIP

Pada protokol SIP mempunyai 37 header, yaitu pesan – pesan yang

menggunakan header field untuk mendefinisikan caller, callee, jalur pesan, tipe

dan panjang message body. Header SIP dikelompokkan menjadi empat jenis,

yaitu :

1. General Header Field ( GHF )

GHF merupakan header yang dipakai pada pesan request dan pesan

respon. GHF yang umumnya dipakai antara lain : Call-ID, Cseq, From,To,

via.

2. Entity Header Field ( EHF )

EHF menunjukkan informasi message body. Jika message body tidak

ditemukan, maka header ini menunjukkan sumber yang diidentifikasi oleh

request. Contoh header EHF antara lain : Content-Length, Content-Type,

Content-Encoding.

3. Request Header Field ( RsHF )

RsHF adalah header yang terdapat dalam pesan request, yang

merupakan tambahan informasi tentang client dan pesan request itu sendiri.

Header yang sering dipakai adalah header Contact yang merupakan

informasi lokasi yang tergantung dari pesan tempat header itu berada.

4. Response Header Field ( ReHF )

ReHF merupakan header yang dipakai oleh server untuk menambahkan

informasi tentang respon yang tidak dapat ditempatkan pada start line

request.

Page 52: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

26

2.3.6 SIP Request dan SIP Response

2.3.6.1 SIP Request

SIP Request merupakan pesan request yang dikirimkan dari client ke

server. Terdapat 6 ( enam ) tipe pesan request, antara lain :

1. INVITE

Pesan ini digunakan untuk memulai suatu sesi komunikasi. Message

body pesan INVITE berisikan deskripsi media yang dapat digunakan dalam

komunikasi.

2. ACK

Pesan ini berfungsi memberitahukan bahwa client telah menerima

tanggapan terakhir terhadap pesan INVITE. Message body pesan ACK dapat

membaca deskripsi media yang akan digunakan oleh user yang dipanggil

( callee ). Jika message body ini kosong berarti calle setuju dengan message

body yang terdapat pada pesan INVITE.

3. BYE

Pesan ini dikirimkan oleh client untuk mengakhiri sesi komunikasi

4. CANCEL

Pesan CANCEL dikirimkan untuk membatalkan pesan request yang

telah dikirimkan sebelumnya, sebelum server mengirimkan pesan final

response.

5. OPTIONS

Pesan ini dikirimkan oleh client ke server untuk mengetahui

kapabilitasnya.

Page 53: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

27

6. REGISTER

Pesan REGISTER digunakan oleh client untuk registrasi lokasi ke SIP

Server yang disebut dengan SIP register.

2.3.6.2 SIP Response

Pesan respon dikirimkan oleh server setelah menerima pesan request

dari client untuk menunjukkan status keberhasilan server. Pesan respon

didefinisikan dengan tiga angka. Angka pertama merupakan kelas respon

( seluruhnya ada 6 kelas respon ), angka kedua dan angka ketiga menunjukkan

arti dari respon tersebut. Berikut tabel yang menunjukkan arti kelas respon SIP :

Tabel 2.3 Pesan SIP Response

Kelas Respon Jenis Respon Kategori Respon 1XX Informational Provisional

2XX Success Final

3XX Redirection Final

4XX Client Error Final

5XX Server Error Final

6XX Global Error Final

Pada dasarnya SIP Response terbagi atas dua kategori, yaitu :

1. Provisional Response

Respon ini merupakan respon yang dikirimkan oleh server untuk

menunjukkan proses sedang berlangsung, tapi tidak untuk mengakhiri

transaksi SIP.

2. Final Response

Respon ini merupakan respons yang mengakhiri transaksi SIP.

Page 54: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

28

2.3.7 Prosedur Persinyalan pada Protokol SIP

2.3.7.1 Prosedur Persinyalan menggunakan Proxy Server

Prosedur persinyalan menggunakan Proxy Server dapat dilihat pada

gambar 2.10 sebagai berikut :

Gambar 2.10 Prosedur Persinyalan SIP menggunakan Proxy Server

Langkah - langkah dalam proses persinyalan menggunakan proxy server

adalah sebagai berikut :

1. Pesan request INVITE dari caller ( endpoint 1@site1 ) akan

dikirimkan ke Proxy Server ( INVITE endpoint 2@site2 )

2. Proxy Server akan mengirimkan alamat yang terdapat pada pesan

request langkah 1 ke location server untuk memperoleh lokasi

endpoint 2@site2.

3. Location Server akan memberikan lokasi client yang berada pada site2

( client 2@site2 ).

Page 55: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

29

4. Proxy Server akan mengirimkan pesan INVITE berdasarkan lokasi

yang diberikan oleh location server. ( INVITE endpoint 2@site2 )

5. User Agent Server akan memberitahukan pada user ada pesan INVITE

yang diterima ( 100 Trying )

6. Jika pesan INVITE diterima , maka dikirimkan pesan final response

200 OK

7. Setelah pesan final response ini diterima kemudian dikirimkan pesan

ACK.

2.3.7.2 Prosedur Persinyalan menggunakan Redirect Server

Prosedur persinyalan menggunakan Redirect Server dapat dilihat pada

gambar 2.11 berikut :

Gambar 2.11 Prosedur Persinyalan SIP menggunakan Redirect Server

Page 56: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

30

Langkah - langkah dalam proses persinyalan menggunakan Redirect

Server adalah sebagai berikut :

1. Pesan request INVITE dari caller ( endpoint 1@site1 ) dikirimkan ke

Redirect Server ( INVITE endpoint 2@site2)

2. Redirect Server akan mengirimkan alamat yang terdapat pada pesan

request langkah 1 ke location server untuk memperoleh lokasi

endpoint 2@site3.

3. Location Server akan memberikan lokasi client yang berada pada site3

( site 3 ) kepada Redirect Server.

4. Setelah Redirect Server menerima lokasi dari location server ( langkah

3 ), redirect server akan mengirimkan respon redirect kelas 3XX

dengan menambahkan header Contact.

5. Caller ( endpoint 1@site1 ) akan mengirimkan pesan ACK ke

Redirect Server.

6. Caller ( endpoint 1@site1 ) akan mengirimkan pesan INVITE yang

dengan alamat yang diberikan oleh server langsung ke callee

( endpoint 2@site3 ).

7. Calle ( endpoint 2@site3 ) akan memberikan respon dengan

mengirimkan pesan respon 200 OK ke caller.

Page 57: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

31

2.3.8 Fungsi dari Protokol SIP

Protokol SIP memiliki fungsi dan peranan sebagai berikut :

1. Call Initiation

Pada call initiation mencakup beberapa hal yaitu : membangun sesi

komunikasi, negosiasi media transfer ptotokol, mengundang user agent lain

untuk bergabung dalam sesi komunikasi.

2. Call Modification

Apabila diperlukan SIP dapat berfungsi untuk memodifikasi sebuah sesi

komunikasi.

3. Call Termination

SIP berfungsi juga untuk menutup sebuah sesi komunikasi.

2.4. Internet Protocol Private Branch Exchange ( IP PBX )

IP PBX atau Internet Protocol Private Branch Exchange adalah PABX yang

menggunakan teknologi IP. IP PBX merupakan perangkat switching komunikasi

telepon dan data berbasis teknologi Internet Protocol ( IP ) yang mengendalikan

ekstension telepon analog ( TDM ) maupun ekstension IP Phone. Fungsi-fungsi

yang dapat dilakukan pada IP PBX antara lain penyambungan, pengendalian, dan

pemutusan hubungan telepon; translasi protokol komunikasi; translasi media

komunikasi atau transcoding; serta pengendalian perangkat-perangkat IP

Telephony seperti VoIP Gateway, Access Gateway, dan Trunk Gateway.

Solusi berbasis IP PBX merupakan konsep jaringan komunikasi generasi

masa depan atau dikenal dengan istilah NGN ( Next Generation Network ) yang

Page 58: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

32

dapat mengintegrasikan jaringan telepon konvensional ( PSTN/POTS ), jaringan

telepon bergerak ( GSM/CDMA ), jaringan telepon satelit, jaringan Cordless

(DECT), dan jaringan berbasis paket ( IP/ATM ).

IP PBX membawa kemampuan multilayanan dijaringan IP ke dunia

komunikasi telephony, sehingga akan memungkinkan semakin banyak layanan

komunikasi yang dapat berjalan di atas jaringan IP. Multilayanan tersebut antara

lain Voicemail & Voice Conference, Interactive Voice Response ( IVR ),

Automatic Call Distribution ( ACD ), Computer Telephony Integration ( CTI ),

Unified Messaging System ( UMS ), Fax Server & Fax on Demand, Call

Recording System, Billing System, serta Web-based Management System.

IP PBX juga dapat mendukung antarmuka trunk Analog FXO / FXS; Digital

E1-MFC R2, ISDN BRI, ISDN PRI; IP ( H.323/SIP/IAX ); dan Analog Tie Line

E&M. Selain itu, IP PBX dapat mendukung antarmuka ekstension Analog FXO /

FXS; ekstension Digital; ISDN Interface BRI ( 2B+D ); dan TCP IP ( H.323 / SIP

/ IAX ).

Pengembangan terbaru dari PBX adalah VoIP PBX (Voice Over IP) PBX ,

atau yang dikenal dengan IP PBX, yang menggunakan IP ( Internet Protocol )

untuk membawa panggilan.

Page 59: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

33

2.4.1.Komponen Dasar IP PBX

Sebuah IP PBX ( Internet Protocol Private Branch Exchange ), terdiri atas

beberapa komponen, yaitu :

1. Data Account

Data Account pada IP PBX terdiri dari 2 macam, yaitu :

a. Data account Extensions

Merupakan data account yang akan di gunakan oleh extension agar

terhubung dengan IP PBX. Extension di sini adalah sebuah nama atau

nomor yang merepresentasikan user dari IP PBX

b. Data account Trunk

Merupakan data account yang akan di gunakan IP PBX untuk

menghubungi trunk. Trunk adalah sebuah nama atau nomor yang

merepresentasikan server lain atau IP PBX lain yang akan di hubungi

oleh IP PBX ini.

2. DialPlan

Merupakan aturan dial yang akan dimanfaatkan oleh extension untuk

menghubungi sesama extension atau trunk dan sebaliknya.

Gambar 2.12 Komponen Dasar IP PBX

Page 60: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

34

2.5 Asterisk

Asterisk adalah salah satu software open source IP PBX ( Internet Protocol

Private Branch Exchange ) jenis SIP Proxy. Asterisk memiliki banyak features

sehingga dengan menggunakan Asterisk dapat dimungkinkan untuk membangun

sebuah jaringan “Telkom” sendiri.

Untuk dapat menjalankan Asterisk sebagai sebuah sentral telepon sederhana,

minimal dibutuhkan :

1. PC ( Personal Computer ) dengan sistem Operasi Linux, yang dijadikan

sebagai VoIP server.

2. Sambungan LAN ( Local Area Network ) atau Internet.

3. Asterisk, sebagai software IP PBX untuk membangun jaringan VoIP.

Untuk skalabilitas ( scalability ) pemekaran jaringan, Asterisk mendukung

beberapa bentuk format data, yaitu :

1. TDMoE ( Time Division Multiplex over Ethernet ), yang memungkinkan

penyambungan langsung ke IP PBX asterisk dengan delay rendah ( zero

latency ) serta dengan penggunaan kartu Ethernet yang ada di pasaran.

2. Voice-over IP yang memungkinkan integrasi berbagai peralatan yang

secara fisik terpisah menggunakan sambungan data yang biasa

digunakan atau menggunakan dialplan terintegrasi untuk banyak kantor

sekaligus.

3. Mendukung coder-decoder ( codec ) ADPCM, G.711 ( A-Law &

u-Law ), G.723.1 ( pass through ), G.726, G.729, GSM, iLBC, Linear,

LPC-10 dan Speex

Page 61: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

35

4. Mendukung protokol VoIP, antara lain : IAX ( Inter-Asterisk Exchange )

, H.323, SIP ( Session Initiation Protocol ), MGCP ( Media Gateway

Control Protocol ), dan SCCP ( Cisco Skinny ).

5. Mendukung berbagai protokol ISDN PRI, seperti 4ESS, BRI

( ISDN4Linux ), DMS100, EuroISDN, Lucent 5E, National ISDN2, dan

NFAS.

2.5.1 Features Asterisk

Asterisk dapat di jadikan pilihan untuk mendirikan jaringan komunikasi

berbasis IP PBX ( baik untuk skala kecil,menengah, sampai ratusan extensions )

karena memiliki beberapa features antara lain : voicemail, conference bridge , call

queue, call detailed record.

Selain itu juga asterisk memilki beberapa features pendukung yang lain,

yaitu : ADSI On-Screen Menu System, Alarm Receiver, Blacklist, Blind Transfer,

Call Forward On Busy, Call Forward on No Answer, Call Monitoring, Call

Parking, Call Queuing, Call Recording, Call Retrieval, Call Routing ( DID &

ANI ), Call Transfer, Call waiting, Caller ID, Caller ID Blocking, Caller ID on

Call Waiting, Calling Cards, Conference Bridging, Dial by Name, Distinctive

Ring, Do Not Distrub, E911, ENUM, Interactive Voice Response ( IVR ), Music

On Hold, Music On Transfer, SMS Messaging, Spell / Say, Streaming Media

Access, Supervised Transfer, Talk Detection, Text-to-Speech ( via Festival ),

Three-way Calling, VoIP Gateways, Visual Indocator for Message Waiting, dan

Zapateller.

Page 62: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

36

2.5.2 File Konfigurasi Asterisk

Setelah selesai proses instalasi Asterisk, maka terbentuk beberapa file

konfigurasi, yang terletak pada direktori antara lain :

1. /etc/asterisk : merupakan file – file konfigurasi utama

2. /var/log/asterisk : merupakan file yang mencatat log dan call data

record

3. /var/lib/asterisk : merupakan file yang digunakan untuk aplikasi

dan data pendukung ( AGI, MoH, sounds )

4. /usr/lib/asterisk : merupakan file yang digunakan untuk binary

module, codec dan aplikasi

2.5.3 Konfigurasi Asterisk

Konfigurasi Asterisk sebagai IP PBX dilakukan pada beberapa file

konfigurasi antara lain :

1. Konfigurasi data Account ( data account extensions dan trunks )

Konfigurasi ini bisa disebut dengan proses pendaftaran nomor telepon

pada Asterisk VoIP server. Konfigurasi data account extension dan trunk

berada di file berikut :

a. /etc/asterisk/sip.conf : digunakan untuk account yang

menggunakan protokol SIP

b. /etc/asterisk/iax.conf : digunakan untuk account yang

menggunakan protokol IAX2

Page 63: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

37

Untuk setiap data account dikonfigurasi dengan sebuah blok text yang

memiliki bentuk sebagai berikut :

Gambar 2.13 Format Blok text Data Account

Dimana xxx merupakan nama yang diasosiasikan dengan SIP client

atau sembarang nama yang digunakan oleh file konfigurasi lain untuk

mereferensikan sebuah peralatan SIP. Pada Type,harus diisi dengan

“user”, “peer” atau “friend”. Sedangkan banyaknya parameter yang

digunakan dapat disesuaikan dengan kebutuhan.

Contoh konfigurasi data account extensions ( menggunakan SIP ):

Gambar 2.14 Contoh Konfigurasi Data Account ( menggunakan SIP )

2. Konfigurasi DialPlan

DialPlan merupakan proses untuk mengatur apa yang harus dilakukan

apabila ada client melakukan panggilan ( Dial ) pada nomor telepon tertentu.

Konfigurasi DialPlan berada pada file /etc/asterisk/extensions.conf, dengan

format penulisan sebagai berikut :

Gambar 2.15 Format Penulisan DialPlan

[ xxx ]

Type = yyy

Parameter1 = nilai

Parameter2 = nilai

[100] type=friend host=dynamic context= home username= 100 secret=100 callerid=100 <”100”>

[ home ] exten => extension,priority,application

Page 64: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

38

Keterangan :

[ home ] adalah nama context seperti yang didefinisikan pada

konfigurasi data Account ( lihat gambar 2.14 ).

Extension adalah nomor extension, bisa menggunakan masking

Priority adalah nomor prioritas, dimulai dari 1

Application adalah aplikasi yang digunakan pada Dial Plan

Aplikasi Dasar yang ada pada DialPlan adalah sebagai berikut :

a. Ringing

Format : Ringing

Penjelasan : Aplikasi Ringing akan menyebabkan penelepon

mendengar nada tunggu

b. Wait

Format : Wait,delay

Contoh : Wait,2

Penjelasan : Aplikasi Wait di atas akan menyebabkan

penelepon tertunda selama 2 detik

c. Hangup

Format : Hangup

Penjelasan : Aplikasi Hangup akan menyebabkan penelepon

mendengar nada sibuk karena transaksi komunikasi berakhir.

d. Dial

Format :

Dial(technology/[account/]extension[|option])

Page 65: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

39

Penjelasan :

Technology adalah protokol yang digunakan (contoh SIP, IAX2)

Account adalah data account trunk

Extension adalah data account extension, dapat juga menggunakan

variable ${EXTEN}

Option adalah pilihan tambahan, seperti waktu tunggu ringing.

Contoh Konfigurasi DialPlan :

Keterangan :

[ home ], merupakan context yang digunakan pada konfigurasi gambar

2.13

Bila dial 100,maka extension SIP 100 akan ringing, setelah selesai hangup.

2.6. Asterisk Realtime Architechture ( ARA )

Asterisk Real Time Architecture merupakan teknik untuk menyimpan data

konfigurasi users / peers ( sipusers ), voicemail, DialPlan ke dalam database.

Dengan menggunakan teknik ini, konfigurasi manual yang biasanya harus di

reload dulu sebelum digunakan tidak perlu dilakukan lagi. Teknik Asterisk

Realtime dilakukan dengan cara meng-entry data pada tabel dalam database yang

sudah dipersiapkan sebelumnya. Salah satu database yang didukung oleh teknik

ini adalah MySQL, dan juga beberapa database lainnya yang mendukung koneksi

ODBC.

[home] exten => 100,1,Dial(SIP/100) exten => 100,2,Hangup

Gambar 2.16 Contoh Konfigurasi DialPlan

Page 66: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

40

2.6.1 Langkah – Langkah Konfigurasi ARA pada Asterisk

Untuk dapat menggunakan teknik ARA pada Asterisk, diperlukan suatu

driver yang digunakan untuk koneksi Asterisk dengan database, yaitu asterisk-

addons. Sebelum driver ini digunakan, maka perlu di compile terlebih dahulu

dengan perintah sebagai berikut :

Proses compile asterisk-addons tersebut, akan menambahkan modules

res_config_mysql.so dan cdr_mysql.so pada direktori /usr/lib/asterisk/modules

.Kedua buah modules ini berguna untuk koneksi Asterisk dengan database

khususnya database MySQL. Setelah kedua modules tersebut ditambahkan, maka

perlu untuk meng-copy file res_mysql.conf.sample dan cdr_mysql.conf.sample

yang berasal dari {asterisk-addons-direktori} menuju ke direktori /etc/asterisk.

Perintahnya adalah sebagai berikut :

Setelah dipastikan bahwa file res_mysql.conf dan cdr_mysql.conf ter-copy

pada direktori /etc/asterisk, maka langkah selanjutnya adalah melakukan

konfigurasi pada beberapa file konfigurasi antara lain :

1. Konfigurasi file res_mysql.conf

Konfigurasi ini dilakukan untuk mengkoneksikan antara Asterisk dengan

database yang digunakan. Konfigurasi yang digunakan misalkan saja

sebagai berikut :

Shell > cd {asterisk-addons-direktory}

Shell > cp res_mysql.conf.sample /etc/asterisk/res_mysql.conf

Shell > cp cdr_mysql.conf.sample /etc/asterisk/cdr_mysql.conf

Shell > cd {asterisk-addons-direktory}

Shell > make; make install

Page 67: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

41

Konfigurasi diatas, menyimpan informasi tentang host / IP address,

nama database, nama user dari database, password user database, nomor

port yang digunakan.

2. Konfigurasi file cdr_mysql.conf

Konfigurasi ini dilakukan untuk mengkoneksikan antara Asterisk dengan

tabel yang digunakan untuk menyimpan data call detail record. Konfigurasi

yang digunakan misalkan saja sebagai berikut :

Gambar 2.18 Contoh Konfigurasi file cdr_mysql.conf

Konfigurasi diatas, menyimpan informasi tentang host / IP address,

nama database, nama tabel yang digunakan, nama user dari database,

password user database, nomor port yang digunakan.

3. Konfigurasi file extconfig.conf

Konfigurasi ini dilakukan agar Asterisk dengan menggunakan teknik

Asterisk Realtime dapat mengkonfigurasi sippeers / sipusers, voicemail, dan

extensions ( DialPlan ) melalui database MySQL. Konfigurasi tersebut

[global] hostname=127.0.0.1 dbname= asteriskrealtime table=cdr password=mypass user=myuser port=3306 sock=/var/lib/mysql/mysql.sock userfield=1

[general] dbhost = 127.0.0.1 dbname = asteriskrealtime dbuser = myuser dbpass = mypass dbport = 3306 dbsock = /tmp/mysql.sock

Gambar 2.17 Contoh Konfigurasi file res_mysql.conf

Page 68: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

42

masing – masing digunakan untuk otentikasi users / pendaftaran nomor

telepon, konfigurasi fasilitas voicemail, dan pengaturan nomor Dial

( DialPlan ). Format untuk konfigurasi ini adalah sebagai berikut :

[settings]

file.conf => driver,database[,table]

Contoh konfigurasi pada file extconfig.conf :

Gambar 2.19 Contoh Konfigurasi file extconfig.conf

4. Konfigurasi file extensions.conf

Konfigurasi ini dilakukan agar Asterisk dapat membaca data konfigurasi

DialPlan pada tabel yang ada di database. Konfigurasi yang digunakan

misalkan saja sebagai berikut :

Gambar 2.20 Contoh Konfigurasi file extensions.conf

Konfigurasi diatas berarti bahwa seluruh panggilan ( call ) pada context

asterisk-users, akan dibaca secara Realtime dengan context home

dengan nama family extensions ( nama family ini sama dengan nama family

yang digunakan pada file extconfig.conf untuk pengaturan DialPlan ).

Setelah mengkonfigurasi file – file seperti diatas, maka langkah selanjutnya

adalah membuat tabel yang akan digunakan untuk menyimpan data konfigurasi.

Tabel – tabel yang akan digunakan merupakan tabel standard yang dapat dikenali

oleh sistem Asterisk. Perintah SQL untuk membuat tabel – tabel tersebut antara

lain sebagai berikut ( diambil dari site www.voip-info.org ) :

[settings]sipusers => mysql,asteriskrealtime,sip_buddies sippeers => mysql,asteriskrealtime,sip_buddies extensions => mysql,asteriskrealtime,extensions voicemail => mysql,asteriskrealtime,voicemessages

[asterisk-users]

switch => Realtime/home@extensions

Page 69: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

43

1. Tabel sip_buddies

Tabel ini digunakan untuk menyimpan data konfigurasi users / peers.

Perintah SQL untuk membuat tabel sip_buddies adalah sebagai berikut :

CREATE TABLE `sip_buddies` ( `id` int(11) NOT NULL auto_increment, `name` varchar(80) NOT NULL default '', `host` varchar(31) NOT NULL default '', `nat` varchar(5) NOT NULL default 'no', `type` enum('user','peer','friend') NOT NULL default 'friend', `accountcode` varchar(20) default NULL, `amaflags` varchar(13) default NULL, `callgroup` varchar(10) default NULL, `callerid` varchar(80) default NULL, `cancallforward` char(3) default 'yes', `canreinvite` char(3) default 'yes', `context` varchar(80) default NULL, `defaultip` varchar(15) default NULL, `dtmfmode` varchar(7) default NULL, `fromuser` varchar(80) default NULL, `fromdomain` varchar(80) default NULL, `insecure` varchar(4) default NULL, `language` char(2) default NULL, `mailbox` varchar(50) default NULL, `md5secret` varchar(80) default NULL, `deny` varchar(95) default NULL, `permit` varchar(95) default NULL, `mask` varchar(95) default NULL, `musiconhold` varchar(100) default NULL, `pickupgroup` varchar(10) default NULL, `qualify` char(3) default NULL, `regexten` varchar(80) default NULL, `restrictcid` char(3) default NULL, `rtptimeout` char(3) default NULL, `rtpholdtimeout` char(3) default NULL, `secret` varchar(80) default NULL, `setvar` varchar(100) default NULL, `disallow` varchar(100) default 'all', `allow` varchar(100) default 'g729;ilbc;gsm;ulaw;alaw', `fullcontact` varchar(80) NOT NULL default '', `ipaddr` varchar(15) NOT NULL default '', `port` smallint(5) unsigned NOT NULL default '0', `regseconds` int(11) NOT NULL default '0', `username` varchar(80) NOT NULL default '', PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`), KEY `name_2` (`name`) ) TYPE=MyISAM ROW_FORMAT=DYNAMIC;

Gambar 2.21 Perintah SQL untuk Membuat Tabel sip_buddies

Page 70: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

44

2. Tabel extensions_table

Tabel ini di gunakan untuk menyimpan data untuk pengaturan DialPlan

Perintah SQL untuk membuat tabel extensions_table adalah sebagai berikut :

3. Tabel voicemail_users

Tabel ini digunakan untuk menyimpan informasi client yang dapat

menggunakan fasilitas voicemail pada Asterisk.

Perintah SQL untuk membuat tabel voicemail_users adalah sebagai berikut :

4. Tabel CDR ( Call Detail Record )

Tabel ini digunakan untuk menyimpan data catatan pembicaraan

( komunikasi ) yang terjadi pada Asterisk.

Perintah SQL untuk membuat tabel cdr adalah sebagai berikut :

CREATE TABLE `extensions_table` ( `id` int(11) NOT NULL auto_increment, `context` varchar(20) NOT NULL default '', `exten` varchar(20) NOT NULL default '', `priority` tinyint(4) NOT NULL default '0', `app` varchar(20) NOT NULL default '', `appdata` varchar(128) NOT NULL default '', PRIMARY KEY (`context`,`exten`,`priority`), KEY `id` (`id`) ) TYPE=MyISAM;

Gambar 2.22 Perintah SQL untuk membuat tabel extensions_table

CREATE TABLE `voicemail_users` ( `uniqueid` int(11) NOT NULL auto_increment, `customer_id` int(11) NOT NULL default '0', `context` varchar(50) NOT NULL default '', `mailbox` int(5) NOT NULL default '0', `password` varchar(4) NOT NULL default '0', `fullname` varchar(50) NOT NULL default '', `email` varchar(50) NOT NULL default '', `pager` varchar(50) NOT NULL default '', `stamp` timestamp(14) NOT NULL, PRIMARY KEY (`uniqueid`), KEY `mailbox_context` (`mailbox`,`context`) ) TYPE=MyISAM;

Gambar 2.23 Perintah SQL untuk membuat tabel voicemail_users

Page 71: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

45

2.7 Web Browser

Web browser merupakan perangkat lunak yang ada di sisi client, yang

mempunyai tugas menterjemahkan informasi yang di terima dari web server dan

menampilkannya pada layar komputer user. Oleh karena HTTP memungkinkan

web server mengirimkan beragam data, seperti teks atau gambar, browser harus

bisa mengenali berbagai macam data yang akan di terimanya, dan selanjutnya

harus tahu cara untuk menampilkannya dengan benar.

Pada umumnya web browser menerima data dalam bentuk HTML. File

HTML sebenarnya adalah file teks biasa yang selain berisi informasi yang hendak

di tampilkan kepada user. Namun file HTML juga mempunyai perintah – perintah

untuk mengatur tampilan data tersebut. Browser-lah yang memiliki kuasa penuh

dalam menterjemahkan format dan elemen – elemen HTML. Contoh web browser

yang popular Mozilla, Opera, Internet Explorer dan lain sebagainya.

CREATE TABLE `cdr` ( `calldate` datetime NOT NULL default '0000-00-00 00:00:00', `clid` varchar(80) NOT NULL default '', `src` varchar(80) NOT NULL default '', `dst` varchar(80) NOT NULL default '', `dcontext` varchar(80) NOT NULL default '', `channel` varchar(80) NOT NULL default '', `dstchannel` varchar(80) NOT NULL default '', `lastapp` varchar(80) NOT NULL default '', `lastdata` varchar(80) NOT NULL default '', `duration` int(11) NOT NULL default '0', `billsec` int(11) NOT NULL default '0', `disposition` varchar(45) NOT NULL default '', `amaflags` int(11) NOT NULL default '0', `accountcode` varchar(20) NOT NULL default '', `userfield` varchar(255) NOT NULL default '' );

Gambar 2.24 Perintah SQL untuk membuat tabel cdr

Page 72: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

46

2.8 Web Server

Web server adalah server ( program yang melayani koneksi tertentu ) yang

melayani koneksi HTTP. Dalam protokol TCP / IP, default untuk koneksi HTTP

di lakukan pada port 80, nilai port tersebut bisa di ubah nilainya. Perangkat lunak

web server sekarang telah tersedia untuk berbagai macam platform dan

lingkungan sistem operasi. Untuk lingkungan UNIX, yang popular adalah Apache.

Sementara untuk lingkungan Windows tersedia Microsoft Internet Information

Server ( IIS ). Meskipun beragam macamnya, secara fungsional semua jenis web

server adalah sama yaitu berfungsi untuk melayani permintaan – permintaan dari

web server.

2.9 PHP

PHP ( Hypertext Preprocessor ) adalah salah satu web scripting yang

populer. PHP di ciptakan pertama kali oleh Rasmus Lerdorf pada tahun 1994 dan

kemudian di kenal sebagai Personal Home Page tools. PHP bersifat freeware,

yaitu bebas di gunakan tanpa perlu membayar apapun untuk menggunakan

perangkat lunak ini.

PHP adalah bahasa scripting yang menyatu dengan HTML dan di jalankan

pada server side. Artinya semua sintaks yang kita berikan akan sepenuhnya di

jalankan pada server sedangkan yang di kirimkan ke browser hanya hasilnya saja.

PHP juga di rancang untuk membentuk web dinamis, yang dapat membentuk

tampilan berdasarkan permintaan terkini, missal untuk menampilkan isi sebuah

database ke halaman web.

Page 73: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

47

BAB III

ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM

3.1 Analisis Kebutuhan Sistem

Pada penelitian ini akan digunakan teknik Asterisk Realtime untuk

membangun Asterisk sebagai sebuah sentral telepon sederhana ( VoIP Server ),

dengan menggunakan teknik ini proses konfigurasi Asterisk dilakukan dengan

cara mengentry data pada tabel tertentu pada database, dimana data yang di-entry-

kan merupakan data parameter registrasi bagi client Asterisk. Untuk membangun

dan mengkonfigurasi sebuah Asterisk VoIP Server dengan menggunakan teknik

Asterisk Realtime, maka membutuhkan beberapa komponen antara lain sebagai

berikut :

1. Sebuah PC ( Personal Computer ) dengan sistem operasi Linux.

2. Software Asterisk, sebagai perangkat lunak untuk VoIP Server.

3. Asterisk-addons, sebagai driver untuk koneksi Asterisk dengan database

khususnya database MySQL.

4. Database Server, digunakan untuk melakukan konfigurasi Asterisk dengan

menggunakan teknik Asterisk Realtime

5. Perangkat Telepon VoIP, perangkat ini akan berfungsi sebagai client dari

VoIP Server dan merupakan perangkat yang akan melakukan komunikasi

VoIP. Secara umum perangkat Telepon VoIP ada dua jenis yaitu :

a. Perangkat Keras ( Hardware )

Hardware yang secara khusus didesain sebagai perangkat pesawat

Page 74: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

48

telepon pada jaringan VoIP. Salah satu hardware telepon VoIP adalah

berupa IP Phone.

Gambar 3.1 Perangkat Telepon VoIP Hardware ( IP Phone )

b. Perangkat Lunak ( Software )

Software perangkat Telepon VoIP sering disebut juga sebagai

softphone, merupakan sebuah program yang diinstalkan pada sebuah PC,

kemudian PC tersebut dengan tambahan headset dan mikrofon dapat

berfungsi layaknya sebuah pesawat telepon. Salah satu softphone yang

dapat digunakan adalah X-Lite.

Gambar 3.2 Perangkat Telepon VoIP Software ( X-Lite )

6. VoIP Gateway, merupakan sebuah perangkat keras yang digunakan untuk

menghubungkan antara jaringan VoIP dengan jaringan telepon biasa

( PSTN ) maupun jaringan PABX. Penggunaan perangkat ini, bersifat

optional ( pilihan ), artinya apabila memang jaringan VoIP yang akan

Page 75: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

49

dibangun ingin dihubungkan dengan jaringan PSTN atau PABX maka

perlu ditambahkan perangkat ini untuk tujuan tersebut, tetapi apabila

hanya akan mengoperasikan jaringan VoIP saja, tanpa dihubungkan

dengan jaringan PSTN atau PABX, maka perangkat ini tidak harus

digunakan. Salah satu perangkat VoIP Gateway yang dapat digunakan

adalah Internet Telephony Gateway ( ITG ) untuk selanjutnya sering

disebut dengan istilah Analog Telephony Adapter ( ATA ).

Gambar 3.3 Perangkat VoIP Gateway

7. Sambungan LAN atau internet, yang digunakan untuk menyambungkan

berbagai perangkat yang akan digunakan untuk membangun jaringan

VoIP.

Setelah komponen yang disebutkan diatas telah siap, maka langkah

selanjutnya yang harus dilakukan adalah sebagai berikut :

1. Menentukan jenis protokol yang akan digunakan pada jaringan VoIP

tersebut ( lihat pada tabel 2.1 ).

2. Membuat sebuah database dan tabel – tabel standard yang diperlukan

untuk mengkonfigurasi Asterisk secara Realtime ( lihat gambar 2.21 s/d

gambar 2.24 ).

3. Mengkonfigurasi file – file yang dibutuhkan untuk koneksi Asterisk

dengan database yang digunakan ( lihat gambar 2.17 s/d gambar 2.19 ).

Page 76: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

50

4. Merancang skenario jaringan yang akan digunakan untuk komunikasi

VoIP. Perancangan skenario jaringan bergantung dari kebutuhan dan

perangkat apa saja yang akan digunakan pada jaringan tersebut.

5. Melakukan proses entry data pada tabel – tabel yang sudah dibuat pada

langkah 2. Proses entry data tidak dilakukan pada semua tabel, melainkan

hanya pada beberapa tabel yang mendukung untuk konfigurasi Asterisk

secara Realtime.

6. Langkah terakhir sebelum perangkat Telepon VoIP dapat melakukan

komunikasi adalah meregistrasikan masing – masing perangkat yang

digunakan ke Asterisk VoIP Server dengan data register yang sudah

dientrykan pada tabel.

3.2 Gambaran Umum Sistem Komunikasi VoIP Menggunakan Asterisk

Secara umum, sistem komunikasi VoIP dengan menggunakan Asterisk

diawali dengan proses registrasi perangkat yang berfungsi sebagai client dari

VoIP Server tersebut, dengan adanya proses ini maka client akan dikenali sebagai

sebuah extensions dengan identitas berupa nomor extensions tertentu.

Setelah client berhasil teregister pada Asterisk, maka sebuah client dapat

melakukan komunikasi dengan client yang lain dengan cara mendial nomor

telepon dari client yang akan diajak komunikasi tersebut. Penekanan komunikasi

disini adalah komunikasi suara seperti pada jaringan telepon tradisional ( PSTN ).

Untuk lebih jelasnya dijelaskan pada gambar sebagai berikut :

Page 77: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

51

Gambar 3.4 Sistem Komunikasi VoIP Menggunakan Asterisk

Pada gambar 3.4 merupakan gambaran bentuk komunikasi antara client

berupa PC dengan nomor extensions 201 dan PC dengan nomor extensions 202.

Komunikasi diawali dengan proses register untuk masing – masing client pada

VoIP Server ( gambar 3.4 langkah 1 ) dengan menggunakan software Telepon

VoIP yang sudah terinstal pada masing – masing PC client tersebut.

Setelah proses register tersebut berhasil, masing – masing client dapat saling

berkomunikasi dengan diawali proses panggilan ( Dial ) dari salah satu extensions

ke extensions yang lain. Pada gambar 3.4 langkah 2 diatas diberikan contoh

proses Dial dari extensions 201 ke extensions 202. Apabila extensions 202

merespon panggilan tersebut ( gambar 3.4 langkah 3 ), maka komunikasi VoIP

berlangsung. Apabila extensions 202 tidak merespon panggilan dari extensions

201 maka proses selanjutnya dapat diatur melalui konfigurasi DialPlan

3.3 Penggunaan Teknik Asterisk Realtime Dalam Konfigurasi Asterisk

Berbasis Protokol SIP

Konfigurasi Asterisk untuk membangun sebuah sentral telepon ( VoIP

Server ) pada dasarnya dibagi menjadi dua proses, yaitu pertama konfigurasi

Page 78: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

52

otentikasi user ( bisa disebut juga proses pendaftaran nomor extensions ), dan

kedua pengaturan DialPlan ( untuk mengatur apa yang harus dilakukan Asterisk

apabila ada user melakukan panggilan ke nomor tertentu ). Selain kedua buah

proses tersebut, konfigurasi dibutuhkan hanya jika ingin menambah features pada

Asterisk, salah satu contoh features yang sering digunakan adalah voicemail

system, dengan menambahkan features ini maka jika ada panggilan dari client

( caller ) yang tidak direspon oleh client ( callee ) yang dipanggil, maka caller

dapat meninggalkan pesan voicemail untuk calle.

Pada penelitian ini akan dibahas mengenai konfigurasi Asterisk untuk proses

otentikasi user, pengaturan DialPlan dan konfigurasi voicemail system dengan

menggunakan teknik Asterisk Realtime yang berbasis protokol SIP.

Proses konfigurasi yang akan dibahas pada penelitian ini, pada dasarnya

dilakukan pada tiga buah file yang terletak pada direktori /etc/asterisk, yaitu

antara lain sip.conf, extensions.conf, dan voicemail.conf. Dengan menggunakan

teknik Asterisk Realtime, maka proses konfigurasi akan dilakukan pada tabel

sip_buddies, tabel extensions_table, dan tabel voicemail_users.

1. Proses Konfigurasi pada file sip.conf

Konfigurasi pada file ini menggambarkan penggunaan protokol SIP pada

jaringan VoIP dan juga merupakan proses konfigurasi pendefinisian data

otentikasi user. Proses pendefinisian pada file ini dilakukan dengan cara

mengetikkan parameter yang dibutuhkan untuk otentikasi user tersebut.

Misalkan saja sebagai berikut :

Page 79: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

53

[ 200 ]

type = friend

host = dynamic

username = 200

secret = abc

context = home

callerid = 200 <”albert”>

Gambar 3.5 Contoh Konfigurasi Otentikasi User Pada File sip.conf

Konfigurasi pada gambar 3.5, digunakan untuk mendaftarkan sebuah

nomor telepon ( extensions ) 200 pada Asterisk VoIP Server dan apabila

disimpan dalam bentuk sebuah record didalam tabel sip_buddies maka akan

menjadi sebagai berikut :

Tabel 3.1 Contoh Konfigurasi Otentikasi User Pada Tabel sip_buddies

name type Host username secret context callerid 200 friend dynamic 200 abc home albert

2. Proses Konfigurasi pada file extensions.conf

Konfigurasi pada file extensions.conf dilakukan untuk pengaturan

DialPlan artinya mengatur apa yang harus dilakukan oleh VoIP Server apabila

ada client melakukan panggilan (Dial ) pada nomor telepon tertentu.

Misalkan saja pengaturan DialPlan untuk user pada gambar 3.5 adalah

sebagai berikut :

[ home ]

exten => 200,1,Ringing

exten => 200,2,Dial(SIP/${EXTEN}|20)

exten => 200,3,VoiceMail(2200@home)

exten => 200,4,PlayBack(vm-goodbye)

exten => 200,5,Hangup

exten => 2200,1,VoiceMailMain(2200@home)

Gambar 3.6 Contoh Konfigurasi DialPlan Pada File extensions.conf

Page 80: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

54

Aturan penulisan DialPlan diatas berarti apabila ada client ( caller )

melakukan panggilan ke extensions 200 ( calle ) pada Asterisk VoIP server,

maka hal yang pertama kali yang terjadi adalah client 200 akan berdering

( Ringing ) selama 20 detik, apabila tidak ada jawaban dari extensions tersebut

maka akan masuk ke voicemail (caller dapat meninggalkan pesan untuk calle),

setelah caller meninggalkan pesan, maka akan diputarkan file vm-goodbye

yang berarti bahwa waktu untuk meninggalkan pesan voicemail telah habis,

kemudian setelah itu akan di Hangup ( pemutusan komunikasi ). Calle dapat

mendengarkan pesan voicemail yang ditinggalkan oleh caller dengan menDial

ke nomor extensions 2200. Apabila pengaturan DialPlan pada gambar 3.6

disimpan dalam tabel extensions_table maka akan menjadi 5 buah record

sebagai berikut :

Tabel 3.2 Contoh Konfigurasi DialPlan Pada Tabel extensions_table

context exten priority app Appdata home 200 1 Ringing

home 200 2 Dial SIP/${EXTEN}|20

home 200 3 Voicemail 2200@home

home 200 4 Playback vm-goodbye

home 200 5 Hangup

home 2200 1 VoiceMailMain 2200@home

3. Proses Konfigurasi pada file voicemail.conf

Voicemail pada Asterisk digunakan untuk meninggalkan pesan, jika

panggilan yang dilakukan oleh sebuah client terhadap client yang lain tidak

direspon. Konfigurasi tersebut dilakukan pada file voicemail.conf, Format

untuk membuat mailbox voicemail pada Asterisk adalah sebagai berikut :

mailbox_number => password,name,email

Page 81: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

55

Keterangan :

mailbox_number : adalah nomor yang digunakan pada file extensions.conf

untuk perintah Voicemail () dan untuk mendaftarkan

seorang user pada file sip.conf.

password : password yang digunakan untuk membuka voicemail box.

name : diasosiasikan ke sebuah voicemailbox.

e-mail : digunakan untuk memberitahu jika ada voicemail yang

masuk.

Contoh konfigurasi untuk membuat mailbox voicemail misalkan saja

sebagai berikut :

[ home ]

2200 => 1234,200,[email protected]

Gambar 3.7 Contoh Konfigurasi Voicemail Pada File voicemail.conf

Konfigurasi diatas, untuk membuat mailbox dengan nama context adalah

home, mailbox dengan nomor 2200 dan dengan password 1234 yang dimiliki

oleh user dengan nama 200 ( lihat gambar 3.5 ) dan email [email protected].

Apabila konfigurasi ini disimpan dalam bentuk record dalam tabel

voicemail_users pada database maka akan menjadi sebagai berikut :

Tabel 3.3 Contoh Konfigurasi Voicemail Pada Tabel voicemail_users

context mailbox password fullname Email home 2200 1234 200 [email protected]

Page 82: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

56

3.4 Perancangan Sistem

3.4.1 Flowchat Proses Komunikasi VoIP

Gambar 3.8 Flowchart Proses Komunikasi VoIP

BEGIN

Data register client

Proses Register Client

Apakah Register berhasil ?

Pesan error

Tidak

Ya Pesan sukses

END

Nomor Telepon client

Proses Dial Client

Apakah Dial direspon ?

Ya Proses Komunikasi VoIP

Rekam Voicemail

Tidak

Pesan Voicemail

Page 83: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

57

3.4.2 Use Case Diagram Aplikasi

Gambar 3.9 Use Case Diagram Aplikasi

Pada use case diagram tersebut diatas, masing – masing use case

mempunyai fungsi yang berbeda – beda. Fungsi dari masing – masing use case

adalah sebagai berikut :

1. Use Case Login

Use case ini merupakan proses login bagi seorang pengguna

(administrator) supaya dapat menggunakan aplikasi. Untuk melakukan proses

konfigurasi pada Asterisk VoIP Server, seorang administrator harus melalui

proses ini terlebih dahulu.

<<depends on>>

Page 84: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

58

2. Use Case Mengkonfigurasi Asterisk File

Use case ini merupakan proses untuk menampilkan isi dari direktori

dimana file – file konfigurasi Asterisk VoIP Server berada. Setelah file tersebut

ditampilkan seorang administrator juga dapat mengubah isi dari file tersebut

melalui use case ini.

3. Use Case Mengkonfigurasi Service Asterisk

Use case ini merupakan proses untuk menampilkan status dari service

Asterisk, apakah sedang berjalan (start), atau berhenti (stop). Use case ini juga

digunakan untuk menggambarkan proses menjalankan (start), menghentikan

(stop), dan merestart service Asterisk. Admin dapat melakukan proses – proses

tersebut melalui use case ini.

4. Use Case Mengkonfigurasi Extensions Line

Use case ini menggambarkan proses menambah, menghapus, serta

mengubah data registrasi extensions pada VoIP Server. Melalui data registrasi

yang ditambahkan pada use case inilah nantinya perangkat Telepon VoIP

hardware maupun software dapat meregistrasikan diri menjadi client dari

VoIP Server.

5. Use Case Mengkonfigurasi PABX Line

Use case ini menunjukkan proses digunakan untuk menambahkan,

mengubah serta menghapus data registrasi bagi perangkat VoIP Gateway.

Melalui data yang ditambahkan pada use case inilah nantinya perangkat VoIP

Gateway dapat meregistrasikan diri menjadi client dari VoIP Server.

Page 85: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

59

6. Use Case Mengkonfigurasi Trunking Server Line

Use case ini merupakan proses yang digunakan untuk menambahkan

menghapus, serta mengubah data registrasi Trunking Server. Data Trunking

Server merupakan data yang digunakan untuk menggabungkan VoIP Server

yang sedang menggunakan aplikasi ini dengan VoIP Server lain yang berada

pada jaringan yang lebih luas.

7. Use Case Change Password Administrator

Use case ini menggambarkan proses mengubah password admin yang

sedang login ( mengakses aplikasi ).

8. Use Case Menampilkan Call Detail Record

Use case ini menggambarkan proses untuk mencari dan kemudian

menampilkan data hasil percakapan yang dilakukan oleh client dari Asterisk

VoIP server. Data yang ditampilkan berupa tanggal percakapan, nomor

penelepon, nomor tujuan telepon, serta durasi ( lamanya ) percakapan. Melalui

use case ini juga administrator dapat menampilkan informasi tersebut ke

dalam format dokumen PDF.

9. Use Case Menampilkan Phonebook

Use case ini digunakan untuk proses menampilkan dan mencari informasi

mengenai nomor – nomor telepon ( extensions ) yang terdapat pada Asterisk

VoIP server. Proses ini dapat dilalui tanpa melalui proses login terlebih

dahulu. Informasi yang ditampilkan berupa nomor telepon ( extensions ),

nama, dan status dari extensions tersebut apakah sedang online atau offline.

Online artinya extensions tersebut dapat dihubungi ( ditelepon ), sedangkan

Page 86: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

60

offline artinya extensions tersebut tidak dapat dihubungi ( ditelepon ).

10. Use Case Logout

Use case ini digunakan untuk menggambarkan proses logout ( keluar )

dari program aplikasi.

3.4.3 Sequence Diagram Aplikasi

Sequence diagram pada penelitian menjelaskan tentang proses yang terjadi

sehingga menghasilkan suatu fungsi di dalam sebuah use case. Pada penelitian ini

proses yang terjadi dihasilkan dari proses kerja aplikasi dan juga proses

konfigurasi Asterisk VoIP server menggunakan database MySQL. Sequence

Diagram yang dirancang untuk aplikasi ini adalah sebagai berikut :

Sequence Diagram Login

Gambar 3.10 Sequence Diagram Login

Page 87: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

61

Sequence Diagram Asterisk File

Gambar 3.11 Sequence Diagram Asterisk File

Sequence Diagram Service Asterisk

Gambar 3.12 Sequence Diagram Service Asterisk

Page 88: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

62

Sequence Diagram Extensions Line

Gambar 3.13 Sequence Diagram Menambah Extensions Line

Gambar 3.14 Sequence Diagram Mengedit Extensions Line

Page 89: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

63

Gambar 3.15 Sequence Diagram Menghapus Extensions Line

Sequence Diagram PABX Line

Gambar 3.16 Sequence Diagram Menambah PABX Line

Page 90: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

64

Gambar 3.17 Sequence Diagram Mengedit PABX Line

Gambar 3.18 Sequence Diagram Menghapus PABX Line

Page 91: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

65

Sequence Diagram Trunking Server Line

Gambar 3.19 Sequence Diagram Menambah Trunking Server Line

Gambar 3.20 Sequence Diagram Mengedit Trunking Server Line

Page 92: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

66

Gambar 3.21 Sequence Diagram Menghapus Trunking Server Line

Sequence Diagram Change Password Administrator

Gambar 3.22 Sequence Diagram Change Password Administrator

Page 93: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

67

Sequence Diagram Call Detail Record

Gambar 3.23 Sequence Diagram Cari Data Call Detail Record

Gambar 3.24 Sequence Diagram Menghapus Data Call Detail Record

Page 94: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

68

Sequence Diagram Phonebook

Gambar 3.25 Sequence Diagram Phonebook

3.4.4 Konfigurasi Hardware dan Software

Untuk membangun layanan telepon VoIP menggunakan Asterisk dan

program aplikasi yang akan dibuat pada penelitian ini, maka dibutuhkan perangkat

keras ( hardware ) dan perangkat lunak ( software ) yang mendukung. Spesifikasi

perangkat keras yang digunakan minimal memenuhi kriteria sebagai berikut :

1. Perangkat keras ( hardware ) pada PC yang berfungsi sebagai VoIP

Server :

Prosesor : INTEL Pentium III 733 Mhz

Memori : 128 MB

VGA : 8 MB

Hardisk : 2 GB

Page 95: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

69

Kartu Jaringan : 2 buah kartu jaringan

2. Perangkat keras ( hardware ) pada PC yang berfungsi sebagai client

dari VoIP Server :

Prosesor : dengan kecepatan setara 233 Mhz

Memori : 64MB

VGA : 8 MB

Hardisk : 2 GB

Kartu jaringan : 1 buah kartu jaringan

Headset lengkap dengan mikrofon dan speaker : 1 buah

Kartu suara ( soundcard ) yang biasanya sudah terintegrasi pada komputer.

3. Perangkat Keras ( hardware ) Telepon VoIP

Hardware Telepon VoIP yang digunakan adalah berupa sebuah IP Phone

( lihat gambar 3.1 ). Perangkat ini akan digunakan sebagai client dari VoIP

Server.

4. Perangkat Keras ( hardware ) VoIP Gateway

Hardware yang digunakan berupa sebuah Internet Telephony Gateway

( lihat gambar 3.3 ). Perangkat ini akan digunakan sebagai media penghubung

antara jaringan VoIP dengan jaringan PABX.

Page 96: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

70

Perangkat lunak yang digunakan untuk menerapkan VoIP server

menggunakan Asterisk, berupa Sistem operasi dan software aplikasi lainnya terdiri

dari :

1. Perangkat Lunak ( Software ) pada PC yang berfungsi sebagai VoIP

Server :

a. Linux Fedora Core 2, sebagai sistem operasi pada PC yang akan

dijadikan VoIP Server.

b. Apache Web Server, digunakan sebagai web server dari software

aplikasi yang akan dibuat.

c. PHP, digunakan sebagai bahasa pemrograman dalam pembuatan

aplikasi.

d. MySQL, digunakan sebagai database dalam pembuatan aplikasi.

e. Asterisk, digunakan sebagai software VoIP server.

f. Asterisk-sounds, digunakan untuk menambahkan suara operator

Asterisk.

g. Asterisk-addons, merupakan driver agar Asterisk bisa terkoneksi

dengan database MySQL.

2. Perangkat Lunak ( Software ) pada PC yang berfungsi sebagai client

dari VoIP Server :

a. Sistem Operasi yang digunakan adalah Windows XP

b. Software Telepon VoIP berupa sebuah program aplikasi ( softphone ),

pada penelitian ini menggunakan X-lite ( lihat gambar 3.2 ).

Page 97: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

71

3.4.5 Skenario Pengujian Sistem

Skenario konfigurasi jaringan yang digunakan untuk membangun sentral

telepon ( VoIP Server ) menggunakan Asterisk dapat disesuaikan dengan

kebutuhan yang akan dipakai. Kebutuhan tersebut meliputi beberapa hal, misalkan

saja berapa jumlah VoIP Server yang akan dipakai, apakah jaringan VoIP tersebut

akan dihubungkan dengan jaringan PABX atau PSTN atau tidak.

Pada penelitian ini akan dibuat beberapa contoh skenario konfigurasi

jaringan untuk menggambarkan komunikasi VoIP yang dipakai secara umum.

Skenario jaringan VoIP yang digunakan pada penelitian ini antara lain :

1. Skenario Komunikasi VoIP menggunakan sebuah VoIP Server

Pada skenario konfigurasi ini digunakan sebuah PC yang berfungsi

sebagai VoIP server, yang akan bertugas melayani komunikasi VoIP. Pada

skenario ini dicontohkan VoIP Server bertugas untuk melayani dua buah client

berupa PC dan perangkat IP Phone yang saling terhubung dalam jaringan

LAN ( Local Area Network ). Skenario konfigurasi ini dapat digambarkan

sebagai berikut :

Gambar 3.26 Skenario Komunikasi VoIP Menggunakan Sebuah VoIP Server

Page 98: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

72

2. Skenario Komunikasi VoIP PC to Phone dan Phone to PC

Pada skenario konfigurasi ini menggunakan sebuah PC yang berfungsi

sebagai sebuah VoIP Server, dan sebuah VoIP Gateway. VoIP Gateway

tersebut akan digunakan untuk media koneksi antara jaringan VoIP dengan

jaringan telepon PABX. Untuk konfigurasi ini dapat digambarkan

menggunakan gambar sebagai berikut :

Gambar 3.27 Skenario Komunikasi VoIP PC to Phone dan Phone to PC

3. Skenario Komunikasi VoIP menggunakan dua buah VoIP Server

( Trunking Server )

Konfigurasi ini digunakan untuk memberikan gambaran bagaimana

koneksi antar dua buah VoIP Server ( Trunking Server ), dimana masing –

masing VoIP server tersebut memiliki client, sehingga nantinya client dari

VoIP Server tersebut dapat saling melakukan panggilan ( komunikasi ) lintas

VoIP Server. Konfigurasi ini dapat digambarkan menggunakan gambar

sebagai berikut :

Page 99: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

73

Gambar 3.28 Skenario Komunikasi VoIP menggunakan

dua buah VoIP Server ( Trunking Server )

3.4.6 Struktur Tabel Database

Pada penelitian ini menggunakan sebuah database dengan 7 ( tujuh ) tabel,

yaitu tabel admin, tabel sip_buddies, tabel extensions_table, tabel pabx_tables,

tabel trunking_tables, tabel voicemail_users, tabel cdr.

Desain untuk tabel sip_buddies, tabel extensions_table, tabel cdr, dan tabel

voicemail_users yang digunakan pada penelitian ini merupakan desain tabel

standard yang dapat dikenali oleh sistem Asterisk. Sedangkan untuk tabel admin,

tabel pabx_tables, dan tabel trunking_tables merupakan desain tabel yang dibuat

oleh penulis untuk menunjang pembuatan aplikasi. Desain tabel yang digunakan

adalah sebagai berikut :

1. Tabel Admin

Tabel ini digunakan untuk menyimpan data otentikasi administrator yang

berupa username, dan password yang digunakan administrator untuk login.

Page 100: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

74

Tabel 3.4 Tabel Admin

Field Type Null Key Default Extra username varchar(10) NO PRI admin -

password varchar(50) NO - md5(‘admin’) -

2. Tabel sip_buddies

Tabel ini digunakan untuk menyimpan data account registrasi untuk client

pada Asterisk VoIP server. Client disini dapat berupa softphone, perangkat

VoIP Gateway, maupun account Trunking Asterisk VoIP Server yang lainnya.

Tabel 3.5 Tabel sip_buddies

Field Type Null Key Default Extra id int(11) unsigned NO PRI - auto_increment

name varchar(80) NO UNIQUE - -

status varchar(20) NO - local -

host varchar(31) NO - - -

nat varchar(5) NO - - -

type enum('user', 'peer', 'friend')

NO - - -

callerid varchar(80) YES - - -

cancallforward

char(3) YES - - -

canreinvite char(3) YES - - -

context varchar(80) YES - home -

dtmfmode varchar(7) YES - rfc2833 -

fromuser varchar(80) YES - NULL -

fromdomain varchar(80) YES - NULL -

insecure varchar(4) YES - NULL -

mailbox varchar(50) YES - NULL -

secret varchar(80) YES - NULL -

disallow varchar(100) YES - all -

allow varchar(100) YES - g729;ilbc;gsm;ulaw

;alaw

fullcontact varchar(80) NO - - -

ipaddr varchar(15) NO - - -

port smallint(5) NO - 0 -

regsecond int(100) NO - 0 -

username varchar(80) NO - - -

Page 101: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

75

3. Tabel Extensions_table

Tabel ini di gunakan untuk menyimpan data untuk pengaturan DialPlan.

DialPlan yaitu untuk mengatur apa yang harus di lakukan untuk melakukan

panggilan ke sebuah nomor telepon tertentu.

Tabel 3.6 Tabel extensions_table

Field Type Null Key Default Extra id int(11) NO - - auto_increment

context varchar(20) NO PRI home -

exten varchar(20) NO PRI -

priority tinyint(4) NO PRI - -

app varchar(20) NO - - -

appdata varchar(128) NO - - -

4. Tabel Voicemail_users

Tabel ini digunakan untuk menyimpan data client yang dapat

menggunakan fasilitas voicemail pada Asterisk VoIP server.

Tabel 3.7 Tabel Voicemail_users

Field Type Null Key Default Extra uniqueid int(11) NO PRI - auto_increment

customer_id int(11) NO - 0 -

context varchar(50) NO - home -

mailbox int(6) NO - 0 -

password varchar(4) NO - - -

fullname varchar(50) NO - - -

email varchar(50) NO - - -

pager varchar(50) NO - - -

stamp timesstamp(14) YES - NULL -

Page 102: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

76

5. Tabel CDR ( Call Detail Record )

Tabel ini digunakan untuk menyimpan data catatan pembicaraan

( komunikasi ) yang terjadi pada Asterisk VoIP Server.

Tabel 3.8 Tabel CDR

Field Type Null Key Default Extra calldate datetime NO - 0000-00-00 00:00:00 -

clid varchar(80) NO - - -

src varchar(80) NO - - -

dst varchar(80) NO - - -

dcontext varchar(80) NO - - -

channel varchar(80) NO - - -

dstchannel varchar(80) NO - - -

lastapp varchar(80) NO - - -

lastdata varchar(80) NO - - -

duration integer(11) NO - 0 -

billsec integer(11) NO - 0 -

disposition varchar(45) NO - - -

amaflags integer(11) NO - 0 -

accountcode varchar(20) NO - - -

uniqueid varchar(32) NO - - -

userfield varchar(255) NO - - -

6. Tabel PABX_tables

Tabel ini digunakan sebagai tabel bantu untuk menyimpan data registrasi

dari perangkat VoIP Gateway sebelum data tersebut dimasukkan ke dalam

tabel sip_buddies sebagai data konfigurasi Asterisk.

Tabel 3.9 Tabel PABX_tables

Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment

name varchar(50) NO PRI - -

callerid varchar(50) NO - - -

username varchar (50) NO PRI - -

password varchar(50) NO - - -

prefix varchar(10) NO PRI - -

Page 103: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

77

7. Tabel Trunking_tables

Tabel ini digunakan sebagai tabel bantu untuk meyimpan data register

untuk Trunking Server, sebelum data tersebut dimasukkan ke dalam tabel

sip_buddies sebagai data konfigurasi Asterisk.

Tabel 3.10 Tabel Trunking_tables

Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment

name varchar(50) NO - - -

username varchar (50) NO PRI - -

password varchar(50) NO - - -

domain varchar(50) NO PRI - -

prefix varchar(10) NO PRI - -

Page 104: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

78

3.4.7 Perancangan Antarmuka ( User Interface )

Antarmuka ( User Interface ), digunakan untuk memberikan kembudahan

pada pengguna ( user ) untuk melakukan proses konfigurasi pada Asterisk VoIP

Server. Pengguna ( user ) dapat mengkonfigurasi Asterisk VoIP Server melalui

antarmuka – antarmuka yang akan dibuat pada penelitian ini. Antarmuka yang

akan dibuat pada penelitian ini adalah sebagai berikut :

a. Perancangan Antarmuka Login Administrator

Antarmuka ini digunakan untuk proteksi terhadap pengguna yang tidak

diijinkan untuk mengakses aplikasi. Pengguna dapat memasukkan username

dan password yang valid supaya dapat menggunakan aplikasi ini.

Banner configuration phonebook

Footer

LOGIN ADMINISTRATOR

Username Password

LOGIN

Gambar 3.29 Perancangan Antarmuka Login Administrator

Page 105: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

79

b. Perancangan Antarmuka Phonebook

Antarmuka ini digunakan untuk menampilkan informasi nomor extensions

yang ada pada VoIP Server. Pada antarmuka ini juga terdapat menu untuk

mencari data extensions tersebut. Pengguna dapat memasukkan nomor

extensions pada form yang disediakan, kemudian mengklik tombol search.

Banner configuration phonebook

Footer

NO PHONE NUMBER NAME STATUS

[first ] [ next ] [ previous ] [ last page ]

PHONEBOOK

SEARCH DATA PHONEBOOK

Keyword : SEARCH

PREFIXES TO DIAL PABX LINE

NO PREFIX NAME

NO

PREFIXES TO DIAL OUTBOUND PROXIES

PREFIX NAME

Gambar 3.30 Perancangan Antarmuka Phonebook

Page 106: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

80

c. Perancangan Antarmuka Index Configuration

Jika Administrator diijinkan untuk mengakses aplikasi, maka halaman ini

yang pertama kali akan muncul. Pada aplikasi ini terdapat menu – menu yang

dapat digunakan administrator untuk melakukan proses manajemen pada

VoIP Server.

Banner Login as :

Footer

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.31 Perancangan Antarmuka Index Configuration

Page 107: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

81

d. Perancangan Antarmuka Asterisk File

Halaman ini akan muncul jika link menu Asterisk File diklik. Halaman ini

di gunakan untuk menampilkan file konfigurasi yang ada pada direktori

konfigurasi Asterisk ( pada aplikasi ini letak file konfigurasi ada pada direktori

/etc/Asterisk ). Kemudian administrator juga dapat merubah isi dari file

konfigurasi tersebut cara mengklik pada nama file yang akan dirubah.

Banner Login as :

Footer

ASTERISK CONFIGURATION FILE

/ etc / asterisk /

File Name Last Modified No

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.32 Perancangan Antarmuka Asterisk File

Page 108: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

82

e. Perancangan Antarmuka Edit Asterisk File

Halaman ini akan muncul jika salah satu file pada menu Asterisk File

diklik. Pada Halaman ini, isi file akan ditampilkan pada form, kemudian admin

dapat mengedit isi file tersebut, kemudian menyimpannya dengan mengklik

tombol save.

Banner

Login as :

Footer

ASTERISK FILE >> EDIT FILE < nama file >

Isi File yang akan di edit

SAVE

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.33 Perancangan Antarmuka Edit Asterisk File

Page 109: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

83

f. Perancangan Antarmuka Service Asterisk

Halaman ini akan muncul jika link menu Service Asterisk diklik. Halaman

ini digunakan untuk menampilkan informasi tentang kondisi service VoIP

Server. Ada 2 ( dua ) kondisi yang dimungkinkan yaitu running atau stopped.

Dengan menggunakan menu ini Adminstrator dapat menghentikan ( stop ),

merestart ( restart ), dan menjalankan ( start ) Service VoIP Server.

g. Perancangan Antarmuka Extensions Line Type Local

Halaman ini akan muncul jika link menu Extensions Line diklik. Halaman

ini digunakan untuk proses menambah data registrasi bagi perangkat Telepon

VoIP, baik itu hardware maupun software pada VoIP Server. Type Local,

berarti bahwa perangkat ini boleh dipakai untuk registrasi bagi perangkat

Banner Login as :

Footer

STATUS SERVICE ASTERISK

Status : << running / stopped >>

START RESTART STOP

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.34 Perancangan Antarmuka Service Asterisk

Page 110: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

84

Telepon VoIP yang berada pada jaringan yang sama dengan VoIP Server yang

sedang menggunakan aplikasi ini.

Banner

Login as :

Footer

EXTENSIONS

VOICEMAIL

SUBMIT

Type Extensions : Local

Telephone Number : Display Name :

Password :

Voicemail Number :

Voicemail Password :

Time Before Send to voicemail : 10 Second

Data Account Extensions Trunk NO USERNAME LOCAL / TRUNK STATUS ACTION Data Account Extensions Local NO PHONENUMBER MAILBOX NAME LOCAL / TRUNK STATUS ACTION

[first ] [ next ] [ previous ] [ last page ]

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.35 Perancangan Antarmuka Extensions Line Type Local

Page 111: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

85

h. Perancangan Antarmuka Extensions Line Type Trunk

Halaman ini digunakan untuk menambahkan data registrasi yang nantinya

akan digunakan untuk register oleh VoIP Server lain untuk menjadi client dari

VoIP Server yang sedang menggunakan aplikasi ini (proses Trunking Server).

Banner

Login as :

Footer

EXTENSIONS

SUBMIT

Type Extensions : Trunk

Telephone Number :

Password :

Data Account Extensions Trunk NO USERNAME LOCAL / TRUNK STATUS ACTION Data Account Extensions Local NO PHONENUMBER MAILBOX NAME LOCAL / TRUNK STATUS ACTION

[first ] [ next ] [ previous ] [ last page ]

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.36 Perancangan Antarmuka Extensions Line Type Trunk

Page 112: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

86

i. Perancangan Antarmuka Edit Extensions Line Type Trunk

Halaman ini akan muncul jika link edit salah satu baris pada tabel Data

Account Extensions Trunk yang berada pada antarmuka Extensions Line Type

Trunk diklik. Halaman ini digunakan untuk mengubah data account

Extensions Line yang memiliki Type Trunk.

Login as :

Banner

Footer

EXTENSIONS >> EDIT EXTENSIONS

[ Delete Extensions ]

EXTENSIONS

Phone Number

Caller ID

Host dynamic

Password

Dtmfmode rfc2833

Context home

Canreinvite yes

NAT yes

Codec allaw

SUBMIT

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.37 Perancangan Antarmuka Edit Extensions Line Type Trunk

Page 113: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

87

j. Perancangan Antarmuka Edit Extensions Line Type Local

Halaman ini akan muncul jika link edit pada tabel Data Account Extensions

Local yang berada pada antarmuka Extensions Line Type Local diklik. Halaman

ini digunakan untuk mengubah data Account Extensions Line yang memiliki

Type Local.

Banner

Footer

EXTENSIONS >> EDIT EXTENSIONS

[ Delete Extensions ]

EXTENSIONS

Phone Number Caller ID

Host Password Dtmfmode

Context

Canreinvite

NAT

Codec

SUBMIT

VOICEMAIL

Voicemail Number Voicemail Password Voicemail Time Second

Login as :

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.38 Perancangan Antarmuka Edit Extensions Line Type Local

Page 114: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

88

k. Perancangan Antarmuka PABX Line

Halaman ini akan muncul jika link menu PABX Line diklik. Halaman ini

digunakan untuk menambahkan data account PABX yang dapat digunakan oleh

perangkat VoIP Gateway untuk registrasi menjadi client dari VoIP Server.

Sehingga nantinya jaringan VoIP yang dioperasikan dapat terhubung dengan

jaringan PABX maupun jaringan telepon tradisional ( PSTN ).

Banner Login as :

Footer

ADD PABX LINE

PABX Name :

SUBMIT

Display Name :

Password :

Dialing Prefix :

Username :

Data Account PABX Line NO USERNAME CALLER ID DIALING PREFIX STATUS ACTION

[first ] [ next ] [ previous ] [ last page ]

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.39 Perancangan Antarmuka PABX Line

Page 115: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

89

l. Perancangan Antarmuka Edit PABX Line

Halaman ini akan muncul jika link edit salah satu baris tabel Data Account

PABX yang berada pada antarmuka PABX Line diklik. Halaman ini digunakan

untuk melalukan proses ubah data untuk PABX Account yang ada pada VoIP

Server. Halaman ini akan memunculkan data sesuai dengan data dari baris pada

tabel yang telah diklik dari tabel Data Account PABX Line.

Banner Login as :

Footer

PABX LINE > > EDIT PABX LINE

PABX Name :

SUBMIT

Display Name :

Password :

Dialing Prefix :

NAT :

Codec :

Username :

Host :

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.40 Perancangan Antarmuka Edit PABX Line

Page 116: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

90

m. Perancangan Antarmuka Trunking Server Line

Halaman ini akan muncul jika link menu Trunking Server Line diklik.

Halaman ini digunakan untuk mendaftarkan ( registrasi ) VoIP Server yang

sedang menggunakan aplikasi ini ke VoIP Server lainnya yang akan dijadikan

Trunking Server oleh VoIP Server pada aplikasi ini. Dengan adanya Trunking

Server ini maka perangkat client dari masing – masing VoIP Server dapat saling

berkomunikasi VoIP.

SUBMIT

Banner

Login as :

Footer

ADD TRUNKING SERVER LINE

Trunking Name :

Username :

Password :

SIP Proxy :

0.0.0.0

Dialing Prefix :

Data Account Trunking Server Line [Registration Status]

NO NAME USERNAME SIP PROXY DIALING PREFIX STATUS ACTION [first ] [ next ] [ previous ] [ last page ]

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.41 Perancangan Antarmuka Trunking Server Line

Page 117: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

91

n. Perancangan Antarmuka Trunking Registration Status

Halaman ini akan muncul jika link [Registration Status] pada menu

Trunking Server Line diklik. Halaman ini digunakan untuk mengetahui status

registrasi Trunking VoIP Server yang menggunakan aplikasi ini pada VoIP

Server yang lainnya.

Banner

Footer

STATUS REGISTRASI TRUNKING SERVER

SIP Proxy | Username | Refresh State | Status

Status Registrasi

[ Kembali ke Trunking Server Line ]

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.42 Perancangan Antarmuka Trunking Registration Status

Page 118: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

92

o. Perancangan Antarmuka Edit Trunking Server Line

Halaman ini akan muncul jika link edit salah satu baris tabel Data Account

Trunking Server diklik. Halaman ini digunakan untuk melalukan proses ubah

data account Trunking Server. Halaman ini akan memunculkan data sesuai

dengan data dari baris yang telah diklik pada tabel Data Account Trunking

Server.

Banner Login as :

Footer

TRUNKING SERVER LINE >> EDIT TRUNKING

Trunking Name :

SUBMIT

Username :

Password :

SIP Proxy : 0.0.0.0

NAT :

Codec :

Dialing Prefix :

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.43 Perancangan Antarmuka Edit Trunking Server Line

Page 119: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

93

p. Perancangan Antarmuka Call Detail Record

Halaman ini akan muncul jika link menu Call Detail Record diklik.

Halaman ini digunakan untuk mencari dan menampilkan data komunikasi

( Call History ) yang terjadi pada VoIP Server. Administrator menginputkan

data tanggal pada form inputan yang disediakan, jika data yang dimaksud

ditemukan maka data tersebut akan ditampilkan pada tabel. Admin juga dapat

menampilkan data call detail record dalam format PDF, yaitu dengan mengklik

gambar icon PDF.

Banner

Login as :

CALL DETAIL RECORD

Footer

SEARCH

Search Call Detail Record By Date

From : To :

Icon PDF

Data Call Detail Record From : … To : … NO DATETIME FROM TO DURATION ACTION [first ] [ next ] [ previous ] [ last page ]

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.44 Perancangan Antarmuka Call Detail Record

Page 120: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

94

q. Perancangan Antarmuka Change Password Administrator

Halaman ini akan muncul jika link Change Password Administrator diklik.

Halaman ini digunakan untuk mengganti password administrator yang sedang

aktif login. Admin dapat memasukkan password lama ( old password ) dan

menggantinya dengan password baru ( new password ) pada form yang

disediakan.

Banner Login as :

Footer

CHANGE PASSWORD ADMIN

SEARCH

admin Username :

Old Password :

New Password :

Asterisk File

Service Asterisk

Extensions Line

PABX / PSTN Line

Trunking Server Line Call Detail Record

Change Password Admin

Logout

Gambar 3.45 Perancangan Antarmuka Change Password Administrator

Page 121: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

95

BAB IV

IMPLEMENTASI SISTEM

Pada bab ini akan dijelaskan mengenai implementasi dari perancangan yang

sudah dilakukan pada bab sebelumnya.

4.1 Spesifikasi Software dan Hardware yang digunakan

Spesifikasi perangkat lunak ( software ) yang digunakan adalah sebagai

berikut :

1. Spesifikasi Software pada PC yang berfungsi sebagai VoIP Server :

a. Sistem Operasi : Linux Fedora Core 2

b. Web Server : Apache versi 2.0

c. Database Server : MySQL versi 3.23

d. Bahasa pemrograman : PHP versi 4.3

e. VoIP Server : Asterisk versi 1.2.14

f. Asterisk-addons : Asterisk-addons versi 1.2.5

g. Asterisk-sounds : Asterisk-sound versi 1.2.1

2. Spesifikasi Software pada PC yang berfungsi sebagai Client dari

VoIP Server :

a. Sistem Operasi : Windows XP

b. Software Telepon VoIP : X-Lite versi 3.0

Page 122: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

96

Spesifikasi perangkat keras ( hardware ) yang digunakan adalah sebagai

berikut :

1. Spesifikasi hardware pada PC yang berfungsi sebagai VoIP Server :

a. Prosesor : INTEL Pentium IV CPU 2.4 Ghz

b. Memori : 128 MB

c. VGA : 64 MB

d. Hardisk : 20 GB

e. Kartu Jaringan : 2 buah kartu jaringan

2. Spesifikasi hardware pada PC yang berfungsi sebagai client dari

VoIP Server :

a. Prosesor : dengan kecepatan setara 233 Mhz

b. Memori : 64 MB

c. VGA : 8 MB

d. Hardisk : 2 GB

e. Kartu jaringan : 1 buah kartu jaringan

f. Headset lengkap dengan mikrofon dan speaker : 1 buah

g. Kartu suara ( soundcard ) yang biasanya sudah terintegrasi pada

komputer.

3. Spesifikasi Telepon VoIP ( IP Phone ) :

a. Vendor : Planet

b. Jenis : VIP-103PT/ VIP-153PT/VIP-153T

c. Firmware : V1.00.05

d. Kartu Jaringan : 2 buah

Page 123: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

97

4. Spesifikasi perangkat VoIP Gateway ( Internet Telephony Gateway ) :

a. Vendor : Planet

b. Jenis : VIP-480

c. Firmware : 2.8.2L

d. Kartu Jaringan : 5 buah

e. FXO ( port RJ 11 ) : 2 buah

f. FXS ( port RJ 11 ) : 2 buah

4.2 Setting Koneksi Asterisk dengan Database MySQL

Koneksi Asterisk dengan database MySQL diperlukan agar aplikasi yang

dibuat dapat menerapkan teknik Asterisk Realtime pada proses konfigurasi

Asterisk.

Untuk mengkoneksikan Asterisk dengan Database MySQL memerlukan suatu

driver, yaitu asterisk-addons. Driver ini berisi modules yang diperlukan untuk

mengkoneksikan Asterisk dengan database. Pada koneksi asterisk dengan

database MySQL diperlukan dua buah modules, yaitu res_config_mysql.so dan

cdr_addons_mysql.so. Berikut langkah – langkah konfigurasi untuk mengkoneksi

kan Asterisk dengan database MySQL :

a. Lakukan konfigurasi pada file modules.conf

Konfigurasi ini dilakukan untuk melakukan load module – module yang

dibutuhkan untuk koneksi antara Asterisk dengan database MySQL.

Konfigurasi dilakukan dengan cara menambahkan baris berikut pada file

modules.conf :

Page 124: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

98

Setelah baris diatas ditambahkan, maka langkah selanjutnya melakukan

pengecekan apakah modules tersebut sudah berhasil di load oleh Asterisk,

perintahnya dapat dilihat pada gambar berikut :

b. Lakukan konfigurasi pada file res_mysql.conf

Konfigurasi ini dilakukan untuk mengkonfigurasi parameter yang

digunakan untuk koneksi Asterisk dengan database yang digunakan.

Parameter yang digunakan antara lain: host, nama database, nama user dan

password database, nomor port database ( default port MySQL = 3306 ).

c. Lakukan Konfigurasi pada file cdr_mysql.conf

Konfigurasi ini digunakan agar data hasil percakapan (Call Detail Record)

dapat disimpan secara otomatis dalam sebuah tabel, pada aplikasi ini data hasil

preload => res_config_mysql.so

[general] dbhost = 127.0.0.1 dbname = voip dbuser = root dbpass = dbport = 3306 dbsock = /var/lib/mysql/mysql.sock

Gambar 4.1 Hasil Load Module Koneksi Asterisk Ke database MySQL

Page 125: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

99

pembicaraan tersebut disimpan pada tabel cdr ( lihat tabel 3.8 ). Pada

prinsipnya parameter yang dibutuhkan untuk konfigursi pada file

cdr_mysql.conf sama dengan parameter yang ada pada konfigurasi file

res_mysql.conf.

d. Lakukan Konfigurasi pada file extconfig.conf

Konfigurasi ini dilakukan agar Asterisk dengan menggunakan teknik

Asterisk Realtime dapat mengkonfigurasi sipusers dan sipusers ( untuk proses

otentikasi user ) , voicemail, dan DialPlan melalui tabel – tabel yang ada pada

database MySQL. Parameter yang digunakan pada file ini adalah sebagai

berikut :

Keterangan :

voip : nama database yang digunakan

sip_buddies : nama tabel untuk otentikasi user

extensions_table : nama tabel untuk konfigurasi DialPlan

voicemail_users : nama tabel untuk konfigurasi voicemail

[settings] sippeers => mysql,voip,sip_buddies sipusers => mysql,voip,sip_buddies extensions => mysql,voip,extensions_table voicemail => mysql,voip,voicemail_users

[global] hostname=127.0.0.1 dbname=voip table=cdr password= user=root port=3306 sock=/var/lib/mysql/mysql.sock userfield=1

Page 126: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

100

e. Lakukan Konfigurasi pada file extensions.conf

Konfigurasi ini dilakukan agar Asterisk dapat membaca data konfigurasi

DialPlan pada tabel extensions_table yang ada di database. Konfigurasi yang

digunakan adalah sebagai berikut :

Keterangan :

[ home ] : default context untuk pengaturan DialPlan

Local.

[ outbound-trunk ] : default context untuk pengaturan DialPlan

pada proses Trunking Server.

Extensions : nama variable yang mewakili tabel

extensions_table yang digunakan pada konfigurasi file extconfig.conf

[home] switch => Realtime/home@extensions include => outbound-trunk [outbound-trunk] switch => Realtime/outbound-trunk@extensions include => home

Page 127: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

101

4.3 Implementasi Antarmuka ( User Interface )

a. Implementasi Antarmuka Login Administrator

Halaman diatas ditampilkan ketika aplikasi pertama kali diakses. Setelah

tombol login di-klik, akan dilakukan pengecekan username dan password pada

tabel admin, jika username dan password cocok akan ditampilkan halaman

berikutnya. Kode programnya adalah sebagai berikut :

<?php $query_login = " select username,user_password from admin where username = '$_POST[username]' and user_password = md5('".$_POST["userpass"]."')"; $db_login = mysql_query($query_login) or die('Error Query'); if($db_login){ $hasil_login = mysql_fetch_row($db_login); $ada_username = $hasil_login[0]; $ada_password = $hasil_login[1]; } if($ada_username !="" && $ada_password != "" ){ session_start(); $_SESSION["user"] = $ada_username; $_SESSION["pass"] = $ada_password; header("location:configuration/index.php"); } else{ echo"<script language:\"javascript\">"; echo"alert('username atau password salah..!!');"; echo"document.location.href='index.php'"; echo"</script>"; } ?>

Gambar 4.2 Implementasi Antarmuka Login Administrator

Page 128: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

102

Pada halaman login administrator terdapat 2 ( dua ) link menu, masing –

masing berfungsi sebagai berikut :

1. Link Menu Configuration

Link menu ini digunakan untuk menampilkan halaman Login

Administrator ( lihat gambar 4.2 )

2. Link Menu Phonebook

Link Menu ini digunakan untuk menampilkan informasi daftar nomor –

nomor extensions yang terdapat pada Asterisk VoIP server. Menu ini

dapat diakses tanpa melakukan proses login terlebih dahulu.

b. Implementasi Antarmuka Phonebook

Halaman ini digunakan untuk menampilkan informasi data nomor extensions,

informasi nomor prefix yang digunakan untuk menghubungi client pada VoIP

server lain yang terhubung dengan Trunking Server ( mirip dengan kode area

Gambar 4.3 Implementasi Antarmuka Phonebook

Page 129: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

103

pada jaringan telepon biasa ), serta informasi nomor prefix untuk menghubungi

extensions yang ada pada jaringan PABX. Masing – masing informasi tersebut

didapat dari proses select data pada tabel sip_buddies, tabel pabx_tables, dan tabel

trunking_tables. Listing programnya adalah sebagai berikut :

Pada antarmuka Phonebook juga terdapat fasilitas untuk mencari data

extensions, hal ini dilakukan dengan cara menginputkan nomor yang ingin dicari

pada textfield keyword kemudian ketika tombol Search ditekan akan dilakukan

pengecekan data keyword yang diinputkan pada tabel sip_buddies menggunakan

kode program sebagai berikut :

Jika data yang dicari ditemukan maka akan ditampilkan pada sebuah tabel

yang juga berada pada antarmuka phonebook ini, tampilannya adalah sebagai

berikut :

Gambar 4.4 Antarmuka Hasil Data Phonebook ditemukan

<?php if(isset($_POST["submit"])){ if(!empty($_POST["txt_number"])){ $number = "select name,callerID,ipaddr from sip_buddies where name = '$_POST[txt_number]' and status ='Local'"; $db_number = @mysql_query($number) or die ("Query name gagal"); } ?>

<?php $extension_row = "Select name,callerID,ipaddr from sip_buddies where Status ='Local' order by name limit $_POST[offset],$_POST[rowsPerPage]"; $db_extensions_row = @mysql_query($extension_row); $pabx = "select name, username from pabx_tables order by name limit $_POST[offset],$_POST[rowsPerPage]"; $db_pabx = @mysql_query($pabx); $trunking = "select name, prefix, domain from trunking_tables order by name limit $_POST[offset],$_POST[rowsPerPage]"; $db_trunking = @mysql_query($trunking); ?>

Page 130: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

104

c. Implementasi Antarmuka Index Configuration

Apabila administrator berhasil login maka muncul antarmuka index

configuration, dengan tampilan sebagai berikut :

Pada halaman ini terdapat beberapa menu yang dapat digunakan administrator

untuk konfigurasi Asterisk VoIP server, dimana masing – masing mempunyai

fungsi sebagai berikut :

1. Menu Asterisk File

Menu ini digunakan untuk menampilkan file konfigurasi yang ada pada

direktori konfigurasi Asterisk. Pada penelitian ini direktori konfigurasi

berada pada direktori /etc/asterisk. Melalui menu ini pula administrator

dapat mengedit isi file tersebut.

2. Menu Service Asterisk

Menu ini digunakan untuk menampilkan status dari service Asterisk.

Apakah sedang stop atau sedang running. Pada menu ini administrator

Gambar 4.5 Implementasi Antarmuka Index Configuration

Page 131: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

105

juga dapat mengontrol service asterisk yaitu dengan menghentikan (stop),

menjalankan ( start ), atau merestart ( restart ) service asterisk tersebut.

3. Menu Extensions Line

Menu ini digunakan untuk proses penambahan account extensions bagi

perangkat Telepon VoIP, sehingga dengan menggunakan account tersebut

perangkat Telepon VoIP dapat login menjadi client dari VoIP server.

Melalui menu ini pula proses konfigurasi DialPlan untuk perangkat

tersebut dilakukan. Proses konfigurasi DialPlan terjadi otomatis ketika

administrator melakukan penambahan account.

4. Menu PABX / PSTN Line

Menu ini digunakan untuk menambahkan account untuk registrasi sebuah

perangkat VoIP Gateway menjadi client dari VoIP server. Dengan adanya

proses registrasi dari perangkat VoIP Gateway, maka jaringan VoIP dapat

dihubungkan dengan jaringan PABX maupun jaringan telepon tradisional

( PSTN ). Pada menu ini proses pengaturan DialPlan juga terjadi otomatis

saat administrator menambahkan data account.

5. Menu Trunking Server Line

Menu ini digunakan untuk meregistrasikan VoIP Server yang sedang

menggunakan aplikasi ini untuk menjadi client dari VoIP Server yang

lainnya ( proses Trunking Server ). Dengan adanya proses ini, maka dapat

terjadi komunikasi VoIP antar client masing – masing VoIP server yang

terhubung dalam Trunking. Pada menu ini proses pengaturan DialPlan

Page 132: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

106

terjadi otomatis saat administrator selesai melakukan proses registrasi

VoIP server.

6. Menu Call Detail Record

Menu ini digunakan untuk mencari, kemudian menampilkan data dari

percakapan yang terjadi antar client dari VoIP Server pada sebuah tabel.

Data yang ditampilkan berupa tanggal, nomor penelepon, nomor yang

ditelepon, serta durasi lamanya komunikasi yang terjadi.

7. Menu Change Password Administrator

Menu ini digunakan untuk proses ganti password administrator yang

sedang aktif login.

8. Menu Logout

Menu ini digunakan untuk keluar ( Logout ) dari aplikasi. Sehingga

administrator harus login kembali jika ingin melakukan konfigurasi lagi.

d. Implementasi Antarmuka Asterisk File

Gambar 4.6 Implementasi Antarmuka Asterisk File

Page 133: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

107

Antarmuka Asterisk File digunakan untuk menampilkan file – file yang

terdapat pada direktori konfigurasi asterisk VoIP server ( pada kasus aplikasi ini

direktori tersebut terletak di /etc/astersik ). Proses ini dilakukan oleh listing

program sebagai berikut :

Administrator juga dapat merubah isi file melalui halaman ini dengan cara

mengklik salah satu link file yang akan diedit.

<?php include”../config.php”; $_POST["files"] = array(); $d = opendir($dir_asterisk); echo " <table width =\"70%\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\" id=\"table_asterisk_conf\" align=\"left\">"; echo"<tr id=\"judulmenu\"> <td>No</td> <td>File Name</td> <td align=\"center\">Last Modified</td> </tr>"; while (false !== ($_POST["file"] = readdir($d))){ if(($_POST["file"] {0} != '.') &&($_POST["file"] {0} != '~') && (substr($_POST["file"] , -3) != 'LCK') && ($_POST["file"] != basename($_SERVER['PHP_SELF']))){ $stat=$dir_asterisk.$_POST["file"]; $files[$_POST["file"]] = stat($stat); } } $no = 1; closedir($d); ksort($files); foreach ($files as $name => $stats) { echo"<tr> <td>$no</td> <td><a href=\"$sitepath/configuration/index.php?menu= edit_asterisk_conf&file=$name\" title=\"Edit File $name\">{$name} </a> </td>"; echo "<td>"."<div align=\"center\">".date('d-m-Y h:ia', $stats['mtime'])."</div>"."</td>"; echo "</tr>"; $no++; } echo "</table>"; ?>

Page 134: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

108

e. Implementasi Antarmuka Edit Asterisk File

Setelah Administrator memilih link file yang akan diedit dari menu Asterisk

File, maka muncul halaman ini ( pada gambar 4.7 diberikan contoh ketika

administrator akan mengedit file cdr_mysql.conf ). Halaman ini digunakan untuk

menampilkan isi file yang akan diedit oleh administrator pada sebuah textarea.

Proses ini dikerjakan oleh script program dibawah ini :

Proses edit file ini berfungsi untuk pengaturan konfigurasi lainnya yang

belum disediakan oleh aplikasi yang dibuat. Proses edit ini dilakukan dengan cara

mengetikkan serangkaian aturan pada file yang akan diedit pada text area yang

<?php $_POST["file_name"] = $_GET["file"]; $nama_file = $dir_asterisk.$_GET["file"]; $_SESSION['file'] = $_POST["file_name"]; $buka=fopen($nama_file,'r'); $baca=fread($buka,filesize($nama_file)); fclose($buka); $output=nl2br(htmlspecialchars($baca)); ?> <textarea name="isi_File" cols="70" rows="20" > <?php echo $baca; ?> </textarea>

Gambar 4.7 Implementasi Antarmuka Edit Asterisk File

Page 135: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

109

sudah disediakan. Setelah administrator selesai mengedit file, maka administrator

dapat menekan button Save untuk menyimpan hasil editan file tersebut. Proses

menyimpan file dilakukan oleh script berikut ini :

f. Implementasi Antarmuka Service Asterisk

<?php system("sudo -u root chmod 777 $dir_asterisk".$_GET["file"]); $write = @fopen($file_name,"w+"); $_POST["isi_File"] .= " "; if(fwrite($write,$_POST['isi_File'])){ if(system($restart)){ echo "<div style=\"color:#FF0000\" align=\"center\"> <br><br> File telah di simpan </div>"; echo "<div style=\"color:#FF0000\" align=\"center\"> <br><br> Service asterisk telah di restart</div>"; echo"<div align=\"center\"><br><br> <a href=\"../configuration/index.php?menu=asterisk_conf\">[ Kembali Asterisk File ]</a></div><br><br>"; } else{ echo "<div style=\"color:#FF0000\" align=\"center\"> <br><br> Service asterisk gagal di restart</div>"; echo"<div align=\"center\"><br><br> <a href=\"../configuration/index.php?menu=asterisk_conf\">[ Kembali Asterisk File ]</a></div><br><br>"; } ?>

Gambar 4.8 Implementasi Antarmuka Asterisk File

Page 136: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

110

Halaman Service Asterisk digunakan untuk menampilkan status service

asterisk VoIP server, apakah sedang running ( siap untuk beroperasi ), atau

sedang stopped ( tidak dapat beroperasi ). Untuk menampilkan status service

asterisk menggunakan listing program sebagai berikut :

Kemudian setelah status service tersebut ditampilkan, administrator dapat

mengontrol service tersebut, apakah ingin di start, restart, atau di stop dengan

cara menekan salah satu tombol yang ada sesuai dengan aksi yang akan dilakukan

oleh administrator. Kode programnya adalah sebagai berikut :

g. Implementasi Antarmuka Extensions Line Type Local

<?php echo"<div align=\"center\" style=\"color:#FF0000\">"; if(isset($_POST["btn_start"])){ system("sudo -u root /etc/init.d/asterisk start"); } if(isset($_POST["btn_restart"])){ system("sudo -u root /etc/init.d/asterisk restart"); } if(isset($_POST["btn_stop"])){ system("sudo -u root /etc/init.d/asterisk stop"); } ?>

<?php system("sudo -u root /etc/init.d/asterisk status"); ?>

Gambar 4.9 Implementasi Antarmuka Extensions Line Type Local

Page 137: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

111

Pada antarmuka gambar 4.9, digunakan untuk proses penambahan account

Extensions dengan type Local. Type Local, berarti bahwa account tersebut dapat

dipakai untuk registrasi bagi client ( perangkat Telepon VoIP ) yang berada pada

jaringan yang sama dengan VoIP Server yang sedang menggunakan aplikasi ini.

Pada form – form yang ada administrator dapat menginputkan data antara lain :

1. Telephone Number : merupakan nomor telepon dan username yang

digunakan untuk registrasi client ke VoIP Server.

2. Password : password untuk register client ke VoIP Server.

3. Display name : nama atau nomor yang ditampilkan pada layar IP

Phone atau X-Lite saat extensions ini melakukan panggilan ke extensions

lain.

4. Voicemail Number : nomor voicemail yang dapat dihubungi untuk

mendengarkan pesan voicemail box bagi extensions ini.

5. Voicemail Password : password untuk membuka voicemail box.

6. Time Before Send To Voicemail : waktu tunggu sebelum sebuah

panggilan masuk ke voicemail box.

Setelah tombol submit ditekan, maka data akan diinsertkan ke tabel

sip_buddies, tabel extensions_table, dan tabel voicemail_users . Sebelum data

tersebut diinsertkan dilakukan proses pencarian data account tadi pada masing –

masing tabel untuk menghindari terjadinya duplikasi data. Proses ini dilakukan

oleh kode program sebagai berikut :

Page 138: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

112

Kemudian setelah data tersebut tidak ditemukan, maka data akan diinsertkan

ke masing – masing tabel dengan menggunakan kode program sebagai berikut :

<?php $search_ex = "Select * from sip_buddies where name='$_POST[ex_number]' order by name"; $db_search_ex = mysql_query($search_ex); $row_search_ex = mysql_num_rows($db_search_ex); $search_DialPlan ="Select * from extensions_table where exten ='$_POST[VMail_Number]' order by exten"; $db_search_DialPlan = mysql_query($search_DialPlan); $row_search_DialPlan = mysql_num_rows($db_search_DialPlan ); ?>

<?php if(isset($_POST["btn_addExtensions"])) { function Insertsip_buddies($ex_number,$status,$context, $mailbox,$host,$callerID,$secret,$username,$insecure,$allow){ $extensions = "insert into sip_buddies(name,status,context,mailbox, host,callerID,secret,username,insecure,allow) values('$ex_number','$status','$context','$mailbox','$host','$callerID','$secret','$username','$insecure','$allow')"; $db_extensions = mysql_query($extensions) or die ("Error insert sip_buddies"); } $dial_vmail = "SIP/$"."{EXTEN}"."|".$_POST["VMail_Time"]; $Ringing = "insert into extensions_table(context,exten,priority,app, appdata) values ('$context','$_POST[ex_number]','1','Ringing','')"; $Dial_Local = "insert into extensions_table(context,exten,priority, app,appdata) values('$context','$_POST[ex_number]','2', 'Dial','$dial_vmail')"; $VoiceMail = "insert into extensions_table(exten,context,priority,app, appdata) values ('$_POST[ex_number]','$context',3,'VoiceMail', '$_POST[VMail_Number]@home')"; $Playback = "insert into extensions_table (exten,context,priority,app, appdata) values('$_POST[ex_number]','$context',4,'Playback','vm- goodbye')"; $Hangup = "insert into extensions_table (exten,context,priority,app, appdata) values('$_POST[ex_number]','$context',5,'Hangup','')"; $VoiceMailMain = "insert into extensions_table(exten,context,priority, app,appdata) values('$_POST[VMail_Number]','$context',1, 'VoiceMailMain','$_POST[VMail_Number]@home')"; $Voicemail_user = "insert into voicemail_users (mailbox,context, password,fullname) values('$_POST[VMail_Number]','$context', '$_POST[VMail_Pass]','$_POST[ex_number]')"; if($_POST["pil_type"] == "Local"){

Page 139: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

113

Apabila data berhasil diinsertkan ke tabel, maka akan ditampilkan pada

sebuah tabel yang juga berada pada antarmuka ini, tampilannya adalah sebagai

berikut :

if($row_search_ex < 1 ){ if($row_search_DialPlan < 1){ $mailbox = $_POST["ex_number"]."@".$context; Insertsip_buddies($_POST["ex_number"],$_POST["pil_type"], $context,$mailbox,$host,$_POST["callerID"], $_POST["secret"],$_POST["ex_number"],$insecure,$allow); $db_Ringing = mysql_query($Ringing) or die("Error Application Ringing Local"); $db_Dial_Local = mysql_query($Dial_Local) or die("Error Application Dial Local"); $db_Voicemail = mysql_query($VoiceMail) or die ("Error Application Voicemail Local"); $db_Playback = mysql_query($Playback) or die("Error Application Playback Local"); $db_Hangup = mysql_query($Hangup) or die ("Error Application Hangup Local"); $db_VoicemailMain = mysql_query($VoiceMailMain) or die ("Error Application VoicemailMain Local"); $db_Voicemail_user = mysql_query($Voicemail_user) or die ("Error voicemail users Local"); if($db_Ringing && $db_Dial_Local && $db_Voicemail && $db_Playback && $db_Hangup && $db_VoicemailMain && $db_Voicemail_user){ echo "<div style=\"color:#FF0000\">Extensions Number ".$_POST['ex_number']." berhasil di tambahkan !!! </div>"; } else{ echo "<div style=\"color:#FF0000\">Extensions Number ".$_POST['ex_number']." gagal di tambahkan !!! </div>"; } } elseif($row_search_DialPlan = 1){ echo "<div style=\"color:#FF0000\">Voicemail Number ".$_POST["VMail_Number"]." sudah ada !!! </div>"; } } elseif($row_search_ex = 1){ echo "<div style=\"color:#FF0000\">Telephone Number ".$_POST["ex_number"]." sudah di gunakan !!! </div>"; } } }?>

Gambar 4.10 Antarmuka Hasil Penambahan Extensions Line Type Local

Page 140: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

114

Pada gambar 4.10, ditampilkan data hasil penambahan account Extensions

Type Local pada tabel Data Account Extensions Type Local. Melalui tabel ini,

administrator dapat mengubah atau menghapus data account tersebut. Proses

mengubah atau menghapus dilakukan dengan cara memilih salah satu record pada

link gambar edit ( ) atau delete ( ) yang berada pada kolom Action. Apabila

administrator akan mengedit data akan ditampilkan antarmuka Edit Extensions

Line Type Local, sedangkan apabila administrator akan menghapus data maka

akan ditampilkan halaman konfirmasi hapus, misalkan administrator akan

menghapus extensions 1000, maka tampilannya adalah sebagai berikut :

Pada gambar 4.11 diatas, ditampilkan konfirmasi untuk menghapus extensions

1000, apabila administrator yakin akan menghapus extensions yang dimaksud,

maka administrator dapat menekan tombol YA, maka data extensions tersebut

akan dihapus dari database. Sedangkan jika administrator tidak jadi menghapus

data extensions tersebut maka dapat memilih tombol TIDAK, maka akan kembali

Gambar 4.11 Antarmuka Konfirmasi Delete Extensions Line Type Local

Page 141: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

115

ke antarmuka sebelumnya. Proses hapus data extensions terjadi pada tabel

sip_buddies, tabel extensions_table, dan tabel voicemail_users. Proses hapus data

account extensions dimulai dari proses mencari data yang dimaksud pada tiga

buah tabel tersebut, hal ini dilakukan oleh kode program sebagai berikut :

Setelah data account extensions ditemukan, maka akan dihapus dengan

menggunakan kode program sebagai berikut :

<?php $extensions = "Select name,callerID,mailbox from sip_buddies where name = '$_GET[Extensions]'"; $q_extensions = mysql_query($extensions); $data_extensions = mysql_fetch_array($q_extensions) or die("Select pada tabel sip_buddies gagal"); $voicemail = "Select mailbox,fullname,password from voicemail_users where fullname = '$_GET[Extensions]'"; $q_voicemail = mysql_query($voicemail) or die ('Select voicemail pada tabel voicemail_users gagal'); $ada_voicemail = mysql_num_rows($q_voicemail); $data_voicemail = mysql_fetch_array($q_voicemail); ?>

<?php if($_POST['btn_ya']){ if($q_extensions){ if($ada_voicemail >= 1){ $del_voicemail = "delete from voicemail_users where fullname = $_SESSION[Extensions]"; $q_del_voicemail = mysql_query($del_voicemail); $del_extensions = "delete from sip_buddies where name = '$_GET[Extensions]'"; $q_del_extensions = mysql_query($del_extensions); $del_VMailMain = "delete from extensions_table where exten = $data_voicemail[mailbox]"; $q_del_VMailMain = mysql_query($del_VMailMain); if ($q_del_extensions && $q_del_voicemail && $q_del_VMailMain){ $del_number = "delete from extensions_table where exten = '$_GET[Extensions]'"; $q_del_number = mysql_query($del_number) or die ("Delete DialPlan ".$_SESSION[Extensions]." gagal"); if($q_del_number){ Kode program untuk menampilkan pesan sukses hapus data account Extensions } else{ Kode program untuk menampilkan pesan gagal hapus data account Extensions } } ?>

Page 142: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

116

h. Implementasi Antarmuka Edit Extensions Line Type Local

Halaman ini digunakan untuk proses edit data account extensions Type Local.

Pada Antarmuka ini menampilkan detail data account yang akan diedit oleh

administrator. Pada antarmuka gambar 4.12, diberikan contoh ketika

administrator akan mengedit data account extensions 1000. Administrator dapat

mengedit beberapa data antara lain :

1. Caller ID : fungsinya sama dengan Display Name.

2. Password : password untuk register client ke VoIP Server.

3. Dtmfmode : bagaimana cara extensions ini menangani signal DTMF,

nilai defaultnya adalah RFC 2833.

4. Canreinvite : mengaktifkan SIP re-invites, nilai defaultnya adalah yes.

5. NAT : pilih yes, apabila extensions berada dibelakang NAT. Nilai

defaultnya adalah no.

Gambar 4.12 Implementasi Antarmuka Edit Extensions Type Local

Page 143: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

117

6. Codec : teknik kompresi ( codec ) yang digunakan oleh extensions

tersebut. Pilih codec dengan konsumsi bandwith rendah ( lihat tabel 2.2 ).

7. Voicemail Password : password untuk membuka voicemail box.

8. Time Before Send To Voicemail : waktu tunggu sebelum panggilan

masuk ke voicemail.

Setelah administrator selesai melakukan edit data, administrator dapat

menekan tombol save, maka akan terjadi proses update data pada tabel

sip_buddies, tabel extensions_table dan tabel voicemail_users. Kode programnya

sebagai berikut :

Setelah update data selesai maka akan menampilkan halaman informasi proses

update. Tampilannya adalah sebagai berikut :

<?php $up_extensions="update sip_buddies set callerID = '$_POST[callerID]', host = '$_POST[host]', secret = '$_POST[secret]', dtmfmode = '$_POST[dtmfmode]', canreinvite = '$_POST[canreinvite]',nat = '$_POST[nat]', allow = '$_POST[codec]' where name = '$_SESSION[Extensions]'"; $up_Voicemail = "update voicemail_users set password = '$_POST[VMail_Pass]' where fullname = '$_SESSION[Extensions]'"; $_POST["appdata"] ="SIP/$"."{EXTEN}"."|".$_POST["VMail_Time"]; $up_DialPlan = "update extensions_table set appdata = '$_POST[appdata]' where exten = '$_SESSION[Extensions]' and priority ='2' and app ='Dial'"; $db_upDialPlan = mysql_query($up_DialPlan) or die (mysql_error()); $db_upExtensions= mysql_query($up_extensions) or die (mysql_error()); $db_upVoicemail = mysql_query($up_Voicemail) or die (mysql_error()); if($db_upExtensions && $db_upVoicemail && $db_upDialPlan){ if(system($restart)){ Kode program untuk Menampilkan Pesan sukses update data } } else { Kode program untuk Menampilkan Pesan gagal update data } ?>

Page 144: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

118

i. Implementasi Antarmuka Extensions Line Type Trunk

Halaman ini digunakan untuk proses penambahan account extensions Type

Trunk. Data account ini nantinya dapat digunakan oleh VoIP Server lain untuk

menjadi client dari VoIP Server yang sedang menggunakan aplikasi ini ( untuk

Gambar 4.13 Antarmuka Informasi Proses Edit Extensions Type Local

Gambar 4.14 Implementasi Antarmuka Extensions Line type Trunk

Page 145: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

119

melakukan proses Trunking Server ). Pada antarmuka ini administrator dapat

menginputkan data antara lain :

1. Telephone Number : nomor atau username yang dapat digunakan oleh

VoIP server lain untuk register menjadi client dari VoIP server ini.

2. Password : password untuk register VoIP Server lain ke VoIP

server ini.

Setelah data Telephone Number dan password dimasukkan pada texfiled dan

tombol submit ditekan maka akan terjadi proses insert data ke tabel sip_buddies

dan tabel extensions_table. Sebelum data di-insert-kan terlebih dahulu dicek

apakah data sudah pernah pernah di-insert-kan sebelumnya pada tabel

sip_buddies. Pengecekan data dilakukan untuk menghindari duplikasi pada data

account. Kode program untuk mengecek data adalah sebagai berikut :

Setelah data tidak ditemukan, maka data Telephone Number dan password

akan di-insert-kan ke masing – masing tabel. Kode programnya adalah sebagai

berikut :

<?php $search_ex = "Select * from sip_buddies where name='$_POST[ex_number]' order by name"; $db_search_ex = mysql_query($search_ex); $row_search_ex = mysql_num_rows($db_search_ex); ?>

<?php if(isset($_POST["btn_addExtensions"])){ function Insertsip_buddies($ex_number,$status,$context,$mailbox, $host,$callerID,$secret,$username,$insecure,$allow){ $extensions = "insert into sip_buddies(name,status,context,mailbox, host,callerID,secret,username,insecure,allow) values('$ex_number', '$status','$context','$mailbox','$host','$callerID','$secret', '$username','$insecure','$allow')"; $db_extensions = mysql_query($extensions) or die ("Error insert sip_buddies"); } $Ringing = "insert into extensions_table(context,exten,priority,app, appdata) values ('$context','$_POST[ex_number]','1','Ringing','')";

Page 146: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

120

Apabila penambahan data account Extensions Type Trunk tersebut telah

dilakukan, maka akan ditampilkan pada tabel yang juga berada pada halaman ini

juga, tampilannya adalah sebagai berikut :

Pada gambar 4.15, ditampilkan data account Extensions Type Trunk pada tabel

Data Account Extensions Type Trunk. Melalui tabel tersebut, administrator dapat

$dial_noVmail = "SIP/$"."{EXTEN}"; $Dial_Trunk = "insert into extensions_table(context,exten,priority, app,appdata) values ('$context','$_POST[ex_number]','2','Dial', '$dial_noVmail')"; $Hangup_Trunk = "insert into extensions_table (exten,context,priority, app,appdata) values('$_POST[ex_number]','$context',3,'Hangup','')"; if($_POST["pil_type"] == "Trunk"){ if($row_search_ex < 1 ){ $mailbox = "NULL"; $_POST["callerID"] =" "; Insertsip_buddies($_POST["ex_number"],$_POST["pil_type"],$context, $mailbox,$host,$_POST["callerID"],$_POST["secret"],$_POST["ex_number"],$insecure,$allow); $db_Ringing = mysql_query($Ringing) or die("Error Application Ringing Trunk"); $db_Dial_Trunk = mysql_query($Dial_Trunk) or die("Error Application Dial Trunk"); $db_Hangup_Trunk = mysql_query($Hangup_Trunk) or die("Error Application Hangup Trunk"); if($db_Ringing && $db_Dial_Trunk && $db_Hangup_Trunk){ echo "<div style=\"color:#FF0000\">Extensions Number ".$_POST['ex_number']."berhasil ditambahkan</div>"; } else{ echo "<div style=\"color:#FF0000\">Extensions Number ".$_POST['ex_number']."gagal di tambahkan !!! </div>"; } } elseif($row_search_ex = 1){ echo "<div style=\"color:#FF0000\">Telephone Number ".$_POST["ex_number"]." sudah di gunakan !!! </div>"; } } } ?>

Gambar 4.15 Antarmuka Hasil Penambahan Extensions Line Type Trunk

Page 147: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

121

mengubah atau menghapus data tersebut dengan memilih salah satu record pada

link gambar edit ( ) atau delete ( ) pada kolom Action. Apabila

administrator akan melakukan edit data maka akan ditampilkan antarmuka Edit

Extensions Line Type Trunk, sedangkan apabila administrator akan menghapus

data maka akan ditampilkan halaman konfirmasi hapus, misalkan administrator

akan menghapus extensions 100, maka tampilannya adalah sebagai berikut :

Pada gambar 4.16 diatas, ditampilkan konfirmasi untuk menghapus account

extensions 100, apabila administrator yakin akan menghapus extensions yang

dimaksud, maka administrator dapat menekan tombol YA. maka data extensions

tersebut akan dihapus. Sedangkan jika administrator tidak jadi menghapus data

extensions tersebut maka dapat memilih tombol TIDAK, maka akan kembali ke

antarmuka Extensions Line. Proses hapus data terjadi pada tabel sip_buddies, dan

tabel extensions_table. Kode programnya adalah sebagai berikut :

Gambar 4.16 Antarmuka Konfirmasi Hapus Extensions Line Type Trunk

Page 148: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

122

j. Implementasi Antarmuka Edit Extensions Line Type Trunk

Halaman ini digunakan untuk menampilkan detail data account extensions

Type Trunk yang akan diedit oleh administrator. Pada form ditampilkan data

extensions tersebut sesuai dengan nama form yang disediakan. Pada gambar 4.17

diberikan contoh apabila administrator akan mengedit extensions Trunk 100.

Melalui antarmuka pada gambar 4.17, administrator dapat mengedit beberapa

parameter antara lain : password,Dtmfmode, canreinvite, nat, dan codec. Fungsi

<?php $del_extensions = "delete from sip_buddies where name ='$_GET[Extensions]'"; $q_del_extensions = mysql_query($del_extensions); $del_number = "delete from extensions_table where exten = '$_GET[Extensions]'"; $q_del_number = mysql_query($del_number); ?>

Gambar 4.17 Implementasi Antarmuka Edit Extensions Type Trunk

Page 149: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

123

dari masing – masing parameter tersebut sama dengan parameter yang digunakan

pada Extensions Line Type Local. Setelah administrator selesai melakukan edit

data extensions tersebut maka dapat menekan tombol Save, maka akan dilakukan

proses update data pada tabel sip_buddies. Kode programnya adalah sebagai

berikut :

k. Implementasi Antarmuka PABX Line

Halaman ini digunakan untuk menambah data account registrasi bagi VoIP

Gateway yang dapat digunakan untuk registrasi menjadi client dari VoIP Server.

Dengan adanya proses ini maka jaringan VoIP yang dioperasikan dapat

dihubungkan dengan jaringan PABX maupun jaringan telepon tradisional

<?php $up_extensions="update sip_buddies set callerID = '$_POST[callerID]', host = '$_POST[host]', secret = '$_POST[secret]', dtmfmode = '$_POST[dtmfmode]',canreinvite = '$_POST[canreinvite]', nat = '$_POST[nat]',allow = '$_POST[codec]' where name = '$_SESSION[Extensions]'"; $db_upExtensions= mysql_query($up_extensions) or die (mysql_error()); ?>

Gambar 4.18 Implementasi Antarmuka PABX Line

Page 150: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

124

(PSTN). Data account yang diinputkan melalui antarmuka ini adalah sebagai

berikut :

1. PABX Name : sembarang nama yang digunakan untuk identitas

perangkat VoIP Gateway.

2. Display Name : nama atau nomor yang akan ditampilkan layar IP Phone

atau X-Lite saat extensions dari jaringan PABX menelepon ke extensions

pada jaringan VoIP.

3. Username : username yang dapat digunakan oleh VoIP gateway

untuk register ke VoIP Server.

4. Password : password yang digunakan oleh VoIP gateway untuk

register ke VoIP Server.

5. Dialing Prefix : nomor awal ( prefix ) yang di Dial, apabila extensions

dari jaringan VoIP akan melakukan panggilan ke extensions pada jaringan

PABX.

Pada saat administrator menekan tombol Submit, maka terjadi pengecekan

data account inputan administrator pada tabel sip_buddies, tabel extensions_table

dan tabel pabx_tables sebelum data tersebut di-insert-kan ke tabel- tabel tersebut,

hal ini dilakukan untuk mencegah terjadinya duplikasi data account register VoIP

Gateway. Proses pengecekan data dilakukan oleh kode program berikut :

Page 151: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

125

Selanjutnya data inputan dari administrator akan di-insert-kan ke tabel

sip_buddies, tabel extensions_table dan tabel pabx_tables. Kode programnya

adalah sebagai berikut :

<?php $sip_pabx = "select * from sip_buddies where name ='$_POST[txt_userPABX]' order by name"; $db_sip_pabx = mysql_query($sip_pabx) or die('Error sip_pabx'); $ada_sip_pabx = mysql_num_rows($db_sip_pabx); $user_pabx = "select name,username,password,prefix from pabx_tables where username ='$_POST[txt_userPABX]' order by name"; $db_user_pabx = mysql_query($user_pabx); $ada_pabx = mysql_num_rows($db_user_pabx); $prefix_pabx = "select * from extensions_table where exten ='$dial_prefix' order by exten"; $db_prefix_pabx = mysql_query($prefix_pabx); $ada_prefix = mysql_num_rows($db_prefix_pabx); ?>

<?php $sip_pabx = "insert into sip_buddies(name,callerID,status,context, host,secret,username,insecure,allow) values('$username', '$callerID','PABX','$context','$host','$password','$username', 'very','$allow')"; $pabx_tables = "insert into pabx_tables(id,Name,callerid,username, password,prefix) values ('','$name','$callerID','$username', '$password','$dial_prefix')"; $Ringing = "insert into extensions_table(context,exten,priority,app, appdata) values('$context','$dial_prefix','1','Ringing','')"; $appdata_dial = "SIP/$"."{EXTEN}"."@$username"."|20.rt"; $Dial ="insert into extensions_table(context,exten,priority,app, appdata) values('$context','$dial_prefix','2','Dial', '$appdata_dial')"; $Hangup = "insert into extensions_table(context,exten,priority,app, appdata) values('$context','$dial_prefix','3','Hangup','')"; if(!empty($_POST["txt_userPABX"]) && !empty($_POST["txt_passPABX"]) && !empty($_POST["txt_prefixPABX"])){ if($ada_sip_pabx < 1 ){ if($ada_pabx < 1){ if($ada_prefix < 1){ $db_pabx_tables = mysql_query($pabx_tables) or die('Error pabx_tables'); $db_sip_pabx = mysql_query($sip_pabx) or die('Error sip_pabx'); $db_Ringing = mysql_query($Ringing) or die ('Error Ringing PABX'); $db_Dial = mysql_query($Dial) or die('Error Dial PABX'); $db_Hangup = mysql_query($Hangup) or die('Error Hangup PABX'); if($db_sip_pabx && $db_Ringing && $db_Dial && $db_Hangup){ Kode program untuk Menampilkan pesan insert data berhasil

Page 152: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

126

Apabila data berhasil diinputkan, maka data tersebut akan ditampilkan dalam

sebuah tabel yang juga berada pada antarmuka ini, tampilannya adalah sebagai

berikut :

Gambar 4.19 Antarmuka Hasil Penambahan Account PABX Line

Pada gambar 4.19, ditampilkan data hasil penambahan PABX Line pada tabel

Data account PABX Line. Melalui tabel tersebut, administrator dapat mengubah

atau menghapus data account tersebut, hal ini dilakukan dengan cara memilih

salah satu record dari link gambar edit ( ) atau delete ( ) yang berada pada

kolom Action. Apabila administrator akan melakukan edit data maka akan

ditampilkan antarmuka Edit PABX Line, sedangkan apabila administrator akan

menghapus data maka akan ditampilkan halaman konfirmasi hapus, misalkan

administrator akan menghapus data PABX Line dengan username 8 , maka

tampilannya adalah sebagai berikut :

} else{ Kode program untuk Menampilkan pesan insert data gagal } } } ?>

Page 153: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

127

Pada gambar 4.20 diatas, ditampilkan konfirmasi untuk menghapus data

account PABX dengan username 8, apabila administrator yakin akan menghapus

account yang dimaksud, maka administrator dapat menekan tombol YA, maka

data account PABX yang berada pada tabel sip_buddies, tabel extensions_table

dan tabel pabx_tables akan terhapus. Sedangkan jika administrator tidak jadi

menghapus data account PABX tersebut maka dapat memilih tombol TIDAK,

maka akan kembali ke antarmuka sebelumnya yaitu antarmuka PABX Line. Kode

program untuk menghapus data account PABX adalah sebagai berikut :

Gambar 4.20 Antarmuka Konfirmasi Hapus Data PABX Line

<?php $del_pabx = "delete from pabx_tables where username ='$_GET[user_pabx]'"; $db_del_pabx = mysql_query($del_pabx); $del_DialPlan = "delete from extensions_table where exten ='$_POST[prefix]'"; $db_del_DialPlan = mysql_query($del_DialPlan); $del_sip_pabx = "delete from sip_buddies where name = '$_GET[user_pabx]'"; $db_del_sip_pabx = mysql_query($del_sip_pabx); ?>

Page 154: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

128

l. Implementasi Antarmuka Edit PABX Line

Halaman ini digunakan untuk menampilkan detail data account PABX yang

akan diedit oleh administrator. Pada masing – masing form ditampilkan detail

data account tersebut. Misalkan administrator akan mengedit data PABX Line

dengan nama PABX USD, maka tampilannya adalah sebagai berikut :

Pada gambar 4.21 diatas, ditampilkan detail konfigurasi dari account PABX

USD. Parameter yang dapat diubah antara lain : PABX Name, Display Name,

password, NAT ( apabila perangkat VoIP Gateway berada dibelakang NAT ), dan

codec ( teknik kompresi / codec yang digunakan oleh perangkat VoIP Gateway ).

Setelah administrator selesai melakukan edit data dan menekan tombol submit

maka akan dilakukan proses update data account PABX pada tabel sip_buddies,

dan tabel pabx_tables. Kode programnya adalah sebagai berikut :

Gambar 4.21 Implementasi Antarmuka Edit PABX Line

Page 155: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

129

Setelah proses update data selesai maka akan ditampilkan informasi proses

update data tersebut, apakah berhasil atau gagal. Tampilannya adalah sebagai

berikut :

<?php $up_pabx = "update pabx_tables set callerID = '$_POST[txt_displayPABX]', name = '$_POST[txt_namePABX]', password = '$_POST[txt_passPABX]' where username ='$_POST[txt_userPABX]'"; $db_up_pabx = mysql_query($up_pabx) or die ('Update pabx_tables gagal'); $up_sip_pabx = "update sip_buddies set callerid = '$_POST[txt_displayPABX]', host ='$_POST[txt_hostPABX]',secret ='$_POST[txt_passPABX]', nat = '$_POST[nat]', allow ='$_POST[codec]' where name ='$_POST[txt_userPABX]'"; $db_up_sip_pabx = mysql_query($up_sip_pabx) or die ('Update sip_buddies gagal'); ?>

Gambar 4.22 Antarmuka Informasi Proses Edit PABX Line

Page 156: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

130

m. Implementasi Antarmuka Trunking Server Line

Halaman ini digunakan untuk meregistrasikan VoIP Server yang sedang

menggunakan aplikasi ini menjadi client dari VoIP Server lain ( proses Trunking

Server ). Untuk tujuan ini maka begitu administrator membutuhkan sebuah

account Extensions Type Trunk dari VoIP server lain yang akan dijadikan

Trunking Server. Setelah administrator mendapatkan data account tersebut, maka

data tersebut dapat diinputkan melalui antarmuka ini. Data yang diinputkan

melalui antarmuka ini adalah sebagai berikut :

1. Trunking Name : sembarang nama yang dijadikan identitas dari proses

Trunking Server.

2. Username : data Telephone Number yang berasal dari Extensions

Type Trunk dari VoIP Server lain.

Gambar 4.23 Implementasi Antarmuka Trunking Server Line

Page 157: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

131

3. Password : data password yang berasal dari data account

Extensions dari VoIP Server lain.

4. SIP Proxy : alamat IP dari VoIP Server yang akan dijadikan

Trunking Server.

5. Dialing Prefix : nomor awal ( prefix ) yang harus ditambahkan

untuk melakukan panggilan ke extensions dari VoIP Server yang dijadikan

Trunking Server. (dikenal sebagai kode area pada jaringan telepon PSTN).

Setelah administrator selesai menginputkan data account Trunking Server

pada masing – masing form, dan tombol submit ditekan maka akan terjadi proses

insert data ke tabel sip_buddies, tabel extensions_table dan tabel trunking_tables.

Selain insert data pada tabel, setiap kali melakukan proses trunking server

diperlukan konfigurasi pada file register.conf, dengan menambahkan baris

konfigurasi pada file tersebut dengan mengikuti format sebagai berikut :

Proses konfigurasi file register.conf dilakukan oleh kode program sebagai

berikut :

register=>username:password@sipproxy

<?php $file_register = $dir_asterisk."register.conf"; $register = "register=>".$_POST['txt_username'].":".$_POST['txt_password']. "@".$_POST['txt_domain']."\n"; system("sudo -u root chmod 777 /etc/asterisk/register.conf"); $filepointer = fopen($file_register, "a+"); $contents = fread($filepointer, filesize($file_register)); fputs($filepointer,$register); ?>

Page 158: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

132

Setelah proses konfigurasi pada file register.conf dilakukan, proses

selanjutnya adalah insert data account trunking ke tabel – tabel yang digunakan.

Proses insert data ke tabel dilakukan oleh kode program sebagai berikut :

Setelah proses insert data, maka akan ditampilkan informasi proses insert

tersebut. Tampilannya adalah sebagai berikut :

<?php if(fputs){ $_POST["appdata_Dial"] = "SIP/$"."{".$_POST["txt_prefix"]."}$". "{EXTEN:".$_POST["pjg_prefix"]."}"."@".$_POST["txt_domain"]; $Ringing = "insert into extensions_table(context,exten, priority,app,appdata)values('$_POST[context]','$_POST[Number]', '1','Ringing','')"; $Dial = "insert into extensions_table(context,exten,priority, app,appdata) values('$_POST[context]','$_POST[Number]','2','Dial', '$_POST[appdata_Dial]')"; $Hangup = "insert into extensions_table(context,exten,priority,app, appdata) values('outbound-trunk','$_POST[Number]','3','Hangup','')"; $insert_trunking= "insert into trunking_tables (name,username, password,domain,prefix) values('$_POST[txt_namepeering]', '$_POST[txt_username]','$_POST[txt_password]','$_POST[txt_domain]', '$_POST[txt_prefix]')"; $sip_trunking = "insert into sip_buddies(name,status,context,host, secret,username,insecure,allow,fromuser,fromdomain) values('$_POST[txt_username]','$_POST[status]','$_POST[context]', '$_POST[txt_domain]','$_POST[txt_password]','$_POST[txt_username]', 'very','$allow','$_POST[txt_username]','$_POST[txt_domain]')"; $db_sip_trunking = mysql_query($sip_trunking); if($db_sip_trunking){ $db_insert_trunking = mysql_query($insert_trunking); $db_Ringing = mysql_query($Ringing); $db_Dial = mysql_query($Dial); $db_Hangup = mysql_query($Hangup); if($db_Ringing && $db_Dial && $db_Hangup){ if(system($restart)){ kode program untuk menampilkan pesan trunking server berhasil } else{ kode program untuk menampilkan pesan trunking server gagal } } else{ kode program untuk menampilkan pesan trunking server gagal } } ?>

Page 159: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

133

Setelah data Trunking Server berhasil ditambah maka, data tersebut akan

ditampilkan pada sebuah tabel Data Account Trunking Server Line yang berada

pada antarmuka Antarmuka Trunking Server Line, tampilannya adalah sebagai

berikut :

Gambar 4.25 Antarmuka Hasil Penambahan Trunking Server Line

Pada gambar 4.25, ditampilkan data hasil penambahan Trunking Server Line

pada tabel Data Account Trunking Server Line. Melalui tabel ini, administrator

dapat mengubah atau menghapus data tersebut. Proses ini dapat dilakukan dengan

cara memilih salah satu record dari link gambar edit ( ) atau delete ( ) yang

berada pada kolom Action. Apabila administrator akan melakukan edit data maka

akan ditampilkan antarmuka Edit Trunking Server Line, sedangkan apabila

administrator akan menghapus data maka akan ditampilkan halaman konfirmasi

Gambar 4.24 Antarmuka Informasi Hasil Penambahan Trunking Server Line

Page 160: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

134

hapus, misalkan administrator akan menghapus data Trunking Server dengan

WAN voiprakyat yang memiliki alamat IP 172.21.206.92, maka tampilannya

adalah sebagai berikut :

Pada gambar 4.26 diatas, ditampilkan konfirmasi untuk menghapus data

Trunking Server dengan VoIP Server WAN voiprakyat yang memiliki alamat IP

172.21.206.92, apabila administrator yakin akan menghapus data yang dimaksud,

maka administrator dapat menekan tombol YA, dan kemudian data Trunking

Server tersebut akan terhapus. Tetapi jika administrator tidak jadi menghapus data

Trunking Server tersebut maka dapat memilih tombol TIDAK, dan kemudian

akan kembali ke antarmuka sebelumnya yaitu antarmuka Trunking Server Line.

Pada proses hapus data Trunking Server terjadi dua proses yaitu pertama

proses menghapus data Trunking Server pada tabel sip_buddies, tabel

extensions_table, dan tabel trunking_tables, dan kedua proses menghapus baris

Gambar 4.26 Antarmuka Konfirmasi Hapus data Trunking Server Line

Page 161: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

135

register pada file register.conf. Proses hapus data Trunking Server pada ketiga

buah tabel dilakukan oleh kode program sebagai berikut :

Sedangkan proses menghapus baris register pada file register.conf, dilakukan

oleh kode program sebagai berikut :

<?php $del_trunking = "delete from trunking_tables where username ='$_GET[username]'"; $db_del_trunking = mysql_query($del_trunking); $del_DialPlan = "delete from extensions_table where exten ='$_POST[prefix]'"; $db_del_DialPlan = mysql_query($del_DialPlan); $del_sip = "delete from sip_buddies where name = '$_GET[username]'"; $db_del_sip = mysql_query($del_sip); if($db_del_trunking && $db_del_DialPlan && $db_del_sip){ Kode program untuk menampilkan pesan sukses menghapus data Trunking Server } else{ Kode program untuk menampilkan pesan gagal menghapus data Trunking Server } ?> ?>

<?php $string = "register=>".$username.":".$password."@".$domain; system("chmod 777 /etc/asterisk/register.conf"); system("sed '/$string/d' /etc/asterisk/register.conf > /tmp/delpeers"); system("cp -f /tmp/delpeers /etc/asterisk/register.conf"); system("rm /tmp/delpeers"); ?>

Page 162: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

136

n. Implementasi Antarmuka Edit Trunking Server Line

Halaman ini digunakan untuk menampilkan detail data Trunking Server yang

akan diedit oleh administrator. Pada form sudah tertampil detail data Trunking

Server sesuai dengan nama form yang tersedia. Pada gambar 4.27 diberikan

contoh ketika administrator akan mengedit data Trunking Server dengan WAN

voiprakyat. Pada antarmuka ini, administrator hanya diperbolehkan untuk

mengedit data Trunking Name, password, nat, codec dan SIP Proxy dari data

Trunking Server. Setelah selesai mengubah data, administrator dapat menekan

tombol submit, kemudian akan terjadi dua proses yaitu pertama mengupdate data

Trunking Server pada tabel sip_buddies, tabel extensions_table, dan tabel

trunking_tables. Proses kedua yaitu mengupdate baris register Trunking Server

pada file register.conf. Kode programnya adalah sebagai berikut :

<?php $string_del_peers = "register=>".$username.":".$password."@".$domain; system("chmod 777 /etc/asterisk/register.conf");

Gambar 4.27 Implementasi Antarmuka Edit Trunking Server Line

Page 163: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

137

o. Implementasi Antarmuka Trunking Registration Status

system("sed '/$string_del_peers/d' /etc/asterisk/register.conf > /tmp/delpeers"); system("cp -f /tmp/delpeers /etc/asterisk/register.conf"); system("rm /tmp/delpeers"); $file_register = "/etc/asterisk/register.conf"; $string_up_peers = "register=>".$username.":".$password."@".$domain."\n\n"; $filepointer = fopen($file_register, "a+"); $contents = fread($filepointer, filesize($file_register)); fputs($filepointer,$string_up_peers); $up_peering = "Update trunking_tables set name ='$_POST[txt_namepeering]',password='$_POST[txt_password]', domain = '$_POST[txt_domain]',prefix = '$_POST[txt_prefix]' where username ='$_GET[username]'"; $db_up_peering = mysql_query($up_peering) or die("Error proses update trunking_tables"); $up_sip = "Update sip_buddies set host = '$_POST[txt_domain]', nat='$_POST[nat]',allow ='$_POST[codec]', secret ='$_POST[txt_password]' where name ='$_GET[username]'"; $db_up_sip = mysql_query($up_sip) or die ("Error proses update sip_buddies"); $up_extensions = "Update extensions_table set appData = '$_POST[appdata_Dial]' where exten = '$_POST[Number]' and app = 'Dial' "; $db_up_extensions = mysql_query($up_extensions) or die ("Error Update extensions"); ?>

Gambar 4.28 Implementasi Antarmuka Trunking Registration Status

Page 164: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

138

Antarmuka pada gambar 4.28 digunakan untuk menampilkan informasi

mengenai status registrasi dari VoIP Server yang sedang menggunakan aplikasi

ini ke VoIP Server yang dijadikan Trunking Server. Pada gambar 4.27, diberikan

contoh status registrasi trunking dengan VoIP Server yang mempunyai alamat IP

172.21.206.92 ( WAN voiprakyat ) adalah Request Sent, hal ini berarti registrasi

VoIP Server ini sedang meminta ( request ) untuk melakukan Trunking dengan

VoIP server tersebut. Proses request ini merupakan proses pencocokan data

account Trunking Server dengan data account extensions yang berada pada VoIP

Server tujuan Trunking. Jika data yang dimaksudkan ditemukan, maka status

registrasi akan berubah menjadi Registered, hal ini berarti bahwa VoIP Server

yang sedang menggunakan aplikasi ini sudah teregister ke VoIP Server tersebut,

selanjutnya extensions dari VoIP Server ini dapat melakukan panggilan ke

extensions yang berada pada jaringan WAN voiprakyat. Proses untuk

menampilkan status registrasi Trunking Server ini merupakan proses membaca

menampilkan isi file show_registry yang terletak pada direktori /var/log/asterisk/.

Kode programnya adalah sebagai berikut :

<?php $sippeers = "/var/log/asterisk/show_registry"; $fp = fopen ( $sippeers,"r"); while ($data = fgetcsv ($fp, 1000, ",")) { $num = count($data); for ($c=0; $c<$num; $c++) { if($data[$c] == "nnection"){ } else if($data[$c] == "Host Username Refresh State"){ } else if ($data[$c] == "Verbosity is at least 3"){ } else{ echo "<tr> <td align=\"left\">&nbsp;&nbsp; $data[$c]</td> </tr>"; } } ?>

Page 165: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

139

p. Implementasi Antarmuka Call Detail Record

Antarmuka ini berfungsi untuk mencari, kemudian menampilkan data

informasi percakapan yang terjadi pada Asterisk VoIP Server. Pencarian dimulai

dengan memasukkan tanggal awal pencarian ( from ) dan tanggal akhir pencarian

( To ) melalui menu calendar yang ada disebelah textfiled masing – masing form.

Setelah itu tekan tombol submit. Jika data ditemukan maka akan ditampilkan pada

tabel Call Detail Record, selain itu juga administrator dapat menampilkan data

tersebut dalam format PDF dengan cara menekan icon gambar PDF ( ). Kode

program untuk mencari data call detail record pada dasarnya merupakan perintah

select pada tabel cdr. Kode programnya adalah sebagai berikut :

Gambar 4.29 Implementasi Antarmuka Call Detail Record

<?php $cdr_row = "Select * from cdr where calldate between '$_POST[startDate]' and '$_POST[endDate]' order by calldate limit $_POST[offset],$_POST[rowsPerPage]"; $db_cdr_row = mysql_query($cdr_row); ?>

Page 166: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

140

q. Implementasi Antarmuka Change Password Administrator

Antarmuka ini digunakan untuk mengganti password administrator yang

sedang aktif login, administrator dapat memasukkan passwod lama ( old

password ), kemudian menggantinya dengan password baru ( new password )

pada form yang telah disediakan. Setelah administrator selesai memasukkan

kedua buah data tadi, maka administrator dapat menekan tombol submit, maka

akan terjadi proses update data password pada tabel admin. Kode programnya

adalah sebagai berikut :

Gambar 4.30 Implementasi Antarmuka Change Password Administrator

<?php $update = "update admin set user_password = md5('$_POST[new_pass]') where username = '$_POST[username]'"; if(mysql_query($update)){ echo "<div style=\"color:#FF0000\"> Data password $_SESSION[user] berhasil di edit </div>"; } else{ echo "<div style=\"color:#FF0000\"> Data password $_SESSION[user] gagal di edit </div>"; } ?>

Page 167: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

141

4.4. Implementasi File Antarmuka dan File Action

Pada bagian ini akan diberikan daftar implementasi file Antarmuka yang

digunakan untuk menampilkan halaman antarmuka dan file Action yang

digunakan untuk menangani proses inputan yang terjadi dari masing – masing

menu pada aplikasi manajemen Asterisk VoIP Server ini.

Tabel 4.1 Daftar File Antarmuka dan File Action

Antarmuka File Antarmuka File Action Login Administrator index.php ceklogin.php

Phonebook phonebook.php phonebook.php

Index Configuration index.php -

Asterisk File asterisk_conf.php -

Edit Asterisk File edit_asterisk_conf.php func_asterisk_conf.php

Service Asterisk services.php services.php

Extensions Line Type Local add_extensions.php func_extensions.php

Extensions Line Type Trunk add_extensions.php func_extensions.php

Edit Extensions Line Type Local edit_extensions.php func_extensions.php

Edit Extensions Line Type Trunk edit_extensions.php func_extensions.php

PABX Line add_pabx.php func_pabx.php

Edit PABX Line edit_pabx.php func_pabx.php

Trunking Server Line add_peeringserver.php func_peering.php

Edit Trunking Server Line edit_peeringserver.php func_peering.php

Trunking Registrasion Status status_peers.php -

Call Detail Record call_detail_record.php func_viewCDR.php

Change Password Administrator edit_administrator.php edit_administrator.php

4.5. Implementasi Skenario Pengujian Sistem

Pada bagian ini akan membahas mengenai bagaimana implementasi

skenario jaringan yang telah dirancang pada bab sebelumnya. Pada penelitian ini

menggunakan tiga macam skenario jaringan, antara lain :

a. Skenario Komunikasi VoIP menggunakan sebuah VoIP Server

Bentuk skenario jaringan ini merupakan bentuk skenario paling sederhana

dari komunikasi VoIP menggunakan Asterisk. Pada skenario ini menggunakan

Page 168: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

142

beberapa perangkat antara lain : sebuah komputer yang berfungsi sebagai VoIP

Server, sebuah perangkat IP Phone dan sebuah komputer lagi yang berfungsi

sebagai client dari VoIP Server. Masing – masing perangkat tersebut saling

terhubung dalam sebuah jaringan yang memiliki network id 192.168.0.1/24.

Detail konfigurasi masing – masing kartu jaringan dapat dilihat dari gambar

berikut :

Gambar 4.31 Skenario Komunikasi VoIP Menggunakan Sebuah VoIP Server

Pada bentuk skenario jaringan ini, administrator dengan menggunakan web

browser ( misalkan dari komputer client ) dapat mengakses aplikasi manajemen

asterisk berbasis web dengan alamat URL http://192.168.0.1/asterisk/,

setelah administrator berhasil login, maka administrator dapat menggunakan

menu Extensions Line yang disediakan oleh aplikasi ini untuk mengkonfigurasi

asterisk. Dikarenakan pada skenario ini menggunakan dua buah client, maka

pada skenario ini hanya membutuhkan dua buah data account register

Extensions yang nantinya dapat digunakan oleh perangkat client untuk login

menjadi client dari VoIP server. Contoh proses penambahan data melalui menu

Page 169: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

143

Extensions Line dapat dilihat pada gambar 4.9. Data account register yang

ditambahkan adalah sebagai berikut :

Tabel 4.2 Data Register Client Skenario Jaringan I

Perangkat Telepon VoIP ( client ) Data Registrasi PC ( X-Lite ) IP Phone

Type Extensions Local Local

Telephone Number 1000 1001

Display Name 1000 1001

Password abc1000 abc1001

Voicemail Number 21000 21001

Voicemail Password 2345 2356

Time Before Send To Voicemail 10 10

Pada data registrasi pada tabel 4.1, berarti bahwa X-Lite akan mempunyai

nomor telepon 1000 dan IP Phone akan mempunyai nomor telepon 1001.

Setelah data registrasi pada tabel 4.1 ditambahkan, maka akan ditampilkan pada

tabel Data account Extensions Local dengan tampilan sebagai berikut :

Gambar 4.32 Tabel Data Account Extensions Local Skenario Jaringan I

b. Skenario Komunikasi VoIP PC to Phone dan Phone to PC

Bentuk skenario jaringan ini dibuat untuk menggambarkan bagaimana jika

jaringan VoIP digabungkan dengan jaringan PABX. Sehingga masing – masing

client dari kedua jaringan tersebut dapat saling berkomunikasi. Perangkat yang

dibutuhkan pada implementasi skenario ini antara lain : sebuah komputer yang

berfungsi sebagai VoIP server, sebuah perangkat VoIP Gateway yang

digunakan sebagai media untuk menghubungkan jaringan VoIP dengan jaringan

Page 170: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

144

PABX, sebuah IP Phone dan sebuah komputer yang berfungsi sebagai client

dari jaringan VoIP, serta dua buah pesawat telepon analog. Selain itu juga

dibutuhkan sebuah line extensions PABX ( CO-Line ) yang dihubungkan

melalui port FXO pada perangkat VoIP Gateway, dengan adanya line ini maka

jaringan VoIP dapat terhubung dengan jaringan PABX. Detail konfigurasi untuk

skenario jaringan ini dapat digambarkan sebagai berikut :

Gambar 4.33 Skenario Komunikasi VoIP PC to Phone dan Phone to PC

Pada komputer VoIP server dipasangkan dua buah kartu jaringan yang

masing – masing memiliki alamat IP 192.168.0.1/24 untuk eth0, dan

172.21.206.80/24 untuk eth1. Pada eth0 terhubung dengan jaringan yang

memiliki network id 192.168.0.1/24 jaringan ini digunakan untuk mewakili

bentuk jaringan VoIP, dengan menggunakan network id ini maka komputer

VoIP server dapat terhubung dengan perangkat komputer dan IP Phone yang

merupakan client dari VoIP server tersebut. Sedangkan pada kartu eth1

terhubung dengan perangkat VoIP Gateway yang memiliki alamat IP

Page 171: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

145

172.21.206.81 dalam sebuah jaringan yang memiliki network id

172.21.206.80/24.

Pada bentuk jaringan yang kedua ini, administrator membutuhkan menu

Extensions Line dan PABX / PSTN Line, untuk mengkonfigurasi asterisk

dengan menggunakan aplikasi manajemen asterisk berbasis web. Konfigurasi

dilakukan dengan cara menambahkan data register bagi perangkat IP Phone,

komputer ( X-Lite ), Telepon Analog (A) melalui menu Extensions Line ( contoh

proses penambahan data lihat gambar 4.9 ), dan menambahkan data account

PABX bagi perangkat VoIP Gateway melalui menu PABX / PSTN Line ( untuk

contoh proses penambahan data lihat gambar 4.18 ). Administrator dapat

melakukan hal tersebut dengan menggunakan web browser untuk mengakses

aplikasi manajemen asterisk berbasis web dengan mengetikkan URL http://IP-

AddressVoIPServer/ asterisk/ pada web browser. Data account register yang

ditambahkan adalah sebagai berikut:

1. Data account register yang ditambahkan melalui menu Extensions Line

Tabel 4.3 Data Registrasi Client Skenario Jaringan II

Client Data Registrasi

PC ( X-Lite ) IP Phone Telepon Analog (A)

Type Extensions Local Local Local

Telephone Number 1000 1001 1002

Display Name 1000 1001 1002

Password abc1000 abc1001 abc1002

Voicemail Number 21000 21001 21002

Voicemail Password 123456 23456 12345

Time Before Send To Voicemail 10 10 10

Pada data registrasi pada tabel 4.2, berarti bahwa X-Lite akan mempunyai

nomor telepon 1000, IP Phone akan mempunyai nomor telepon 1001 dan

Page 172: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

146

Telepon Analog A akan mempunyai nomor telepon 1002. Setelah data

registrasi pada tabel 4.2 ditambahkan, maka akan ditampilkan pada tabel Data

account Extensions Local dengan tampilan sebagai berikut :

Gambar 4.34 Tabel Data Account Extensions Local Skenario Jaringan II

2. Data account register PABX yang ditambahkan melalui menu PABX /

PSTN Line

Tabel 4.4 Data Registrasi Perangkat VoIP Gateway Skenario Jaringan II

Perangkat VoIP Gateway Data Registrasi VoIP Gateway

PABX Name PABX USD

Display Name PABX USD

Username 8

Password abc8

Dialing Prefix 8

Dengan data account register PABX dari tabel 4.3 perangkat VoIP

Gateway dapat meregistrasikan port FXO yang digunakan untuk menjadi client

dari VoIP Server sehingga dengan demikian jaringan PABX dapat berhubungan

dengan jaringan VoIP. Dengan data nomor Dialing Prefix maka, apabila ada

client dari jaringan VoIP akan mendial extensions pada jaringan PABX

menggunakan format nomor Dialing Prefix + nomor extensions. Setelah data

registrasi pada tabel 4.3 ditambahkan, maka akan ditampilkan pada tabel Data

Account PABX Line, dengan tampilan sebagai berikut :

Page 173: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

147

Gambar 4.35 Tabel Data Account PABX Line Skenario Jaringan II

c. Skenario Komunikasi VoIP menggunakan dua buah VoIP Server ( proses

Trunking Server )

Pada skenario jaringan ini, merupakan gambaran penggabungan dua buah

VoIP Server atau yang lebih dikenal dengan istilah Trunking Server. Untuk

dapat menjalankan Trunking, maka sebuah VoIP server harus registrasi menjadi

client dari VoIP Server yang akan dijadikan Trunking Server. Dengan adanya

proses ini, maka nantinya client dari masing – masing VoIP Server dapat

melakukan komunikasi lintas server. Detail konfigurasi kartu jaringan yang

digunakan adalah sebagai berikut :

Gambar 4.36 Skenario Komunikasi VoIP menggunakan dua buah VoIP Server

( proses Trunking Server )

Page 174: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

148

Pada skenario jaringan gambar 4.36, menggunakan dua buah komputer yang

berfungsi sebagai VoIP server, konfigurasinya adalah sebagai berikut :

Komputer VoIP Server I

VoIP Server ini memiliki client berupa sebuah IP Phone dan sebuah

komputer ( A ). Pada komputer VoIP server ini terpasang dua buah kartu

jaringan yang memilili alamat IP :

a. Kartu jaringan pertama ( eth0 ) : 192.168.0.1/24, terhubung dengan

sebuah jaringan yang memiliki network id 192.168.0.1/24. Dengan

menggunakan kartu jaringan ini maka VoIP server I dapat terhubung

dengan IP Phone, dan komputer A.

b. Kartu jaringan kedua ( eth1 ) :172.21.206.80/24,terhubung dengan

jaringan sebuah yang memiliki network id 172.21.206.80/24. kartu

jaringan ini terhubung dengan VoIP Server II.

Komputer VoIP Server II

VoIP Server ini memiliki client berupa sebuah komputer ( B ). Pada

komputer VoIP server ini terpasang dua buah kartu jaringan yang memilili

alamat IP :

a. Kartu jaringan pertama ( eth0 ) : 172.21.206.81/24, terhubung dengan

sebuah jaringan yang memiliki network id 172.21.206.80/24.Kartu

jaringan ini terhubung dengan VoIP Server I.

b. Kartu jaringan kedua ( eth1 ) :130.130.130.130/24, terhubung dengan

sebuah jaringan yang memiliki network id 130.130.130.0/24. Kartu

jaringan ini terhubung dengan komputer B.

Page 175: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

149

Setelah semua perangkat terhubung dengan baik, maka administrator dapat

mengakses aplikasi manajemen Asterisk berbasis web menggunakan web

browser dengan mengetikkan URL http://IP-Address-VoIPServerI/asterisk/ atau

http://IP-Address-VoIPServerII/asterisk/ tergantung dari VoIP server mana

yang akan dikonfigurasi terlebih dahulu. Untuk skenario jaringan ini

Administrator membutuhkan menu Extensions Line dan menu Trunking Server

Line. Melalui menu - menu tersebut administrator dapat menambahkan data

account register untuk mengkonfigurasi asterisk. Misalkan saja data account

register yang ditambahkan adalah sebagai berikut :

1. Data account register yang ditambahkan melalui menu Extensions Line

Untuk contoh proses penambahan data melalui menu Extensions Line pada

aplikasi manajemen asterisk berbasis web dapat dilihat pada gambar 4.9. Data

yang ditambahkan adalah sebagai berikut :

a. Pada VoIP Server I

Tabel 4.5 Data Registrasi Client Pada VoIP Server I Skenario Jaringan III

Client Data Registrasi PC ( X-Lite ) IP Phone VoIP Server II

Type Extensions Local Local Trunk

Telephone Number 1000 1001 100

Display Name 1000 1001 -

Password abc1000 abc1001 abc100

Voicemail Number 21000 21001 -

Voicemail Password 1234 1234 -

Time Before Send To Voicemail 10 10 -

Pada data registrasi pada tabel 4.4, berarti bahwa X-Lite akan

mempunyai nomor telepon 1000, IP Phone akan mempunyai nomor telepon

1001. Sedangkan untuk data registrasi dengan Type Extensions = Trunk akan

digunakan oleh VoIP Server II untuk registrasi menjadi client dari VoIP

Page 176: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

150

Server I ( proses Trunking Server ). Setelah data registrasi dari tabel 4.4

ditambahkan akan ditampilkan pada tabel dengan tampilan sebagai berikut :

Gambar 4.37 Tabel Data Account Extensions Local dan Trunk

Pada VoIP Server I Skenario Jaringan III

b. Pada VoIP Server II

Tabel 4.6 Data Registrasi Client Pada VoIP Server II Skenario Jaringan III

Client Data Registrasi PC ( X-Lite ) VoIP Server I

Type Extensions Local Trunk

Telephone Number 2000 200

Display Name 2000 -

Password abc2000 abc200

Voicemail Number 22000 -

Voicemail Password 1234 -

Time Before Send To Voicemail 10 -

Pada data registrasi pada tabel 4.5, berarti bahwa X-Lite akan mempunyai

nomor telepon 2000. Sedangkan untuk data registrasi dengan Type Extensions

= Trunk akan digunakan oleh VoIP Server I untuk registrasi menjadi client

dari VoIP Server II ( proses Trunking Server ). Setelah data registrasi dari

tabel 4.5 ditambahkan akan ditampilkan pada tabel dengan tampilan sebagai

berikut :

Page 177: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

151

Gambar 4.38 Tabel Data Account Extensions Local dan Trunk

Pada VoIP Server II Skenario Jaringan III

2. Data account register yang ditambahkan melalui menu Trunking Server

Line

Untuk contoh proses penambahan data melalui menu Trunking Server Line

pada aplikasi manajemen asterisk berbasis web dapat dilihat pada gambar 4.23.

Data yang ditambahkan adalah sebagai berikut :

a. Pada VoIP Server I

Tabel 4.7 Data Registrasi Trunking VoIP Server I ke VoIP Server II

Trunking Server Data Registrasi VoIP Server II

Trunking Name Trunking Dengan VoIP Server II

Username 200

Password abc200

Sip Proxy 172.21.206.81

Dialing Prefix 021

Dengan data yang ada pada tabel 4.6, berarti bahwa apabila ada client

( extensions ) dari VoIP Server I akan melakukan Dial ke client (extensions)

VoIP Server II format nomornya adalah nomor Dialing prefix + nomor

telepon client yang dituju. Setelah data pada tabel 4.6 ditambahkan maka

akan ditampilkan pada tabel data account Trunking Server Line dengan

tampilan sebagai berikut :

Page 178: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

152

Gambar 4.39 Tabel Data Account Trunking Server Line

Pada VoIP Server I Skenario Jaringan III

b. Pada VoIP Server II

Tabel 4.8 Data Registrasi Trunking VoIP Server II ke VoIP Server I

Trunking Server Data Registrasi VoIP Server I

Trunking Name Trunking Dengan VoIP Server I

Username 100

Password abc100

Sip Proxy 172.21.206.80

Dialing Prefix 022

Dengan data yang ada pada tabel 4.7, berarti bahwa apabila ada client

(extensions) dari VoIP Server II akan melakukan Dial ke client (extensions)

VoIP Server I format nomornya adalah nomor Dialing prefix + nomor

telepon client yang dituju. Setelah data pada tabel 4.7 ditambahkan maka

akan ditampilkan pada tabel data account Trunking Server Line dengan

tampilan sebagai berikut :

Gambar 4.40 Tabel Data Account Trunking Server Line Pada

VoIP Server II Skenario Jaringan III

Page 179: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

153

4.6 Implementasi IP Phone sebagai client Asterisk VoIP Server

Pada hardware IP Phone dilengkapi dengan aplikasi berbasis web yang

dapat digunakan untuk mengkonfigurasi IP Phone tersebut. Untuk membuka

aplikasi konfigurasi berbasis web pada IP Phone ini membutuhkan web browser

( Internet Explorer versi 6.0 ) dengan mengetikkan alamat URL

http://AlamatIP-IPPhone/ pada web browser. Langkah yang perlu dilakukan

untuk konfigurasi IPPhone sebagai client dari Asterisk adalah sebagai berikut :

Konfigurasikan alamat IP IP Phone

Registrasikan IP Phone ke Asterisk dengan menggunakan data konfigurasi

dari menu Extensions Line Type Local.

Sedangkan konfigurasi yang lainnya dapat mengikuti nilai default yang

sudah ada pada masing – masing menu konfigurasi. Langkah – langkah

konfigurasi IP Phone adalah sebagai berikut :

a. Tampilan awal aplikasi berbasis web pada IP Phone. Masukkan Default

username = root tanpa password , kemudian tekan tombol Login.

Gambar 4.41 Halaman Login Admin pada Perangkat IP Phone

Page 180: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

154

b. Setelah berhasil Login, maka akan muncul halaman ini. Halaman ini

digunakan untuk menampilkan informasi alamat IP, Default Gateway,dan

DNS Server yang digunakan oleh IP Phone tersebut.

c. Untuk mengkonfigurasi Alamat IP, dilakukan pada menu Network

Configuration. Jika akan menggunakan IP dinamis, cukup dengan

mencentang checkbox Dynamic IP ( menu 1 ), tetapi jika akan

menggunakan IP statis isikan alamat IP, Netmask, Default Router

(Gateway) dan DNS server sesuai dengan textfield masing – masing.

Setelah selesai tekan tombol DONE. Tampilannya adalah sebagai berikut :

Gambar 4.42 Halaman Informasi Perangkat IP Phone

Page 181: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

155

d. Untuk meregistrasikan IP Phone sebagai client dari Asterisk dilakukan

pada menu SIP Configuration,. Ada beberapa parameter konfigurasi yang

disesuaikan dengan data konfigurasi yang diperoleh dari VoIP server

( menu Extensions Line Type Local ), antara lain :

Username : diisi dengan data Telephone Number

Telephone Number : diisi dengan data Telephone Number

Password : diisi dengan password

Proxy Server Address : diisi dengan alamat IP dari VoIP Server.

SIP Domain Name : diisi dengan alamat IP dari VoIP Server.

Untuk parameter konfigurasi yang lain tidak perlu dirubah ( mengikuti

nilai default yang ada pada IP Phone ). Setelah selesai tekan tombol

DONE. Tampilannya adalah sebagai berikut :

Gambar 4.43 Menu Network Configuration pada Perangkat IP Phone

Page 182: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

156

e. Setelah selesai meregistrasikan IP Phone ke Asterisk, maka IP Phone akan

menampilkan status registrasi tersebut pada layar. Tampilannya adalah

sebagai berikut :

f. Jika registrasi berhasil maka pada layar IP Phone akan menampilkan

nomor extensions, tetapi jika registrasi gagal maka pada layar akan

Gambar 4.45 Tampilan Proses Registering IP Phone

Gambar 4.44 Menu SIP Configuration pada Perangkat IP Phone

Page 183: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

157

menampilkan pesan error. Tampilan apabila registrasi berhasil adalah

sebagai berikut :

Pada gambar 4.46, berarti bahwa IP Phone memiliki nomor Telepon 1001.

4.7 Implementasi X-Lite sebagai client Asterisk VoIP Server

X-Lite merupakan sebuah program aplikasi yang diinstalkan pada komputer.

Dengan menggunakan program ini ( X-Lite ), maka sebuah komputer dengan

tambahan headset dan mikrofon dapat berfungsi seperti pesawat telepon biasa.

Sebelum dapat digunakan, pastikan bahwa komputer dengan X-Lite yang sudah

terinstall terhubung dalam jaringan dengan Asterisk VoIP Server. Setelah itu

registrasikan X-Lite menjadi client dari VoIP server. Langkah – langkah

konfigurasinya adalah sebagai berikut :

a. Tampilan awal X-Lite 3.0 ketika pertama kali dijalankan adalah sebagai

berikut :

Gambar 4.46 Tampilan Status IP Phone siap digunakan

Page 184: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

158

b. Setelah tampilan X-Lite muncul, maka klik kanan tampilan X-Lite tersebut,

untuk membuka jendela menu konfigurasi. Kemudian pilih SIP Account

Settings untuk memasukkan user account.

Gambar 4.47 Tampilan Awal Program X-Lite

Gambar 4.48 Jendela Menu Konfigurasi pada X-Lite

Page 185: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

159

c. Setelah muncul menu SIP Account Setting, maka tekan tombol Add.

d. Langkah selanjutnya adalah mengisikan data Telephone Number pada

kolom username dan Display Name, Password pada kolom password,

bagian domain diisi dengan Alamat IP dari VoIP server. Setelah itu tekan

tombol OK, untuk mengakhiri proses input data pada X-Lite.

Gambar 4.49 Menu SIP Account Pada X-Lite

Gambar 4.50 Konfigurasi SIP Account Pada X-Lite

Page 186: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

160

e. Setelah tombol OK pada langkah d ditekan, maka akan muncul tampilan

dibawah ini, setelah tampilan ini muncul, tekan tombol Close untuk

mengakhiri proses registrasi X-Lite pada Asterisk. Pastikan account

dalam keadaan enable sebelum menekan tombol Close.

f. Setelah langkah a s/d langkah e dilakukan, maka X-Lite akan menampilkan

status proses registeringnya ke VoIP server. Tampilan adalah sebagai

berikut :

Gambar 4.51 Aktifasi X-Lite

Gambar 4.52 Tampilan Proses Registering Pada X-Lite

Page 187: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

161

g. Apabila registrasi X-Lite berhasil maka akan menampilkan data username

yang sekaligus akan menjadi identitas ( nomor telepon ) dari X-Lite,

kemudian X-Lite siap digunakan untuk berkomunikasi, tetapi jika

registrasi gagal X-Lite akan menampilkan pesan error dan X-Lite tidak

dapat digunakan untuk berkomunikasi. Tampilan registrasi X-Lite yang

siap digunakan untuk berkomunikasi VoIP adalah sebagai berikut :

4.8 Implementasi VoIP Gateway ( ITG ) sebagai media penghubung antara

jaringan VoIP dengan jaringan PABX

Pada penelitian ini ITG digunakan untuk menghubungkan antara jaringan

VoIP dengan jaringan PABX dan pesawat telepon biasa. Untuk dapat terhubung

dengan jaringan PABX maka membutuhkan sebuah line extensions ( CO-Line )

yang dipasangkan pada port FXO, sedangkan agar terhubung ke pesawat telepon

biasa maka kabel dari pesawat telepon tersebut langsung dipasangkan pada port

FXS. Pada ITG yang digunakan dilengkapi dengan aplikasi berbasis web yang

Gambar 4.53 Tampilan X-Lite Siap Digunakan

Page 188: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

162

dapat digunakan untuk mengkonfigurasi ITG tersebut, untuk membuka aplikasi

ketikkan URL http://AlamatIP-ITG/ pada web browser. Pada dasarnya

langkah yang perlu dilakukan untuk konfigurasi ITG ini adalah sebagai berikut :

1. Konfigurasi Alamat IP dari ITG.

2. Konfigurasi account ITG untuk port FXO dengan menggunakan menu

PABX / PSTN Line pada aplikasi manajemen Asterisk berbasis web.

3. Konfigurasi account ITG untuk port FXS dengan menggunakan menu

Extensions Line Type Local pada aplikasi manajemen Asterisk berbasis

web.

4. Registrasikan perangkat ITG ini menjadi client Asterisk menggunakan

data konfigurasi yang sesuai dari langkah 2 dan 3 diatas.

Sedangkan konfigurasi yang lainnya dapat mengikuti nilai default yang

sudah ada pada ITG tersebut. Detail langkah – langkah konfigurasinya adalah

sebagai berikut :

a. Tampilan Awal aplikasi berbasis web pada ITG, masukkan default

username = admin, dan default password = 123.

Gambar 4.54 Tampilan Login Admin Perangkat ITG

Page 189: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

163

b. Setelah berhasil login, maka akan muncul tampilan seperti gambar

dibawah ini :

c. Konfigurasi alamat IP dapat dilakukan pada menu Advanced Setup ->

WAN Setting. Sesuaikan alamat IP dari ITG dengan alamat IP yang

digunakan pada jaringan VoIP. Tampilannya adalah sebagai berikut :

Gambar 4.55 Tampilan awal menu Konfigurasi ITG

Gambar 4.56 Menu WAN Setting pada Perangkat ITG

Page 190: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

164

Setelah selesai menyesuaikan alamat IP dengan alamat IP pada jaringan

tekan tombol Apply, kemudian pilih Save Configuration dan Reboot

( untuk merestart perangkat ITG ) sehingga konfigurasi Alamat IP dapat

dikenali.

d. Pasangkan kabel pada masing – masing port, sesuai dengan fungsinya.

Untuk kabel dengan port RJ11 digunakan pada port FXS ( sambungankan

langsung ke pesawat telepon analog ) dan port FXO ( sambungkan

langsung ke sebuah CO-Line / line extensions pada jaringan PABX ).

Sedangkan untuk kabel dengan port RJ45 digunakan pada port WAN

( digunakan untuk sambungan ke jaringan VoIP ). Gambarnya adalah

sebagai berikut :

e. Setelah masing – masing kabel terpasang, maka langkah selanjutnya

adalah meregistrasikan ITG tersebut ke Asterisk VoIP Server sesuai

dengan jumlah dan berada pada nomor berapakah port FXS dan port FXO

Gambar 4.57 Pemasangan Kabel Pada ITG

Ujung Kabel RJ11 ini dihubungkan langsung ke pesawat telepon analog

Ujung Kabel RJ11 ini dihubungkan langsung ke CO-Line ( Line extensions ) jaringan PABX.

Kabel LAN untuk koneksi ITG ke jaringan VoIP

Page 191: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

165

tersebut digunakan ( contohnya pada gambar 4.56, port FXS dan port

FXO yang digunakan berada pada nomor 3 dan nomor 4 ). Registrasi

dilakukan melalui menu Advanced Setup -> VoIP Basic. Pada menu ini

ada beberapa parameter konfigurasi yang harus diisikan antara lain :

1. Pada bagian VoIP Protocol Setting : pilih SIP, kemudian tekan

tombol Select.

2. Pada bagian Port Number / password setting :

2.1 Untuk port FXO ( Line 2 atau Line 4 tergantung dari Line mana yang

sudah terpasang kabel RJ11 ), isikan :

Number : diisi dengan username

Account : diisi dengan username

Password : diisi dengan password

2.2 Untuk port FXS ( Line 1 atau Line 3, tergantung dari Line mana yang

sudah terpasang kabel RJ11 ), isikan :

Number : diisi dengan Telephone Number

Account : diisi dengan Telephone Number

Password : diisi dengan password

Pada langkah 1 dan 2, tampilannya adalah sebagai berikut :

Gambar 4.58 Tampilan Form Input Data Registrasi Pada ITG

Page 192: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

166

3. Pada bagian SIP Proxy Setting :

Domain / Realm : diisi dengan Alamat IP Asterisk VoIP Server.

SIP Proxy Server : diisi dengan Alamat IP Asterisk VoIP Server

dan nomor port ( default port = 5060 ).

SIP Authentication : pilih Enabled.

Pada bagian SIP Proxy Setting memiliki tampilan sebagai berikut :

Setelah semua data diinputkan sesuai dengan fungsinya masing – masing,

maka pilih Save Configuration, kemudian pilih Reboot untuk merestart

perangkat ITG agar konfigurasi yang dilakukan dapat dikenali. Tampilan

pada menu VoIP Basic apabila perangkat ITG berhasil meregistrasikan

diri dengan baik ke Asterisk VoIP Server adalah sebagai berikut :

Gambar 4.60 Tampilan Status registrasi Perangkat ITG ke Asterisk VoIP Server

Gambar 4.59 Setting Data SIP Proxy Pada ITG

Page 193: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

BAB V

ANALISA HASIL IMPLEMENTASI

5.1 Hasil Uji Coba Progam

Dari hasil implementasi program aplikasi manajemen Asterisk berbasis web

pada masing – masing skenario jaringan yang digunakan, secara umum progam

dapat berjalan dengan baik dan dapat memberikan hasil yang diharapkan yaitu

komunikasi VoIP antar perangkat client yang digunakan. Komunikasi VoIP disini

ditekankan pada komunikasi suara seperti layaknya komunikasi suara pada

jaringan telepon biasa ( PSTN ).

Progam aplikasi manajemen Asterisk berbasis web ini diharapkan dapat

membantu administrator untuk mengkonfigurasi Asterisk, khususnya pada proses

konfigurasi otentikasi user, konfigurasi pengaturan DialPlan, dan konfigurasi

pengaturan voicemail system secara berbasis GUI ( Graphical User Interface )

serta dapat diakses jarak jauh ( remote ).

5.2 Analisa Konfigurasi Asterisk sebagai VoIP Server Berbasis Protokol SIP

Konfigurasi Asterisk sebagai sebuah VoIP Server pada dasarnya dibagi

menjadi dua proses antara lain :

1. Proses Konfigurasi Otentikasi User ( dengan username dan password ),

proses ini kemudian dapat disebut sebagai proses pendaftaran nomor

telepon pada Asterisk VoIP Server.

2. Proses Konfigurasi Pengaturan DialPlan.

167

Page 194: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

168

Selain kedua konfigurasi diatas, proses konfigurasi pada Asterisk diperlukan

hanya apabila akan menambahkan features tertentu pada Asterisk. Salah satu

features yang dapat ditambahkan adalah voicemail system. Proses konfigurasi

pada Asterisk ini dapat dilakukan secara berbasis text ( text based ) dan juga dapat

dilakukan dengan menggunakan teknik Asterisk Realtime. Konfigurasi Asterisk

berbasis text dilakukan dengan cara mengetikkan ( mengedit ) parameter pada file

konfigurasi mengikuti pola aturan tertentu, sedangkan konfigurasi Asterisk

berbasis teknik Asterisk Realtime dilakukan dengan cara mengentrykan data pada

tabel yang ada di database, dimana struktur tabel yang dibuat merupakan struktur

tabel standard yang dapat dikenali oleh Asterisk.

File konfigurasi maupun tabel konfigurasi yang digunakan pada masing –

masing cara konfigurasi tersebut bergantung dari jenis protokol VoIP yang

digunakan ( khususnya file atau tabel untuk konfigurasi otentikasi user ). Pada

penelitian ini menggunakan protokol SIP, maka dari itu file dan tabel konfigurasi

yang digunakan dapat dilihat pada tabel sebagai berikut :

Tabel 5.1 Kebutuhan Konfigurasi Asterisk Berdasarkan Cara Konfigurasi

Cara Konfigurasi Asterisk

Text Based Asterisk Realtime Keterangan

File sip.conf Tabel sip_buddies Untuk proses Konfigurasi otentikasi user

File extensions.conf Tabel extensions_table Untuk Proses Konfigurasi Pengaturan DialPlan

File voicemail.conf Tabel voicemail_users Untuk Konfigurasi voicemail system

Dari tabel 5.1 diatas dapat dilihat bahwa apabila akan mengkonfigurasi

Asterisk berbasis protokol SIP dengan cara berbasis text maka membutuhkan file

sip.conf, file extensions.conf, serta file voicemail.conf, sedangkan untuk cara

Page 195: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

169

konfigurasi Asterisk dengan menggunakan teknik Asterisk Realtime membutuhkan

tabel sip_buddies, tabel extensions_table dan tabel voicemail_users. Berikut

perbandingan konfigurasi Asterisk berbasis text dengan konfigurasi Asterisk

berbasis Asterisk Realtime yang dilakukan pada file atau tabel konfigurasi

berdasarkan dari tabel 5.1 :

1. Konfigurasi pada file sip.conf dan tabel sip_buddies

Konfigurasi yang dilakukan pada file sip.conf misalkan saja sebagai berikut :

[ 1000 ]

type = friend

host = dynamic

username = 1000

secret = abc

context = home

callerid = 1000 <”albert”>

Gambar 5.1 Konfigurasi otentikasi user pada file sip.conf

Konfigurasi pada gambar 5.1 dapat disimpan dalam sebuah record ( baris )

pada tabel sip_buddies menjadi sebagai berikut :

Tabel 5.2 Konfigurasi otentikasi user pada tabel sip_buddies

name type host username secret context callerid 1000 friend dynamic 1000 abc home albert

Dari hasil perbandingan antara konfigurasi pada file sip.conf dengan

konfigurasi pada tabel sip_buddies, tampak bahwa setiap parameter yang

digunakan pada file sip.conf digunakan sebagai nama field ( kolom ) pada tabel

sip_buddies dan setiap pendefinisian user pada file sip.conf dapat disimpan

menjadi sebuah record pada tabel sip_buddies ( seperti tampak pada tabel 5.1 ).

Page 196: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

170

2. Konfigurasi pada file extensions.conf dan tabel extensions_table

Konfigurasi yang dilakukan pada file extensions.conf berhubungan

konfigurasi yang dilakukan pada file sip.conf. Misalkan saja dari konfigurasi

pada gambar 5.1, dilakukan konfigurasi pada file extensions.conf sebagai

berikut:

[ home ]

exten => 1000,1,Ringing

exten => 1000,2,Dial(SIP/${EXTEN}|20)

exten => 1000,3,VoiceMail(2100@home)

exten => 1000,4,PlayBack(vm-goodbye)

exten => 1000,5,Hangup

exten => 2100,1,VoiceMailMain(2200@home)

Gambar 5.2 Konfigurasi DialPlan pada file extensions.conf

Hubungan dari konfigurasi file extensions.conf dengan konfigurasi file

sip.conf terletak pada bagian context = home pada file sip.conf harus sama

dengan [ home ] pada file extensions.conf, setiap baris pada konfigurasi

gambar 5.2 akan disimpan dalam record – record dalam tabel extensions_table,

maka akan menjadi sebagai berikut :

Tabel 5.3 Konfigurasi DialPlan pada Tabel extensions_table

context exten priority app Appdata home 1000 1 Ringing

home 1000 2 Dial SIP/${EXTEN}|20

home 1000 3 Voicemail 2100@home

home 1000 4 Playback Vm-goodbye

home 1000 5 Hangup

home 2100 1 VoiceMailMain 2200@home

Dari hasil perbandingan konfigurasi pada file extensions.conf dengan

konfigurasi pada tabel extensions_table, tampak bahwa setiap baris konfigurasi

Page 197: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

171

DialPlan pada file extensions.conf disimpan dalam sebuah record pada tabel

extensions_table. Seperti tampak pada gambar 5.2, ada 5 ( lima ) baris

konfigurasi pada file extensions.conf, maka dalam tabel extensions_table

konfigurasi tersebut disimpan menjadi 5 ( lima ) buah record.

3. Konfigurasi pada file voicemail.conf dan tabel voicemail_users

Konfigurasi yang dilakukan pada file voicemail.conf, misalkan saja sebagai

berikut :

[ home ]

2100 => 12345,1000,[email protected]

Gambar 5.3 Konfigurasi voicemailbox pada file voicemail.conf

Konfigurasi pada gambar 5.3, dapat disimpan dalam sebuah record pada

tabel voicemail_users menjadi sebagai berikut :

Tabel 5.4 Konfigurasi Voicemail pada Tabel voicemail_users

context mailbox password fullname Email home 2100 12345 1000 [email protected]

Dari hasil perbandingan pada konfigurasi file voicemail.conf dengan

konfigurasi yang dilakukan pada tabel voicemail_users, tampak bahwa

voicemail user yang didefinisikan pada file voicemail.conf dapat disimpan dalam

sebuah record dalam tabel voicemail_users.

Page 198: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

172

5.3 Kelebihan dan Kekurangan Program

Program aplikasi yang dihasilkan ini memiliki kelebihan dan kekurangan.

Kelebihan dan kekurangan aplikasi manajemen Asterisk berbasis web adalah

sebagai berikut :

5.3.1 Kelebihan Program

Kelebihan yang dimiliki program adalah sebagai berikut :

1. Web didesain dengan tampilan yang user friendly sehingga memberikan

kemudahan bagi pengguna ( administrator ) untuk melakukan

konfigurasi Asterisk berbasis web, khususnya untuk proses otentikasi

user, pengaturan DialPlan dan pengaturan voicemail system.

2. Proses konfigurasi pengaturan DialPlan dan pengaturan voicemail

system terjadi otomatis bersamaan dengan proses konfigurasi otentikasi

user.

3. Program aplikasi manajemen Asterisk berbasis web yang dibuat

menyediakan fasilitas untuk mengakses file konfigurasi Asterisk lainnya,

sehingga administrator dapat menambahkan features lain pada Asterisk

secara manual dengan cara mengedit file – file konfigurasi tersebut.

4. Program aplikasi manajemen Asterisk berbasis web yang dibuat

menggunakan software open source yang gratis.

Page 199: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

173

5.3.2 Kekurangan Program

Kekurangan yang dimiliki program adalah sebagai berikut :

1. Program aplikasi manajemen Asterisk berbasis web yang dibuat sangat

sederhana, karena hanya menyediakan beberapa konfigurasi features

Asterisk saja.

2. Program aplikasi manajemen Asterisk berbasis web ini kurang fleksibel,

karena hanya dapat digunakan untuk konfigurasi Asterisk berbasis

protokol SIP ( Session Initiation Protocol ) saja.

Page 200: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

BAB VI

PENUTUP

Pada bagian akhir penulisan ini akan dicantumkan beberapa kesimpulan dan

saran mengenai hal – hal yang terkait dengan pembuatan aplikasi manajemen

asterisk VoIP server berbasis web sebagai sarana program bantu untuk melakukan

konfigurasi dan manajemen pada Asterisk VoIP Server.

6.1 Kesimpulan

Berdasarkan hasil analisis, desain dan implementasi konfigurasi Asterisk

dalam penelitian ini dapat disimpulkan bahwa :

1. Setting konfigurasi Asterisk berbasis protokol SIP dapat diterapkan

dengan baik dengan menggunakan teknik Asterisk Realtime, khususnya

pada proses otentikasi user ( dengan username dan password ), proses

pengaturan DialPlan, dan pengaturan DialPlan.

2. Teknologi berbasis web dapat diterapkan dengan baik untuk membuat

sebuah program aplikasi manajemen Asterisk berbasis GUI ( Graphical

User Interface ) serta dapat diakses jarak jauh ( remote ).

174

Page 201: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

175

6.2 Saran

Saran yang diberikan penulis untuk pengembangan program aplikasi lebih

lanjut adalah sebagai berikut :

1. Penambahan fasilitas konfigurasi Asterisk untuk protokol selain SIP,

misalkan saja konfigurasi untuk protokol IAX2, protokol H.323.

Sehingga aplikasi akan menjadi lebih fleksibel dengan dukungan

konfigurasi beberapa protokol VoIP.

2. Menyediakan konfigurasi Asterisk untuk features – features Asterisk

yang lainnya, misalkan saja untuk setting video call.

Page 202: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

DAFTAR PUSTAKA

Tharom, Tabratas, Buku Pintar Internet Teknis dan Bisnis VoIP. Jakarta : PT

Media Elex Komputindo Kelompok Gramedia, Anggota IKAPI, 2002.

W. Purbo, Onno, VoIP Cikal Bakal ” Telkom Rakyat ”. Jakarta : PT Prima

Infosarana Media Kelompok Gramedia, 2007.

Daftar alamat web site yang dijadikan sumber penulisan :

http://www.asterisk.orgSumber download software yang diperlukan untuk membangun VoIP Server dengan menggunakan Asterisk http://developer.voiprakyat.or.idForum tanya jawab seputar troubleshooting tentang VoIP http://www.voiprakyat.or.id/?inc=files&file=materi-voip-fundamental.pdfFile yang berisi tentang tutorial instalasi Asterisk dari Anton Rahardja http://www.forumphp.web.idMemperdalam bahasa pemrograman PHP http://www.voip-info.orgMemperdalam teknik konfigurasi Asterisk

Page 203: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN

Page 204: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 1

INSTALASI ASTERISK VoIP SERVER

Seseorang ( pengguna ) yang akan membangun sebuah jaringan VoIP

menggunakan Asterisk sebagai VoIP Server, minimal harus memiliki kemampuan

dasar sebagai berikut :

1. Mengerti dasar menggunakan Sistem Operasi Linux, seperti menginstal

Sistem Operasi Linux, dapat menjalankan beberapa perintah dasar

Linux, dapat membaca manual dan menjalankan perintah dasar

berdasarkan manual, dapat melakukan edit file dengan editor seperti

mcedit, vi, atau editor yang lainnya.

2. Mengerti dasar membangun jaringan komputer, seperti bagaimana

mengkonfigurasi dan mengatur IP address, menghubungkan beberapa

komputer dalam sebuah jaringan agar dapat berkomunikasi dengan baik.

3. Mengerti dan dapat menggunakan perangkat hardware phone

( contohnya IP Phone ) maupun softphone ( contohnya x-lite ).

Untuk menginstal Asterisk sebagai VoIP Server pada sistem operasi Linux,

diperlukan beberapa aplikasi Linux beserta depedency nya, yaitu antara lain :

1. C Compiler ( gcc )

2. make

3. bison

4. ncurses-devel

5. openssl-devel

6. zlib-devel

Page 205: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 2

Langkah – langkah untuk menginstal Asterisk VoIP Server pada sistem operasi

Linux adalah sebagai berikut :

1. Instalasi asterisk

Sebelum diinstal, maka Asterisk perlu diextract terlebih dahulu dengan

menggunakan perintah :

Setelah dilakukan proses extract, maka selanjutnya dilakukan proses

instalasi dengan menggunakan perintah berikut secara berurutan :

2. Instalasi asterisk-sounds

Sebelum diinstal, maka asterisk-sounds perlu diextract terlebih dahulu

dengan menggunakan perintah :

Setelah dilakukan proses extract, maka selanjutnya dilakukan proses

instalasi dengan menggunakan perintah berikut secara berurutan :

3. Instalasi asterisk-addons

Sebelum diinstal, maka asterisk-addons perlu diextract terlebih dahulu

dengan menggunakan perintah :

# tar -zxvf asterisk-1.2.14.tar.gz

# cd asterisk-1.2.14 # make # make install # make samples

# tar -zxvf asterisk-sounds-1.2.1.tar.gz

# cd asterisk-sounds-1.2.1 # make # make install

# tar -zxvf asterisk-addons-1.2.5.tar.gz

Page 206: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 3

Setelah dilakukan proses extract, maka selanjutnya dilakukan proses

instalasi dengan menggunakan perintah berikut secara berurutan :

Setelah langkah 1 s/d langkah 3 dilakukan, maka selanjutnya adalah

menjalankan service asterisk dengan menggunakan perintah sebagai berikut :

Kemudian setelah service asterisk dalam posisi running ( start ), maka

selanjutnya lakukan pengecekan module mysql ( berasal dari asterisk-addons )

apakah sudah berhasil diinstal atau belum dengan menggunakan perintah sebagai

berikut :

Jika module mysql sudah berhasil diinstal, maka akan ditampilkan 3 ( tiga )

buah module yaitu res_config_mysql.so, cdr_addons_mysql.so, dan

app_addon_sql_mysql.so.

#/etc/init.d/asterisk start

Starting asterisk: [ OK ]

#asterisk –rx ”show modules like mysql ”

res_config_mysql.so

cdr_addon_mysql.so

app_addon_sql_mysql.so

# cd asterisk-addons-1.2.5 # make # make install

Page 207: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 4

INSTALASI APLIKASI MANAJEMEN ASTERISK VoIP SERVER

BERBASIS WEB

Sebelum dapat menjalankan program aplikasi manajemen Asterisk VoIP

Server, ada beberapa komponen yang dibutuhkan antara lain :

1. Httpd ( atau Apache )

2. MySQL-Server

3. MySQL-devel

4. PHP

5. PHP-MySQL

Komponen tersebut diatas, dapat ditambahkan melalui opsi – opsi pada saat

kita melakukan proses instalasi Sistem Operasi Linux.

Sebelum melakukan proses instalasi aplikasi manajemen asterisk ini, pastikan

bahwa web server, dan database server ( MySQL ) sudah dalam keadaan aktif.

Langkah – langkah untuk menginstal aplikasi manajemen Asterisk ini, adalah

sebagai berikut :

1. Copy-kan seluruh file pada direktori /conf ke direktori /etc/asterisk

Perintahnya :

2. Buat file dengan nama show_registry pada direktori /var/spool/asterisk

dan set permissionnya dengan nilai 777

Perintahnya :

# cp /conf/*.conf /etc/asterisk/

# cd /var/spool/asterisk # touch show_registry # chmod 777 show_registry

Page 208: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 5

3. Konfigurasikan crontab,dengan perintah sebagai berikut :

Kemudian tambahkan baris berikut :

4. Buat sebuah database dengan nama voip, kemudian jalankan file

database.sql yang berada pada folder /asterisk/database.

5. Copy-kan folder asterisk ke Document Root dari web Server.

Kemudian setelah langkah 1 s/d langkah 5 dilakukan maka aplikasi

manajemen Asterisk VoIP Server dapat dijalankan dengan menggunakan web

browser dengan mengetikkan alamat URL : http://alamat-ip-VoIP-server/asterisk,

kemudian masukkan username dan password default yaitu username = admin dan

password = admin.

# crontab -e

# * * * * * root asterisk -rx "sip show registry">/var/lib/asterisk/show_registry

Page 209: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 6

MANUAL APLIKASI MANAJEMEN ASTERISK VoIP SERVER

BERBASIS WEB

1. PHONEBOOK

Halaman ini berisi informasi tentang nomor – nomor extensions, nomor prefix

untuk Dial ke jaringan PABX, dan nomor prefix untuk Dial ke Trunking Server.

Pada halaman ini juga terdapat fasilitas untuk mencari nomor – nomor extensions

yang ada di VoIP Server tersebut.

2. LOGIN ADMINISTRATOR

Isikan username dan password default yang telah disediakan yaitu username =

admin, dan password = admin, kemudian tekan tombol Login.

Isi dengan nomor extensions yang akan dicari, kemudian tekan tombol search

Informasi nomor prefix Trunking Server

Informasi nomor prefix PABX

Page 210: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 7

Apabila berhasil login, maka akan tampil halaman sebagai berikut :

3. MENU ASTERISK FILE

Menu ini digunakan untuk menampilkan isi file yang berada pada direktori

/etc/asterisk, yang merupakan direktori konfigurasi asterisk pada sistem operasi

linux.

Menu yang disediakan oleh aplikasi manajemen Asterisk berbasis web

Klik nama file untuk mengedit isi file

Page 211: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 8

Apabila nama file yang akan di edit sudah diklik, maka akan tampil halaman

sebagai berikut :

4. MENU SERVICE ASTERISK

Menu ini digunakan untuk menampilkan status Service Asterisk, apakah

running ( siap beroperasi ) atau sedang stopped ( tidak dapat beroperasi ).

Ketikkan editan yang akan dilakukan pada textarea, kemudian tekan tombol Save

Status Service Asterisk sedang running

Tekan tombol salah satu Start, Restart atau Stop untuk menjalankan, merestart atau menghentikan Service Asterisk

Page 212: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 9

5. MENU EXTENSIONS LINE

5.1 MENU EXTENSIONS LINE TYPE LOCAL

Menu Extensions Line Type Local digunakan untuk menambahkan data

registrasi Extensions yang berada satu jaringan dengan VoIP Server,

5.2 MENU EXTENSIONS LINE TYPE TRUNK

Menu Extensions Line Type Trunk nantinya digunakan oleh VoIP Server lain

untuk registrasi menjadi client dari VoIP Server yang sedang menggunakan

aplikasi ini ( proses Trunking Server ).

Pilih Type Extensions Local

Setelah semua textfield diisi, kemudian tekan tombol Submit

Pilih Type Extensions Trunk

Setelah semua textfield diisi, kemudian tekan tombol Submit

Page 213: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 10

6. MENU PABX / PSTN LINE

Menu ini digunakan untuk menambah data account registrasi bagi perangkat

VoIP Gateway sehingga dapat digunakan untuk registrasi menjadi client dari

VoIP Server. Dengan adanya proses ini maka jaringan VoIP yang dioperasikan

dapat dihubungkan dengan jaringan PABX maupun jaringan telepon tradisional

(PSTN).

7. MENU TRUNKING SERVER LINE

Menu ini digunakan untuk meregistrasikan VoIP Server yang sedang

menggunakan aplikasi ini menjadi client dari VoIP Server lain ( proses Trunking

Server ). Untuk tujuan ini maka begitu administrator membutuhkan sebuah

account Extensions Type Trunk dari VoIP server lain yang akan dijadikan

Trunking Server.

Isikan dengan karakter nama

Isikan dengan Angka (min 1 digit)

Setelah selesai, tekan tombol submit

Page 214: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 11

7.1 REGISTRATION STATUS

Setelah sebuah VoIP Server melakukan Trunking dengan VoIP Server lainnya,

maka harus dicek status registrasi dari VoIP Server yang melakukan Trunking

tersebut. Halaman ini dapat ditampilkan dengan cara mengklik link [ Registration

Status ] pada menu Trunking Server Line.

Dari gambar diatas, terlihat bahwa status registrasi Trunking ke VoIP Server

172.21.206 adalah Request Sent, ini berarti bahwa VoIP Server ini sedang

melakukan request untuk Trunking dengan VoIP Server dengan alamat IP

172.21.206.

Isi dengan sembarang karakter nama

Isi dengan telephone number dan password dari extensions Type Trunk

Alamat IP VoIP Server tujuan Trunking Isikan dengan Angka ( min 1

digit ) Setelah selesai tekan tombol Submit

Status registrasi harus Registered

Page 215: BERBASIS WEB PADA SISTEM OPERASI LINUXrepository.usd.ac.id/32281/1/035314043_Full.pdfBERBASTS WEB PADA SISTEM OPERASI LINUX Dipersiapkan dan ditulis oleh : Albert Kurnia NIM : 03 5314

LAMPIRAN 12

8. MENU CALL DETAIL RECORD

Menu ini digunakan untuk mencari, kemudian menampilkan data Call History

( Call Detail Record ).

9. MENU CHANGE PASSWORD ADMINISTRATOR

Menu ini digunakan untuk mengganti password admin yang sedang aktif

login.

Isikan textfield From dan To dengan melalui tanggal pada Date Selector, kemudian tekan tombol Search

Klik ini untuk menampilkan date selector

Date Selector

Klik untuk menghapus data Call Detail Record

Klik untuk menampilkan data Call Detail Record dalam format PDF

Isi dengan password lama

Isi dengan password baru kemudian tekan tombol submit

Setelah selesai tekan tombol Submit