Asterisk

A Unix/Linux szerverek üzemeltetése wikiből
(Változatok közti eltérés)
(modulok)
(SIP)
43. sor: 43. sor:
   
 
==== /etc/asterisk/sip.conf ====
 
==== /etc/asterisk/sip.conf ====
==== /etc/asterisk/h323.conf ====
+
A csatorna általános jellemzőinek beállítását és a SIP csatornák felvételét oldjuk meg itt. Az általános beállítások:
  +
* a [general] részben
  +
* IPcím, port: bindaddr, bindport
  +
* külső IP cím (NAT esetén fontos): externip
  +
* helyi hálózati tartomány: localnet (ha van NAT is, akkor kell, hogy mikor használja az externip-t a SIP fejlécben)
  +
* vendégek beengedése: allowguest (lényegében az, hogy legyen-e autentikáció, de figyeljünk oda, vannak kliensek, amik nem támogatják az autentikációt, ekkor allowguest=yes legyen)
  +
* hívás előzmények rögzítése: recordhistory
  +
* videó hívás támogatása: videosupport (csak két végpont között, a videó konferencia még nem támogatott)
  +
Egy csatorna (és itt ez lényegében egy kliens, végpont) felvétele:
  +
* [SIP név] szekció
  +
* típus: type={friend, user, peer} - a user csak bejövő, a peer csak kimenő, a friend pedig két irányú csatornát jelöl
  +
* használt/nem használt codec-ek: allow, disallow
  +
* csoportok: callgroup, pickupgroup, segítségükkel az adott csoportba tartozó csatornák válaszolhatnak a többi csoporttagnak szóló hívásra (felvehetik)
  +
* melyik dial plan vonatkozzon a csatornára: context
  +
* IP cím, port: host={IP vagy "dynamic"}, port=...
  +
* NAT mögött van-e a kliens: nat=...
  +
* felhasználói név, jelszó: username, secret
  +
Egyes opciók, mind pl. a recordhistory beállítható csatornánként is.
  +
 
==== /etc/asterisk/extensions.conf ====
 
==== /etc/asterisk/extensions.conf ====
 
==== /etc/asterisk/queues.conf ====
 
==== /etc/asterisk/queues.conf ====

A lap 2007. december 28., 03:44-kori változata

Az Asterisk egy nyílt forrású szoftveres alközpont. A megfelelő hardverrel képes pl. primer ISDN trönk kezelésére is, de most csak VoIP használatra térünk ki. Támogatja többek közt a két legelterjedtebb, a SIP és a H.323 protokollokat, illetve az Asterisk fejlesztői készítettek egy új protokollt is, az Inter-Asterisk eXchange-t.

Tartalomjegyzék

1 Az Asterisk telepítése

Lehet fordítani is, de csomagból is felrakhatjuk. A részletekbe nem mennék bele, mindenki használt már apt-get -et vagy make-et. A szükséges csomagok:
- asterisk
- asterisk-sounds
- libpri
valamint ha nem csak VoIP-t szeretnénk, vagy időzítés szükséges hardveresen (pl. a MeetMe konferenciához), és van is megfelelő hardverünk, akkor szükségesek még:
- zaptel
- libzap1.

2 A konfiguráció

2.1 A konfigurációs fájlok

A szintaxisról:

  • szekciók megjelölése: [szekció neve]
  • megjegyzések: ";" után
  • értékadás: "="
  • további fájlok figyelembe vétele: #include "filename.conf"
  • változók értékeire hivatkozás: ${változó_neve}
  • valamint használatos sok esetben a "=>", pl. egy dial plan kialakításakor (ha valaki meg tudja szépen fogalmazni a célját, ne habozzon :))

A továbbiakban áttekintjük a fontosabb konfigurációs fájlokat.

2.1.1 /etc/asterisk/modules.conf

Sokan elhanyagolják ennek megfelelő beállítását, ami nagy hiba: pár stabilitási problémát ki lehet küszöbölni, ha csak a szükséges modulokat töltjük be, pl. ha csak SIP-et használunk, ne töltsük be feleslegesen a chan_h323.so-t, a chan_iax.so -t. Fontos lehet még kiszedni a nem használt modulokat, ha a PBX-ünket mondjuk egy OpenWRT-s routeren akarjuk kialakítani.

  • egy szekció: [modules]
  • egy beállítható paraméter: autoload=no; érdemes no-n hagyni a fent említettek miatt
  • három féle utasítás:
    • load => chan_sip.so ; modul betöltése
    • noload => chan_h323.so ; modul kihagyása
    • preload => res_odbc.so ; modul betöltése az asterisk core inicializálása előtt - ritkán van rá szükség.

Milyen modulokat is lehet betölteni?

  • források (resources), pl. res_musiconhold.so, általában külön konfigurációs fájllal rendelkeznek
  • alkalmazások, pl. app_dial.so, a dial plan -ben használt utasítások
  • adatbázis csatolók, pl. cdr_psql.so, ha a hívások adatait nem plain text-ben akarjuk tárolni
  • csatorna kezelő modulok, pl. chan_sip.so
  • codec-ek, pl. codec_ulaw.so
  • formátumok, pl. format_wav.so, hasonló a codec-hez, csak nem live media stream-hez, hanem fájlokhoz
  • PBX core modulok, pl. pbx_config.so
  • egyedülálló funkciók, pl. func_callerid.so, megvan a pdb_functions.so -ban is, de ha nem akarjuk az egészet betölteni...

2.1.2 /etc/asterisk/sip.conf

A csatorna általános jellemzőinek beállítását és a SIP csatornák felvételét oldjuk meg itt. Az általános beállítások:

  • a [general] részben
  • IPcím, port: bindaddr, bindport
  • külső IP cím (NAT esetén fontos): externip
  • helyi hálózati tartomány: localnet (ha van NAT is, akkor kell, hogy mikor használja az externip-t a SIP fejlécben)
  • vendégek beengedése: allowguest (lényegében az, hogy legyen-e autentikáció, de figyeljünk oda, vannak kliensek, amik nem támogatják az autentikációt, ekkor allowguest=yes legyen)
  • hívás előzmények rögzítése: recordhistory
  • videó hívás támogatása: videosupport (csak két végpont között, a videó konferencia még nem támogatott)

Egy csatorna (és itt ez lényegében egy kliens, végpont) felvétele:

  • [SIP név] szekció
  • típus: type={friend, user, peer} - a user csak bejövő, a peer csak kimenő, a friend pedig két irányú csatornát jelöl
  • használt/nem használt codec-ek: allow, disallow
  • csoportok: callgroup, pickupgroup, segítségükkel az adott csoportba tartozó csatornák válaszolhatnak a többi csoporttagnak szóló hívásra (felvehetik)
  • melyik dial plan vonatkozzon a csatornára: context
  • IP cím, port: host={IP vagy "dynamic"}, port=...
  • NAT mögött van-e a kliens: nat=...
  • felhasználói név, jelszó: username, secret

Egyes opciók, mind pl. a recordhistory beállítható csatornánként is.

2.1.3 /etc/asterisk/extensions.conf

2.1.4 /etc/asterisk/queues.conf

2.2 Alternatív konfiguráció: CLI

3 Sipura VoIP gateway

3.1 A gateway beállítása

3.2 Az Asterisk beállítása

3.3 Tippek, meg amikre figyeljünk oda

3.4 Egy összetett példa

Személyes eszközök