Yang termasuk dari tiga komposisi grup ekstensi adalah

Komponen yang membangun tahapan perintah extension atau command line adalah sebagaiberikut:Extension adalah label dari extension, dapat berupa sebuah string (angka, huruf dan simbolyan diijinkan) atau pola yang harus di evaluasi secara dinamik untuk mencocokan denganbanyak kemungkinan nomor telepon. Setiap command line yang menjadi bagian dariextension tertentu harus mempunyai label yang sama.Priority biasanya berupa angka integer. Merupakan urutan dari perintah yang harusdijalankan dalam sebuah extension. Perintah pertama yang akan dijalankan harus dimulaidengan prioritas 1, jika tidak ada prioritas 1 maka Asterisk tidak akan menjalankan perintahextension. Setelah prioritas 1 di jalankan, Asterisk akan menambah prioritas ke prioritas 2dan seterusnya, tentunya jika tidak ada perintah yang menentukan prioritas mana yangselanjutnya harus dijalankan. Jika ternyata perintah selanjutnya ternyata tidak terdefinisimaka Asterisk akan menghentikan proses menjalankan perintah walaupun masih adaperintah dengan prioritas yang lebih tinggi.Command atau perintah adalah "aplikasi" yang akan di jalankan oleh Asterisk.Parameter adalah parameter yang harus diberikan kepada sebuah command. Tidak semuacommand / perintah membutuhkan parameter, beberapa perintah dapat dijalankan tanpaparameter.KONFIGURASI DIAL PLANDial Plan berfungsi sebagai routing panggilan antar ekstensi, baik yang berada dalam satu IP-PBX (lokal) maupun antar IP-PBX, atau biasa disebut dial trunk. Dalam Asterisk, Dial Plandiprogram dalam satu file yang bernama extensions.conf. Secara umum, setiap ekstensi dalamAsterisk merujuk pada user tertentu yang terregister ke Asterisk tersebut sehingga biasanyanomor ekstensi sama dengan id user. Untuk mengkonfigurasi dial plan, edit file extensions.confdengan mengetik vi /etc/asterisk/extensions.conf. Pastikan bahwa seluruh perintah pada file inisudah dinon aktifkan. Ketik perintah di bawah ini pada bagian paling akhir dari isi fileextensions.conf.

Pengertian Contexts, Extensions, Priorities, Applications

        Berisi beberapa instruksi extensions pada dial plan yang mempunyai beragam kegunaan. Context ini membedakan interaksi dari satu group dengan group yang lain. Sebuah extensi yang berada pada suatu context akan terisolasi dengan context yang lain. Context dilutis dengan huruf besar atau kecil [A-Z] atau angkat [0-9].

           Dibangun dalam tiga komposisi:

Priority (setiap ekstension bisalebih dari satu priority).

Aplikasi (atau command) yang menampilkan aksi (action) dari call.

exten => nomor extensi, priority, aplikasi (action())

exten => 4000, 1, Answer()

exten => _4xxx,1,DIAL(ZAP/1,10,m)

exten => _4NNN,DIAL(DAHDI/g0,$EXTENT:1,20)

        Priorities biasanya berupa angka integer. Merupakan urutan dari perintah yang harus dijalankan dalam sebuah extension. Perintah pertama yang akan dijalankan harus dimulai dengan prioritas 1, jika tidak ada prioritas 1 maka Asterisk tidak akan menjalankan perintah extension. Setelah  prioritas 1 di jalankan, Asterisk akan menambah prioritas ke prioritas 2 dan seterusnya, tentunya jika tidak ada perintah yang menentukan prioritas mana yang selanjutnya harus dijalankan. Jika ternyata perintah selanjutnya ternyata tidak terdefinisi maka Asterisk akan menghentikan proses menjalankan perintah walaupun masih ada perintah dengan prioritas yang lebih tinggi.

n => next priority , diletakkan pada ext setelah priority 1, artinya tambah 1 dari priority sebelumnya

s => start extension , jk tidak ada nmr extension yang masuk makan extension ini yang akan dijalankan

t=> timeout, jika dalam interval terntu tidak ada masukkan maka extension ini akan dijalankan

i=> invalid extension, jk user memasukkan nomor extension yang tidak valid maka extension ini yang dijalankan.

