Page | 46
BAB 3
PERANCANGAN SISTEM
3.1 Sistem SIP-PSTNPerancangan sistem sercara keseluruhan terlihat seperti gambar 3.1 dibawah. Pada masing-masing kota terdapat SIP PBX yang berbentuk software yaitu AsteriskWin32. SIP-PBX berfungsi untuk mengatur komunikasi suara yang terdapat pada setiap kantor layaknya PBX tradisional. User agent yang digunakan dapat berupa softphone dan hardphone. Jika ingin menggunakan softphone maka cukup melakukan instalasi softphone yang ingin digunakan ke komputer yang dilengkapi oleh microphone dan loudspeaker. Jika menggunakan hardphone seperti IP Phone dapat langsung menghubungkannya ke jaringan komputer yang tersedia. Masing-masing user agent harus dikonfigurasi terlebih dahulu agar dapat terdaftar ke SIP-PBX, selain itu agar user agent dikenal oleh SIP-PBX maka pada SIP-PBX yang berupa AsteriskWin32 perlu disediakan nomor untuk nantinya akan digunakan oleh user agent.
1 2 3 4 5 6 7 8 9 * 8 # 1 2 3 4 5 6 7 8 9 * 8 # 1 2 3 4 5 6 7 8 9 * 8 # 1 2 3 4 5 6 7 8 9 * 8 #
Page | 47
Penyediaan nomor pada SIP-PBX dapat dilakukan pada file sip.conf. Setelah menyediakan nomor perlu dilakukan pengaturan juga pada PBX agar SIP-PBX mangetahui kemana panggilan diteruskan jika ada user agent yang melakukan panggilan. Selain penggunaan hardphone dan softphone, pada sistem yang dirancang, dapat juga menggunakan telepon analog, namun dibutuhkan sebuah konverter yang digunakan untuk merubah protokol yang dipakai oleh telepon analog dengan protokol SIP yang digunakan pada sistem. Konverter tersebut adalah media gateway. Selain berfungsi sebagai konverter, media
gateway berfungsi untuk menghubungkan sistem SIP dengan PSTN.
Perancangan sistem dibuat dengan memodelkan dua kantor di dua kota (kota A dan kota B) yang berbeda wilayah dimana pada setiap kota terdapat komponen SIP. Perancangan sistem dimaksudkan agar user agent pada kantor yang satu dapat berkomunikasi dengan kantor yang lain tanpa biaya (dengan jaringan internet) atau menelepon PSTN secara interlokal dengan biaya lokal. Hal ini dapat terjadi karena pada setiap kota terdapat SIP PBX yang dapat mengatur komunikasi antar user agent. Masing-masing SIP-PBX harus meregistrasikan dirinya pada SIP-PBX lainnya agar dikenal, sehingga SIP-PBX dapat meneruskan panggilan dari user agent yang terletak pada kota A kepada user agent yang terletak pada kota B.
Pada saat user agent di kota A ingin menghubungi user agent di kota B maka panggilan akan melewati SIP PBX di kota A lalu masuk ke SIP PBX kota B, setelah itu panggilan diteruskan ke user agent kota B, sehingga komunikasi interlokal ini dapat dilakukan dengan gratis selama jalur internet tersedia. Jika
user agent dari kota A ingin menghubungi PSTN lokal di kota B maka jalur
komunikasi yang akan terjadi menyerupai contoh di atas, bedanya untuk masuk ke PSTN lokal di kota B harus melalui media gateway yang ada di kota B, sehingga komunikasi interlokal ini dapat dilakukan dengan biaya lokal dan dibayar oleh kantor di kota B.
Page | 48 3.2 Sistem Diagram Alur
M u la i a n g k a t T e le p o n D ia l T o n e ? A n ta r ja r in g a n lo k a l J a r in g a n L o k a l k e P S T N P S T N k e J a r in g a n L o k a l n o m o r e x te n s io n 9 9 9 9 n o m o r P S T N t u n g g u d ia l to n e n o m o r e x te n s io n n a d a s a m b u n g ? d e r in g s e la m a n d e tik s ta tu s p e r c a k a p a n h u n g u p S e le s a i C a ll P a r k in g V o ic e M a il y a s ib u k t id a k d ia n g k a t < n d e tik > n d e tik d it o la k C a ll T r a n s fe r M e n d e n g a r k a n V o ic e m a il tid a k a d a A A A C B A A C B C a ll T r a n s f e r P e n e le p o n m e m b e r ita h u k a n n o m o r P S T N k e O p e r a t o r
Page | 49
Gambar 3.2 merupakan diagram alur dari keseluruhan sistem yang dibuat. Pada sistem ini user dapat melakukan komunikasi antar jaringan lokal, jaringan lokal ke PSTN, PSTN ke jaringan lokal. Komunikasi antar jaringan lokal dapat dilakukan dengan cara langsung men-dial nomor extension. Komunikasi jaringan lokal ke PSTN harus melalui operator. User harus menelepon operator (9999) terlebih dahulu dan meminta operator untuk melakukan call ransfer ke nomor PSTN yang dituju. Hal ini dilakukan untuk mencegah terjadinya komunikasi yang dilakukan oleh pihak yang tidak berkepentingan. Komunikasi dari PSTN ke jaringan lokal dilakukan dengan men-dial nomor PSTN kantor, penelepon menunggu dial tone kedua, setelah itu penelepon men-dial extension yang dituju. Fitur-fitur yang tersedia pada sistem ini antara lain adalah call transfer, call parking dan voice
mail.
3.3 Rancangan Perangkat Keras
Perangkat keras yang digunakan dalam sistem SIP PBX mencakup komputer sebagai server, SIP user agent, hub/switch, router, Wireless Access
Point dan media gateway. 3.3.1 Komputer sebagai server
Spesifikasi komputer yang digunakan sebagai server dalam perancangan ini adalah:
Tabel 3.1 Spesifikasi server
Komponen Server 1 Server 2
Processor Pentium 4 1.8 GHz Intel Dual Core @ 1.86 GHz
Page | 50
Kedua server di atas mampu menangani kebutuhan komunikasi pada small office dengan jumlah pengguna yang diasumsikan tidak lebih dari 20 orang. Network
Interface Card dibutuhkan untuk menghubungkan komputer server dengan
jaringan komputer.
3.3.2 SIP User Agent
User agent perangkat keras yang digunakan dalam sistem adalah IP Phone
dan telepon analog. IP Phone adalah sebuah telepon yang memiliki sebuah alamat IP. IP Phone yang digunakan harus mendukung protokol SIP. IP Phone tersebut haruslah memiliki koneksi Ethernet dan dapat dikonfigurasi agar apat berkomunikasi dengan server. Telepon analog dapat digunakan dalam sistem ini dengan bantuan media gateway agar dapat memiliki spesifikasi seperti yang dimiliki IP phone.
Pengaturan yang dilakukan pada user agent meliputi pengaturan alamat ip,
subnet mask, domain, gateway, username dan password. Pengaturan username
dan password harus sesuai dengan pengaturan yang terdapat di file sip.conf agar dapat teregistrasi ke server.
3.3.3 Hub/Switch
Perancangan sistem ini menggunakan hub atau switch agar dapat
menghubungkan semua komponen sistem dalam satu jaringan. Hub digunakan karena mengirimkan data secara broadcast sehingga memudahkan sistem untuk dianalisa. Pada implementasi sistem lebih baik menggunakan switch yang mempunyai kemampuan teknik yang lebih dan sekarang lebih ekonomik dan mempunyai kemampuan throughput lebih tinggi. Komponen ini tidak memerlukan pengaturan khusus.
Page | 51 3.3.4 Router
Router digunakan untuk menghubungkan dua jaringan yang berbeda. Pada
sistem ini, router dimaksudkan untuk memodelkan dua buah kota yang berbeda. Pengaturan dilakukan agar kedua router dapat meneruskan data dari satu jaringan ke jaringan lainnya.
3.3.5 Wireless Access Point
Wireless Access Point digunakan untuk mengubungkan komponen sistem
ke jaringan secara nirkabel. Pengaturan yang perlu diperhatikan adalah kemampuan menggunakan DHCP (Dynamic Host Configuration Protocol) agar
user agent mendapatkan alamat IP secara otomatis.
3.3.6 Media Gateway
Media gateway yang dipilih untuk perancangan ini adalah SPA-3102 yang
memiliki 4 buah port, port pertama digunakan untuk mengatur media gateway, port kedua digunakan untuk menghubungkannya dengan jaringan komputer yang tersedia, port ketiga yaitu FXS dihubungkan dengan telepon analog dan terakhir port keempat yaitu FXO yang dihubungkan dengan PSTN. Pengaturan parameter FXS dan FXO pada media gateway dapat dilakukan melalui web browser dengan memasukkan alamat ip media gateway, untuk melakukan konfigurasi diperlukan
login sebagai admin dan memilih menu advanced. 3.4 Rancangan Perangkat Lunak
Perangkat lunak yang dapat digunakan dalam sistem ini antara lain: Asterisk, AsteriskWin32, Axon, FreeSwitch, MiniServer dan 3CX, sebagai SIP-PBX.
Page | 52
Tabel 3.2 Perbandingan SIP -PBX
SIP-PBX Asterisk Asterisk Win32 Axon Free Switch Mini SIPServer 3CX
Platform Linux Windows Window Linux Windows Windows
Source Open Open Closed Closed Closed Closed
Cost Free Free Free Free $49 Free
3.4.1 AsteriskWin32
AsteriskWin32 merupakan perangkat lunak gratis yang berfungsi sebagai SIP-PBX. Pemilihan ini dilakukan karena AsteriskWin32 merupakan open source yang menggabungkan fungsi SIP proxy server, SIP registrar server dan SIP
Redirect server ke dalam satu server. Pada AsteriskWin32 dilakukan konfigurasi
untuk mengatur jalannya komunikasi pada sistem. Konfigurasi ini dilakukan pada
file sip.conf, extension.conf, features.conf dan voicemail.conf.
3.4.1.1 SIP.CONF
Pada bagian [general] di file sip.conf ada beberapa variabel yang dapat dikonfigurasikan beberapa diantaranya adalah:
Page | 53
• allow = <codec>
Merupakan codec yang digunakan secara berurut berdasarkan preferensi. Gunakan parameter disallow = all terlebih dulu sebelum menggunakan parameter allow = <codec>
• disallow = all
Tidak mengizinkan semua codec untuk digunakan • allowexternalinvites = yes | no
Mengaktifkan (enable) atau menonaktifkan (disable) pilihan INVITE & REFER ke non-local domain. Pilihan default-nya adalah yes
• allowguest = yes | no
Terima atau tolak panggilan dari guest. Pilihan default-nya adalah
yes
• allguest = yes | no
Terima atau tolak panggilan dari guest. Pilihan default-nya adalah
yes
• autocreatepeer = yes | no
Jika diatur yes, semua orang dapat dengan mudah login sebagai
peer tanpa password (biasanya bermanfaat untuk beroperasi
dengan SER). Pilihan default-nya adalah yes • autodomain = yes | no
Page | 54
Mengaktifkan/menonaktifkan kemampuan Asterisk untuk menambah local hostname dan alamat IP lokal (local IP address) ke daftar domain (domain list). Default-nya adalah no
• bindaddr = IP_Address
Alamat IP yang di-bind (diikat) sebagai tempat untuk mendengarkan sambungan. Pilihan default-nya adalah 0.0.0.0 (semua interface)
• bindport = Number
UDP port yang diikat untuk mendengarkan sambungan yang masuk. Pilihan default-nya adalah 5060
• callerid = <string>
Informasi caller ID yang akan digunakan jika tidak ada informasi lain. Pilihan default-nya adalah asterisk
• canreinvite = update | yes | no
Jika klien mampu mendukung SIP re-invites. Default-nya adalah
yes
• checkmwi = number
interval (dalam detik) untuk memeriksa mailbox. Pilihan default-nya adalah 10 detik
• compactheaders = yes | no
Apakah Asterisk akan mengirim header SIP dalam bentuk kompak (singkatan) atau lengkap. Pilihan default-nya adalah no
Page | 55
• context = <contextname>
Ini adalah default context yang akan digunakan bagi pesawat telepon yang tidak memiliki context. Isi context dapat diatur di file
extensions.conf
• defaultexpirey = number
Lama waktu default (dalam detik) dari registrasi
incoming/outgoing. Pilihan default-nya adalah 120 detik
• dtmfmode = inband | info | rfc2833 (global setting) Pilihan defaultnya adalah rfc2833
• domain = domains
Daftar domain (ditulis dengan dibatasi oleh koma) dimana asterisk harus bertanggung jawab
• dumphistory = yes | no
Mengaktifkan dukungan untuk tidak mencatat transaksi SIP ke LOG_DEBUG. Pilihan default-nya adalah no
• externip = alamat_IP/Hostname
Alamat yang akan diletakkan di SIP messages jika berada di belakang NAT. Jika pilihan hostname digunakan, alamat IP yang terkait dengan hostname tersebut akan dibaca sekali pada saat membaca file sip.conf. Jika ingin menggunakan hostname dari alamat IP dinamis (dynamic IP address), gunakan parameter
externhost
Page | 56
• externrefresh = number
Menentukan berapa sering (dalam detik) pengecekan DNS dilakukan untuk externhost. Pilihan default-nya adalah 10 detik • ignoreregexpire = yes | no
Mengatur apakan tetap menggunakan contact information dari sebuah peer walaupun informasi tersebut telah kadaluarsa. Pilihan default-nya adalah no
• language = <string>
Bahasa default yang digunakan oleh Playback()/Background() • localnet = NetAddress/Netmask
Alamat IP lokal berikut alamat subnetmask-nya • fromdomain = <domain>
Mengaur isian from: domain default di sip message pada saat beroperasi sebagai sip ua (klien)
• insecure = very | yes | no | invite | port
Mengatur cara menangani sambungan dengan peer. Pilihan default-nya adalah no (validasi semua sambungan)
• maxexpirey = Number
Durasi (dalam detik) dari registrasi incoming. Pilihan default-nya adalah 3600 detik
• musicclass = salah satu kelas yang digunakan di musiconhold.conf • musiconhold = sama dengan musicclass
Page | 57
• nat = yes | no | never | route
Pilihan default-nya adalah no (yang berarti menggunakan teknik rfc3581)
• notifymimetype = mediatype/subtype
membolehkan tidak dipakainya tipe MIME di MWI NOTIFY yang digunakan di voicemail online message. Pilihan defaulnya adalah application/simple-message-summary.
• Notifyringing = yes | no
Memberitahukan bahwa sistem sedang masuk ketahapan ringing. Pilihan defaulnya adalah yes
• tcpenable = yes | no
digunakan untuk mengaktifkan atau menonaktifkan TCP, pilihan defaultnya no
• transport = tcp|udp
memilih protokol yang digunakan untuk transport. Pilihan default-nya udp.
Varibel berikut dapat digunakan pada setiap definisi peer: • Accountcode = <string>
User dapat diasosiasikan ke accountcode.
• Allow = <codec>
Codec yang digunakan secara berurut berdasarkan preferensi. Gunakan parameter disallow = all terlebih dulu sebelum menggunakan parameter allow = <codec>
Page | 58
• disallow = all
menolak semua codec untuk peer tersebut atau definisi user • Allowguest = yes | no
Terima atau tolak panggilan dari orang yang tidak dikenal. Pilihan defaultnya adalah yes, dapat juga diatur ’osp’ jika asterisk dikompilasi untuk mendukung OSP]
• Auth = <authname>
Isi dari digest username = pada header SIP • callerid = <string>
caller ID yang digunakan jika tidak ada informasi yang tersedia. Pilihan defaultnya adalah asterisk
• call-limit = number
banyaknya sambungan telepon simultan yang dapat dilakukan ke
user/peer tertentu.
• callgroup = num1,num2-num3
mendefinisikan calling group yang dapat menelepon ke alamat ini • callingpress = number | descriptive_text
atur tampilan caller ID terhadap sebuah sambungan/call. Nilai text descriptive yang dapat diisi adalah allowed_not_screened,
allowed_passed_screen, allowed_failed_screen, allowed
prohib_not_screen, prohib_passed_screen, prohib_failed_screen, prohib dan unavailable. Pilihan
Page | 59
• canreinvite = update | yes | no
jika klien mampu mendukung SIP re-invites. Default-nya adalah
yes.
• context = <context_name>
jika type = user, context merupakan panggilan yang masuk ke definisi user SIP. Jika type = peer, context merupakan dialplan untuk melakukan panggilan ke luar/outbound dari definisi peer SIP. Jika type = friend, context merupakan semua hubungan inbound dan outbound ke definisi entitas SIP
• defaultip = ip.add.res.s
alamat IP default untuk pilihan client host = jika tidak dispensifikasi sebagai dynamic. Pilihan ini dipakai jika klien belum pernah terdaftar menggunakan alamat IP yang lain. Pilihan ini hanya berlaku jika isian type = peer
• dtmfmode = inband | info | rfc2833
bagaimana klien menangani signal DTMF. Pilihan defaultnya adalah rfc2833
• fromuser = <from_ID>
menentukan user yang diletakkan di isian ”from” selain caller ID (menimpa caller ID) pada saat melakukan calls_to_peer (ke SIP proxy lain) berlaku hanya untuk isian type = peer
Page | 60
• fromdomain = <domain>
pengaturan from: domain default di pesan (message) SIP pada saat melakukan calls_to_peer. Valid hanya di bagian [general] atau
type = peer
• fullcontact = <sip:uri_contact>
kontak SIP URI untuk koneksi realtime peer. Berlaku hanya untuk realtime peers
• host = dynamic | hostname | IPAddr
alamat IP klien atau hostname. Jika ingin telepon mendaftarkan sendiri, gunakan keyword dynamic jangan menggunakan host IP • incominglimit dan outgoinglimit = number
batasan jumlah panggilan aktif simultan yang dapat dilakukan oleh klien SIP. Berlaku hanya untuk pilhan type = peer
• insecure = very | yes | no | invite | port
menentukan cara menangani sambungan dengan peer. Pilihan defaultnya adalah no (otentikasi bagi semua sambungan)
• ipaddr = ip.addr.dari.peer
berlaku hanya untuk realtime peer
• language = kode bahasa seperti didefinisikan di indication.conf mendefinisikan bahasa untuk sapaan
• mailbox = mailbox
Page | 61
• name = <name>
nama dari realtime peer. Berlaku hanya untuk realtime peer saja • nat = yes | no
variabel ini menentukan pola aksi Asterisk untuk klien di belakang NAT. Namun masih belum menyelesaikan masalah jika Asterisk ada di belakang NAT. Pilihan defaultnya adalah no, yang artinya menggunakan teknik rfc3581
• outboundproxy = alamat IP atau nama DNS SRV
nama SRV name, hostname, atau alamat IP dari outbound SIP proxy. Berlaku hanya di bagian [general] dan type = peer
• progressinband = yes | no | never
apakah nada dering di inband akan dibangkitkan. Pilihan defaultnya adalah never
• promiscredir = yes| no
mengizinkan dukungan untuk 302 Redirects. Pilhan defaultnya adalah no
• qualify = yes | no | milliseconds
periksa apakah klien dapat dihubungi. Jika ya, pemeriksaan akan dilakukan setiap 2000 millisecond atau 2 detik. Hanya berlaku dibagian [general] dan type = peer
Page | 62
• rtptimeout dan rtpholdtimeout = seconds
putuskan hubungan jika dalam x detik tidak ada aktifitas RTP atau dalam posisi on hold. Berlaku hanya untuk bagian [general] dan type = peer
• secret = password
jika Asterisk berfungsi sebagai SIP server, klien SIP harus login menggunakan password, jika asterisk berfungsi sebagai klien SIP ke remote SIP server, dibutuhkan otentikasi SIP invite dan isi secret akan digunakan untuk melakukan otentikasi SIP invite yang dikirim Asterisk ke remote server
• trustrpid = yes | no
jika remote-party-ID SIP header perlu dipercaya. Pilihan defaultnya adalah no
• type = user | peer | friend
hubungan antara client-outbound provider • username = <username[@realm]>
jika berfungsi sebagai klien SIP ke remote SIP server yang membutuhkan otentikasi SIP invite, parameter ini digunakan untuk otentikasi SIP INVITE yang akan dikirim Asterisk ke remote SIP
server. Utnuk peer yang akan mendaftarkan diri ke Asterisk, username digunakan di INVITE sampai mereka terdaftar
• vmexten = <string>
dialplan extension untuk menghubungi mailbox. Pilihan defaultnya
Page | 63 3.4.1.2 EXTENSIONS.CONF
Berbeda dengan PBX tradisional, di mana extension biasanya berasosiasi dengan telepon, interface, atau menu, pada asteriskWin32, extension didefinisikan sebagai sekumpulan perintah untuk dijalankan. Perintah-perintah ini biasanya dijalankan berdasarkan urutan dari tingkat prioritasnya.
Pada saat extension dihubungi, perintah yang diberi tanda 1 akan
dijalankan, diikuti dengan perintah nomor 2 dan seterusnya sampai telepon diletakkan (hang up). Dalam sintaks yang digunakan di file extensions.conf, setiap tahapan perintah dalam sebuah extension ditulis dalam format:
exten = <nomor_extension>,<priority>,<command(parameter)>. Tanda “=”
(sama dengan) dapat diganti dengan tanda “=>”.
File extensions.conf memiliki beberapa bagian, yaitu :
• [general]-Berada di bagian paling atas dari file extensions.conf. Melalui [general], beberapa konfigurasi umum untuk extension dapat dikonfigurasi.
• [globals]-Pada bagian [globals], dapat didefiniskan beberapa variable atau konstanta global dan menginisilaisasi nilainya.
• Dialplan- Dialplan berisi kumpulan dari context, di mana setiap context berisi kumpulan dari extension
Komponen yang membangun perintah extension adalah sebagai berikut:
• Nomor_extension. Label dari extension dapat berupa sebuah string (angka, huruf, dan simbol yang diizinkan) atau pola yang harus dievaluasi secara dinamis untuk mencocokan pola tersebut dengan banyak kemungkinan nomor telepon. Setiap command line yang menjadi bagian dari extension tertentu harus mempunyai label yang sama.
Page | 64
• Priority. Priority biasanya berupa angka integer yang merupakan urutan dari perintah yang harus dijalankan dalam sebuah extension. Perintah pertama yang akan dijalankan harus dimulai dengan prioritas 1, jika tidak terdapat prioritas 1, asteriskWin32 tidak akan menjalankan perintah
extension. Setelah prioritas 2 dijalankan, asteriskWin32 akan melangkah
ke prioritas 2 dan seterusnya (dengan asumsi tidak ada perintah yang menentukan prioritas mana yang selanjutnya harus dijalankan). Jika perintah selanjutnya ternyata tidak terdefinisi, asteriskWin32 akan menghentikan proses eksekusi perintah (walaupun masih ada perintah denggan prioritas lebih tinggi).
• Command adalah “aplikasi” yang akan dijalankan oleh asteriskWin32. • Parameter harus diberikan kepada sebuah perintah (command). Tidak
semua perintah membutuhkan parameter. Beberapa perintah bahkan dapat dijalankan tanpa parameter.
Contoh : exten => 123,1,Answer exten => 123,2,Playback(sound1) exten => 123,3,Voicemail(44) exten => 123,4,Hangup Penjelasan :
Andaikan ada sebuah extension dengan nama “123”. Pada saat ada
panggilan masuk ke extension tersebut, asteriskWin32 akan menjawab panggilan tersebut, menjalankan file suara dengan nama “sound1” dan memberikan kemungkinan bagi pemanggil untuk memasukkan voicemail ke mailbox 33, dan menutup sambungan (hangup)
Page | 65 3.4.1.3 FEATURES.CONF
Pada file ini, dapat dilakukan pengaturan untuk fitur call transfer dan call
parking. Parameter-parameter terdapat pada bagian [general] dan [faeturemap].
• Pada bagian [general]
o parkext => <number>
<number> diisi dengan nomor yang harus di-dial untuk mendapatkan nomor ruang parking
o parkpos => <number-number>
berisi nomor ruang parking yang disediakan o context => <string>
<string> berisi nama yang digunakan pada extensions.conf
sebagai include
o parkingtime => <number>
<number> diisi dengan lamanya waktu tunggu parking. Satuannya
detik. Pilihan default-nya adalah 45 detik. Jika selama waktu yang ditentukan tidak ada yang menghubungi nomor ruang parking yang diberikan, maka panggilan akan dikembalikan kepada penerima semula
o transferdigittimeout => <number>
<number> diisi dengan lamanya waktu tunggu antar digit ketika
Page | 66
• Pada bagian [featuremap] o blindxfer => 0-9 | * | #
tombol yang ditentukan untuk mengaktifkan fitur call transfer atau call parking. Setelah melakukan transfer atau parking maka pihak yang melakukannya hang-up
o atxfer => 0-9 | * | #
tombol yang ditentukan untuk mengaktifkan fitur call transfer atau call parking. Setelah melakukan transfer atau parking, pihak yang melakukannya tidak hang-up
3.4.1.4 VOICEMAIL.CONF
Pada file ini, dapat dilakukan pengaturan untuk fitur VoiceMail. Pengaturan dapat dilakukan pada bagian [general], [default], ataupun context lainnya.
• Bagian [general]
o maxmsg => <number>
Jumlah maksimum pesan yang dapat disimpan. Maximum pesan yang dapat disimpan adalah 9999 dan default-nya adalah 100 pesan o maxmessage => <number>
Berisi waktu maksimum untuk menyimpan pesan (satuan detik). o minmessage => <number>
Berisi waktu mimum agar suatu pesan dapat disimpan. Default-nya tidak ada waktu minimum.
Page | 67
o maxlogins => <number>
Berisi jumlah maksimum percobaan login (memasukkan
password). Jika melewati jumlah pada maxlogins, panggilan akan hang-up.
• Bagian [default]
Pada bagian ini, dapat dibuat mailbox Mailbox dapat dibuat di context yang lain. Perlu diperhatikan bahwa context di mailbox voicemail dengan
context di file extensions.conf tidak saling berhubungan. Perintah untuk
membuat mailbox voicemail adalah sebagai berikut:
Mailbox_number => password,name,email
o Mailbox_number adalah nomor yang digunakan di
extensions.conf untuk perintah VoiceMail().
o password (number dengan tidak ada pembatasan jumlah digit) digunakan ketika pesan akan didengar.
o name (string) diisi dengan nama user yang menggunakan fitur
voicemail.
o e-mail digunakan untuk memberitahu jika terdapat voicemail yang masuk.
Contoh membuat mailbox : [mb_tutorial]
Page | 68
Pada perintah di atas dibuat mailbox context dengan nama
mb_tutorial, mailbox dengan nomor 777, dengan password 1212, yang
dimiliki oleh user bernama deny dengan e-mail deny @sita.com.
3.5 Konfigurasi Jaringan
Pada perancangan sistem yang dibuat, dilakukan juga konfigurasi jaringan yaitu pemilihan alamat IP yang digunakan serta konfigurasi terhadap semua perangkat keras yang terhubung ke jaringan seperti server, user agent (IP Phone dan komputer dengan softphone), router dan media gateway.
3.6 Fitur pada Sistem
Fitur-fitur yang tersedia pada perancangan sistem adalah: call transfer,
call parking dan voice mail. 3.6.1 Call transfer
Call transfer merupakan fitur dimana penerima dapat memindahkan
saluran ke extension yang lain. Pada umumnya, fitur ini digunakan pada operator. Cara kerja call transfer adalah seperti pada gambar 3.3.
Pada saat terjadi komunikasi, penerima menekan tombol ’#’ lalu terdengar suara ”transfer” yang berasal dari server kemudian penerima menekan nomor extension yang dituju, setelah itu penerima hang up dan penelepon akan tersambung dengan ekstension yang di-transfer. Pengaturan fitur call transfer ini dilakukan pada file features.conf dan extensions.conf. Pengaturan tombol untuk melakukan transfer dilakukan pada file features.conf. Pada aplikasi dial yang terdapat di file extensions.conf dapat ditambahkan parameter t atau T dimana t berarti penerima dapat melakukan transfer komunikasi sedangkan T berarti penelepon dapat melakukan transfer komunikasi.
Page | 69
Gambar 3.3 Diagram Call Transfer
3.6.2 Call Parking
Call parking merupakan fitur dimana pengguna dapat berpindah unit
telepon ke telepon lain dalam linkungan SIP PBX tanpa perlu terjadi pemutusan komunikasi. Pada server SIP PBX (Asterisk) terdapat nomor ruang parking yang nantinya diberikan kepada pengguna call parking untuk melanjutkan komunikasi. Cara kerja fitur ini adalah seperti pada gambar 3.4.
Pada saat terjadi komunikasi, penerima menekan tombol ’#’ lalu akan terdengar suara ”transfer” kemudian penerima men-dial nomor yang telah ditetapkan pada file features.conf untuk mendapatkan nomor ruang parking. Penerima akan mendengar nomor ruang parking yang diberikan oleh Asterisk, setelah itu penerima hang up dan user lain melakukan dial ke nomor parking untuk melanjutkan komunikasi. Nomor ruang parking ini dapat diatur pada
Page | 70
Gambar 3.4 Diagram Call parking
3.6.3 Voice mail
Voice mail merupakan fitur yang berfungsi untuk menampung pesan
penelepon jika pihak penerima tidak dapat menjawab panggilan. Setiap user memiliki mailbox-nya sendiri dimana pada mailbox tersebut nantinya disimpan pesan dari pihak penelepon. Cara kerja fitur ini dapat dilihat pada gambar 3.5 dan gambar 3.6.
Page | 71
Page | 72
Gambar 3.6 Diagram Mendengarkan Voice mail
Pada saat penelepon men-dial nomor extension penerima, namun tidak dijawab karena sibuk atau lain hal maka penelepon akan masuk ke dalam fitur
Page | 73
pesan suara untuk penerima. Pemilik mailbox dapat mendengarkan pesan suara pada mailbox nya dengan cara men-dial 8 diikuti nomor extensionnya, setelah itu pemilik mailbox diminta memasukan password, jika password yang dimasukan salah, maka akan diminta memasukan password lagi. Pemilik mailbox hanya diberikan kesempatan 3 kali untuk memasukan password, jika melebihi 3 kali maka sambungan telepon akan terputus. Berbagai menu pada saat pemilik
mailbox berhasil mengakses mailbox adalah sebagai berikut:
o 0 Mailbox options
1 Rekam unaavailable message 2 Rekam busy message
3 Rekam nama kita 4 Ubah password kita * Kembali ke menu utama
o 1 Dengarkan pesan-pesan lama o 2 Ubah folders o 3 Advanced options 1 Send reply 2 Call back 3 Envelope 4 Outgoing call 5 Leave message
Page | 74
o 4 Play pesan sebelumnya o 5 Repeat pesan
o 6 Play pesan sebelumnya o 7 Delete pesan ini
o 8 Forward pesan ke mailbox lain o 9 Save pesan di sebuah folder
* Help; saat playback pesan:Rewind # Exit; saat playback pesan:Fastforward
Pemilik mailbox hang up jika ia telah selesai mendengarkan pesan-pesan suara atau mengatur mailboxnya.
Contoh membuat mailbox pada file features.conf: [mb_tutorial]
777 => 1212,deny,deny@sita.com
Pada perintah di atas akan dibuat mailbox context dengan nama
mb_tutorial, mailbox dengan nomor 777, dengan password 1212, yang dimiliki
oleh user bernama deny dengan e-mail deny@sita.com. Perintah di bawah ini digunakan agar user yang menelepon deny pada extension 1234 dapat meninggalkan pesan ke mailbox deny:
VoiceMail(mailbox_number@context)
Perintah di atas dituliskan di file extensions.conf.
Contoh pada extensions.conf :
Page | 75 exten => 1234,2,VoiceMail(777@mb_tutorial)
exten => 1234,3,HangUp()
Pada contoh di atas, saat nomor 1234 di-dial, AsteriskWin32 akan mencoba men-dial user yang memiliki nomor extension 1234. Jika panggilan tidak diangkat melebihi waktu 30 detik, prioritas selanjutnya yang akan dijalankan AsteriskWin32 adalah membuka mailbox 777 pada context mb_tutorial. Pada proses ini penelepon diminta untuk meninggalkan pesan. AsteriskWin32 akan menjalankan prioritas berikutnya yaitu hangUp setelah penelepon selesai meninggalkan pesan. Pesan voicemail tersimpan pada direktori
cygroot\asterisk\spool\voicemail.
VoiceMailMain digunakan untuk mendengarkan pesan. Pengaturan untuk
mendengar pesan dilakukan pada file extensions.conf. Perintah di AsteriskWin32 adalah :
VoiceMailMain(mailbox@context).
Contoh aplikasinya pada extensions.conf :
exten => 9999,1,VoiceMailMain(777@mb_tutorial)
Penelepon yang men-dial nomor 9999, akan masuk ke mailbox 777 dan penelepon akan diminta password. Jika password berhasil, maka penelepon tersebut dapat memilih menu untuk mengatur mailbox-nya.