178 BAB 4 IMPLEMENTASI DAN EVALUASI
4.1
Spesifikasi Sistem Selain keberadaan jaringan komputer berbasis Internet yang menggunakan protokol TCP/IP, implementasi sistem harus didukung oleh perangkat keras dan juga perangkat lunak yang sesuai agar sistem dapat digunakan secara efektif dan efisien. Requirements atau spesifikasi sistem yang direkomendasikan adalah sebagai berikut. 1. Komputer Server Perangkat Keras untuk 40 panggilan (dengan lebih dari 5000 total panggilan per hari) (W.Purbo, p.16): -
Processor Intel Pentium 4 – 2,6 GHz
-
Hard Disk 80 GB 7200 rpm
-
Memory (RAM) 1 GB
-
VoIP Gateway
-
Monitor
-
Keyboard dan Mouse
Perangkat Keras untuk 60 concurrent call (W.Purbo, p.16): -
Processor Intel Dual Xeon 1,8 Ghz
-
Hard Disk 80 GB 7200 rpm
-
Memory (RAM) 1 GB
179 -
VoIP Gateway
-
Monitor
-
Keyboard dan Mouse
Perangkat Lunak : -
Sistem Operasi Linux Fedora Core 6
-
Asterisk 1.4.14
-
Asterisk-addon 1.4.5
-
Asterisk-Stat v2.0.1
-
Zaptel 1.4.7.1
-
Libpri 1.4.3
-
Database dengan MySQL Server 5.0
-
PHP 5
-
Webserver Apache 2
2. Komputer Client Perangkat Keras : -
Processor Intel Pentium 4 – 1,2 GHz
-
Hard Disk 40 GB
-
Memory (RAM) 256 MB
-
Modem 56 Kbps
-
Monitor
-
Keyboard dan Mouse
180 -
Headset lengkap dengan mikrofon dan speaker
Perangkat Lunak :
4.2
-
Sistem Operasi Windows XP
-
X-Lite
Arsitektur Jaringan
Gambar 4.1 Arsitektur Jaringan
Selain terhubung ke jaringan LAN lokal, server asterisk pada arsitektur jaringan diatas juga terhubung ke Internet dan PSTN, sehingga tidak hanya komputer dan telepon jaringan internal saja yang dapat terhubung melalui server, namun komputer dan telepon lain juga dapat terhubung melalui server. Selain itu, dengan terhubungnya ke Internet dan PSTN, antar pengguna yang telah terdaftar pada
181 server dapat saling menghubungi satu sama lain secara langsung dengan server sebagai perantara. Untuk menghubungkan jaringan LAN asterisk dengan PABX lokal dan PSTN, diperlukan sebuah VoIP Gateway. Pada VoIP Gateway tersedia FXO dan FXS, dimana FXS menghubungkan PABX dengan server Asterisk dan FXO menghubungkan jaringan PSTN luar dengan server Asterisk.
4.3
Prosedur Instalasi Untuk penerapan sistem VoIP dengan menggunakan Asterisk, dibutuhkan sebuah sistem operasi berbasis Linux. Pada penulisan skripsi ini menggunakan Fedora Core 6 karena Fedora Core merupakan sistem operasi Linux yang berbasiskan server sehingga mampu menangani user dalam jumlah yang banyak (ratusan hingga ribuan). Pada proses instalasi Fedora Core 6, perlu diaktifkan beberapa repositories yang dibutuhkan pada saat proses instalasi maupun proses menjalankan Asterisk. Repositories yang dibutuhkan antara lain: 1. kernel-devel 2. rpm-python 3. phyton-elementtree 4. python-sqlite 5. python-urlgrabber 6. yum 7. wget 8. sql-server
182 9. httpd 10. mysql-server 11. php-gd 12. php-mysql
Setelah instalasi Fedora Core 6 sudah selesai dilakukan, maka tahap selanjutnya adalah instalasi Asterisk berserta komponen lain pendukungnya. Tahap-tahap instalasi Asterisk pada Fedora Core 6 adalah sebagai berikut: 1. login sebagai root 2. ubah direktori ke /usr/src: cd /usr/src 3. Download Asterisk, Asterisk-Addons, Asterisk-stat, StarAstAPI, Zaptel, dan LibPRI: wget http://ftp.digium.com/pub/zaptel/releases/zaptel-1.4.7.1.tar.gz wget http://ftp.digium.com/pub/libpri/releases/libpri-1.4.3.tar.gz wget http://ftp.digium.com/pub/asterisk/releases/asterisk-1.4.14.tar.gz wget http://ftp.digium.com/pub/asterisk/releases/asterisk-addons-1.4.5.tar.gz wget http://areski.net/asterisk-stat-v2/asterisk-stat-v2_0_1.tar.gz wget http://freshmeat.net/redir/starastapi/64926/url_tgz/StarAstAPI.tar 4. Instal Zaptel: tar -zxf zaptel-1.4.7.1.tar.gz cd zaptel-1.4.7.1 make clean
183 make make install make config /etc/init.d/zaptel start 5. Instal LibPRI: tar -zxf libpri-1.4.1.tar.gz cd libpri-1.4.3 make clean make make install 6. Instal Asterisk: tar -zxf asterisk-1.4.14.tar.gz cd asterisk-1.4.14 ./configure make clean make make install make samples make config 7. Instal Asterisk-Addons: tar -zxf asterisk-addons-1.4.5.tar.gz cd asterisk-addons-1.4.5/asterisk-ooh323c/ vi Makefile, ubah libchan_h323.so.1.0.1 menjadi libchan_h323.1.0.1
184 cd asterisk-addons-1.4.5/format_mp3 vi format_mp3.c, ubah s->_private menjadi s->private ./configure make make install 4.4
Prosedur Konfigurasi
4.4.1
Konfigurasi MySql Database Server Konfigurasi Mysql Database Server: service mysqld start mysqladmin create asterisk mysqladmin create asteriskcdrdb mysql –u root –p root use asteriskcdrdb create table cdr (calldate datetime, clid varchar(80), src varchar(80), dst varchar(80),
dcontext
varchar(80),
channel
varchar(80),
dstchannel
varchar(80), lastapp varchar(80), lastdata varchar(80), duration int(11), billsec int(11), disposition varchar(45), amaflags int(11), accountcode varchar(20), uniqueid varchar(32), userfield varchar(255) );
4.4.2
Konfigurasi Web Portal 1. Pindahkan folder Asterisk-stat dan folder StarAstApi ke folder Apache tar –zxf asterisk-stat-v2_0_1.tar.gz mv asterisk-stat-v2 /var/www/html/asterisk-stat -Rf
185 2. Penambahan modul pada Asterisk-stat Untuk penambahan modul pada Asterisk-stat, tahap-tahap yang perlu dilakukan adalah a. Tambahkan menu pada cdr.php (lihat lampiran 29) b. Tambahkan sip-account.php (lihat lampiran 36) c. Tambahkan include.php (lihat lampiran 43) d. Tambahkan prosesAdd.php (lihat lampiran 45) e. Tambahkan prosesDelAcc.php (lihat lampiran 48) f. Tambahkan prosesChangeAcc.php (lihat lampiran 49) g. Tambahkan add-newAcc.php (lihat lampiran 51) h. Tambahkan change-passwd.php (lihat lampiran 53) i. Tambahkan deleteConfirm.php (lihat lampiran 56) j. Tambahkan edit-account.php (lihat lampiran 58) k. Tambahkan add-newCategory.php (lihat lampiran 61) l. Tambahkan edit-category.php (lihat lampiran 63) m. Tambahkan DeleteCategory.php (lihat lampiran 66) n. Tambahkan prosesDeleteCategory.php (lihat lampiran 68) o. Tambahkan Scommand.php (lihat lampiran 68)
4.4.3
Konfigurasi Asterisk Tahap-tahap untuk konfigurasi Asterisk adalah: 1. Konfigurasi agar CDR Asterisk terhubung dengan database MYSQL > vi /etc/asterisk cdr.conf
186
[general] enable = yes Keterangan dari konfigurasi diatas adalah: a. [general] Æ konfigurasi untuk secara keseluruhan b. enable = yes Æ mengaktifkan CDR > vi cdr_mysql.conf 1. 2. 3. 4. 5. 6. 7. 8.
[global] hostname = localhost dbname = asteriskcdrdb table = cdr password = root user = root port = 3306 sock = /var/lib/mysql/mysql.sock
Keterangan dari konfigurasi diatas adalah: a. [global] Æ sebagai konfigurasi secara global b. hostname Æ alamat server database CDR c. dbname Æ nama database CDR d. table Æ nama tabel CDR e. password Æ password untuk mengakses database f. user Æ nama user untuk mengakses database > vi res_mysql.conf [general] dbhost = 127.0.0.1 dbname = asteriskcdrdb dbpass = root dbuser = root dbport = 3306 dbsock = /var/lib/mysql/mysql.sock
187 Keterangan dari konfigurasi diatas adalah: a. [general] Æ sebagai konfigurasi secara global b. dbhost Æ alamat server database CDR c. dbname Æ nama database CDR d. dbpass Æ password untuk mengakses database e. dbuser Æ nama user untuk mengakses database f. dbport Æ nomor port untuk mengakses database g. dbsock Æ alamat sock untuk membaca database
2. Konfigurasi IVR > vi /etc/asterisk/extensions.conf #include extensions_custom.conf Tambahkan
syntax
diatas
agar
extension.conf
membaca
file
extension_custom.conf yang merupakan file konfigurasi dialplan berada. > vi extensions_custom.conf 1. 2. 3. 4. 5. 6. 7.
[from-internal-custom] exten => 1234,1,Ringing(3) exten => 1234,n,Background(/sound/selamat-datang) exten => 1234,n,Background(/sound/menu-utama) exten => 1234,n,WaitExten(3) exten => 1,1,Goto(customer-service,s,1) exten => 2,1,Goto(authenticate-mhsw,s,1)
Untuk mendeklarasikan suatu fungsi pada IVR, dapat digunakan tanda [ ] sebagaimana yang terdapat pada baris 1.
188 Pada baris 2 terdapat perintah exten => 1234,1,Ringing(3); dimana 1234 merupakan nomor extension yang dituju, dengan prioritas 1, menjalankan perintah Ringing selama 3 detik. Beberapa syntax lainnya yaitu Background yang berfungsi menjalankan suatu file audio sampai file tersebut berakhir. Untuk menunggu user menekan tombol, maka dapat digunakan perintah WaitExten(n), dimana n merupakan lama waktu menunggu dalam detik. Pada baris ke-6 menunjukkan, apabila user menekan angka 1, yang berarti Asterisk akan membaca angka 1 sebagai nomor extension yang akan dituju. Maka extension 1 dengan prioritas 1 akan Goto ke fungsi customerservice yang memiliki extension s berprioritas 1. Extension memiliki tiga tipe, yaitu: a. Litteral Extension litteral dapat mengandung angka (0-9) atau huruf (a-z) b. Predifined Extension predefined, berarti extension sudah ditetapkan sebelumnya. Beberapa prefefined extension yaitu:
i – Invalid
s – Start
h – Hangup
t – Timeout
T – AbsoluteTimeout
o – Operator
189 c. Pattern Jika nama extension diawali dengan '_', maka akan dianggap sebagai pattern. Untuk extension yang menggunakan pattern, ada beberapa karakter yang mempunya arti tertentu, yaitu:
X – digit 0-9
Z – digit 1-9
N – digit 2-9
[13579] – digit yang terdapat dalam kurung siku (pada contoh: 1,3,5,7,9)
. (titik) – wildcard, akan membaca semua karakter. Contoh: _1234. – akan membaca extension yang berawalan 1234, termasuk 1234 itu sendiri.
Sebagai contoh: _3744ZXXXXX – ini akan menyocokkan semua extension yang dituju yang berawalan 3744, lalu diikuti 1 digit angka (0-9), lalu 5 digit angka (0-9), dengan total digit sebanyak 10.
8. 9. 10. 11. 12. 13.
exten => 3,1,Goto(authenticate-dosen,s,1) exten => 9,n,Hungup() [customer-service] exten => s,1,GotoIfTime(7:00-21:00|mon-fri|*|*?q1,1) exten => s,n,GotoIfTime(7:00-18:00|sat|*|*?q2,1) exten => s,n,VoiceMail(
[email protected])
14. 15. 16.
exten => q1,1,Queue(cs-queue1) exten => q2,1,Queue(cs-queue2)
190 Pada baris ke-11 terdapat perintah GotoIfTime yang merupakan Goto jika kondisi waktu terpenuhi. Pada kasus ini, kondisi akan terpenuhi apabila waktu berkisar pukul 7:00 hingga 21:00 dan pada hari Senin sampai Jumat. Apabila kondisi terpenuhi, maka sistem memanggil extension q1 yang berprioritas 1. Apabila kondisi baris ke-11 dan 12 tidak terpenuhi, maka sistem akan menjalankan baris ke-13 yang memanggil perintah VoiceMail. Voicemail akan meminta penelpon untuk meninggalkan pesan. Pesan ini nantinya akan terkirim ke email
[email protected]. Extension q1 prioritas 1, menjalankan perintah Queue(cs-queue1) yang berarti menjalankan suatu sistem pengantrian (queue) yang telah ditetapkan pada file queue.conf. 17. 18. 19. 20. 21. 22.
[authenticate-mhsw] exten => s,1,Background(/sound/nim-mhsw) exten => s,n,Read(in-nim) exten => s,n,Background(/sound/pass-mhsw) exten => s,Read(in-pass)
23. 24. 25.
26. 27. 28. 29. 30. 31. 32.
exten => s,n,MYSQL(Connect connid localhost root root binus) exten => s,n,MYSQL(Query resultid ${connid} SELECT\ *\ from\ master_mahasiswa\ where\ nimhs='${in-nim}'\ and\ password=${in-pass}) exten => s,n,MYSQL(Fetch fetchid ${resultid} temp) exten => s,n,MYSQL(Clear ${resultid}) exten => s,n,MYSQL(Disconnect ${connid}) exten => s,n,GotoIf($[${temp} != NULL]?99:90) exten => s,90,Playback(/sound/nim-salah) exten => s,91,Goto(1) exten => s,99,Goto(menu-mhsw,s,1)
191 Pada fungsi authenticate-mhsw, baris ke-19 akan meminta penelpon untuk memasukkan nomor yang diakhiri dengan tanda pagar, dan disimpan kedalam variabel in-nim. Pada baris ke-23, Asterisk akan membuat koneksi MySql dengan IP localhost, user root, password root, dan database binus. Pada baris ke-24, sebuah query akan dijalankan, dan hasilnya akan ditampung pada variabel temp di baris ke-25. Koneksi database akan diputus pada baris ke-27. 33. 34. 35. 36.
[menu-mhsw] exten => s,1,Background(/sound/menu-mhsw) exten => s,n,WaitExten(3) exten => 2,1,Goto(menu-jadwalujian,s,1)
37. 38. 39. 40. 41.
[menu-jadwalujian] exten => s,1,Set(loop=1) exten => s,2,WaitExten(3) exten => s,2,Background(/sound/menu-jadwalujian)
42. 43. 44. 45. 46.
exten => 1,1,Set(kduji=1) ; 1=uts, 2=uas exten => 1,2,Goto(baca-jadwalujian,s,1) exten => 2,1,Set(kduji=3) ; 3=utp, 4=uap exten => 2,2,Goto(baca-jadwalujian,s,1)
47. 48. 49. 50.
51.
52. 53. 54.
[baca-jadwalujian] exten => s,1,MYSQL(Connect connid localhost root root binus exten => s,2,MYSQL(Query resultid ${connid} SELECT\ datediff(tgluj\,\'1970-01-01\')*24*60*60\ as\ 'diff'\,a.kdmtk\,sks\,skspr\,kelas\,kdrng\,nokursi\,jaml\,jamsl\ from transaksi_ujian_mahasiswa a\, tabel_semester_berjalan b\, master_matakuliah c\ where a.nimhs='${in-nim}' and a.priod=b.priod and a.kdsem=b.kdsem and a.kdmtk=c.kdmtk and a.kduji='${kduji}') exten => s,3,MYSQL(Fetch fetchid ${resultid} tanggal kdmtk sks skspr kelas ruang nokursi jaml jamsl) exten => s,4,GotoIf($[${kdmtk} != NULL]?10:5) exten => s,5,Background(/sound/jadwal-null) exten => s,6,Goto(menu-jadwalujian,s,1)
192
55. 56. 57. 58. 59. 60. 61.
62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85.
exten => s,10,GotoIf($[${loop} = 1]?11:12) exten => s,11,Background(/sound/jadwal${jadwal}) exten => s,12,GotoIf($["${fetchid}" = "1"]?13:40) exten => s,13,Background(/sound/kdmtk) exten => s,n,SayAlpha(${kdmtk}) exten => s,n,Wait(1) exten => s,n,Background(/sound/matakuliah/${kdmtk}) ;Nama matakuliah berdasarkan kode matakuliah exten => s,n,SayAlpha(${sks}/${skspr}) exten => s,n,Background(/sound/sks) exten => s,n,Background(/sound/tanggal) exten => s,n,SayUnixTime(${tanggal},,dbY) exten => s,n,Background(/sound/pukul) exten => s,n,SayNumber(${jaml:0:2}) exten => s,n,SayNumber(${jaml:3:2}) exten => s,n,Background(/sound/hingga) exten => s,n,Wait(1) exten => s,n,SayNumber(${jamsl:0:2}) exten => s,n,SayNumber(${jamsl:3:2}) exten => s,n,Background(/sound/ruang) exten => s,n,SayAlpha(${ruang}) exten => s,n,Background(/sound/nokursi) exten => s,n,SayNumber(${nokursi}) exten => s,n,Background(/sound/kelas) exten => s,n,SayAlpha(${kelas}) exten => s,n,Set(loop=2) exten => s,n,Goto(3) exten => s,40,MYSQL(Clear ${resultid}) exten => s,n,MYSQL(Disconnect ${connid}) exten => s,n,Background(/sound/mengulang) exten => s,n,Background(/sound/kembali) exten => s,n,WaitExten(2)
86. 87. 88.
exten => 1,1,Goto(s,1) exten => 9,1,Goto(menu-status-tagihan,s,1)
Fungsi baca-jadwalujian, merupakan suatu fungsi untuk membacakan jadwal ujian baik jadwal ujian teori maupun jadwal ujian praktikum. Beberapa perintah untuk membaca adalah:
193 a. SayNumber
–
berfungsi
untuk
membacakan
angka.
Contoh:
SayNumber(135) – Seratus tiga puluh lima. File yang dibackan adalah hundred.wav, 30.wav, dan 5.wav b. SayAlpha – berfungsi untuk membacakan alphabet. Contoh: SayAlpha(a135) – A Satu Tiga Lima. File yang dibacakan adalah a.wav, 1.wav, 3.wav, dan 5.wav. c. SayUnixTime – berfungsi untuk membacakan tanggal atau waktu yang dimulai
dari
tanggal
1
Januari
1970.
Contoh
SayUnixTime(86400|dBY) – 2 Januari 1970. File yang dibacakan yaitu day-1.wav, mon-0.wav, thousand.wav, 9.wav, hundred.wav, dan 70.wav. d. SayDigit – berfungsi untuk membacakan angka digit. Contoh SayDigit(135) – Satu tiga lima. File yang dibacakan yaitu 1.wav, 3.wav, dan 5.wav
3. Konfigurasi VoiceMail 1. 2. 3. 4. 5. 6.
7. 8.
[general] Attach = no Format =wav49|gsm Maxlogin=3 Minmessage=1 Maxmessage=600 [marketing] 1122 => 2211,user1122
>vi /etc/asterisk/voicemail.conf
194 Voicemail.conf merupakan file konfigurasi untuk voicemail. Pada setting global yaitu [general] terdapat beberapa perintah yang berlaku kepada semua user. Perintah-perintah yang terdapat pada voicemail.conf antara lain: a. [general] Æ untuk konfigurasi secara global b. Attach Æ pesan suara akan dikirim ke email sebagai attachment. Yes = mengirim pesan sebagai attachment No = tidak mengirim pesan c. Format Æ tipe format voicemail yang akan disimpan d. Maxlogin Æ jumlah maksimal seorang user untuk mencoba login. Jika sudah melebihi batas, maka panggilan akan ditutup. e. Minmessage Æ batas minimal pesan suara dalam detik. Apabila pesan suara dibawah batas minimal, maka pesan tersebut tidak akan disimpan. f. Maxmessage Æ batas maksimal pesan suara dalam detik. Apabila pesan suara diatas batas maksimal, maka pesan akan direkam hinggap detik maksimal.
4. Konfigurasi Queue >vi /etc/asterisk/queue.conf 1. 2. 3. 4. 5.
[general] musicclass=default strategy=random timeout=10 maxlen=6
195
6. 7.
announce-frequency=5 joinempty=yes
8. 9. 10. 11.
[cs-queue] member => SIP/1111 member => SIP/1122
Queue.conf merupakan file untuk konfigurasi sistem pengantrian (queue). Beberapa perintah pada queue.conf adalah a. [general] Æ untuk konfigurasi secara global b. Musicclass Æ file suara yang akan dijalankan pada proses queue c. Stategy Æ cara bagaimana telepon yang masuk ke operator. Beberapa pilihan untuk strategy adalah
Ringall = menghubungi semua telepon operator. Strategy ini adalah strategy default.
Roundrobin = menghubungi satu persatu operator
Leastrecent = menghubungi operator yang paling sedikit ditelepon pada proses queue.
Fewestcalls = menghubungi operator yang paling sedikit menjawab panggilan dari proses queue.
Random = secara acak menghubungi operator.
Rrmemory = round robin dengan memori, mengingat kembali posisi terakhir dan menghubungi operator selanjutnya.
d. Timeout Æ berapa lama panggilan dalam detik akan berakhir sebelum dinyatakan tidak diangkat. e. Maxlen Æ batas panjang antrian, nilai 0 untuk unlimited.
196 f. Announce-frequency Æ dalam berapa detik sistem akan memberitahu posisi penelpon pada antrian. g. Joinempty Æ memungkinkan penelpon untuk masuk ke daftar queue jika ada atau tidak ada member.
5. Konfigurasi SIP Account >vi /etc/asterisk/sip.conf [1122] type=friend context=default secret=my-password host=dynamic port=5060 nat=yes dial=SIP/111 allow=all
1. 2. 3. 4. 5. 6. 7. 8. 9.
Sip.conf merupakan file konfigurasi SIP account. Beberapa perintah konfigurasinya adalah a. [1122] Æ nomor extension user b. type Æ friend = dapat menerima dan membuat panggilan,
peer = hanya dapat menerima panggilan,
user = hanya dapat membuat panggilan.
c. context Æ dialplan yang akan dijalankan d. secret Æ password user untuk login e. port Æ port yang dipakai untuk komunikasi f. nat Æ yes apabila menggunakan NAT (Network Address Translation)
197 g. dial Æ alamat untuk menghubungi user h. allow Æ codec yang dapat dipakai, all untuk semua tipe codec
6. Konfigurasi Manager >vi manager.conf 1. 2. 3.
[general] displaysystemname=yes port=5038
4. 5. 6. 7. 8.
[user] secret=mypassword deny=0.0.0.0/0.0.0.0 permit=127.0.0.1/255.255.0.0
Manager.conf digunakan agar aplikasi lain dapat terhubung ke Asterisk dan mengakses sistem secara remote. Beberapa perintah konfigurasinya adalah a. [general] Æ konfigurasi secara global b. displaysystemname Æ untuk menampilkan nama user yang remote c. port Æ nomor port untuk berkomunikasi, default 5038 d. [user] Æ nama user untuk login e. secret Æ password untuk login f. deny Æ ip yang akan ditolak g. permit Æ ip yang diperbolehkan remote
198 4.4.4
Konfigurasi VoIP Gateway Konfigurasi menggunakan VoIP Gateway Linksys SPA-3102
Gambar 4.2 Linksys SPA-3102
Pada bagian samping, terdapat 4 port yaitu 2 ethernet port (, 1 line port (FXO), 1 phone port (FXS). Hubungkan PBX lokal pada port FXO dan line PSTN dengan FXS. Sedangkan ethernet dihubungkan pada jaringan LAN. Pada web browser buka http://192.168.0.1 untuk konfigurasi linksys SPA-3102 dengan web interface.
Gambar 4.3 konfigurasi Proxy and Registration Linksys SPA-3102 Konfigurasi Proxy : IP address server Asterisk PBX Use Outbound Proxy: No Register: No Register Expires: 3600
199 Use DNS SRV: No Proxy Fallback Intvl: 3600 Use OB Proxy in Dialog: Yes Make Call Without Reg: Yes Ans Call Without Reg: Yes DNS SRV Auto Prefix: No Proxy Redundancy Method: Normal
Gambar 4.4 Konfigurasi Dial Plans Linksys SPA-3102 Pada tahap ini, voip gateway akan routing panggilan masuk. Panggilan masuk akan diteruskan ke nomor 7145551212 dengan alamat ip 10.10.10.50 dan port 5060.
Gambar 4.5 Konfigurasi VoIP-To-PSTN Gateway Linksys SPA-3102 Pada tahap konfigurasi ini akan memberitahu Linksys SPA-3102 bagaimana menangani panggilan dari Asterisk menuju PSTN. Konfigurasi VoIP-To-PSTN Gateway Enable: Yes
200 VoIP PIN Max Retry: 3 Line 1 VoIP Caller DP:3 Line 1 Fallback DP: 1 VoIP Caller Auth Method: None One Stage Dialing: Yes VoIP Caller Default DP: 1
Gambar 4.6 Konfigurasi PSTN-To-VoIP Gateway Linksys SPA-3102 Pada tahap konfigurasi ini akan memberitahu Linksys SPA-3102 bagaimana menangani panggilan dari PSTN menuju Asterisk. Konfigurasi PSTN-To-VoIP Gateway Enable: Yes PSTN Ring Thru Line 1: No PSTN CID For VoIP CID: Yes PSTN Caller Default DP: 1 Line 1 Signal Hook Flash To PSTN: Disabled PSTN Caller Auth Method: none PSTN PIN Max Retry: 3 PSTN CID Number Prefix: Off Hook While Calling VoIP: No PSTN CID Name Prefix:
201 4.5
Perekaman Suara Untuk proses perekaman suara, software yang digunakan adalah Audacity (http://audacity.sourceforge.net). Hasil rekamanan suara, akan diedit secara digital dengan mengandalkan fitur Audacity. Tahap-tahap perekaman suara adalah sebagai berikut: 1. Rekam suara
Gambar 4.7 Perekaman Suara dengan Audacity Untuk memulai perekaman suara, dapat dilakukan dengan 2 cara yaitu menekan tombol record atau dengan shortcut ctrl+r. Untuk menghentikan proses perekaman dapat dilakukan dengan menekan tombol stop pada menu atau dengan shortcut ctrl+s. Untuk perekaman suara, pada awal kalimat dan akhir kalimat diberi waktu selang selama 1 detik. Perekaman suara harus menggunakan project rate sebesar 8000Hz agar terbaca oleh Asterisk.
202 2. Edit suara
Gambar 4.8 Tahap Edit Suara 1 Setelah selesai proses perekaman, maka tahap selanjutnya adalah pengeditan suara. Untuk tahap-tahap pengeditan suara adalah sebagai berikut: a. Pilih area pada hasil rekaman yang akan di hilangkan noise atau suara gangguan. Biasanya berada pada awal sebelum pembacaan kalimat dan sesudah selesai pembacaan kalimat. b. Noise Removal
Gambar 4.9 Noise Removal 1
203 Pilih menu effect > Noise Removal. Kemudian tekan tombol Get Noise Profile.
Gambar 4.10 Noise Removal 2 Ulangi proses yang sama pada diatas yaitu pilih menu effect > Noise Removal. Pilih Remove Noise untuk menghilangkan suara gangguan. c. Normalize
Gambar 4.11 Normalize Blok semua area hasil rekaman dengan ctrl+a, kemudian pilih menu effect > Normalize. Aktifkan pilihan Remove any DC offset dan Normalize maximum amplitude to -3 dB. Setelah itu tekan OK untuk melanjutkan proses.
204 3. Save
Gambar 4.12 Save As pada Audacity Pilih area hasil rekaman yang ingin disimpan, pilih menu File > Export Selection as WAV. Kemudian akan muncul window penyimpanan. Beri nama pada file yang akan disimpan, lalu tekan tombol Save. Semua file yang sudah direkam dipindahkan ke server Asterisk. Pada server Asterisk, posisi penyimpanan suara adalah /etc/lib/asterisk/sounds. Untuk pembacaan huruf berada pada subfolder letters, sedangkan angka dan waktu pada subfolder digits. Secara default extension file suara pada Asterisk adalah gsm. Isi pada subfolder letters adalah a. file suara untuk pembacaan huruf A - Z dengan nama file a.wav, b.wav, ..., z.wav.
205 b. selain itu terdapat juga file suara untuk pembacaan karakter lainnya seperti: -
dash (-) dengan nama file dash.gsm
-
dollar ($) dengan nama file dollar.gsm
-
titik (.) dengan nama file dot.gsm
-
tambah (+) dengan name file plus.gsm
-
slash (/) dengan nama file slash.gsm
-
spasi dengan nama file space.gsm
Isi pada subfolder digits adalah a. 0.wav, 1.wav, 2.wav, 3.wav, 4.wav, 5.wav, 6.wav, 7.wav, 8.wav , 9.wav, digunakan untuk pembacaan angka 0 – 9. b. 11.wav, 12.wav, 13.wav, 14.wav, 15.wav, 16.wav, 17.wav, 18.wav , 19.wav, digunakan untuk pembacaan angka 11 – 19. c. 10.wav, 20.wav, 30.wav, 40.wav, 50.wav, 60.wav, 70.wav, 80.wav , 90.wav, digunakan untuk pembacaan angka 10 – 90. d. Hunderd.wav,
digunakan
untuk
pembacaan
bilangan
ratusan.
Misal
pemanggilan fungsi SayNumber(300), maka file yang akan dibacakan yaitu 3.wav dan hundred.wav. e. Thousand.wav, digunakan untuk pembacaan bilangan ribuan. Misal pemanggilan fungsi SayNumber(2000), maka file yang akan dibacakan yaitu 2.wav dan thousand.wav.
206 f. Million.wav, digunakan untuk pembacaan bilangan jutaan. Misal pemanggilan fungsi SayNumber(5000000), maka file yang akan dibacakan yaitu 5.wav dan million.wav g. day-0.wav, untuk pembacaan hari Minggu. h. day-1. wav, untuk pembacaan hari Senin. i. day-2. wav, untuk pembacaan hari Selasa. j. day-3. wav, untuk pembacaan hari Rabu. k. day-4. wav, untuk pembacaan hari Kamis. l. day-5. wav, untuk pembacaan hari Jumat. m. day-6. wav, untuk pembacaan hari Sabtu. n. mon-0.wav, untuk pembacaan bulan Januari. o. mon-1.wav, untuk pembacaan bulan Februari. p. mon-2.wav, untuk pembacaan bulan Maret. q. mon-3.wav, untuk pembacaan bulan April. r. mon-4.wav, untuk pembacaan bulan Mei. s. mon-5.wav, untuk pembacaan bulan Juni. t. Mon-6.wav, untuk pembacaan bulan Juli. u. mon-7.wav, untuk pembacaan bulan Agustus. v. mon-8.wav, untuk pembacaan bulan September. w. mon-9.wav, untuk pembacaan bulan Oktober. x. mon-10.wav, untuk pembacaan bulan November. y. mon-11.wav, untuk pembacaan bulan Desember.
207 4.6
Testing
4.6.1
Testing Realibilitas Server Untuk menguji realibilitas server atau tingkat kehandalan, maka dapat dijalankan beberapa tes yang dimaksudkan untuk mengetahui berapakah ratio perbandingan telepon yang masuk (successful call) dan telepon yang tidak masuk (failed call) pada saat puluhan telepon menghubungi nomor tertentu dalam kurun waktu
satu
detik.
Tool
yang
dipakai
untuk
uji
coba
adalah
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 scenario yang dapat diatur oleh user. Dengan kata lain, SIP dapat mengemulasikan ribuan orang yang menelepon ke dalam SIP sistem ini. Software uji coba ini diletakkan pada sisi client. Spesifikasi komputer yang digunakan untuk mengetes server adalah : -
Intel Core 2 Duo 2,2 Ghz
-
Memory DDR2 512 Mb
-
Sistem Operasi Microsoft Windows Vista Home Edition Untuk menginstall SIPp di windows, dibutuhkan beberapa library yang
dapat didapatkan secara gratis, yaitu dengan men-download library tersebut pada alamat berikut: -
WinPcap ( http://www.winpcap.org )
-
Cygwin Runtime ( sudah termasuk di installer sipp2.0.1)
Setelah mendapatkan library yang diperlukan, maka prosedur testing dapat dila
208 -
Download SIPp 2.0.1 windows binary (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). SIPp terdiri dari dua bagian, User Agent Client (UAC) dan User Agent Server (UAS). UAC berarti skenario uji coba berasal dari client. Sedangkan UAS berarti skenari uji coba sudah ditetapkan pada server. Perintah untuk menjalankan SIPp dengan skenario server adalah : C:\Program Files\Sipp\sipp -sn uas Perintah untuk menjalankan SIPp dengan skenario client (uac) adalah : C:\Program Files\Sipp\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 dikonfiugrasi untuk dapat mengenali data yang akan dikirim. Konfigurasi yang diperlukan adalah : >vi /etc/asterisk/sip.conf
Tambahkan line berikut : [sipp] type=friend context=internal host=192.168.1.20 port=6000
209 user=sipp canreinvite=no disallow=all allow=ulaw
>vi /etc/asterisk/extension.conf Tambahkan Line Berikut [internal] ; extension dummy hanya buat testing exten => 2000,1,Answer exten => 2000,2,MYSQL(Connect connid localhost root root binus) exten => 2005,3,MYSQL(Query resultid ${connid} select\ *\ from master_mahasiswa where nimhs=’0800123456’\ and\ password=’123456’) exten => 2000,4,MYSQL(Fetch fetchid ${resultid} temp) exten => 2000,5,MYSQL(Clear ${resultid}) exten => 2000,6,MYSQL(Disconnect ${connid}) exten => 2000,7,SayDigits(${temp}) exten => 2000,8,HangUp() Untuk uji coba pertama, skenario ditetapkan pada server (UAS) dengan 10 telepon per detik. Nomor yang akan dihubungi adalah ekstension 2000. dengan mengubungi 2000, maka server akan mengakses database MYSQL dan membacakan hasil query.
210
Gambar 4.13 Hasil Testing Pertama Perintah untuk testing pertama: Sipp –sn uac –s 2005 192.168.28.4 –r 10 Dari hasil testing, didapatkan dalam waktu kurang lebih 10 menit, panggilan yang dikirim sebanyak 5998 panggilan. Dari 5998 panggilan, 5851 merupakan panggilan sukses (successful call) dan 147 merupakan panggilan gagal (failed call). Maka didapatkan perbandingan successful call terhadap failed call sebesar 5851 berbanding 147. Untuk uji coba kedua, skenario masih sama seperti uji coba pertama, tetapi jumlah panggilan ditingkatkan menjadi 20 panggilan per detik.
211
Gambar 4.14 Hasil Testing Kedua Perintah untuk testing kedua: Sipp –sn uac –s 2005 192.168.28.4 –r 20 Dari hasil testing, didapatkan dalam waktu kurang lebih 10 menit, panggilan yang dikirim sebanyak 12776 panggilan. Dari 12776 panggilan, 10469 merupakan panggilan sukses (successful call) dan 2307 merupakan panggilan gagal (failed call). Maka didapatkan perbandingan successful call terhadap failed call sebesar 10469 berbanding 2307.
4.7
Prosedur Operasional
4.7.1
Prosedur Operasional Softphone X-Lite Untuk dapat akses ke server, user harus terdaftar pada server. Untuk pendaftaran user baru, hanya admin yang mempunyai akses. Apabila user telah terdaftar, maka user hanya perlu melakukan konfigurasi pada X-Lite agar dapat mengakses Call Center system.
212
Gambar 4.15 Menu Option X-lite
Tahap awal pada konfigurasi X-lite adalah dengan mengisi SIP Account Settings dengan menekan tombol ∇ atau dengan klik kanan mouse pada X-lite.
213
Gambar 4.16 SIP Accounts
Setelah itu akan muncul window SIP Accounts baru. Lalu tekan tombol Add untuk menambahkan account baru atau tekan tombol Remove untuk menghapus account lama dan diteruskan dengan menekan tombol Add. User juga dapat mengganti properties account lama dengan menekan tombol properties, lalu mengisi properties yang baru.
214
Gambar 4.17 Properties of Account1
Setelah menekan tombol Add, maka akan muncul window Properties off Account1. Pada window ini terdapat tab Account, Voicemail, Topology, Presence, dan Advance. User hanya perlu melakukan konfigurasi pada tab Account saja, sedangkan tab lainnya mengikuti konfigurasi default pada X-lite. Pada tab Account, user mengisi: 1. Display Name dengan nama yang ingin ditampilkan apabila user menelpon user lain.
215 2. User name dengan kode user yang telah terdaftar pada server. 3. Password dengan kode secret account user pada server. 4. Authorization user name dengan kode user yang telah terdaftar pada server. 5. Domain dengan IP address server Asterisk. Untuk Domain Proxy dan Dialing plan mengikuti mengikuti konfigurasi default X-lite. Setelah semuanya telah terisi, maka user harus menekan tombol OK atau Apply untuk menerapkan konfigurasi SIP Account pada X-lite, atau tombol Cancel untuk membatalkan konfigurasi yang telah diisi sebelumnya.
Gambar 4.18 SIP Accounts yang Telah Terisi
Setelah menekan tombol OK, maka user akan kembali ke window SIP Accounts yang telah terisi dengan konfigurasi yang telah diisi pada Properties of Account1. Lalu diakhiri dengan menekan tombol close. Setelah itu X-lite akan melakukan registering ke server Asterisk.
216
Gambar 4.19 Registration Error
Pesan Registration error : 408 – Request Timeout akan muncul apabila server Asterisk sedang tidak aktif atau nomor IP address yang dimasukkan pada SIP Account salah.
217
Gambar 4.20 Registration error
Apabila user memasukkan user name atau password yang tidak sesuai dengan user name dan password pada server, maka akan muncul pesan kesalahan Registration error 403 – Forbidden (Bad authentication).
218
Gambar 4.21 Authentication Sukses
Apabila user name dan password yang dimasukkan benar, maka akan muncul pesan Ready dan juga menampilkan nama user.
219 4.7.2
Prosedur Operasional Call Center untuk Guest User
Gambar 4.22 Flowchart Menu Utama User dapat menghubungi Call Center dengan men-dial nomor yang telah ditetapkan. Setelah terhubung maka user akan masuk ke menu bahasa dimana akan terdengar suara “Selamat datang di layanan Binus Call Center. Untuk layanan Customer Service tekan 1, untuk akses sebagai mahasiswa tekan 2, untuk akses sebagai dosen tekan 3”.
220
Gambar 4.23 Flowchart Customer Service Bila user menekan 1, maka user akan langsung terhubung ke bagian customer service. Apabila user menghubungi customer service pada hari Senin sampai dengan Jum’at pada pukul 07.00 sampai dengan 21.00 dan hari Sabtu pada pukul 07.00 sampai dengan 18.00, maka customer service akan langsung melayani user. Bila user menghubungi customer service diluar hari dan jam tersebut, maka user akan langsung terhubung ke layanan voice mail. User dapat meninggalkan pesan lalu diakhiri dengan tanda pagar (#) atau langsung menutup telepon. Pesan ini nantinya akan terkirim ke email customer service dan nantinya akan direspon dengan customer service menghubungi user yang bersangkutan.
221 4.7.3
Prosedur Operasional Call Center untuk User Mahasiswa
Gambar 4.24 Flowchart Login Mahasiswa Apabila user adalah mahasiswa, maka user dapat mendapatkan berbagai informasi seperti nilai, history IPS dan IPK, jadwal kuliah, jadwal ujian, status keuangan, dan lainnya dengan menekan dialpad 2 pada menu utama. Setelah menekan 2, maka user akan diminta untuk memasukkan NIM lalu diakhiri dengan tanda pagar dan password yang diakhiri dengan tanda pagar. Apabila NIM dan password yang dimasukkan sesuai dengan NIM dan password yang terdapat pada database server, maka user akan masuk ke menu mahasiswa. Sebaliknya apabila NIM dan password salah, maka akan terdengar suara “NIM dan password yang Anda masukkan salah” dan user harus memasukkan NIM dan password kembali. Setelah masuk ke menu utama sebagai mahasiswa, user diberikan beberapa pilihan menu lain yaitu:
1. Untuk informasi nilai tekan 1.
222
Gambar 4.25 Flowchart Menu Mahasiswa Apabila user menekan 1, maka akan dibacakan lagi beberapa menu nilai antara lain: 1.1. Nilai praktikum dan teori semester berjalan dengan menekan 1.
Gambar 4.26 Flowchat Nilai Teori dan Praktikum Semester Berjalan
223 Apabila pada database data nilai pada semester berjalan belum tersedia, maka akan dibacakan “Nilai Anda pada semester ini belum tersedia” dan user akan dibacakan menu nilai kembali. Sebaliknya apabila data nilai pada semester berjalan tersedia, maka akan dibacakan nilai praktikum dan teori semester berjalan dengan format “Nilai Anda pada semester A adalah kode matakuliah B, C, D sks, TM E, UTS F, UAS G, praktikum H, nilai akhir I, grade J”, dan diikuti dengan dibacakannya menu tambahan seperti menekan dialpad 1 untuk mengulang, 2 untuk kembali ke menu sebelumnya, dan 9 untuk keluar. Nilai praktikum akan dibacakan bila bobot sks praktikumnya tidak sama dengan nol. Keterangan: A = semester berjalan B = kode matakuliah C = nama matakuliah D = bobot sks E = nilai Tugas Mandiri (TM) F = nilai Ujian Tengah Semester (UTS) G = nilai Ujian Akhir Semester (UAS) H = nilai praktikum I = nilai akhir J = grade yang didapat berdasarkan nilai akhir
224 1.2. Nilai Lembar Hasil Studi Semester (LHSS) dengan menekan 2.
Gambar 4.27 Flowchart Nilai LHSS
225 Dengan menekan dialpad 2, maka akan dibacakan menu LHSS, mulai dari LHSS semester reguler hingga LHSS semester pendek. Untuk pembacaan menu LHSS semester reguler dengan menekan 1, menu akan dibacakan secara berurut mulai dari semester awal hingga satu semester sebelum semester berjalan. Begitu juga dengan menu LHSS semester pendek dengan menekan 2, pembacaan menu akan berurut mulai dari semester awal hingga satu semester terakhir sebelum semester berjalan. Adapun format pembacaan nilai LHSS adalah “Nilai Anda untuk semester A Kode Matakuliah B, C, D sks adalah TM E, UTS F, UAS G, Praktikum H, Akhir I, Nilai Akhir J”. Nilai praktikum akan dibacakan bila bobot sks praktikumnya tidak sama dengan nol. Setelah itu, user akan diberikan 3 menu tambahan yaitu untuk mengulang tekan 1, untuk kembali ke menu sebelumnya tekan 2, dan untuk keluar dari layanan tekan 9. Keterangan: A = semester yang dipilih B = kode matakuliah C = nama matakuliah D = bobot sks E = nilai Tugas Mandiri (TM) F = nilai Ujian Tengah Semester (UTS) G = nilai Ujian Akhir Semester (UAS) H = nilai praktikum
226 I = nilai akhir J = grade yang didapat berdasarkan nilai akhir
1.3. History Indeks Prestasi Semester (IPS) dan Indeks Prestasi Kumulatif (IPK) dengan menekan 3.
Gambar 4.28 Flowchart Histori IPS dan IPK Histori Indeks Prestasi Semester (IPS) dan Indeks Prestasi Kumulatif (IPK) akan dibacakan secara berurut dari semester awal hingga semester akhir yang telah lulus ditempuh. Contoh pembacaan histori IPS dan IPK adalah “Histori indeks prestasi semester dan indeks prestasi kumulatif Anda untuk semester genap 2006 adalah IPS 3,2; IPK 3,5; Sks Semester 24; Sks Kumulatif 112.
227 1.4. Kembali ke menu sebelumnya dengan menekan 9.
Gambar 4.29 Flowchart Kembali ke Menu Mahasiswa Dengan menekan 9 pada menu nilai, maka user akan dibacakan menu nilai kembali.
2. Untuk informasi jadwal kuliah tekan 2.
Gambar 4.30 Flowchart Menu Jadwal Kuliah
228 Dengan menekan 2 pada menu mahasiswa, maka IVR akan merespon dengan pembacaan menu jadwal kuliah, antara lain: 2.1 Untuk informasi jadwal kuliah teori tekan 1
Gambar 4.31 Flowchart Jadwal Kuliah Teori Dengan menekan tombol 1 pada menu jadwal kuliah, maka user akan mengakses informasi jadwal kuliah teori. Jadwal kuliah teori hanya akan dibacakan jika pada database datanya sudah tersedia. Jika data belum tersedia, maka IVR akan membacakan kembali menu jadwal kuliah. Format pembacaan jadwal kuliah teori adalah “Jadwal kuliah teori Anda semester ini adalah kode matakuliah A, B, C sks, kelas D, hari E, jam F sampai dengan G, ruang H”.
229 Keterangan: A = kode matakuliah B = nama matakuliah C = bobot sks D = nama kelas E = hari jadwal kuliah F = jam mulai kuliah G = jam akhir kuliah H = ruangan tempat kuliah Setelah selesai pembacaan jadwal kuliah, maka IVR akan memberikan 3 pilihan lagi yaitu tekan 1 untuk mengulang pembacaan jadwal kuliah teori, tekan 2 untuk kembali ke menu sebelumnya yaitu menu jadwal kuliah, atau tekan 9 untuk keluar dari layanan.
230 2.2 Untuk informasi jadwal kuliah praktikum tekan 2
Gambar 4.32 Flowchart Jadwal Kuliah Praktikum Dengan menekan tombol 2 pada menu jadwal kuliah, maka user akan mengakses informasi jadwal kuliah praktikum. Jadwal kuliah praktikum hanya akan dibacakan jika pada database datanya sudah tersedia. Jika data belum tersedia, maka IVR akan memberitahu jadwal kuliah belum tersedia dan membacakan kembali menu jadwal kuliah. Format pembacaan jadwal kuliah praktikum adalah “Jadwal kuliah praktikum Anda semester ini adalah kode matakuliah A, B, C sks, kelas D, hari E, jam F sampai dengan G, ruang H, no kursi I”. Keterangan: A = kode matakuliah
231 B = nama matakuliah C = bobot sks D = nama kelas E = hari jadwal kuliah F = jam mulai kuliah G = jam akhir kuliah H = ruangan tempat kuliah I = nomor tempat duduk Setelah selesai pembacaan jadwal praktikum, maka IVR akan memberikan 3 pilihan lagi yaitu tekan 1 untuk mengulang pembacaan jadwal praktikum teori, tekan 2 untuk kembali ke menu sebelumnya yaitu menu jadwal kuliah, atau tekan 9 untuk keluar dari layanan.
2.3 Untuk informasi jadwal kuliah pengganti tekan 3
Gambar 4.33 Flowchart Jadwal Kuliah Pengganti Dengan menekan tombol 3 pada menu jadwal kuliah, maka user akan mengakses informasi jadwal kuliah pengganti. Jadwal kuliah pengganti
232 hanya akan dibacakan jika pada database datanya sudah tersedia. Jika data belum tersedia, maka IVR akan memberitahu jadwal kuliah pengganti belum tersedia dan membacakan kembali menu jadwal kuliah. Format pembacaan jadwal kuliah pengganti adalah “Jadwal kuliah pengganti Anda semester ini adalah kode matakuliah A, B, C sks, kelas D, hari E, jam F sampai dengan G, ruang H”. Keterangan: A = kode matakuliah B = nama matakuliah C = bobot sks D = nama kelas E = hari jadwal kuliah F = jam mulai kuliah G = jam akhir kuliah H = ruangan tempat kuliah Setelah selesai pembacaan jadwal kuliah, maka IVR akan memberikan 3 pilihan lagi yaitu tekan 1 untuk mengulang pembacaan jadwal kuliah pengganti, tekan 2 untuk kembali ke menu sebelumnya yaitu menu jadwal kuliah, atau tekan 9 untuk keluar dari layanan.
2.4 Untuk kembali ke menu sebelumnya tekan 9
233
Gambar 4.34 Flowchart Kembali ke Menu Mahasiswa Dengan menekan 9, maka user akan dibacakan kembali menu mahasiswa.
3. Untuk informasi jadwal ujian tekan 3.
Gambar 4.35 Flowchart Menu Jadwal Ujian
234 Dengan menekan 3 pada menu mahasiswa, maka user dapat mengakses menu jadwal ujian. Beberapa menu jadwal ujian adalah 3.1 Untuk informasi jadwal ujian teori tekan 1
Gambar 4.36 Flowchart Jadwal Ujian Teori Dengan menekan tombol 1 pada menu jadwal ujian, maka user akan mengakses informasi jadwal ujian teori. Jadwal ujian teori hanya akan dibacakan jika pada database datanya sudah tersedia. Jika data belum tersedia, maka IVR akan membacakan kembali menu jadwal ujian. Format pembacaan jadwal ujian teori adalah “Jadwal ujian A Anda semester ini adalah kode matakuliah B, C, D sks, kelas E, hari F, jam G sampai dengan H, ruang I, no kursi J”.
235 Keterangan: A = UTS (Ujian Tengah Semester) atau UAS (Ujian Akhir Semester) B = kode matakuliah C = nama matakuliah D = bobot sks E = nama kelas F = hari jadwal kuliah G = jam mulai kuliah H = jam akhir kuliah I = ruangan tempat kuliah J = nomor tempat duduk Setelah selesai pembacaan jadwal ujian, maka IVR akan memberikan 3 pilihan lagi yaitu tekan 1 untuk mengulang pembacaan jadwal ujian teori, tekan 2 untuk kembali ke menu sebelumnya yaitu menu jadwal ujian, atau tekan 9 untuk keluar dari layanan.
236 3.2 Untuk informasi jadwal ujian praktikum tekan 2
Gambar 4.37 Flowchart Jadwal Ujian Praktikum Dengan menekan tombol 2 pada menu jadwal ujian, maka user akan mengakses informasi jadwal ujian praktikum. Jadwal ujian praktikum hanya akan dibacakan jika pada database datanya sudah tersedia. Jika data belum tersedia, maka IVR akan membacakan kembali menu jadwal ujian. Format pembacaan jadwal ujian praktikum adalah “Jadwal ujian A Anda semester ini adalah kode matakuliah B, C, D sks, kelas E, hari F, jam G sampai dengan H, ruang I, no kursi J”. Keterangan: A = UTP (Ujian Tengah Praktikum) atau UAP (Ujian Akhir Praktikum) B = kode matakuliah C = nama matakuliah D = bobot sks
237 E = nama kelas F = hari jadwal kuliah G = jam mulai kuliah H = jam akhir kuliah I = ruangan tempat kuliah J = no tempat duduk Setelah selesai pembacaan jadwal ujian, maka IVR akan memberikan 3 pilihan lagi yaitu tekan 1 untuk mengulang pembacaan jadwal ujian praktikum, tekan 2 untuk kembali ke menu sebelumnya yaitu menu jadwal ujian, atau tekan 9 untuk keluar dari layanan.
3.3 Untuk informasi jadwal ujian pengganti tekan 3
Gambar 4.38 Flowchart Jadwal Ujian Pengganti Dengan menekan tombol 3 pada menu jadwal ujian, maka user akan mengakses informasi jadwal ujian pengganti. Jadwal ujian pengganti hanya akan dibacakan jika pada database datanya sudah tersedia. Jika
238 data belum tersedia, maka IVR akan membacakan kembali menu jadwal ujian. Format pembacaan jadwal ujian pengganti adalah “Jadwal ujian pengganti A Anda semester ini adalah kode matakuliah B, C, D sks, kelas E, hari F, jam G sampai dengan H, ruang I, no kursi J”. Keterangan: A = UTS (Ujian Tengah Semester) atau UAS (Ujian Akhir Semester) B = kode matakuliah C = nama matakuliah D = bobot sks E = nama kelas F = hari jadwal kuliah G = jam mulai kuliah H = jam akhir kuliah I = ruangan tempat kuliah J = no tempat duduk Setelah selesai pembacaan jadwal ujian, maka IVR akan memberikan 3 pilihan lagi yaitu tekan 1 untuk mengulang pembacaan jadwal ujian pengganti, tekan 2 untuk kembali ke menu sebelumnya yaitu menu jadwal ujian, atau tekan 9 untuk keluar dari layanan.
3.4 Untuk kembali ke menu sebelumnya tekan 9
239
Gambar 4.39 Flowchart Kembali ke Menu Mahasiswa Dengan menekan tombol 9 pada menu jadwal ujian, maka IVR akan membacakan kembali menu mahasiswa.
4. Untuk informasi keuangan tekan 4.
240
Gambar 4.40 Flowchart Menu Keuangan Penekanan tombol 1 pada menu mahasiswa, akan membuat IVR membacakan menu keuangan. Menu keuangan terdiri dari: 4.1 Untuk mengetahui status tagihan tekan 1
Gambar 4.41 Flowchart Status Tagihan Dengan menekan 1 pada menu keuangan, user akan dibacakan 2 menu status tagihan yang dikategorikan berdasarkan semester, yaitu:
4.1.1 Untuk status tagihan semester reguler tekan 1
241
Gambar 4.42 Flowchart Status Tagihan Semester Reguler Status tagihan semester reguler akan dibacakan apabila user menekan 1 pada menu status tagihan. Setelah menekan 1, maka user akan memilih informasi status tagihan semester berapa yang diinginkan. Pemilihan semester bedasarkan semester pertama hingga semester terakhir masing-masing user. Pembacaan status tagihan memiliki format: “Status tagihan Anda untuk semester A adalah tagihan B sebesar C Rupiah, pada tanggal D.” Keterangan : A = semester yang dipilih B = jenis tagihan, dapat berupa tagihan SKS, BP3, dan DP3 C = besarnya tagihan, contoh pengucapan : satu juta tiga ratus ribu D = tanggal pembayaran tagihan dengan autodebet Setelah selesai pembacaan informasi tagihan semester reguler, maka user akan diberikan beberapa pilihan, yaitu untuk mengulang tekan 1,
242 untuk kembali ke menu sebelumnya tekan 2, untuk keluar dari layanan tekan 9. 4.1.2 Untuk status tagihan semester pendek tekan 2
Gambar 4.43 Flowchart Status Tagihan Semester Pendek Status tagihan semester pendek akan dibacakan apabila user menekan 2 pada menu status tagihan. Setelah menekan 2, maka user akan memilih informasi status tagihan semester pendek berapa yang diinginkan. Pemilihan semester pendek bedasarkan semester pendek pertama hingga semester pedek terakhir masing-masing user yang terdaftar. Pembacaan status tagihan memiliki format: “Status tagihan Anda untuk semester pendek A adalah tagihan B sebesar C Rupiah, pada tanggal D.” Keterangan : A = semester pendek yang dipilih, misal 2004 B = jenis tagihan SKS C = besarnya tagihan, contoh pengucapan : satu juta tiga ratus ribu
243 D = tanggal pembayaran tagihan dengan autodebet Setelah selesai pembacaan informasi tagihan semester pendek, maka user akan diberikan beberapa pilihan, yaitu untuk mengulang tekan 1, untuk kembali ke menu sebelumnya tekan 2, untuk keluar dari layanan tekan 9.
4.2 Untuk mengetahui status pembayaran autodebet tekan 2
Gambar 4.44 Flowchart Status Pembayaran Autodebet Dengan menekan 2 pada menu keuangan, user akan dibacakan 2 menu status autodebet yang dikategorikan berdasarkan semester, yaitu:
4.2.1 untuk status autodebet semester reguler tekan 1
244
Gambar 4.45 Flowchart Status Autodebet Semester Reguler
245 Apabila user memilih status autodebet semester reguler, maka sistem akan meminta spesifikasi semester yang diinginkan. Untuk spesifikasi semester reguler, IVR akan membacakan menu pemilihan semester reguler, mulai dari semester awal hingga semester terakhir user. Setelah pemilihan semester yang diinginkan, maka sistem akan mengecek ke database, apakah informasi yang bersangkutan tersedia pada database. Apabila tersedia, maka informasi status autodebet akan dibacakan dengan format: “Status autodebet Anda untuk semester A adalah tagihan B sebesar C Rupiah pada tanggal D, E”. Keterangan: A = semester reguler yang dipilih B = jenis tagihan, berupa SKS, BP3, atau DP3 C = besar tagihan dalam rupiah D = tanggal proses E = keterangan apakah proses autodebet sukses atau gagal Setelah selesai pembacaan informasi status autodebet semester reguler, maka user akan diberikan beberapa pilihan, yaitu untuk mengulang tekan 1, untuk kembali ke menu sebelumnya tekan 2, untuk keluar dari layanan tekan 9. Setelah pembacaan ini, apabila user menekan 1, maka user akan dibacakan informasi status autodebet kembali. Bila user menekan 2, maka user dapat memilih semester reguler lain yang diinginkan.
246 4.2.2 untuk status autodebet semester pendek tekan 2
Gambar 4.46 Flowchart Status Autodebet Semester Pendek Apabila user memilih status autodebet semester pendek, maka sistem akan meminta spesifikasi semester pendek yang diinginkan. Untuk spesifikasi semester pendek, IVR akan membacakan menu pemilihan semester pendek, mulai dari semester pendek awal hingga semester pedek terakhir user.
Setelah pemilihan semester pendek yang
diinginkan, maka sistem akan mengecek ke database, apakah informasi yang diinginkan tersedia pada database. Apabila tersedia, maka informasi status autodebet akan dibacakan dengan format:
“Status
247 autodebet Anda untuk semester pendek A adalah tagihan B sebesar C Rupiah pada tanggal D, E”. Keterangan: A = semester pendek yang dipilih B = jenis tagihan, berupa SKS, BP3, atau DP3 C = besar tagihan dalam rupiah D = tanggal proses E = keterangan apakah proses autodebet sukses atau gagal Setelah selesai pembacaan informasi status autodebet semester pendek, maka user akan diberikan beberapa pilihan, yaitu untuk mengulang tekan 1, untuk kembali ke menu sebelumnya tekan 2, untuk keluar dari layanan tekan 9. Setelah pembacaan ini, apabila user menekan 1, maka user akan dibacakan informasi status autodebet kembali. Bila user menekan 2, maka user dapat memilih semester reguler lain yang diinginkan.
248 4.3 Untuk kembali ke menu sebelumnya tekan 9
Gambar 4.47 Flowchart Kembali ke Menu Mahasiswa Untuk kembali ke menu mahasiswa pada menu informasi keuangan, user hanya perlu menekan angka 9 pada saat pembacaan menu keuangan.
5. Untuk keluar dari layanan tekan 9.
249 Gambar 4.48 Flowchart Keluar dari Layanan Pada menu mahasiswa, user juga diberikan pilihan untuk keluar dari layanan dengan penekanan tombol 9. Pada saat tombol ditekan, maka IVR akan merespon dengan pengucapan terima kasih karena telah menghubungi Call Center. Dan setelah itu, telepon akan terputus.
4.7.4
Prosedur Operasional Call Center untuk User Dosen
Gambar 4.49 Flowchart Login Dosen Apabila user ingin mengakses sebagai dosen, maka yang pertama kali dilakukan adalah memilih menu akses sebagai dosen pada menu utama dengan menekan dialpad 3. Setelah itu, user akan diminta memasukkan kode dosen. Kode dosen yang dimasukkan hanya angka saja. Misal kode dosen D2030, maka kode yang harus dimasukkan adalah 2030. Setelah itu, user akan diminta untuk
250 memasukkan password. Apabila kode dosen dan password yang dimasukkan sesuai dengan yang ada di database, maka user akan dibacakan menu dosen. Apabila tidak sesuai, maka user akan diberitahu kode dan password yang dimasukkan salah, dan diminta untuk memasukkan kembali. Informasi yang dapat didapatkan pada IVR untuk user dosen adalah jadwal mengajar dan jadwal kuliah pengganti.
Gambar 4.50 Flowchart Jadwal Mengajar
251 Untuk informasi jadwal mengajar, dosen harus menekan dialpad 1 pada menu dosen. Setelah itu, sistem akan membacakan jadwal yang tersedia berdasarkan semester yang sedang berjalan. Apabila pada semester berjalan, jadwal mengajar user belum tersedia, maka sistem akan memberitahukan bahwa jadwal mengajar belum tersedia dan membacakan kembali menu dosen. Format pembacaan jadwal mengajar adalah “Jadwal mengajar Anda pada semester ini adalah Kode Matakuliah A, B, C sks, kelas D, hari E, jam F sampai dengan G, ruang H.”. Keterangan: A = kode mata kuliah B = nama mata kuliah C = bobot sks D = nama kelas E = hari mengajar F = jam mulai mengajar G = jam selesai mengajar H = kode ruangan tempat mengajar
252
Gambar 4.51 Flowchart Jadwal Kuliah Pengganti Dosen Dengan penekanan dialpad 2 pada menu dosen, maka user akan mengakses jadwal kuliah pengganti. Apabila jadwal kuliah pengganti tersedia maka jadwal akan dibacakan. Apabila belum tersedia maka sistem akan memberitahukan bahwa jadwal kuliah pengganti belum tersedia. Format pembacaan jadwal kuliah
253 pengganti adalah “Jadwal kuliah pengganti Anda adalah Kode Matakuliah A, B, C sks, kelas D, hari E, jam F sampai dengan G, ruang H.”. Keterangan: A = kode mata kuliah B = nama mata kuliah C = bobot sks D = nama kelas E = hari kuliah pengganti F = jam mulai G = jam selesai H = kode ruang
4.7.5
Prosedur Operasional Voicemail untuk Operator Untuk mendengarkan voicemail, operator harus menghubungi nomor tertentu yang sudah disediakan oleh sistem pada waktu pendaftaran. Nomor yang harus dihubungi berawalan 9. Misal, nomor extension operator 1122, maka nomor yang harus dihubungi untuk mengecek voicemail adalah 91122. Setelah terhubung ke layanan voicemail, operator harus memasukkan password. Password yang harus dimasukkan yaitu password pada saat pendaftaran user.
254
Gambar 4.52 Flowchart Operasional Voicemail
Apabila password yang dimasukkan benar, maka operator akan dibacakan menu voicemail. Jika ada pesan baru, maka sistem akan memberitahukan berapa banyak pesan baru dan berapa pesan lama. Dan sebaliknya, jika tidak ada pesan baru, maka sistem hanya memberitahu berapa banyak pesan lama. Setelah itu,
255 operator diberikan 4 pilihan yaitu tekan 1 untuk pembacaan pesan, tekan 2 untuk ganti folder, tekan 0 untuk mailbox option. Untuk pembacaan pesan dengan menekan 1, setelah selesai pembacaan pesan, operator diberikan lagi beberapa pilihan yaitu: 1. tekan 3 untuk advance option Sub menu dari advance option adalah tekan 1 untuk membalas pesan, tekan 3 untuk pembacaan ulang, dan tekan * untuk kembali ke menu sebelumnya. 2. tekan 4 untuk pesan sebelumnya Dengan memilih menu ini, maka operator akan dibacakan pesan sebelumnya. 3. tekan 5 untuk mengulang Dengan memilih menu ini, maka pesan akan dibacakan kembali. 4. tekan 6 untuk pesan selanjutnya Dengan memilih menu ini, maka operator akan dibacakan pesan selanjutnya. 5. tekan 7 untuk menghapus pesan Dengan memilih menu ini, maka pesan yang telah dibaca akan dihapus. 6. tekan 9 untuk menyimpan pesan Sub-menu untuk menyimpan pesan adalah menu pemilihan folder dimanakah pesan tersebut akan disimpan. Pilihan folder yang disediakan sama seperti pemilihan menu ganti folder pada menu utama. 7. tekan * untuk bantuan
256 Bantuan yang akan diberikan yaitu pembacaan kembali menu utama. 8. tekan # untuk keluar Dengan menekan #, maka operator akan keluar dari layanan mailbox.
Untuk pergantian folder dengan menekan 2, operator akan diberikan pilihan, yaitu: 1. tekan 0 untuk folder pesan baru 2. tekan 1 untuk folder pesan lama 3. tekan 2 untuk folder work 4. tekan 3 untuk folder family 5. tekan 4 untuk folder friends 6. tekan # untuk batal Secara default folder yang dipilih adalah folder pesan baru jika operator memiliki pesan baru. Dengan pergantian folder, maka operator dapat mendengarkan isi pesan pada folder tersebut.
Mailbox option yang disedikan dengan penekanan tombol 0, memberikan operator beberapa menu pilihan yaitu: 1. tekan 1 untuk merekam unavailable message Unavailable message merupakan pesan yang akan dibacakan apabila panggilan tidak diangkat. 2. tekan 2 untuk merekam busy message
257 Busy message merupakan pesan yang akan dibacakan apabila panggilan tidak dapat masuk karena telepon sedang dipakai. 3. tekan 3 untuk merekam nama 4. tekan 4 untuk merekam temporary greeting 5. Temporary greeting merupakan pesan pembuka yang didengarkan oleh penelpon saat meninggalkan pesan. 6. tekan 5 untuk mengganti password Operator akan diminta untuk memasukkan password baru dan diakhiri dengan tanda #. 7. tekan * untuk kembali ke menu sebelumnya Dengan menekan *, maka operator akan kembali ke menu utama.
4.7.6
Prosedur Operasional Asterisk Untuk menjalankan asterisk, admin harus login sebagai root. Perintah untuk menjalankan asterisk harus dijalankan pada CLI (Command Line Interface). Macam-macam perintah pengoperasian asterisk: 1. > asterisk Perintah asterisk tanpa parameter apapun akan menjalankan asterisk pada background. 2. > asterisk –r Perintah asterisk dengan parameter –r akan menjalankan asterisk dengan mode console CLI. 3. > asterisk –cvvvv
258 Perintah asterisk dengan parameter –cvvvv akan menjalan asterisk dengan mode console dengan tingkat verbosity. Semakin banyak parameter v (verbose) yang ditambahkan, maka semakin detail proses yang akan ditampilkan. Beberapa perintah yang digunakan pada console asterisk adalah 1. stop now, untuk menghentikan program secara langsung 2. restart now, untuk me-reload asterisk 3. dialplan reload, untuk me-reload IVR 4. sip reload, untuk me-reload SIP account 5. help, untuk menampilkan perintah lainnya
4.7.7 Prosedur Operasional Website Pertama kali admin harus menjalankan browser yang akan digunakan. Kemudian admin menuliskan alamat website atau url pada address bar pada browser tersebut. Setelah admin berhasil membuka website, maka akan tampil halaman berikut:
259
Gambar 4.53 Layar Halaman Login Halaman login merupakan halaman utama yang akan ditampilkan dalam website. Halaman ini digunakan untuk memasukkan nama admin berserta passwordnya. Bila proses login tidak berhasil, maka akan ditampilkan pesan kesalahan sebagai berikut.
Gambar 4.54 Layar Pesan Kesalahan Login Pesan kesalahan ini muncul apabila admin menekan tombol submit tanpa mengisi admin name atau password terlebih dahulu.
260
Gambar 4.55 Layar Login Gagal Halaman ini ditampilkan jika admin memasukkan admin name atau password yang tidak sesuai dengan yang terdaftar pada database.
Gambar 4.56 Layar Halaman Home Halaman home merupakan halaman pertama yang diakses oleh admin apabila proses login berhasil. Pada halaman ini ditampilkan menu-menu yang terdiri dari: 1. HOME Menu ini akan menampilkan halaman yang berisikan penjalasan singkat mengenai CDR (Call Detail Report).
261 2. ACCOUNT Menu ini akan menampilkan halaman yang berisi data SIP account dan juga menumenu yang digunakan untuk merubah dan menghapus data account. 3. ADD NEW ACCOUNT Menu ini akan menampilkan halaman yang berfungsi untuk menambah data SIP account. 4. CATEGORY Menu ini akan menampilkan halaman yang berisi data category dan juga menu-menu yang digunakan untuk merubah dan menghapus data category. 5. ADD NEW CATEGORY Menu ini akan menampilkan halaman yang berfungsi untuk menambah data category. 6. CDR REPORT Menu ini akan menampilkan halaman yang berisi informasi CDR (Call Detail Report) yang disertakan dengan form pencarian secara mendetail. 7. CALLS COMPARE Menu ini akan menampilkan halaman yang berfungsi menampilkan informasi perbandingan telepon berdasarkan permintaan admin. 8. MONTHLY TRAFFIC Menu ini akan menampilkan halaman yang berisi informasi traffic telepon pada bulan tertentu yang digambarkan dengan grafik. 9. DAILY LOAD
262 Menu ini menampilkan halaman yang berisi durasi telepon pada hari tertentu yang digambarkan dengan grafik. 10. CHANGE PASSWORD Menu ini menampilkan halaman yang berfungsi untuk mengganti password admin. 11. LOGOUT Menu ini digunakan untuk keluar dari status login dan menampilkan halaman login admin.
Gambar 4.57 Layar Halaman Account Pada halaman Account ditampilkan data-data user yang telah terdaftar. Tiap halaman memuat maksimal 8 account. Selain itu, pada halaman ini juga terdapat fasilitas pencarian (searching) berdasarkan no extension, name, dan category. Apabila admin memilih pencarian berdasarkan no extension atau name, maka pilihan drop down untuk category di non-aktifkan. Sebaliknya, bila admin memilih pencarian berdasarkan category, maka pilihan drop down akan aktif dan field pengisian untuk searching di non-