VoIP: Konfigurasi Linksys SPA400 dengan Asterisk

From OnnoWiki
Revision as of 14:02, 3 January 2010 by Onnowpurbo (talk | contribs)
Jump to navigation Jump to search

Bagi anda yang membutuhkan banyak sambungan ke PSTN, salah satu alternatif yang mungkin menarik untuk digunakan adalah Linksys SPA400 yang memiliki FXO empat (4) buah yang dapat di sambungkan langsung ke PSTN. Di samping itu, Linksys SPA400 memiliki USB flashdisk untuk menyimpan voicemail.


Menggunakan SPA400 dengan Asterisk

Langkah yang perlu dilakukan untuk mengkaitkan Linksys SPA400 ke Asterisk adalah sebagai berikut

  • Konfigurasi IP address SPA400
  • Konfigurasi Account Asterisk di SPA400
  • Konfigurasi /etc/asterisk/sip.conf di Asterisk agar mendaftarkan ke SPA400
  • Konfigurasi /etc/asterisk/extensions.conf di Asterisk agar melalukan dialout menggunakan SPA400

Mengkonfigurasi Linksys SPA400 tidak sukar dan dapat dilakukan melalui Web. Username default adalah Admin (A huruf besar) tanpa password.


Mengkonfigurasi IP address dari Linksys SPA400 tidak sukar dan dapat dilakukan melalui menu Setup -> Basic Setup -> Setup agar SPA400 menggunakan fixed IP address. Jangan menggunakan Dynamic IP address karena Asterisk harus dapat mencari SPA400 dan mendaftarkan diri ke SPA400.

Jika di butuhkan, kita juga dapat menset DNS dan NTP server yang digunakan. Bagi mereka yang menggunakan Speedy dapat menggunakan DNS Server berikut,

202.134.2.5
203.130.196.5

Beberapa NTP server yang cukup aman digunakan adalah

time.nist.gov
pool.ntp.org

Tekan tombol Save Settings setelah semua konfigurasi selesai dilakukan.

Selanjutnya adalah mengkonfigurasi account agar Asterisk atau SPA9000 dapat login ke SPA400. Cara yang perlu dilakukan adalah masuk ke menu Setup-> SPA9000 Interface -> Ubah User ID menjadi username untuk login, dalam contoh digunakan 9000.

Ubah agar SPA9000 Address di set untuk Discovery Automatically. Untuk menambah keamanan, jika SPA400 telah berhasil jalan dengan dengan baik, maka Asterisk server dapat di set ke nilai yang di peroleh agar cocok dengan informasi server SPA400.

Setelah selesai semua dilakukan, kita perlu menekan tombol Save Settings untuk menyimpan konfigurasi.


Konfigurasi Asterisk

Pada sisi Asterisk /etc/asterisk/sip.conf, kita perlu mengkonfigurasi account yang persis sama dengan User ID SPA400.

Entry di /etc/asterisk/sip.conf agar Asterisk mendaftarkan diri ke SPA400 adalah sebagai berikut

[general]
register => 9000@192.168.0.6/9000

Ganti 9000 dengan nilai yang anda masukan di User ID SPA400, dan ganti 192.168.0.6 dengan IP address dari SPA400.

Buat SIP entry untuk SPA400, dengan informasi berikut

user: User ID SPA400
host: IP address dari SPA400 
context: context yang akan digunakan untuk menangani panggilan inbound dari SPA400 

Entry SIP untuk menerima call dari SPA400 kira-kira sebagai berikut

[9000]
type=friend
user=9000
host=192.168.0.6
dtmfmode=rfc2833
canreinvite=no
context=from-trunk
insecure=very

Untuk melihat apakah kita telah terdaftar dengan baik ke Asterisk atau belum, dapat dilihat menggunakan perintah

localhost*CLI> sip show registry
Host                            Username       Refresh State
192.168.0.6:5060                9000               105 Registered

Pada file extension.conf kita dapat mengkonfigurasi routing untuk dial-out dengan menggunakan SPA400. Sebuah contoh konfigurasi generik untuk route dial-out dengan menekan tombol 9 dan masuk ke trunk SPA400 FXO kira-kira bentuknya adalah sebagai berikut

[general]
TRUNK=SIP/9000
TRUNKMSD=1

[trunkint]
;
; International long distance through trunk
;
exten => _9011.,1,Macro(dundi-e164,${EXTEN:4})
exten => _9011.,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})

[trunkld]
;
; Long distance context accessed through trunk
;
exten => _91NXXNXXXXXX,1,Macro(dundi-e164,${EXTEN:1})
exten => _91NXXNXXXXXX,n,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) 

[trunklocal]
;
; Local seven-digit dialing accessed through trunk interface
;
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) 

[trunktollfree]
;
; Long distance context accessed through trunk interface
;
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}}) 

Dengan catatan bahwa nomor account SPA400 di Asterisk adalah 9000.

Routing call yang masuk lebih kompleks lagi. Jika kita asumsikan call yang masuk akan di sambungkan ke extension 200, maka kira-kira sebagai berikut

[from-trunk]
include => from-pstn
... 

[from-pstn]
include=> from-pstn-custom
...

[from-pstn-custom]
exten=>9000,1,Goto(ext-local,200,1) 

Pranala Menarik