VoIP Extension

Beberapa kali saya mengalami diskusi rancu mengenai extensioni VoIP. Dan sepertinya saya perlu membuat sebuah postingan mengenai perbedaan extension di opensource telephony IP PBX, dengan extension di legacy PABX/IP-PABX.

Penyebab utama kerancuan dalam pembahasan extension dikarenakan memang kebanyakan kita berangkat belajar sistem telepon dari Analog PBX, yang membedakan sambungan trunk dan extension dengan jelas. Sedangkan di open source IP PBX, tidak ada pembedaan demikian karena semua channel dianggap sama. Yang membedakan adalah  call context , berfungsi untuk memisah panggilan dari luar dengan panggilan dari dalam network IP PBX. 

Kerancuan juga disumbangkan oleh FreePBX yang menggabungkan pembuatan nomer extension yang sama dengan username. Dan FreePBX digunakan dalam beberapa bundle IP PBX opensource seperti trixbox CE, Elastix, FreePBX distro, AsteriskNOW, dan Briker. Hal ini menyebabkan rancu dalam membedakan endpoint username id dan extension. Hal ini tidak bisa disalahkan karena FreePBX memang dibuat untuk menirukan cara kerja PBX analog/legacy.

Awalnya, extension adalah sebuah perangkat telepon tambahan yang tersambung ke pesawat telepon utama (disebut Main Station) yang tersambung langsung ke PSTN. Yang sering kita temui adalah model sambungan telepon paralel yang memungkinkan kita melakukan panggilan ke PSTN dari ruang yang berbeda di dalam rumah. Ada juga model sambungan telepon seperti ini yang memiliki fasilitas intercom, yang memungkinkan komunikasi antar perangkat. Dalam perkembangannya di dunia bisnis, extension menjadi sebuah perangkat telepon yang tersambung ke PBX, bukan lagi ke main station. Extension yang tersambung ke  board PBX kemudian bisa dihubungi dengan menekan nomer id channel yang disebut sebaga nomer extension (jika ada masukan untuk koreksi keterangan di atas, saya akan sangat berterima kasih).

Extension di opensource telephony IP PBX jauh lebih bersifat fleksibel. Extension di sini tidak mengacu ke sebuah perangat telepon sama sekali atau id di board PBX, melainkan mengacu ke sebuah urutan eksekusi yang mirip seperti sub routine dalam sebuah script atau program. Perangkat telepon  software (softphone) maupun hardware (ip phone) yang tersambung di IP PBX, biasanya disebut sebagai endpoint. Ilustrasi untuk membayangkan cara kerja extension di IP PBX adalah sebagai berikut:

Ketika mendial sebuah nomer extension, misal 1000, maka IP PBX akan menerima/mendengar dial tone tersebut dan mencari baris urutan proses yang berhubungan dengan extension tersebut. Ketika menemukan baris yang diacu sebagai extension 1000, maka IP PBX akan mengeksekusi urutan yang sudah didefinisikan dalam baris tersebut. Eksekusinya bermacam-macam. Yang paling umum adalah menghubungi perangkat yang terasosiasi ke penomoran extension. Perangat tersebut tentu saja harus sudah teregistrasi dengan IP PBX melalui autentikasi user/password, atau autentikasi ip address. Atau bisa saja, extension tersebut kemudian malah mengeksekusi sebuah script/program otomatisasi lain (reboot remote server, check link internet, program assembler yang menggerakan peralatan mekanis, dan lain sebagainya).

Jika extension IP PBX digunakan untuk menghubungi sebuah perangkat, seperti yang disebutkan di atas, bahwa perangkat tersebut harus diketahui oleh IP PBX melalui autentikasi user/password atau berdasarkan autentikasi ip address (jika ip address perangkat tersebut tetap). Bila ada, misal, 5 perangkat teregistrasi ke IP PBX sebagai perangkat A, B, C, D, dan E, maka sebuah extension (misal ext. 1000), bisa diasosiasikan dengan salah satu perangkat tersebut. Jadi extension tidak terikat dengan sebuah perangkat telepon atau terikat dalam fungsi untuk mengontak sebuah perangkat.

Setelah penjelasan sedikit mengenai extension tersebut, semoga bisa sedikit memberikan gambaran konsepnya.