PERCOBAAN 8
KONSEP CONTEXT DAN SETTING FITUR DENGAN ASTERISK
8.1. Tujuan :
Setelah melaksanakan praktikum ini mahasiswa diharapkan mampu :
Mengerti konsep pembuatan context pada konfigurasi Asterisk
Mengerti konsep Fitur Call Forward dan Call Pickup
Membuat pengesetan fitur-fitur di atas pada IP PBX
Membedakan grup-grup aplikasi berdasarkan context
Membuat Conference Room pada IP PBX
8.2. Prasyarat :
Pemahaman konsep Service Restriction Class
8.3. Peralatan : (masing-masing grup)
1 PC dengan OS Linux Debian (kernel 2.6.18 ke atas) yang terhubung dengan Router IP (untuk Server)
3 buah IP Phone (sebagai client)
1 PC dengan software X-Lite (sebagai client), terhubung dengan Router IP
8.4. Teori :
8.4.1. Review Feature PABX
Fitur-fitur yang diaplikasikan pada PABX bertujuan untuk memberikan kemudahan bagi pengguna (user) ekstensi untuk melakukan komunikasi antar mereka.
Dua buah fitur PABX yang bisa diaplikasikan pada IP PBX adalah Call Forward dan Call Pickup.
Gambar 8.1. Ilustrasi Call Pickup pada sebuah IP PBX Call Pickup
Call Pickup adalah sebuah fitur yang digunakan pada sistim PBX, di mana seorang user / client dapat mem-pick up panggilan yang ditujukan kepada client lain, jika handset dari client lain tersebut tidak segera diangkat.
Call Pickup banyak dijumpai pada perkantoran dengan sejumlah user yang berada di satu ruangan, di mana dalam ruangan tersebut terdapat banyak pesawat telepon. Call pickup juga bermanfaat untuk memudahkan penyampaian informasi yang bersifat segera.
Call pickup biasanya dilakukan oleh user-user yang berada di satu ruangan atau satu grup.
Mekanisme Call Pickup ditunjukkan pada gambar 8.1 di atas. Jika client 101 memanggil client 103, sementara client 103 tidak berada di tempat, maka pesawat 103 akan memperdengarkan ring tone. Client 104 yang berada di dekat pesawat 103 dapat mem-pickup panggilan tersebut dengan menekan sebuah kode akses, diikuti dengan nomor 103, selanjutnya terhubung dengan client 101. Akibatnya, client 101 akan dapat berkomunikasi dengan client 104, dan informasi yang akan disampaikan ke client 103
dapat dititipkan pada client 104. Yang dimaksud client dalam satu grup adalah clinet 103 dan 104. Artinya, mekanisme pickup sebuah panggilan hanya dapat diberlakukan dalam satu grup client penerima, sedangkan client pemanggil bisa berasal dari grup yang berbeda.
Call Forward
Call Forward adalah adalah sebuah fitur pada PABX, dimana seorang client dapat mem-forward panggilan ke dirinya, ke nomor telepon lain dimana dia akan berada. Call Forward ini bermanfaat terutama pada client yang banyak bergerak (moving), dan jarang menetap lama di sebuah tempat. Dengan adanya call forward ini, informasi yang akan disampaikan kepadanya tidak akan hilang, karena tempat dia berada bisa segera dijangkau.
Mekanisme Call Forward ditunjukkan pada gambar 8.2.
Gambar 8.2. Ilustrasi Call Forward di sebuah IP PBX
Client 102 akan pindah ke tempat di dekat pesawat 103. Jika sistim ini dilakukan pada PABX analog, maka client ini akan menekan kode akses, dilanjutkan dengan nomor telepon di mana dia akan pindah (dalam hal ini nomor 103). Namun pada IP PBX, client
tinggal melapor kepada admin untuk dibuatkan setting perpindahan ke nomor tujuan, jadi tidak perlu menekan kode akses tertentu. Saat ada panggilan (call) dari ekstensi 101, panggilan tersebut akan di-forward oleh IP PBX ke ekstensi 103, sehingga pemanggil dapat berkomunikasi dengan client 102 di nomor 103.
Berdasarkan tingkat urgensi-nya, Call forward dibedakan menjadi 2, yaitu Call Forward tanpa kondisi dan Call Forward dengan kondisi. Call Forward tanpa kondisi menunjukkan bahwa semua call ke nomor ekstensi tertentu akan di-forward kan langsung ke nomor yang lain. Jadi nomor ekstensi tujuan semula tidak pernah mendapat ring tone.
Sedangkan Call Forward dengan kondisi menunjukkan bahwa semua call, baru akan di- forward ke nomor yang lain setelah beberapa saat lamanya. Call Forward dengan kondisi ini memungkinkan client yang memiliki nomor ekstensi 102 akan menjawab call kalau dia berada di tempat asalnya, dan jika dia tidak ditempat, baru di-forward kan ke nomor tujuan yang lain (yang sudah di-set sebelumnya, misal 103). Pada aplikasi lanjut, Call Forward ini dapat ditambahkan dengan aplikasi lain, yaitu IVR untuk menjawab panggilan yang masuk dan me-rute kan panggilan tersebut ke nomor tertentu, atau dengan mekanisme Find Me Follow Me, di mana panggilan yang masuk ke sebuah nomor, di-forwardkan secara berurutan ke nomor-nomor yang sudah didaftarkan sebelumnya, sampai panggilan itu dapat mencapai tujuannya.
Conference
Conference merupakan fitur yang dimiliki oleh asterisk, dan pengaksesannya dilakukan dengan konfigurasi Dial Plan. Fitur Conference pada Asterisk dinamakan meetme, dan dikonfigurasi pada /etc/asterisk/meetme.conf.
Fitur Conference sangat bermanfaat jika diaplikasikan pada sebuah perusahaan, yang susah mengatur waktu pertemuan antar para karyawannya untuk duduk bersama di suatu ruangan. Untuk mengakses fitur conference ini, masing-masing karyawan yang akan mengikuti conference harus menghubungi nomor ekstensi tertentu (pada gambar 8.3 ditunjukkan sebagai nomor 2222). Nomor ini merupakan nomor untuk menjalankan aplikasi Conference Room, bukan nomor terminal. Setelah mencapai nomor tersebut, karyawan harus menekan password tertentu. Pemakaian password ini untuk menjaga
keamanan agar tidak sembarang orang bisa memasuki conference room dan mengikuti pertemuan yang tidak menjadi haknya.
Gambar 8.3. Ilustrasi Conference di sebuah IP PBX
8.4.2. Konsep Context
Context terdiri dari sekumpulan (grup) dari beberapa ekstensi. Di sebuah perusahaan, pengelompokan ekstensi-ekstensinya bisa dilakukan berdasarkan jenis kegiatannya, lokasinya atau jabatannya. Misalkan pada perusahaan sabun, ada grup marketing, grup sales, grup costumer service dan grup manajemen. Di Instansi Perguruan Tinggi Teknik, ada grup Jurusan Teknik Sipil, Jurusan Teknik Elektro, Jurusan Arsitektur, Jurusan Informatika dan sebagainya.
Tujuan pemakaian Context ini adalah untuk mengisolasi grup ekstensi yang tergabung di dalam context tersebut dengan grup ekstensi yang lain, sesuai dengan aplikasi yang dijalankan pada masing-masing grup tersebut. Sebagai contoh, grup sales diberi hak untuk menelepon ke semua nomor luar yang tercatat pada database kantor untuk menjual produk, sementara grup marketing diberi hak untuk mencari pasar dengan level yang lebih tinggi, sedangkan grup customer service menerima keluhan dari berbagai
user. Grup manajemen mempunyai wewenang mengeluarkan kebijakan dan memonitor kerja karyawan.
Gambar 8.4 Ilustrasi Konsep Pengelompokan ekstensi dengan Context
8.5. Prosedur
8.5.1. Percobaan Call Forward
1. Buat Data Account Extension untuk empat client yang tersedia (101 s/d 104), dengan meng-edit file konfigurasi sip. gedit /etc/astersik/sip.conf. Buat nama context masing-masing ekstensi sama dengan nama context di extensions.conf. Simpan hasilnya.
2. Untuk konfigurasi Dial Plan, lakukan masing-masing percobaan di bawah ini dengan mengedit file konfigurasi extensions. gedit /etc/asterisk/extensions.conf.
a. Call Forward Tanpa Kondisi
;dial antar ekstensi pada IP-PBX [nama_context]
exten => 101,1,Dial(SIP/101,20) exten => 101,2,Hangup
exten => 102,1,Dial(SIP/103,20) 102 di-forward ke 103 exten => 102,2,Hangup
exten => 103,1,Dial(SIP/103,20) exten => 103,2,Hangup
exten => 104,1,Dial(SIP/104,20) exten => 104,2,Hangup
b. Call Forward Dengan Kondisi
;dial antar ekstensi pada IP-PBX [nama_context]
exten => 101,1,Dial(SIP/101,20) exten => 101,2,Hangup
exten => 102,1,Dial(SIP/102,20) 102 di-forward ke 103 exten => 102,2,Dial(SIP/103,20) setelah 20 detik ring exten => 102,3,Hangup
exten => 103,1,Dial(SIP/103,20) exten => 103,2,Hangup
exten => 104,1,Dial(SIP/104,20) exten => 104,2,Hangup
3. Running Asterisk dengan :
/etc/init.d/asterisk restart lanjutkan dengan asterisk –r.
4. Lakukan komunikasi antar ekstensi seperti yang diminta pada bagian Analisa.
Analisa
1. Setelah setting Call Forward tanpa kondisi : Buat panggilan dari 101 ke 102, kemudian dari 104 ke 102. Amati apa yang terjadi ?
2. Ganti setting dengan Call Forward dengan Kondisi : Buat panggilan dari 101 ke 102, kemudian dari 104 ke 102. Amati apa yang terjadi ?
3. Cobalah mengganti ekstensi lain yang akan di-forward. Syntax apa yang perlu anda tambahkan ?
8.5.2. Percobaan Call Pickup
1. Masih menggunakan setting konfigurasi sip yang sama, dan nama cotext pada masing- masing ekstensi sama dengan nama context pada extensions.conf.
2. Untuk konfigurasi Dial Plan, lakukan percobaan di bawah ini dengan mengedit file konfigurasi extensions. gedit /etc/asterisk/extensions.conf.
;dial antar ekstensi pada IP-PBX [nama_context]
exten => 101,1,Dial(SIP/101,20) exten => 101,2,Hangup
exten => 102,1,Dial(SIP/102,20) exten => 102,2,Hangup
exten => 103,1,Dial(SIP/103,20) exten => 103,2,Hangup
exten => 104,1,Dial(SIP/104,20) exten => 104,2,Hangup
exten =>_9.,1,Pickup(${EXTEN:1}@nama_context) semua ekstensi dapat mem- pick up ekstensi yang sedang ring dengan menekan 9+nomor yang ring
3. Running Asterisk dengan :
/etc/init.d/asterisk restart lanjutkan dengan asterisk –r.
4. Lakukan komunikasi antar ekstensi seperti yang diminta pada bagian Analisa.
Analisa
1. Setelah setting Call Pickup : Buat panggilan dari 101 ke 102. Biarkan 102 berdering. Kemudian 103 mem-pickup 102 (dengan menekan kode akses 9 diikuti nomor 102). Amati apa yang terjadi ?
2. Pada pengamatan kedua, masih buat panggilan ke 102 dari 101, kemudian 104 mem-pickup panggilan tersebut. Amati apa yang terjadi.
3. Apa yang terjadi jika 103 dan 104 mem-pickup 102 secara bersamaan ?
4. Bedakan nama context untuk 103 dan 104 (lakukan peng-edit an di sip.conf dan di extensions.conf). Ubah setting pick dengan syntax berikut :
exten =>_8.,1,Pickup(${EXTEN:1})
5. Lakukan panggilan dari 101 ke 102. Coba pickup 102 dari 103 dengan menekan 8102). Ganti lakukan pickup dari 104, dengan menekan 8102. Amati apa yang terjadi ?
8.5.3. Percobaan Conference Call
Untuk mengimplementasikan aplikasi conference ini, syarat utama adalah harus ada modul zaptel yang sudah terinstall di server. Modul ini digunakan untuk mengkonfigurasi zaptel timer, dan gunakan ztdummy jika di server belum terpasang Digium card, ztdummy adalah perangkat zaptel dummy yang hanya menyediakan timer dan tidak menyediakan channel. Modul zaptel di-compile sebelum asterisk, untuk mendapatkan meetme.conf
Untuk mengecek apakah ztdummy sudah terinstall, gunakan lsmod, ketik :
$lsmod | grep zt
1. Masih menggunakan setting konfigurasi sip yang sama, dan nama cotext pada masing-masing ekstensi sama dengan nama context pada extensions.conf.
2. Carilah file konfigurasi meetme.conf. Buat ruangan (room) dalam meetme (dalam hal ini nomor ruangan = 1234). Edit pada /etc/asterisk/meetme.conf
[room]
conf =>1234 membuat ruang conference 1234
3. Untuk konfigurasi Dial Plan, edit extensions.conf dengan perintah gedit /etc/asterisk/extensions.conf. Kemudian ketikkan syntax di bawah ini.
;dial antar ekstensi pada IP-PBX [nama_context]
exten => 101,1,Dial(SIP/101,20) exten => 101,2,Hangup
exten => 102,1,Dial(SIP/102,20) exten => 102,2,Hangup
exten => 103,1,Dial(SIP/103,20) exten => 103,2,Hangup
exten => 104,1,Dial(SIP/104,20) exten => 104,2,Hangup
exten => 2222,1,Meetme(1234,5555) untuk mengikuti Conference call, client harus memanggil nomor 2222 dan memasukkan password 5555
3. Running Asterisk dengan :
/etc/init.d/asterisk restart lanjutkan dengan asterisk –r.
4. Lakukan komunikasi antar ekstensi seperti yang diminta pada bagian Analisa.
Analisa
1. Setelah setting Conference Call : Buat panggilan ke 2222 dari semua ekstensi pada context yang sama. Jika sudah tersambung, tekan 5555 sebagai kode password. Lakukan komunikasi bersama-sama dari ke-empat client tadi.
2. Jika password yang dimasukkan salah, apa yang terjadi ?
3. Bagaimana cara dari masing-masing client mengakhiri pembicaraan ?
4. Coba modifikasi extensions.conf untuk conference di atas dengan syntax ini :
exten => 2222,1,Meetme(1234,p,5555)
5. Setelah running, lakukan panggilan masuk conference room. Coba salah satu client mengakhiri pembicaraan dengan menekan #. Apakah masih terhubung dengan conference room atau sudah keluar ?
8.5.4. Percobaan Konsep Context
1. Pada setting sip.conf, lakukan pengelompokan ekstensi sebagai berikut : 101 dan 102 terdaftar sebagai grup dari context “sales”.
103 dan 104 terdaftar sebagai grup dari context “marketing”.
2. Pada setting extensions.conf, ketik syntax di bawah ini :
[sales]
exten => 101,1,Dial(SIP/101,20) exten => 101,2,Hangup
exten => 102,1,Dial(SIP/102,20) exten => 102,2,Hangup
[marketing]
exten => 103,1,Dial(SIP/103,20) exten => 103,2,Hangup
exten => 104,1,Dial(SIP/104,20) exten => 104,2,Hangup
3. Running Asterisk dengan :
/etc/init.d/asterisk restart lanjutkan dengan asterisk –r.
4. Lakukan komunikasi antar ekstensi seperti yang diminta pada bagian Analisa
Analisa
1. Setelah setting selesai, buat panggilan dari 102 ke 101. Amati apakah panggilan tersebut berhasil.
2. Buat panggilan dari 103 ke 101. Apakah panggilan tersebut berhasil ? 3. Ulangi membuat panggilan dari 102 ke 104. Apakah berhasil ? Mengapa ?
4. Modifikasi setting pada extensions.conf di atas dengan menambahkan syntax include pada contex “sales”, seperti di bawah ini :
[sales]
exten => 101,1,Dial(SIP/101,20) exten => 101,2,Hangup
exten => 102,1,Dial(SIP/102,20) exten => 102,2,Hangup
include => marketing
Ulangi lagi langkah 3. Apakah berhasil ?
5. Apakah langkah 2 juga bisa diterapkan pada panggilan ini ? Mengapa tidak ? Lakukan modifikasi pada context “marketing”, supaya juga bisa melakukan panggilan ke ekstensi di context “sales”.
6. Apa fungsi syntax “include” di sini ?
8.6. Pertanyaan dan Tugas
Buat sebuah sistim yang mengimplementasikan fitur-fitur pada sebuah IP PBX. Aplikasi dari fitur-fitur tersebut adalah sebagai berikut :
a) IP PBX tersebut memiliki 2 context, yaitu context “dosen” dan “karyawan”.
b) Pada context “dosen”, diaplikasikan fitur Call Pickup untuk semua ekstensi, dan fitur Conference Call dengan nomor ruang 500 dan Password 123.
c) Pada context “karyawan”, diaplikasikan fitur Call Forward untuk nomor ekstensi 1002 ke 1004, fitur Call Pickup untuk semua ekstensi, dan fitur Conference Call dengan nomor ruang 400 dan Password 567.
d) Context “dosen” bisa mem-pickup nomor karyawan, tetapi tidak sebaliknya.
e) IP PBX tersebut memiliki 8 nomor ekstensi, 4 nomor ektensi untuk dosen, dan 4 nomor untuk karyawan.
f) Tuliskan konfigurasi sip.conf dan extensions.conf-nya serta meetme.conf secara lengkap.