VoIP: Konfigurasi Linksys SPA400 dengan Asterisk

From OnnoWiki
Jump to navigation Jump to search
Linksys SPA400

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.

Menu Basic Setup pada Linksys SPA400

Mengkonfigurasi IP address dari Linksys SPA400 tidak sukar dan dapat dilakukan melalui menu Setup -> Basic Setup -> Setup agar Linksys SPA400 menggunakan fixed IP address. Jangan menggunakan Dynamic IP address karena Asterisk harus dapat mencari Linksys 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.

konfigurasi SPA9000 user ID pada Linksys SPA400

Selanjutnya adalah mengkonfigurasi account agar Asterisk atau Linksys 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 Linksys 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