124
BAB 4
IMPLEMENTASI DAN EVALUASI
4.1 Persiapan Komponen
4.1.1 Piranti Keras
Gambar 4.1 Server
Piranti Keras yang digunakan untuk server adalah ASUS RS120-E3 dengan
spesifikasi :
- Prosesor Pentium IV 2.8 GHz
- Mainboard Asus P5MT-R
- Memory DDR II 2 Gb
- HDD Seagate 80 Gb SATA
- VGA ATI RAGE XL 8 Mb Integrated
- Network Adapter Broadcom BCM5721 Gigabit Ethernet x 2
4.1.2 Piranti Lunak
Piranti lunak yang digunakan penulis sebagai berikut:
- Sistem Operasi Linux Slackware 11
- SIP Server Asterisk 1.2 Stable
125
- Webserver Apache 2.0
- PHP 5
- Database MySQL 5
4.2 Implementasi Pada Jaringan
Berikut adalah gambar jaringan Bina Nusantara yang akan digunakan untuk
implementasi jaringan IP Phone.
Gambar 4.2 Jaringan Binus Access Bina Nusantara
126
4.3 Instalasi
4.3.1 Instalasi Linux Slackware 11
Instalasi ini akan menggunakan Slackware 11 sebagai distribusi linux ,
Slackware 10.x bisa bekerja dengan instruksi berikut juga. Ada beberapa distribusi
linux yang lebih mudah dan ada yang lain yang lebih terkenal, tetapi Slackware
adalah distro non-komersil yang bagus dan sudah ada sejak lama dan telah
terbukti sebagai platform yang sangat aman dan stabil untuk pengembangan.
Tahap instalasi linux slackware 11 sebagai berikut:
1. Masuk ke http://www.ultimatebootcd.com/ , download bootcd yang terbaru
dan burn hasil download tersebut ke dalam sebuah cd. Cd ini akan
digunakan untuk mempartisi perangkat keras yang akan digunakan untuk
instalasi Slackware linux. Versi terbaru sampai sekarang adalah 4.1.
2. Masukkan ultimatebootcd yang baru saja di-burn ke dalam drive CDROM
dan lakukan boot. Selanjutnya pilih “filesystem utilities”dan kemudian
“XFDISK”.
3. Pilih partisi lama yang ada, hapus dan kemudian buat 2 partisi baru :
- 70000 MB , pilih yes untuk validasi, ubah tipe partisi ke “Linux Native”
- 3332 MB, pilih yes untuk validasi, ubah tipe partisi ke “Linux Swap”
- tekan F3 untuk keluar dan biarkan partisi berjalan sendiri kira-kira 1
jam.
4. Masuk ke http://www.slackware.com/getslack/ untuk men-download
Slackware linux. Rilis terbaru sampai sekarang adalah 12.0. Rilis ini bisa
127
dimuat dalam 3 CD atau 1DVD. Download kedua disk instalasi dari server
yang tertera di halaman download dan burn ke dalam CD.
5. Masukkan disk 1 dari Cd instalasi Slackware dan boot komputer. Jika
komputer yang digunakan hanya memiliki IDE drive maka tekan enter pada
saat boot : prompt. Jika ada adapter perangkat keras yang lain
(SCSI/RAID/SATA/dll..) maka masuk ke halaman bantuan instalasi
Slackware untuk menentukan boot image yang diperlukan untuk melakukan
instalasi Slackware dengan benar.
6. Login sebagai root dan ketik “setup” untuk masuk ke menu setup.
7. Pilih ADDSWAP dan tekan Enter
8. Pilih partisi swap yang baru saja dibuat dan tekan Yes, partisi swap
kemudian akan diformat
9. Pilih partisi root yang baru saja dibuat sebagai Linux Native dan tekan
Select, kemudian pilih “ext3” sebagai file system, kemudian pilih 4096
sebagai inodes dan partisi root akan diformat
10. Pilih “Install Slackware from a CD” dan tekan OK
11. Pilih instalasi “auto” dan tekan OK
12. Pilih semua package kecuali “KDEI” dan tekan OK
13. Pilih instalasi “full” dan tekan OK
14. Masukkan disk instalasi Slackware berikutnya (disk 2) ketika diminta dan
tekan OK untuk melanjutkan
15. Sekarang pilih boot kernel yang akan digunakan. Jika yang digunakan
adalah sebuah sistem simple dengan driver IDE ,maka cukup pilih “skip”
128
dan lanjutkan ke langkah berikutnya. Jika tidak maka pilihlah “cdrom” dan
pilih kernel dari list yang telah dipilih untuk boot instalasi.
16. Buat bookdisk jika perlu, tetapi tidak diharuskan
17. Untuk modem ,pilih “no modem” dan tekan OK untuk melanjutkan
18. Aktifkan hotplug, tekan yes untuk melanjutkan
19. Install lilo “simple” dan tekan OK untuk melanjutkan
20. Untuk keamanan pilih lilo frame buffer console 640x480 jika tidak yakin
21. Optional lilo append, biarkan kosong dan tekan OK untuk melanjutkan
22. Tujuan lilo, pilih MBR tetapi root juga bisa bekerja dengan baik
23. Mouse, pilih tipe mouse yang telah dipasang, atau pilih ps/2
24. Nyalakan GPM pada saat boot, tekan Yes untuk melanjutkan
25. Pilih Yes untuk konfigurasi jaringan
26. Hostname, ketikkan “phone”
27. Network, ketikkan nama domain local
28. IP address, pilih Static IP, masukkan setup jaringan :
- IP address : 10.10.10.15
- subnet : 255.255.0.0
- gateway : 10.10.10.1
- name server : 10.10.10.1
29. Accept setting jaringan
30. Jalankan startup services, tidak perlu diubah dan tekan OK untuk
melanjutkan
31. Pilih NO untuk custom screen fonts
129
32. Ubah hardware clock ke UTC, pilih NO
33. Pilih zona waktu dan tekan OK
34. Pilih gnome sebagai window manager
35. Pilih Yes untuk memasukkan password root, masukkan password
36. Setup Slackware Linux telah selesai, tekan OK dan EXIT kemudian tekan
CTRL-ALT-DELETE untuk me-restart komputer.
4.3.1.1 Compile Kernel 2.4
Dari langkah ini, instalasi bisa dilakukan secara remote meskipun lebih
baik menggunakan akses yang lebih cepat ke mesin apabila terjadi kesalahan.
Untuk menghubungkan SSH ke Linux secara remote ketik “slogin
serveripadress” atau untuk menggunakan Windows untuk menghubungkan,
gunakan software gratis putty yang tersedia di
http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html, selain itu
juga bisa menggunakan SSH file transferring (SFTP) dengan sebuah program
yang dinamakan filezilla http://filezilla.sourceforge.net/.
Ini hanyalah langkah yang optional jika sistem Linux sudah berjalan, tetapi
meng-compile custom kernel sendiri merupakan sebuah cara untuk
mengoptimalkan sistem untuk hardware yang telah di-install atau sebuah cara
untuk menghilangkan modul yang tidak diperlukan yang ada di kernel default.
Jika menggunakan Digium Octasic-based echo-cancellation quad T1/E1
card yang baru maka gunakanlah Linux kernel 2.6 agar bisa menggunakan fungsi
echo-cancellation dari card tersebut.
130
Jika ingin meng-compile kernel 2.6 maka mulai dengan OPTION 1, jika
ingin meng-compile kernel 2.4 yang menggunakan Slackware 11 (kernel 2.4.33)
mulailah dengan OPTION 2.
OPTION 1 : compile Linux kernel 2.6.17 *RECOMMENDED*
1. cd /usr/src
2. wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.17.11.tar.gz
3. gunzip linux-2.6.17.11.tar.gz
4. tar xvf linux-2.6.17.11.tar
5. mv -f /usr/src/linux /usr/src/linux-old
6. ln -s /usr/src/linux-2.6.17.11 /usr/src/linux
7. cd linux
8. make mrproper # prep untuk kernel assembly
9. make menuconfig # buka menu konfigurasi app
(bagian ini sangat tergantung kepada perangkat keras)
(yang disebutkan di bawah ini hanya perubahan yang ada di default)
Processor Type and Features --->
- Symmetric multi-processing support
(jika memiliki multi processor atau Dual-core atau HT enabled)
- High Memory Support
(jika RAM lebih dari 900MB dan bisa di-upgrade sampai 4GB)
- Timer frequency (1000 HZ)
(ubah ke 1000Hz jika menggunakan ztdummy sebgai timer)
131
- Preemption Model (No Forced Preemption (Server))
Power management options (ACPI, APM) --->
- ACPI (Advanced Configuration and Power Interface) Support
(hidupkan semua Processor dan thermal zone)
Bus options (PCI, PCMCIA, EISA, MCA, ISA) --->
- [*] PCI Express support
- (jika menggunakan Sangoma PCI Express card)
Networking --->
Amateur Radio support --->
<*> Amateur Radio AX.25 Level 2 protocol
[*] AX.25 DAMA Slave support
<*> Amateur Radio NET/ROM protocol
<*> Amateur Radio X.25 PLP (Rose)
(semua diperlukan untuk driver baru Digium Octasic)
Device Drivers --->
ATA/ATAPI/MFM/RLL support --->
<*> SCSI emulation support
(diperlukan oleh SATA drives, juga driver check chipset yang terbaru)
132
Block devices --->
<*> Loopback device support
<*> RAM disk support
(1) Default number of RAM disks
(128000) Default RAM disk size (kbytes)
[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support
SCSI device support --->
<*> RAID Transport Class
(diperlukan jika menggunakan RAID)
SCSI low-level drivers --->
<*> Serial ATA (SATA) support
(dibutuhkan jika menggunakan SATA drives)
(jika menggunakan SCSI RAID card ambil driver yang benar disini)
Multi-device support (RAID and LVM) --->
(pilih tipe RAID yang cocok jika menggunakan Linux RAID)
Network device support --->
Ethernet (10 or 100Mbit) --->
Ethernet (1000 Mbit) --->
(pilih driver yang cocok untuk tipe network card yang dimiliki)
133
Character devices --->
<*> Enhanced Real Time Clock Support
(cek 2x bahwa ini harus dihidupkan, sangat penting)
Real Time Clock --->
<*> RTC class
(cek 2x bahwa ini harus dihidupkan, sangat penting)
File systems --->
<*> Ext3 journalling file system support
(penting jika menggunakan filesystem ext3)
Library routines --->
<*> CRC-CCITT functions
<*> CRC16 functions
<*> CRC32c (Castagnoli, et al) Cyclic Redundancy-Check
(penting untuk driver baru Digium Octasic)
EXIT DAN SAVE KONFIGURASI
10. make clean # bersihkan kernel build areas
11. make bzImage # buat sebuah kernel bzImage
134
12. make modules # bangun modul ke dalam image
13. make modules_install # install kernel modules
14. cp arch/i386/boot/bzImage /boot/bzImage-XXXX # copy image
(masukkan apa saja di XXXX, itu adalah nama kernel baru)
15. cp System.map /boot/System.map-XXXX # copy system map
16. mv -f /boot/System.map /boot/System.map-orig
17. ln -s /boot/System.map-XXXX /boot/System.map # symlink map
18. vi /etc/lilo.conf # edit lilo boot config file
image=/boot/bzImage-XXXX # tambah image baru diatas
label=test-XXXX # sebelumnya
root=/dev/hda1 # device dari partisi root
read-only
19. /sbin/lilo # jalankan lilo reload script
20. shutdown -r 0 # reboot mesin
OPTION 2: compile Linux kernel 2.4.33.3
1. cd /usr/src/linux # pindah ke direktori source linux
2. cp .config config.save # kopi konfigurasi lama ke sebuah save file
3. make mrproper # prep untuk kernel assembly
4. make menuconfig # buka menu konfigurasi app
(bagian ini sangat tergantung kepada perangkat keras)
enable processor version # pilih processor yang dimiliki
135
enable SMP # jika lebih dari 1 processor atau Intel HT
enable high memory () # jika RAM lebih dari 1GB
enable SCSI Multiple # jika SCSI drives
enable SCSI devices AMI Megaraid # jika SCSI Megaraid adapter
enable 3com network devices # jika 3com network card
enable ext3 file system # agar ext3 bisa bekerja
enable all ACPI options # agar SMP bisa bekerja
enable Enhanced Real Time Clock Support in Character devices section
# agar SMP bisa bekerja
enable any other hardware specific options
exit and save configuration
5. make dep # bangun kernel dependencies
6. make clean # bersihkan kernel build areas
7. make bzImage # buat sebuah kernel bzImage
8. make modules # bangun modul ke dalam image
9. make modules_install # install kernel modules
10. #nothing# mkinitrd /boot/initrd-XXXXXX.img XXXXXX *not needed on
Slackware*
11. cp arch/i386/boot/bzImage /boot/bzImage-XXXXXX # copy image
(masukkan apa saja di XXXXXX, itu adalah nama kernel baru)
12. cp System.map /boot/System.map-XXXXXXN # copy system map
13. mv -f /boot/System.map /boot/System.map-orig
14. ln -s /boot/System.map-XXXXXX /boot/System.map # symlink map
136
15. vi /etc/lilo.conf # edit lilo boot config file
image=/boot/bzImage-XXXXXX # tambah image baru diatas-
label=test-XXXXXX # sebelumnya
root=/dev/hda1 # device dari partisi root
read-only
16. /sbin/lilo # jalankan lilo reload script
17. shutdown -r 0 # reboot mesin
Sesudah meng-compile kernel ,dilakukan beberapa perintah berikut untuk
mengecek apakah telah menggunakan kernel baru dan device berjalan sesuai
yang diharapkan :
# ps –info (untuk menampilkan versi kernel linux dan informasi lainnya)
# cat /proc/cpuinfo (untuk menampilkan tipe processor dan lebih dari satu
apabila SMP)
# top (untuk menampilkan sistem memori)
4.3.2 Instalasi Sebelum Asterisk
Di langkah ini, akan dijelaskan langkah-langkah meng-install software yang
dibutuhkan agar Asterisk dapat berjalan dengan benar. Tidak semua software
merupakan keharusan agar bisa melakukan instalasi Asterisk dan beberapa
diantaranya bisa di-install di mesin lain pada jaringan seperti MySQL atau Apache.
137
4.3.2.1 Install GNU Make
Versi baru dari aplikasi kompilasi “make” menggantikan versi lama yang
kebanyakan digunakan oleh distro Linux (termasuk Slackware). Ini hanya
diperlukan jika Asterisk yang akan dibangun adalah asterisk 1.4.
# wget http://mirrors.kernel.org/gnu/make/make-3.81.tar.gz
# gunzip make-3.81.tar.gz
# tar xvf make-3.81.tar
# cd make-3.81
# ./configure
# make
# make install
4.3.2.2 MySQL
Setidaknya harus ada klien MySQL pada setiap server VICIDIAL, tetapi
hanya satu database yang diperlukan. MySQL merupakan sistem basis data yang
mudah diintegrasikan dengan banyak aplikasi. Sistem ini bisa diinstall pada
server local sistem Asterisk atau pada server lain pada jaringan. Dibawah ini
adalah langkah-langkah instalasi mysql pada mesin Asterisk.
CATATAN : dibutuhkan minimum MySQL server 4.0.X
Masuk ke http://www.mysql.com/ dan download paket mysql
- untuk melakukan instalasi secara langsung,pada baris perintah ketik :
# cd /usr/local
138
#wget http://mirror.trouble-free.net/mysql_mirror/Downloads/MySQL-
4.0/mysql-4.0.27.tar.gz
#http://mirror.trouble-free.net/mysql_mirror/Downloads/MySQL-5.0/mysql-
5.0.41.tar.gz
# gunzip mysql-4.0.27.tar.gz
# tar xvf mysql-4.0.27.tar
# cd mysql-4.0.27
# groupadd mysql
# useradd -g mysql mysql
# "./configure --prefix=/usr/local/mysql --enable-large-files --enable-shared=yes
-- with-readline"
**** jika hanya klien MySQLdiperlukan untuk DBD::mysql maka gunakan ini:
# "./configure --prefix=/usr/local/mysql --without-server --enable-shared=yes --
with-readline"
**** jika menggunakan versi klien 5 tree MySQL maka gunakan ini :
# "./configure --prefix=/usr/local/mysql --without-server --enable-shared=yes --
with-readline --enable-thread-safe-client"
# make
# make install
# scripts/mysql_install_db
# chown -R root /usr/local/mysql
139
# chown -R mysql /usr/local/mysql/var
# chgrp -R mysql /usr/local/mysql
# cp support-files/my-medium.cnf /etc/my.cnf
# /usr/local/mysql/bin/mysqld_safe --user=mysql &
# ln -s /tmp/mysql.sock /var/run/mysql/mysql.sock
**** untuk beberapa sistem mungkin perlu ditambahkan direktori mysql/bin ke
PATH:
# PATH=$PATH:$HOME/bin:/usr/local/mysql/bin/
# export PATH
**** tambahkan juga dua baris perintah tersebut ke file /root/.bash_profile
**** Untuk Mysql 5 tree, kopi libmysqlclient.so file ke libs
# cp /usr/local/mysql-5.0.27/libmysql/.libs/libmysqlclient.so /usr/lib/
# cp /usr/local/mysql-5.0.27/libmysql/.libs/libmysqlclient.so.15 /usr/lib/
selesai
4.3.2.3 Sox
Sox merupakan aplikasi audio yang bisa menggabungkan file audio
menjadi 1 file. Penting buat rekaman Asterisk agar file rekaman in dan out
menjadi terpisah. (diperlukan untuk campuran rekaman).
Masuk ke http://sourceforge.net/projects/sox/ dan download paket sox.
Untuk instalasi ketik perintah berikut :
140
# cd /usr/local
#wget http://easynews.dl.sourceforge.net/sourceforge/sox/sox-12.17.9.tar.gz
# gunzip sox-12.17.9.tar.gz
# tar xvf sox-12.17.9.tar
# cd sox-12.17.9
# ./configure
# make (jika alsa.o errors add --disable-alsa-dsp untuk kofigurasi dan ulang)
# make install
selesai
4.3.2.4 LAME
LAME adalah MP3 encoder yang digunakan untuk mengkonversi file
audio dari WAV ke MP3. Sebenarnya lebih baik menggunakan format GSM,
tetapi beberapa pengguna mungkin memiliki standar pada MP3 jadi mereka perlu
menggunakan aplikasi ini untuk menyempurnakannya.
Masuk ke http://lame.sourceforge.net/ dan download paket lame. Untuk
instalasi ketik perintah berikut :
# cd /usr/local
# wget http://easynews.dl.sourceforge.net/sourceforge/lame/lame-3.96.1.tar.gz
# gunzip lame-3.96.1.tar.gz
# tar xvf lame-3.96.1.tar
# cd lame-3.96.1
#./configure
141
# make
# make install
selesai
4.3.2.5 OpenSSH
OpenSSH adalah protocol server remote login yang harus selalu ter-update
di sistem.
[CATATAN : zlib yang lebih baru diperlukan sebelum instalasi].
Masuk ke http://www.openssh.org/ dan download linux source untuk
openssh.
- untuk instalasi ketikkan perintah berikut :
# cd /usr/local
# wget http://www.zlib.net/zlib-1.2.3.tar.gz
# gunzip zlib-1.2.3.tar.gz
# tar xvf zlib-1.2.3.tar
# cd zlib-1.2.3
# ./configure
# make
# make install
# cd /usr/local
#wget http://gulus.usherbrooke.ca/pub/appl/ssh/OpenSSH/portable/openssh-
4.7p1.tar.gz
# gunzip openssh-4.7p1.tar.gz
142
# tar xvf openssh-4.7p1.tar
# cd openssh-4.7p1
# ./configure
# make
# make install
- selesai
4.3.2.6 FreeTDS
FreeTDS adalah kumpulan library untuk Unix dan Linux yang
memungkinkan program untuk berhubungan dengan Microsoft SQL Server.
Masuk ke http://www.freetds.org/ dan download stable release Linux
source untuk freetds.
- untuk instalasi ketikkan perintah berikut :
# cd /usr/local
# wget
ftp://ftp.ibiblio.org/pub/Linux/ALPHA/freetds/stable/freetds-stable.tgz
# tar xvf freetds-stable.tgz
# cd freetds-0.64
# ./configure --enable-msdblib. (option agar php dapat berkomunikasi dengan
server mssql)
# make
# make install
# cd /usr/local
143
- selesai
Catatan : Untuk mengecek apakah freetds-nya sudah terinstal dengan benar,
maka bisa dilakukan dengan perintah :
# ./tsql -H myhost -p 1433 -U user
Dimana myhost adalah alamat server MSSQL yang sedang berjalan dan user
adalah username yang sudah di-setting dari database
4.3.2.7 Apache
Apache merupakan web server yang bisa menggunakan modul yang
berbeda untuk memperluas fungsinya. Agar bisa menggunakan fungsi
astguiclient, maka apache dan PHP harus terinstall di mesin.
Masuk ke http://www.apache.org/ dan download source apache unix.
Masuk ke http://www.php.net/ dan download source php unix.
- untuk instalasi ketikkan perintah berikut :
# cd /usr/local
# wget http://apache.secsup.org/dist/httpd/httpd-2.0.61.tar.gz
# gunzip httpd-2.0.61.tar.gz
# tar xvf httpd-2.0.61.tar
# wget http://us2.php.net/distributions/php-4.4.7.tar.gz
(PHP 5.1.1 sudah dites dan bisa jalan juga)
144
# gunzip php-4.4.7.tar.gz
# tar xvf php-4.4.7.tar
# cd httpd-2.0.61
# ./configure --enable-so --with-apxs2
# make
# make install
# cd ../php-4.4.7
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --enable-
sockets --with-gd --with-mssql
# make
# make install
# cp php.ini-dist /usr/local/lib/php.ini
CATATAN : pastikan notice logging sudah dimatikan:
error_reporting = E_ALL & ~E_NOTICE ; (ini adalah default)
memory_limit = 48M ;naikkan batas memori untuk skrip di php.ini:
# vi /usr/local/apache2/conf/httpd.conf
Tambahkan perintah berikut:
#"AddType pplication/x-httpd-php .php .phtml"
#"LoadModulephp4_module ibexec/libphp4.so" or
#"LoadModulephp4_module modules/libphp4.so"
Ubah index.html dan tambah index.php ke baris
# /usr/local/apache2/bin/apachectl start
- masuk ke http://localhost/ untuk melihat apakah sudah berjalan
145
- selesai
4.3.3 Instalasi Asterisk
Asterisk yang digunakan adalah asterisk 1.2 ,karena Asterisk 1.4 belum ada
versi stabilnya, Asterisk 1.2 masi berkembang dan didukung oleh Digium.
Dibawah ini akan menjelaskan tata cara menginstall Asterisk 1.2.18. Pada
saat menginstall , program ini akan melakukan update secara otomatis.
Membangun Asterisk :
a. Copy dan extract semua file yang diperlukan ke direktori yang dituju:
# cp voip.tar.gz /usr/local/apache2/htdocs/voip.tar.gz
# cp asterisk-stat-v2.tar.gz /usr/local/apache2/htdocs/asterisk-stat-v2.tar.gz
# cp astwebhelper /usr/local/sbin/astwebhelper
# tar zxf voip.tar.gz
# tar zxf asterisk-stat-v2.tar.gz
b. Ubah ke direktori /usr/src :
# cd /usr/src
c. Download Asterisk, Asterisk-Addons, Zaptel, LibPRI:
# wget http://ftp.digium.com/pub/asterisk/asterisk-1.2.18.tar.gz
# wget http://ftp.digium.com/pub/asterisk/asterisk-addons-1.2.6.tar.gz
# wget ftp://ftp1.digium.com/pub/zaptel/zaptel-1.2.17.1.tar.gz
# wget ftp://ftp1.digium.com/pub/libpri/libpri-1.2.4.tar.gz
d. Ekstrak berkas yang baru di-download :
# tar zxf asterisk-1.2.18.tar.gz
146
# tar zxf asterisk-addons-1.2.6.tar.gz
# tar zxf libpri-1.2.4.tar.gz
# tar zxf zaptel-1.2.17.1.tar.gz
e. Install LibPRI, Zaptel, Asterisk dan Asterisk-Addons ( langkah ini akan
membutuhkan beberapa menit ketika dikompile – mesin lama bisa butuh lebih dari
½ jam) :
# cd libpri-1.2.4
# make install
# cd ../zaptel-1.2.17.1
# vi makefile
Search kata “ztdummy” dan hilangkan tanda pagar di depannya kemudian save
dan exit (Untuk Conference Room)
# make install config
# cd ../asterisk-1.2.18
# make install
# cd ../asterisk-addons-1.2.6
# make install
f. Setup users, groups, folders dan permissions :
# addgroup asteriskuser
# add -g asterisk -c "Asterisk PBX" -d /var/lib/asterisk asterisk
# mkdir /var/run/asterisk
# chown asterisk:asterisk /var/run/asterisk
# chown -R asterisk /var/lib/php5
147
Pengaturan MySQL Database Server
Pastikan MySQL daemon dimulai:
# /etc/init.d/mysql start
1. Buat tabel di database
# mysqladmin create asterisk
# mysqladmin create asteriskcdrdb
# mysqladmin create skripsi
2. Ganti ke direktori source web
# cd /usr/local/apache2/htdocs/voip
3. Setup struktur table:
# mysql asterisk < SQL/asterisk.sql
# mysql asteriskcdrdb < SQL/asteriskcdrdb.sql
# mysql skripsi < SQL/skripsi.sql
4. Setup access restrictions pada database
# mysql
# GRANT ALL PRIVILEGES ON asterisk.* TO user1@localhost IDENTIFIED BY
'pass1';
Ganti user1 dengan username yang dipilih dan pass1 dengan password lain
# GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO user1@localhost
IDENTIFIED BY 'pass1';
Seperti diatas ,ganti user1 dan pass1 dengan username dan password yang kamu
gunakan pada tahap sebelumnya.
148
# GRANT ALL PRIVILEGES ON skripsi.* TO user1@localhost IDENTIFIED BY
'pass1';
Seperti diatas ,ganti user1 dan pass1 dengan username dan password yang kamu
gunakan pada tahap sebelumnya.
# flush privileges
5. Buat password root pada MySQL server. Jika ingin me-maintenance MySQL
server nantinya, login ini yang perlu digunakan:
# mysqladmin -u root password 'pass2' Ganti pass2 dengan password yang
dipilih.
4.4 Konfigurasi
4.4.1 Konfigurasi IP di Linux
Jika Linux tidak dapat mengkonfigurasi alamat IP melalui dhcp, maka
konfigurasi harus dilakukan secara manual. Untuk membuat perubahan pada
konfigurasi jaringan, masuklah sebagai root.
Untuk mengkonfigurasi alamat IP pada baris perintah, ada 2 perintah yang
harus dijalankan.
# ifconfig eth0 *IP address* netmask *address*
# route add default gw *gateway address*
Perintah pertama memberitahukan kepada komputer untuk mengkonfigurasi
adapter Ethernet 0 agar *IP address* diisi dengan alamat IP dan *address* sebagai
netmask. Perintah kedua mengkonfigurasi gateway dari sistem.
149
4.4.2 Konfigurasi Web
4.4.2.1 Konfigurasi Front End dan Back End
Buka directory VoIP kemudian konfigurasi koneksi ke server database dan
Asterisk
# cd /usr/local/apache2/htdocs/
# vi function.php
edit sesuai kebutuhan (lihat lampiran 1)
save dan exit
4.4.2.2 Konfigurasi Web Asterisk Stat V2
Buka Directory Asterisk stat v2 kemudian masuk ke directory lib dan edit
file defines.php sesuai konfigurasi server
# cd /usr/local/apache2/htdocs/asterisk-stat-v2
# cd lib
# vi defines.php
Edit sesuai kebutuhan (lihat lampiran 2)
setelah selesai, maka save dan exit
4.4.3 Konfigurasi Sistem Asterisk
Sistem Konfigurasi pada Asterisk terdapat pada file konfigurasi dengan
ektensi *.conf dan terletak pada direktori /etc/asterisk. Lokasi file-file dan
direktori pada Asterisk antara lain :
- /etc/asterisk : konfigurasi utama
150
- /var/log/asterisk : log dan call detail record (CDR)
- /var/lib/asterisk : aplikasi dan data pendukung (sound, dll)
- /usr/lib/asterisk : codec dan applikasi
- /etc/asterisk/sip.conf : data account extension (protokol SIP)
- /etc/asterisk/extensions.conf : data dialplan (untuk routing telepon dalam
Asterisk)
4.4.3.1 Konfigurasi sip.conf
File sip.conf menentukan softphone dan hardphone yang dapat melakukan
registrasi pada sistem Asterisk serta konfigurasi protokol SIP. File ini terdiri dari
dua bagian utama, yaitu :
- General Context
- User Defined Context
General Context berisi konfigurasi protokol sip umum (berlaku untuk
semua telepon yang akan melakukan registrasi) konfigurasi asalnya sudah dapat
berfungsi normal sehingga tidak perlu diubah.
Contoh :
[general]
context=default
bindport=5060
bindaddr=0.0.0.0
domain=mydomain.tl
rtcachefriend=yes
151
qualify=yes
Untuk user-defined context, setiap telepon dibuatkan satu konteks. Jika ada
10 phone, maka dibutuhkan 10 konteks. Pada konteks ini, kurung siku
menunjukkan nomor teleponnya sehingga tiap nomor dalam ini harus unik dan
tidak boleh ada yang sama.
Sistem akan mengenali suatu telepon dari kata atau nomer dalam kurung
siku itu, jika mau melakukan panggilan, maka akan didial ke nomor itu. Contoh:
Nama account : [10001]
Panggilan di sistem : SIP/1001
Berikut ini adalah isi detail dalam tiap user-defined context yang perlu
dikonfigurasi:
[1001] ; nama ID
Type=friend ; untuk SIP Phone, gunakan friend
Context=from-internal ; nama konteks dimana nantinya panggilan dari
user itu berada
Username=1001 ; nama user yang diperlukan untuk login di phone
Secret=pass ; password user untuk login di phone
Host=dynamic ; alamat IP yang boleh menerima login user ini, isi dynamic untuk
menerima dari mana saja
Allow=all ; codec yang diperbolehkan untuk user ini
Nat=yes ; yes jika user berada di belakang NAT
Canreinvite=yes ;
Insecure=very ;
152
Dtmfmode=rf2833 ; mekanisme untuk DTMF Relay, pilihan yang ada :
inband, rfc2833, INFO
Callerid=Nama <No> ; called id yang akan ditampilkan oleh penerima
Mailbox=1001@default ; nomor mailbox untuk menerima voicemail
Untuk melakukan registrasi softphone atau hardphone dilakukan pengisian
username, password, serta alamat ip server. Sampai sini, telepon dapat
melakukan registrasi tetapi belum dapat melakukan panggilan karena belum ada
untuk routing teleponnya.
4.4.3.2 Konfigurasi extensions.conf
File extension.conf mengatur nomor ekstensi yang ada dan bagaimana
telepon dialihkan sewaktu ada panggilan ke nomor tertentu dari suatu ekstensi ke
ekstensi yang lain. Konfigurasi dalam extension.conf biasanya disebut dengan
dialplan.
File ini terbagi dalam beberapa konteks yang dapat ditentukan sendiri juga,
kecuali konteks general yang mengatur konfigurasi asalnya. Penggunaan konteks
ini adalah untuk mengatur panggilan telepon. Tiap account dapat diatur pula
masuk ke dalam konteks yang mana.
Setiap konteks terdiri dari kumpulan ekstensi yang mana nantinya account
yang termasuk dalam konteks ini dapat memanggil ekstensi tersebut.
Bentuk umum untuk menulis ekstensi adalah :
Exten=><nomor_extension>,<prioritas>,<perintah>
153
<nomor_extension> : nomor yang dipanggil, dapat berupa angkat, pola, atau
huruf
<prioritas>: berupa angka yang menentukan urutan pemanggilan perintah
<perintah>: perintah yang dijalankan oleh sistem jika extension dipanggil
Contoh :
Dari contoh sip.conf yang diatas, didapatkan nomor sip 1001 berada dalam
context from-internal, untuk user lain agar dapat menelepon ke nomor itu,
diperlukan sebuah baris untuk memanggilnya.
[from-internal]
Exten => 1001,1,Dial(SIP/1001)
Dengan ekstensi 1001 telah didefinisikan dalam file extension.conf, maka
SIP account yang lain yang berada dalam context from-internal yang sama dapat
menelepon ke ekstensi 1001 hanya dengan memasukkan no telp 1001 ke dalam
softphone atau hardphone.
Cara lain untuk dapat mendefinisikan nomor tanpa harus menulis satu per
satu nomornya adalah dengan menggunakan pola nomor. Pola nomor dapat
digunakan ditandai dengan tanda “_” (Underscore) pada bagian awalnya.
Beberapa simbol pola yang dapat digunakan:
• X = Angka antara 0-9
• Z = Angka antara 1-9
• N = Angka antara 2-9
• [123] = pilihan angka dalam kurung siku (1 atau 2 atau 3)
• . (titik) = angka berapapun
154
Contoh penggunaan :
Exten => _XXXXXXXXXX
Pola di atas adalah pola 10 digit yang dapat berupa angka berapapun antara
0-9.
Exten => _12[123]XX
Pola di atas harus diawali dengan angka 12 kemudian angka 1 atau 2 atau
3, setelah itu 2 digit bebas antara 0 -9 contoh : 12145, 12362
Selain itu, untuk mengaktifkan fungsi presence (tanda seseorang sedang
online apa tidak, perlu ditambahkan sebuah ekstensi lagi dalam konteks yg
bersangkutan yang isinya adalah prioritas hint.
Contoh :
Exten => 0800779042,hint,SIP/0800779042
Dengan penambahan di atas, maka di phonebook orang lain yang telah
menambahkan ekstensi 0800779042 akan terlihat apakah nomor 0800779042
sedang aktif atau tidak.
4.4.3.3 Konfigurasi cdr_mysql.conf
File cdr_mysql.conf mengatur setting basis data mysql yang akan
digunakan untuk menyimpan call detail record (CDR). File ini terdiri dari satu
bagian saja yaitu global.
Contoh yang harus dikonfigurasi :
[global]
Hostname=localhost ; nama hostname / ip database mysql
155
Dbname=asteriskcdrdb ; nama database cdr
User=asterisk ; nama username mysql untuk koneksi
Password=mysql ; password untuk username diatas
Port=3306 ; port untuk melakukan koneksi ke mysql
Sock=/var/lib/mysql/mysql.sock; nama file untuk melakukan koneksi ke mysql
Table=cdr ; nama table yang dipakai untuk menyimpan cdr
4.4.3.4 Konfigurasi modules.conf
File module.conf adalah file yang mengatur applikasi apa saja yang
dikenali oleh Asterisk. Secara default, cdr mysql tidak di-load otomatis ke dalam
modules.conf sehingga harus ditambahkan secara manual.
Baris yang harus ditambahkan ke dalam module.conf adalah :
Load => cdr_addon_mysql.so
Aplikasi lain yang akan ditambahkan ke Asterisk dapat dikonfigurasi untuk
load dengan cara yang sama dengan yang di atas.
4.4.3.5 Konfigurasi manager.conf
File manager.conf adalah file konfigurasi yang menjelaskan apakah user
diijinkan untuk terhubung dengan konsole asterisk secara remote,password,
alamat IP, hak-haknya, dan lain-lain. File ini dalam sistem dipakai agar website
dapat segera me-reload file sip.conf setelah registrasi berhasil.Contoh:
156
[general] ; nama dari konteks asal – tidak boleh diubah
enabled = yes ; pilihan ini asalnya diset “no” , ubah ke “yes” agar bisa
bekerja.
port = 5038 ; ini adalah port yang akan didengarkan oleh Asterisk
bindaddr = 0.0.0.0 ; kode ini mengikat asterisk ke semua IP dari server.
displayconnects = yes ; baris perintah harus menampilkan koneksi dari Asterisk.
[test] ; ini adalah username yang harus diidentifikasi oleh user
agar bisa terhubung dengan asterisk pada saat log-on
secret = my_secret ; ini adalah password yang harus dimasukkan
deny=0.0.0.0/0.0.0.0 ; digunakan untuk blok IP . (0.0.0.0/0.0.0.0 -> artinya
semua IP dilarang).
permit = 10.2.2.48/255.255.255.0 ; disini akan diidentifikasi alamat IP yang
boleh masuk
read = all ; identifikasi hak-hak yang akan diberikan kepada
pengguna untuk membaca
write = all ; identifikasi hak-hak yang akan diberikan kepada
pengguna untuk menulis
writetimeout = 1000 ; lama waktu yang akan ditunggu Asterisk untuk
perintah berikutnya (contohnya jika terjadi delay, koneksi jarak jauh) dalam
milidetik.
157
4.4.4 Konfigurasi Crontab
Crontab adalah sebuah file yang berupa penjadwalan penjalanan perintah
perintah rutin yang ada di sistem, disini dapat diatur file mana saja yang dapat
dijalankan secara rutin.
Crontab bisa dieksekusi jika nama file muncul di file /usr/lib/cron.allow.
jika file tersebut tidak ada, crontab bisa digunakan jika nama file tidak muncul di
file /usr/lib/cron/cron.deny. jika cron.deny ada dan ternyata kosong, maka semua
user bisa menggunakan crontab. Jika kedua file tersebut tidak ada, maka hanya
root yang bisa menggunakan crontab. File allow/deny terdiri dari satu nama
username per baris.
Sebuah file crontab memiliki 5 kolom untuk menempatkan hari, tanggal dan
waktu, diikuti oleh perintah yang akan dijalankan pada jangka waktu tersebut.
* * * * * perintah yang akan dijalankan- - - - - | | | | | | | | | +----- hari dari minggu(0 - 6) (Minggu=0, Senin=1) | | | +------- bulan (1 - 12) | | +--------- hari dari bulan (1 - 31) | +----------- jam (0 - 23) +------------- menit (0 - 59)
* pada kolom nilai diatas berarti semua nilai yang berlaku untuk kolom
tersebut. Kolom nilai bisa memiliki sebuah * atau sederet elemen yang dipisahkan
oleh koma. Sebuah elemen adalah nomer pada jarak yang ditampilkan diatas atau
2 nomer pada jarak yang dipisahkan oleh sebuah hyphen(berarti jarak yang jauh).
158
Catatan : Spesifikasi hari dapat dibuat dalam 2 kolom: hari bulan dan hari
dalam bulan dan hari dalam minggu. Jika keduanya ditentukan dalam entry, maka
keduanya akan dijalankan.
Untuk itu, penulis sudah menyiapkan sebuah file yang akan mengembalikan
list user online untuk ditampilkan di web. Sebelum itu, pastikan file
“astwebhelper” sudah di kopi ke direktori sbin. Langkah – langkah untuk
menyiapkan crontab adalah :
crontab –e (Buka Crontab)
Masukkan :
* * * * * /usr/local/sbin/astwebhelper >/dev/null 2>&1
* * * * * /usr/sbin/asterisk >/dev/null 2>&1
save dan exit
Maksud dari perintah di atas adalah untuk menjalankan program itu setiap
menit dan hasilnya tidak dimasukkan ke dalam output file (tidak dicetak).
Cara kerja crontab yang di atas adalah tiap menit, sistem akan menjalankan
file astwebhelper yang berfungsi untuk membuat list user online yang akan di
baca di website sehingga memungkingkan data user online dapat di-update tiap
menit.
4.5 Testing
4.5.1 Testing Kestabilan Server
Untuk menguji kestabilan server, dijalankan beberapa test yang
dimaksudkan untuk mengetahui apakah server-nya dapat menerima beban. Tools
159
yang digunakan bernama SIPp (http://sipp.sourceforge.net/) . SIPp adalah program
open source yang dapat membuat skenario untuk protokol SIP. SIPp dapat
membuat sendiri traffic yang akan dikeluarkan ke server SIP sesuai dengan
skenario yang dapat diatur oleh user. Dengan kata lain, SIP dapat
mengemulasikan ribuan orang yang menelepon ke dalam SIP sistem ini.
Gambar 4.3 Kestabilan server
Sewaktu alpha testing ini, pengetesan dilakukan dari komputer lain di luar
jaringan server, spesifikasi komputer yang digunakan untuk mengetes server-nya
adalah :
- Pentium IV 1,8 GHz
- Memory DDR 768 Mb
- Sistem Operasi Microsoft Windows XP Pro SP2
160
Untuk menginstall SIPp di windows, dibutuhkan beberapa library yang
dapat didapatkan secara gratis juga di internet, ini adalah list library yang
dibutuhkan :
- WinPcap ( http://www.winpcap.org )
- Cygwin Runtime ( sudah termasuk di installer sipp2.0.1)
Setelah mendapatkan library yang diperlukan, mulailah untuk menginstall
SIPp, Langkah-langkah untuk mengetes :
- Download SIPp 2.0.1 windows binary dari sourceforge
http://sourceforge.net/project/showfiles.php?group_id=104305
- Install Library
- Install SIPp
SIPp sendiri adalah program yang berjalan secara console (atau dengan kata
lain, under dos), cara untuk menjalankannya sendiri sangat mudah. SIPp terdiri
dari 2 bagian, User Agent Client (UAC) dan User Agent Server (UAS)
Untuk menjalankan SIPp dengan skenario server dengan perintah :
# ./sipp -sn uas
Untuk Menjalankan SIPp dengan skenario client (uac) dengan perintah :
# ./sipp -sn uac 127.0.0.1
Masih ada beberapa perintah parameter lain yang dapat diliat di
dokumentasinya di web (http://sipp.sourceforge.net/doc/reference.html).
Sebelum memulai testing, server Asterisk sendiri perlu disiapkan beberapa
konfigurasi untuk dapat mengenali data yang akan dikirim, konfigurasi yang
diperlukan adalah :
161
- Sip.conf
Tambahkan line berikut :
[sipp]
type=friend
context=internal
host=192.168.1.20
port=6000
user=sipp
canreinvite=no
disallow=all
allow=ulaw
- Extension.conf
Tambahkan Line Berikut
[internal]
; extension dummy hanya buat testing
exten => 2005,1,Answer
exten => 2005,2,Wait(2)
exten => 2005,3,Hangup
; masuk ke standar demo asterisk
exten => 2000,1,Goto(demo,s,1)
Test No 1 : telp 0.5 detik untuk menguji pembuatan SIP dan thread
Skenario :
162
1. SIPp akan menelepon ke extension 2005 dan kemudian menjawab dan tidak
melakukan apa-apa
2. SIPp kemudian akan memutuskan telepon setelah 0.5 detik (500ms)
3. SIPp akan mengulang langkah ini dengan kecepatan 10 panggilan per detik
Perintah yang dipakai untuk menjalankan SIPp dengan scenario di atas
adalah :
# ./sipp -sn uac -d 500 -s 2005 hostname -l 10
Hostname diatas adalah nama komputer server
Hasil : Sekitar 14.000 Panggilan dibuat dalam jangka waktu 12 jam pengetesan
Gambar 4.4 Hasil Layar 1 Test 1
163
Gambar 4.5 Hasil Layar 2 Test 1
Selama Test, Penggunaan CPU Tidak lebih dari 4%, Hasil Testing-nya dapat
dilihat dari Graph di bawah ini :
Gambar 4.6 Hasil CPU Usage Test 1
Tingginya penggunaan CPU pada waktu awal pengambilan graph
dikarenakan sewaktu pengetesan server tidak ditutup sehingga meningkatkan
164
kinerja CPU yang sekaligus harus menangani panggilan yang dilakukan user pada
waktu bersama dilakukan testing ini.
Graph Penggunaan Memory selama Testing
Gambar 4.7 Hasil Memory Usage Test 1
Test no 2 : Telp 10 Detik untuk menguji audio RTP
Hasil : Sekitar 500.000 Panggilan dibuat dalam jangka waktu 12 jam pengetesan
Test no 2 : Telp 10 Detik untuk menguji audio RTP
Skenario :
1. SIPp akan menelepon ke extension 2000, yang akan memutar suara demo IVR
Asterisk itu sendiri. Audio RTP akan dikirim ke SIPp dan kemudian akan di echo
balik ke server. Test 1 diatas tidak menguji RTP, yang dimana RTP dapat
membuat jalan server lebih berat daripada transaksi SIP biasa dan dapat menjadi
model yang lebih mendekati telp sesungguhnya
2. SIPp kemudian akan memutuskan setelah 10 detik
165
3. SIPp telah dikonfigurasi untuk mengulang langkah ini dengan maksimum 10-20
panggilan secara bersamaan.
Perintah yang dipakai untuk menjalankan skenario diatas adalah :
# ./sipp -sn uac -d 10000 -s 2000 hostname -l 10 -mp 5606
Hostname diatas adalah nama computer server
Hasil : Dari test diatas, dijalankan selama 12 jam, telah dilakukan sekitar 13.000
panggilan 10 detik dan sekitar 22 mega packet RTP, tetapi load cpu server tidak
menunjukkan terlalu berat.
Gambar 4.8 Hasil Layar 1 Test 2
166
Gambar 4.9 Hasil Layar 2 Test 2
Gambar 4.10 Hasil CPU Usage Test 2
167
Gambar 4.11 Hasil Memory Usage Test 2
4.6 Prosedur Operasional Sistem
4.6.1 Asterisk Console
Asterisk dapat dimulai dengan mengetikkan perintah pada CLI (Command
Line Interface) pada Linux, ada 2 cara untuk menjalankan Asterisk:
- Asterisk berjalan di background
Untuk menjalankan asterisk di background dapat digunakan perintah
# asterisk
Tanpa parameter apa – apa
- Asterisk berjalan dengan mode console Command Line Interface (CLI)
Untuk menjalankan asterisk dengan mode console CLI dapat digunakan
perintah :
# asterisk –r
Sedangkan jika asterisk sudah berjalan di background dan untuk masuk ke
dalam console-nya dapat digunakan perintah :
168
# asterisk –c
Salah satu parameter tambahan yang dapat ditambahkan adalah sewaktu
menjalankan asterisk adalah -v (verbose) untuk menambahkan level verbosity
yang akan ditampilkan pada console asterisk
Perintah – perintah yang dapat digunakan dalam console Asterisk adalah :
o reload now
Untuk men-reload setting yang ada
o sip show peers
Untuk menampilkan semua user
o sip show peer <id>
Untuk menampilkan isi detail dari user
o sip reload
Untuk me-reload data sip
o restart now
Untuk men-restart server Asterisk
o stop now
Untuk menghentikan server Asterisk
4.6.2 Web
Aplikasi dapat dimulai dengan membuka browser dan mengetikkan alamat
sesuai dengan server pada address bar.
169
Layar Login
Gambar 4.12 Halaman Login
Pada layar login ini, user diminta untuk mengisi username dan password.
Layar ini berfungsi untuk membatasi hak akses user ke database sesuai dengan
hak akses yang dimiliki. Jika user mengklik tombol ’Login’, maka MySQL server
akan memeriksa apakah username dan password ada di dalam database dan sesuai
(valid). Jika sesuai maka akan ditampilkan halaman menu utama.
170
Layar Menu Utama
Gambar 4.13 Halaman Utama
Layar ini merupakan menu utama dari sistem ini. Pada layar ini terdapat
beberapa menu utama yaitu ’home’, ’download softphone’, ’online user’, ’FAQ’,
’change password’, ’change account, ’change profile’ , ’call detail record’ dan
’logout’. Menu ’home’ merupakan menu untuk kembali ke halaman menu utama.
Menu ’download softphone’ digunakan untuk memilih softphone yang bisa di-
download sesuai dengan sistem operasi yang digunakan oleh user.. Dalam menu
ini, user juga bisa melihat cara-cara konfigurasi softphone.
Menu ’online user’ digunakan untuk melihat jumlah user yang sedang
online . Menu ’FAQ’ digunakan untuk melihat keterangan-keterangan yang
diperlukan bagi user yang masih baru terhadap sistem ini. Menu ’change
password’ digunakan user apabila user hendak merubah password yang ada.
171
Menu ’change account’ untuk sementara masih belum tersedia. Menu ’change
profile’ digunakan untuk merubah profil user diantaranya nomer telepon, email,
kota dan alamat user.
Menu ’call detail record’ digunakan user untuk melihat rekaman telepon
yang telah digunakan user dan melihat total waktu yang telah digunakan user pada
saat menggunakan sistem ini. Menu ’logout’ digunakan untuk keluar dari session
dan kembali ke layar login.
Layar Download Softphone
Gambar 4.14 Halaman Download Softphone
Pada halaman ini terdapat 3 pilihan yang dapat digunakan user untuk men-
download softphone yang sesuai dengan sistem operasi yang digunakannya, antara
lain softphone untuk Windows, Linux dan Mac-Apple. Jika user memilih pilihan
172
pertama yaitu X-Lite for Windows XP/Vista/2000/98 maka akan muncul layar
kecil seperti dibawah ini
Gambar 4.15 Halaman Download Softphone ketika diakses
Untuk men-download , user cukup memilih save file dan browser akan
secara otomatis menyimpan softphone yang telah di-download tadi. Hal ini juga
berlaku sama apabila user memilih pilihan kedua dan ketiga.
Dibawah ketiga pilihan tersebut terdapat cara konfigurasi softphone agar
user bisa mulai berkomunikasi satu sama lain menggunakan sistem ini.
173
Layar Online User
Gambar 4.16 Halaman online user
Pada halaman ini user bias melihat berapa jumlah user yang sedang online
dan siapa saja user yang sedang online.
Layar FAQ
Gambar 4.17 Halaman FAQ
174
Pada halaman ini , terdapat keterangan-keterangan yang diperlukan bagi
user yang masih baru terhadap sistem ini. Didalamnya juga terdapat penjelasan-
penjelasan mengenai sistem beephone dan tata cara menggunakannya.
Layar Change Password
Gambar 4.18 Halaman Change Password
Pada halaman ini, user dapat mengubah password yang telah dimasukkan
sebelumnya. User hanya perlu memasukkan password lama dan menggantinya
dengan password baru. Password yang telah diganti akan secara otomatis dapat
digunakan pada saat user melakukan login selanjutnya.
175
Layar Change Account
Gambar 4.19 Halaman Change Account
Pada halaman ini, terdapat fitur-fitur yang masih sedang dalam tahap
pengembangan. Jadi, untuk sementara fitur ini belum tersedia.
Layar Change Profile
Gambar 4.20 Halaman Change Profile
176
Pada halaman ini , user dapat mengubah profile / data diri user. Data yang
sudah diubah akan secara otomatis masuk ke dalam basis data.
Layar Call Detail Record
Gambar 4.21 Halaman CDR
Pada halaman ini , user dapat melihat rekaman telepon yang telah
digunakan, termasuk didalamnya, waktu telepon, tujuan penelpon dan lama waktu
menelponnya. Dibawahnya juga diberikan keterangan total pemakaian user
selama sebulan.
177
Layar Logout
Gambar 4.22 Halaman logout
Pada saat user melakukan logout maka user akan kembali kepada halaman
login. Karena user sudah melakukan logout maka user sudah tidak dapat
mengakses menu user lagi.
Layar Registrasi
Step 1
Gambar 4.23 Halaman Registrasi Step 1
178
Pada halaman registrasi ini, user harus memasukkan Binusian ID , password
dan memilih role, apakah user tersebut merupakan mahasiswa, alumni atau dosen.
Apabila yang melakukan registrasi adalah seorang mahasiswa/alumni maka user
harus memasukkan password binusmaya. Dan apabila yang melakukan registrasi
adalah dosen maka user harus memasukkan tanggal lahir sebagai password-nya.
Step 2
Gambar 4.24 Halaman Registrasi Step 2
Pada halaman ini, user akan mengisi data-data diri diantaranya password
untuk softphone,nomer telepon (HP/PSTN), kota, alamat email, alamat dan
menyetujui persetujuan. Setelah mengisi semua dan melakukan konfirmasi, maka
user sudah bisa login dan menggunakan beephone.
179
Layar Lost Password
Gambar 4.25 Halaman Lost Password
Pada halaman ini, user yang lupa password bisa meminta kembali password
baru.user cukup memasukkan binusian ID, password binusmaya dan email yang
digunakan pada saat registrasi beephone. Apabila data yang dimasukkan benar,
maka password akan di-reset kembali menjadi sama dengan password binusmaya.
Layar Admin
Layar Login Admin
Gambar 4.26 Halaman Admin Login
180
Pada halaman ini , untuk melakukan login ke halaman home, admin harus
login dulu menggunakan admin ID dan password-nya. Apabila sudah login maka
selanjutnya layar akan berpindah ke halaman utama admin.
Layar Menu Utama Admin
Gambar 4.27 Halaman menu utama admin
Pada halaman ini, jika admin mengklik ’home’ ,maka layar akan tetap
berada di halaman utama. Jika admin mengklik ’user’ maka layar akan berpindah
ke halaman ’user’. Jika admin mengklik ’Manage FAQ’ maka layar akan
berpindah ke halaman ’Manage FAQ’. Jika admin mengklik ’Manage File’ maka
layar akan berpindah ke halaman ’Manage File’. Jika admin mengklik ’Edit
License’ maka layar akan berpindah ke halaman ’Edit License’. Jika admin
mengklik ’CDR Report’ maka layar akan berpindah ke halaman ’CDR Report’.
Jika admin mengklik ’Kuesioner Report’ maka layar akan berpindah ke halaman
181
’Kuesioner Report’. Dan yang terakhir, jika admin mengklik ’Logout’ maka layar
akan kembali ke halaman login.
Layar Menu User
Gambar 4.28 Halaman Menu User
Pada halaman ini , ada 2 pilihan yang bisa dipilih oleh admin , apabila
admin memilih ’Admin’ maka layar akan berpindah kehalaman menu list admin.
Dan apabila admin memilih ’User’ maka layar akan berpindah ke halaman list
user.
182
Layar Menu List Admin
Gambar 4.29 Halaman Menu List Admin
Pada halaman ini akan ditampilkan list admin yang ada. Admin bisa
menghapus data admin yang telah ada dengan mengklik ’Delete’ disamping
username admin yang ingin dihapus. Diatasnya juga terdapat ’Add Admin’ untuk
menambah admin baru.
Apabila admin mengklik ’Delete’ maka dilayar akan muncul tulisan ’Admin
berhasil dihapus’.
183
Layar Menu Add Admin
Gambar 4.30 Halaman Menu Add Admin
Layar di atas adalah tampilan untuk mengisi data admin yang baru. Admin
harus mengisi admin ID, username dan password yang baru. Dan setelah admin
mengklik tombol ’Submit’ maka admin baru tersebut sudah dapat login dengan
menggunakan ID barunya di halaman login admin.
184
Layar Menu List User
Gambar 4.31 Halaman Menu List User
Di halaman ini akan ditampilkan sederetan user yang telah melakukan
pendaftaran di beephone dan telah menggunakan beephone. Didalamnya terdapat
ID user yang digunakan sebagai nomer telepon yang berfungsi sebagai nomer
pribadi beephone dan juga data diri user. Disamping data diri user, admin bisa
menghapus data user yang ada dengan mengklik tombol ’delete’. Jumlah user
yang ditampilkan setiap halamannya adalah sejumlah 20 user. Halaman akan
bertambah seiring dengan bertambahnya jumlah user yang melakukan
pendaftaran. Di bagian paling atas layar menu list user juga terdapat fasilitas
pencarian data user. Admin cukup memasukkan ID dari user dan kemudian secara
otomatis dengan mengklik tombol ’Search’, browser akan menampilkan data dari
ID user yang telah dimasukkan. Dibawah fasilitas pencarian juga terdapat menu