Konfigurasi Dial Plan Server Softwitch

          Untuk mengkonfigurasi dial plan, edit file extensions.conf dengan  mengetik:

nano /etc/asterisk/extensions.conf.

          Pastikan bahwa seluruh perintah pada file ini sudah dinon aktifkan. Ketik perintah di bawah ini. Pada bagian paling akhir dari isi file extensions.conf.

;Dial antar ekstensi pada IP-PBX

[voipkn]  -->> seluruh dial plan di bawah ini hanya berlaku bagi context ‘voipkn’

exten =>101,1,Dial(SIP/101,20)  -->> Dial ext 101 dengan protokol  SIP, time out 20 detik

exten =>101,2,Hangup  -->> setelah timeout dilakukan hangup

exten =>102,1,Dial(SIP/102,20)

Pengertian Ekstension pada Aplikasi Telepon

        Sampai dengan tutorial kali ini, beberapa kali saya menggunakan istilah extension. Namun apakah yang dimaksud dengan extension ini?

         Extension di dalam PHP adalah istilah yang merujuk kepada kumpulan fungsi program tambahan yang membuat PHP dapat mendukung berbagai fitur baru.

PHP terdiri dari aplikasi inti (PHP core), dan fungsi tambahan (extension). Dalam aplikasi inti PHP, PHP tidak menyediakan fungsi yang menangani database MySQL.                   Penanganan untuk fungsi database ini dipisahkan menjadi fungsi tambahan (extension). Selain database, extension dalam PHP menyediakan berbagai fungsi lainnya untuk keperluan yang lebih khusus, seperti pembuatan gambar, kriptografi, penanganan email, pembuatan PDF, dan lain-lain.

Langkah - langkah Instalasi dan Konfigurasi Asterisk Server

Lakukan kompilasi dan install asterisk sources tarball.i.

masukkan country code (62) pada show box saat setelah beres melakukan instalasi.c.

Komponen utama dari file konfigurasi asterisk adalah pada /etc/asterisk/sip.conf dan /etc/asterisk/extensions.conf dimana masing masing fungsinya yaitu sip.conf untuk menambahkan Data Account sedangkan extensions.conf berisi dialing plan.

nano /etc/asterisk/sip.conf i.

Pada baris terakhir tambahkan dengan format berikut sebagai contoh :

[1901]context = tkjtype = friendusername = 1901secret = revanfahost = dynamic[1902]context = tkjtype = friendusername = 1902secret = revanfarhost = dynamic

nano /etc/asterisk/extensions.conf d.

           Tambahkan dialing plan dengan format sebagai berikut ://

nama dalam kurung ini harus sama dengan context yg kita buat di sip.conf 

baris ini berarti apabila ada dial ke nomor 1901 maka langkah pertama adalah langsung melakukan dial menggunakan protocol SIP dengan nomor 1901 kepada server asterisk.

 exten => 1901,1,Dial(SIP/1901)//

baris ini berarti apabila ada dial ke nomor 1902 maka langkah pertama adalah langsung melakukan dial menggunakan protocol SIP dengan nomor 1902 kepada server asterisk.

exten => 1902,1,Dial(SIP/1902)//

baris ini berarti untuk melakukan demo call terhadap asterisk server dengan dial number 900

exten => 900,1,Goto(demo,s,1)e.

Save file dan restart asterisk dengan perintah asterisk

       Pengujian dilakukan di dua client , client 1 menggunakan akun 1901 denganpassword revanfa dan client 2 menggunakan akun 1902 dengan password revanfarb.

          Pengujian menggunakan softphone atau hardphone (IP Phone) sesuai dengan yg kitainginkan.c.

Prosedur Instalasi Server Asterisk berbasis SIP

     Pengertian SIP (Session Initiation Protokol) adalah suatu signalling protocol pada layer aplikasi yang berfungsi untuk membangun, memodifikasi, dan mengakhiri suatu sesi multimedia yang melibatkan satu atau beberapa pengguna.

            SIP tidak menyediakan layanan secara langsung , tetapi menyediakan pondasi yangdapat digunakan oleh protokol aplikasi lainnya untuk memberikan layanan yang lebih lengkap bagi pengguna, misalnya dengan RTP (Real Time Transport Protocol) untuk transfer data secara real-time, dengan SDP (Session Description Protocol) untuk mendiskripsikan sesi multimedia , dengan MEGACO (Media Gateway Control Protocol) untuk komunikasi dengan PSTN (Public Switch Telephone Network).

