VoIP és Asterisk
Csillag Tamás
<cstamas@digitus.itk.ppke.hu>
http://digitus.itk.ppke.hu/~cstamas
Jelen dokumentum a Creative Commons license by-sa alatt érhető el.
Előadás áttekintése
- Kedvcsináló
- Gyors áttekintés
- VoIP protokollok
- PPKE-ITK <-> NIIF VoIP kapcsolat
- Néhány további példa az Asterisk alkalmazására
- Távlati célok
H.323
- ITU szabvány (2. változat)
- csomagalapú, de beszél az ISDN-ről is
- több nyelvjárása van (sajnos) <- több gyártó
- kliens - szerver modell
- M$ Netmeeting
- videokonferencia
- bonyolult működés
- H.225 kapcsolatfelépítésben vesz részt
H.245
- végpontok képességeinek egyeztetése (negotiation)
- ASN.1 szabvány szerint kódolva
- "hasznos" adat RTP-vel történik
- ezért NAT-tal nem működik
- az ITU specifikációhoz $$$ ellenében lehet hozzájutni
SIP
- H.323 volt uralkodó megjelenésekor
- szabadon elérhető leírás
- beszédes üzenettípus (SMTP, HTTP -szerű)
- bővíthető formátum (nem csak hang/videó)
- XML -re emlékeztett
SDP
- mint a H.245
- paramétereke egyeztetése
- peer-to-peer
- szintén RTP, NAT probléma
- STUN szerverek segítenek
- SRTP (nem nagyon használják)
IAX
- jobb? - inkább más!
- bináris protokoll
- nem szabvány, de "szabad", sok implementáció
- elsősorban hang és videóátvitel
- 1 porton történik a kommunikáció
- minden egy csomagban!
- nincs RTP, nincs NAT probléma
- trunking (egy csomagban több csatorna)
- RSA kulcsok használata
PPKE-ITK <-> NIIF VoIP kapcsolat
Asterisk
- Telefonközpont
- SIP szerver, IAX szerver
- Nyitott lehetőségek
- Speciális hardware-t nem igényel (persze lehet)
- Moduláris felépítés, könnyen bővíthető
- Analóg vonalak
- E1/T1 kapcsolatok
- Bluetooth
- Számtalan internet alapú protokoll
Key phone system Asterisk-szel
sip.conf
[general]
port = 5060
bindaddr = 0.0.0.0
context = default
[103]
type = friend
context = kts
username = 103
callerid = 103
host = dynamic
qualify = yes
canreinvite = no
[104]
...
username = 104
callerid = 104
...
Key phone system Asterisk-szel (2)
extensions.conf
[kts]
exten => s,1,Answer() ; nélküle mást jelent!
exten => s,2,Dial(SIP/104&SIP/103,40,r) ; egyszerre csörög a 2 telefon
[hunt]
exten => 100,1,Dial(SIP/103,10,r) ; egymás után ...
exten => 100,2,Dial(SIP/104,10,r) ; ... csörögnek a telefonok
Linksys wrt54gs (OpenWRT) =! v5
Linksys... (2)
1. SIP hívás (nincs transcoding)
- 3Mb memória (32Mb RAM-ból)
- 20Mhz (200Mhz -es MIPS processor)
- 900Kb méretű Asterisk (8Mb-ból)
- IAX kapcsolat a szerverhez, SIP szerverként működik
IAX kapcsolat két Asterisk között
iax.conf @ rivendell.itk.ppke.hu
[cstamas_linksys]
type=friend
context=internal
auth=md5,rsa
host=dynamic
notransfer=yes
accountcode=cstamas_linksys
IAX kapcsolat két Asterisk között (2)
iax.conf @ westfold (linksys)
[general]
register => cstamas_linksys:secret_pass@rivendell.itk.ppke.hu
[asterisk_ppkepbx]
type=friend
host=rivendell.itk.ppke.hu
context=inbound
username=cstamas_linksys
extensions.conf
[globals]
PROVIDER=IAX2/asterisk-ppke-pbx
[internal]
exten => _06XXXXXXXXX,1,Dial(${PROVIDER}/${EXTEN})
exten => _06XXXXXXXXX,2,Congestion()
exten => _06XXXXXXXXX,102,Congestion()
Bluetooth
A bluetooth használatával, kis erőfeszítéssel látványos dolgokat végezhetünk
Presence
Headset emuláció
bluetooth.conf
[general]
rfchannel_hs = 3
interface = 0
[00:11:22:33:44:55]
name = n6310i
channel = 13
autoconnect = yes
Továbbfejlesztési lehetőségek
Az egyetem most épülő szárnyában új telefonokra lesz szükség
Feladat: analóg telefonoknak csatlakozást biztosítani
Megoldási lehetőségek
- Channel bank - E1-es trunk telefonportokká alakítása
- Ericsson telefonközpontba VoIP kártyát venni?
Köszönet
Köszönöm Pásztor Miklósnak aki a projekt során végig támogatott, Tirpák Miklósnak aki a kezdeti lépésekben segített. Takács Györgynek aki a "hagyományos telefonok" világába segített elkalauzolni. Köszönöm a NIIF és a Sztaki munkatársainak barátságos hozzáállását és segítségét.