VoIP: Conference Server di Asterisk
Conference call biasanya sangat menyakitkan di sistem PABX - tentunya itupun jika kita dapat mengkonfigurasinya dengan baik. Fasilitas conferencing komersial biasanya mudah digunakan tapi sangat mahal. Kita cukup beruntung karena Asterisk menjadi penolong dan menyediakan fasilitas conferencing yang murah tapi dapat di konfigurasi dengan mudah.
Pada dasarnya ada dua (2) langkah yang perlu dilakukan untuk mengkonfigurasi conferencing di Asterisk, yaitu,
- Membuat conference "room"
- Menambahkan "room" ke dialplan.
Mengkonfigurasi Ruang Conference MeetMe
Ruang conference di Asterisk di konfigurasi di /etc/asterisk/meetme.conf. Semua conference room harus terdaftar dibawah header [rooms]. Sintaks yang digunakan untuk mengkonfigurasi conference room adalah
conf => conference_number[,pin][,adminpin]
Contoh setup sebuah room conference dengan nomor 2500, dengan PIN 1234:
[rooms] conf => 2500,1234
Jika kita mengkonfigurasi beberapa room, ada baiknya diberi komentar / comment untuk mengingat nomor tersebut digunakan untuk conference siapa saja,
[rooms] ; tim marketing conf => 2500,1234 ; tim redaksi conf => 2501,5678
Saat ini tidak terlalu banyak berguna untuk menset PIN administrator, karena tidak ada kekuatan khusus yang dimiliki seorang administrator.
Ada beberapa option yang dapat digunakan, seperti,
m - Penelepon dapat mendengarkan tapi tidak dapat berbicara. t - Penelepon dapat berbicara tapi tidak dapat mendengarkan. p - Penelepon dapat keluar dari Conference dengan menekan tombol #.
Ada dua (2) option tambahan yang belum di implementasikan, yaitu,
s - Asterisk menjalankan menu ke user jika * ditekan. a - memberikan user hak administrator pada sebuah conference.
Mengkonfigurasi Dialplan Untuk Conference
Untuk mengkonfigurasi dialplan, kita perlu mengedit file /etc/asterisk/extensions.conf dan memasukan conference room yang kita inginkan ke dalamnya. Hal ini dapat dilakukan menggunakan context yang berbeda untuk setiap room, misalnya,
[konferensi_tim_marketing] exten => 300,1,MeetMe,2500(1234) [konferensi_tim_redaksi] exten => 301,1,MeetMe,2501(5678)
Jadi penelepon hanya perlu menelepon nomor telepon 300 atau 301, memasukan PIN jika di tanya, dan mereka akan masuk ke conference. MeetMe akan memberikan bunyi bel untuk memberitahukan ke semua orang bahwa ada orang yang masuk.
Kita tentunya dapat mengumpulkan semua "room" conference dalam sebuah context. Atau menambahkan "room" conference ke context yang telah ada, seperti berikut,
[local-users] exten => 250,1,Dial(SIP/alrac,10,r) exten => 250,2,VoiceMail(u250@local-vm-users) exten => 250,dial+101,VoiceMail(b250@local-vm-users) exten => 300,1,MeetMe,2500(1234)
Atau menambahkan seluruh context, misalnya,
include => konferensi_tim_marketing
Jika, sekiranya, conference yang dibuat memberikan kesempatan bagi penelepon untuk mendengarkan pidato inspirasional dari Boss, tanpa melakukan interrupsi terhadap pidato inspirasional tersebut. Maka yang perlu dilakukan adalah sebagai berikut
[konferensi_tim_marketing] exten => 300,1,MeetMe,2500|m|1234
Penelepon yang bary masuk dapat mengetahui berapa orang yang ada di konferensi menggunakan aplikasi MeetMeCount dengan program sebagai berikut
[konferensi_tim_marketing] exten => 300,1,Playback(there_are) exten => 300,2,MeetMeCount,2500 exten => 300,3,Playback(callers) exten => 300,4,MeetMe,2500
Tentunya anda perlu merekam dua file suara yang kira-kira berbunyi "There are" dan "callers present in the conference".
Setelah mengedit extensions.conf, jangan lupa untuk reload konfigurasi yang baru. Supaya tidak terjadi gangguan dalam operasional, kita dapat menjalankan asterisk console dan menjalankan perintah
# asterisk -r asterisk1*CLI> extensions reload
Mengaktifkan Konferensi Sambil Beroperasi
Salah satu kebutuhan yang mungkin timbul adalah menset room konferensi secara mendadak untuk satu kali saja. Untuk keperluan ini, kemungkinan kita tidak akan mengubah file extensions.conf dan memang kita tidak perlu melakukan hal tersebut. Tentunya kita perlu menset conference context yang sifatnya general di file meetme.conf dan extensions.conf, sehingg
;meetme.conf [rooms] ;general-purpose conference room conf => 3500,1234 ;extensions.conf ;generic conference room [gen_conference]
Jika kita perlu menset conference baru, dapat dibuat mendadak melalui CLI, sebagai berikut
localhost*CLI> add extension 400,1,Dial,3500 into gen_conference Extension '400,1,Dial,3500' added into 'gen_conference' context
Disini akan menambahkan extension 400 dengan prioritas 1 ke gen_conference. Tentunya extension ini akan hilang jika kita me-restart asterisk, atau kita dapat mendelete melalui perintah
localhost*CLI> remove extension 400@gen_conference Whole extension 400@gen_conference removed
Pada extension multi-line, kita dapat menentukan satu line / perintah yang akan dihilangkan dengan memberikan nama prioritasnya, misalnya
localhost*CLI>remove extension 400@gen_conference 2 Extension 400@gen_conference with priority 2 removed