Instalasi server Asterisk berbasis SIP

        Asterisk adalah software IP PBX untuk membuat sistem layanan komunikasi telepon melalui internet atau biasa disebut VoIP (Voice over Internet Protocol). Asterisk adalah software Open Source yang berjalan di linux. Asterisk juga memungkinkan komunikasi antar pengguna telepon regular dengan telepon berbasis sip (sip phones). Asterisk juga sudah dilengkapi banyak fitur baik standard telephony maupun advance, diantaranya:

Interactive Voice Response (IVR)

Automatic Call Distribution (ACD)

       Untuk Anda baru mulai belajar VoIP, Asterisk bisa dimanfaatkan untuk membuat sebuah server VoIP sederhana. Tutorial berikut akan membahas bagaimana membuat sebuah VoIP server untuk jaringan LAN.  Saya menggunakan Asterisk sebagai VoIP servernya. Untuk membuatnya minimal diperlukan sebuah PC Linux, koneksi LAN, dan bisa juga koneksi Internet. Berikut ini langkah-langkah yang perlu dilakukan:

 # apt-get install asterisk

    Setelah instalasi selesai, pastikan 3 paket berikut sudah terinstall dengan baik:

Konfigurasi File “sip.conf”

         Selanjutnya adalah langkah yang paling menarik, konfigurasi. Namun sebelum memulai konfigurasi,   alangkah baiknya untuk mengenali dulu teknologi atau protocol-protocol telephony yang ada seperti SIP, H323, IAX, MGCP, juga termasuk didalamnya layanan PSTN, dll. Pada practice kali ini kita akan menggunakan SIP karna konfigurasinya yang relatif mudah dengan implementasi yang mudah juga.

Untuk konfigurasi ini, kita cukup mengetikkan:

     Pada pengaturan sip.conf kita akan mengkonfigurasi data account user. Pada percobaan ini saya menggunakan 211-219 sebagai nomor extension untuk melakukan panggilan dan dipanggil. 

Pada gambar yang di bulatkan diatas, menunjukkan pembuatan untuk data account user, dimana:

 [211] : adalah context yang menjadi nomer extension untuk melakukan panggilan dan dipanggil

 type=friend : adalah tipe standar (bisa melakukan panggilan dan dipanggil)

context=febrian : adalah nama context yang akan dikenali pada dial plan

  host=dynamic : adalah host yang digunakan oleh user, dynamic berarti account dapat digunakan dari host mana saja

 username=211 : adalah username dari user

 password=password : adalah password yang digunakan oleh user said untuk login

Untuk menambahkan user lain, dapat dengan meng-copy-paste baris diatas kemudian isikan context dan user yg berbeda untuk masing-masing user. 

Konfigurasi Ekstensi dan dial-plan Server Asterisk :

Konfigurasi ekstensi server Asterisk

Anda dapat mencari semua file konfigurasi Asterisk untuk instalasi standar dalam directory /etc/asterisk:

debian:/usr/src# cd /etc/asterisk

adsi.conf cdr_tds.conf indications.conf

adtranvofr.conf codecs.conf logger.conf queues.conf

agents.conf dnsmgr.conf manager.conf res_odbc.conf

alarmreceiver.conf dundi.conf meetme.conf rpt.conf

alsa.conf enum.conf mgcp.conf rtp.conf

asterisk.adsi extconfig.conf misdn.conf sip.conf

asterisk.conf extensions.ael modem.conf

cdr.conf extensions.conf modules.conf skinny.conf

cdr_custom.conf features.conf musiconhold.conf

cdr_manager.conf festival.conf osp.conf

cdr_odbc.conf iax.conf oss.conf vpb.conf

cdr_pgsql.conf iaxprov.conf phone.conf zapata.conf

Untuk miniPBX kita, kita hanya perlu dua buah file. pertama, kita perlu menyalin file yang dibuat dengan make samples ke /etc/asterisk/backup/ (Kita dapat mengambilnya untuk keperluan nanti; secara umum, tindakan yang bagus untuk menyalin file asli ke directory backup ketika anda melakukan perubahan)

debian:/etc/asterisk# mkdir backup

debian:/etc/asterisk# mv sip.conf backup/

debian:/etc/asterisk# mv extensions.conf backup/

Dengan menggunakan favorite editor anda, buat sebuah file baru / etc/asterisk/sip.conf dan masukkan berikut ini:

Kita menulis sebuah dialplan sederhana pada /etc/asterisk/extensions.conf:

exten => 2000,1,Dial(SIP/2000)

exten => 2001,1,Dial(SIP/2001)

Apakah beberapa baris tersebut cukup untuk mengkonfigurasi PBX? Mari kita coba! Jalankan Asterisk dengan perintah shell

debian:/etc/asterisk# asterisk c

Asterisk 1.4.2, Copyright (C) 1999 2005

      Setelah Asterisk dijalankan, kita akan mendapatkan sebuah konsol yang memungkinkan kita untuk berkomunikasi dengan proses asterisk yang berjalan. Apa yang kita lihat sekarang adalah Asterisk CLI (command line interface) yang memperbolehkan kita untuk mengendalikan Asterisk secara interacktif. Aksi pertama kita adalah untuk menghentikan asterisk secara langsung dengan perintah stop now:

       Kemudian, kita harus menghubungkan dua SIP phone ke miniPBX.Jika anda tidak memiliki ip phone, anda dapat menggunakan software phone (”softphones”) yang dapat diunduh dari Internet. Untuk konfigurasi pengguna pada telepon, gunakan informasi extension yang telah kita set di /etc/asterisk/sip.conf. Extension Sip 2000 harus dikonfigurasi untun ini:

SIPRegistrar: IP address server asterisk kita

SIPProxy: IP address server asterisk kita

      Jika anda tidak mengetahui alamat IP dari server astersik, anda dapat mencari dengan perintah berikut:

ifconfig | grep Bcast | sed s/Bcast.*//

Sekarang kita jalankan Asterisk kembali, untuk kali ini dengan konsole verbose yang lebih banyak, sehingga kita dapat melihat apa yang sedang terjadi ketika kita mencoba melakukan panggilan. Kita lakukan dengan menambahkan parameter vvvvvc setelah perintah (5 v artinya “verbosity level 5”). Dengan ini kita dapat melihat kapan SIP phone terdaftar pada PBX:

debian:/etc/asterisk# asterisk vvvvvc

Konfigurasi dial-plan server Asterisk

Selanjutnya adalah setting dial plain, konfigurasinya terdapat pada file“extensions.conf”.

[voiptest] : adalah context yang mengatur semua user yang menggunakan context voiptest pada data account

exten : adalah aturan di asterisk untuk menunjukkan nomor extension

211 : adalah nomor extension yang bisa dihubungi

1-2 : adalah prioritas action

Dial : adalah aplikasi untuk men-dial

Hangup : adalah aplikasi untuk mengakhiri koneksi

SIP : adalah nama protokol yang digunakan dan untuk mengidentifikasi bahwa user berada di file sip.conf

211 setelah SIP : adalah nama context di sip.conf

20 : adalah lamanya berdering saat terjadi pemanggilan oleh user yang lain

Dialplan menentukan telepon mana dapat menelepon telepon lain, dan bagaimana. Dialplan dibagi dalam contexts.

      Pada bagian pertama pada konfigurasi ini adalah context [others]. Karena kita tidak memakai dalam contoh ini, maka bisa dikosongkan.

exten => 2000,1,Dial(SIP/2000,20)

exten => 2000,2,VoiceMail(2000,u)

Penulisan dialplan selalu mengikuti peraturan berikut:

exten => Nomor,Prioritas,Aplikasi

        Ketika sebuah nomor dipanggil, Asterisk akan mengecek untuk mengetahui apakah sesuai dengan dialplan. Jika ditemukan kesesuaian, makan masukan itu akan dibaca dan dijalankan. Jika terdapat lebih dari sebuah masukan untuk nomor yang dipanggil, Asterisk akan menjalankan isi dengan prioritas 1 lebih dahulu.                  Parameter ketiga (”Application”) menentukan apa yang akan dilakukan Asterisk dengan panggilan itu. Berdasarkan pada konfigurasi contoh kita, yang terjadi ketika sebuah panggilan dari 2001 ke 2000 adalah:

       Asterisk melihat context dari extesion yang memanggil (2001) dalam /etc/asterisk/sip.conf. Pada contoh kita, Contextnya adalah [myphones]. Asterisk menggunakan context ini untuk menentukan kelompak mana yang digunakan dalam /etc/asterisk/extensions.conf.

Setelah menemukan context [myphones] dalam /etc/asterisk/extensions.conf, Asterisk menjalankan isi yang sesuai dengan nomor yang dipanggil, 2000, dengan prioritasnya. Kita memiliki dua baris yang sesuai pada contoh kita.

Isi yang sesuai dengan prioritas 1 akan dijalankan terlebih dahulu, Tidak pedulu urutan secara fisik dalam isian. Disini, isian dengan prioritas 1 memiliki aplikasi Dial(SIP/2000,20). Aplikasi Dial() dijalankan dengan paramater yang telah diberikan; seperti pada isian nomor 2000 dalam /etc/asterisk/sip.conf dan bunyikan dalam 20 detik(angka “,20 s etelah SIP/2000).

Jika extension SIP 2000 tidak menjawab dalam 20 detik, Dial()selesai dan prioritas ditambah 1.

      Isi yang sesuai selanjutnya — exten ⇒ 2000,2,VoiceMail(2000,u)— dijalankan. Asterisk menjalankan aplikasi VoiceMail() dengan parameter “2000 dan “u”. “2000 adalah untuk nomor mailbox seperti yang dikonfigurasi dalam /etc/asterisk/voicemail.conf; “u” memberitahukan Asterisk untuk menggunakan pesan standar “unavailable”. tentu saja, voicemail tidak ada gunanya kecuali anda dapat mengambil pesan yang ditinggalkan kepada anda. Kita dapat memberi akses dengan mengisi:

exten => 2999,1,VoiceMailMain(${CALLERID(num)},s)

terdapat fungsi dialplan pertama kita di Asterisk! kita memanggil aplikasi VoiceMailMain() dengan fungsi ${CALLERID(num)} sebagai parameter. fungsi ${CALLERID(num)} mengembalikan nomor dari pihak yang memanggil. Dengan cara ini, VoiceMailMain() selalu tahu untuk mengambil pesan untuk telepon yang memanggilnya. Jika parameter tidak diisi, kita akan ditanya nomor mailbox. parameter “,s” memberitahu VoiceMailMain() untuk tidak meminta password untuk pemanggil.

Setelah dilakukan konfigurasi pada data account dan dial plan maka lakukan restart asterisk dengan mengetikkan  # /etc/init.d/asterisk restart.

    Untuk tahap pengujian ini kita menggunakan X-Lite. terlebih dahulu kita add account untuk melakukan panggilannya, seperti pada gambar dibawah ini.

    Lalu masukkan name, dan user name(account) panggilan untuk melakukan panggilan nanti. selain itu juga masukkan password dan IP domain agar saat melakukan panggilan dapat terhubung.

       Setelah setting diatas selesai, baru lah diuji dengan melakukan panggilan berdasarkan data account yang telah di add sebelumnya.


Page 2

Pengertian Ekstensi dan Dial Plan pada Server VoIP         Extension adalah sekumpulan perintah yang dijalankan berdasarkan urutan2 dari tingkat prioritasnya.  Berbeda dengan PABX , dimana extension biasanya berasosiasi dengan telepon, interface atau menu.                Beberapa perintah, seperti Dial atau GotoIf, mempunyai kemampuan untuk berjalan ke perintah lain berdasarkan kondisinya.        Dalam extension asterisk sintax yang digunakan di file extensions.conf , setiap tahapan perintah dalam sebuah extension di tulis dalam format seperti exten = extension,priority,Command(parameter). Kesimpulanya, setiap “context” memiliki nama,setiap context dapat mendefenisikan satu atau lebih “extension”.didalam extension kita dapat memasukan sekumpulan perintah.          Komponen yang membangun tahapan perintah extension:       Extension adalah label dari extension, dapat berupa string atau pola yang harus di evaluasi secara dinamik untuk mencocokan dengan banyak kemungkinan