( gergelykiss | 2013. 10. 14., h – 21:09 )

Van egy VoIP szerverünk az irodában, ami egy Core 2 Duo-s, 2 GB RAM-os PC-ből lett kiépítve, Elastix 2.4 fut rajta (asterisk 1.8). Valamikor év elején lett felhúzva a meglévő digitális telefonközpont kiegészítéseként, azóta minden bejövő/kimenő hívásunk átmegy rajta. SIP mellékek, digitális és analóg mellékek vegyesen vannak a rendszerben, minden irányban tökéletes az átjárhatóság.

Az Elastix-ról tudni kell, hogy CentOS-re épül, ezáltal atomstabil - soha nem kellett újraindítanunk, ezidáig egyszer sem hagyott minket cserben (egyszer egy áramszünet miatt mégis szükség volt egy reboot-ra, mivel a bejövő ISDN PRI vonal furcsa hibákat produkált, de ez nem a szerver hibája volt).

Végigszaladnék a követelménylistádon:

  • vannak sip telefon(ok), / sip cliensek (szoftveres) -> alapfunkció, ki fogja szolgálni mindkettőt gond nélkül
  • vannak bejövő számok (per telefon), ami SIP accountra átdobja a bejövő hívást -> alapfunkció, inbound route-ok kellenek hozzá. Csak megadod melyik számot melyik mellékre akarod bedobni és kész.
  • van kimenő hívásokra freevoipdeal (vagy akármi), ez is per telefon -> a kimenő hívások tetszőlegesen route-olhatók dial pattern-ek használatával. Ahány VOIP-szolgáltató van, annyi trunk-ot kell felvenned, utána te választhatod ki, hogy a hívások melyik trunk-on menjenek ki, akár callerid alapján is.
  • a bejövő hívásnál nézni kéne, hogy van e caller id, ha nincs akkor bemondani előre felvett üzenetet, amelyik számra be van ez állítva -> erre valószínűleg saját szkriptet kell majd írnod, de nem bonyolult, sok segítség van a neten, akár még példakódokat is találhatsz
  • minden be és kimenő hívást rögzíteni és ezt be is mondani, valamint ezt akár per telefon be és kikapcsolni -> alapfunkció, akár globálisan, akár mellékenként állítható. IVR-rel megoldható, hogy a kapcsolás előtt bemondja, hogy a hívás rögzítésre kerül.
  • SMS képes legyen (fogadni) -> ilyet úgy látom, nem tud alapból az Elastix. Asterisk támogatja (SIP-en keresztüli SMS küldés), de ilyennel még nem próbálkoztam.
  • Bekapcsolható üzenetrögzítés, akár úgy, hogy bizonyos számokról jövő hívás esetén csörögjön ki, mástól meg ne -> elvileg van ilyen is, de nem próbálkoztam még vele
  • bejövő számra hívásátirányítás hagyományos telefonszámra -> szintén alapfunkció
  • nomeg az összes alap funkció menjen, hívásátadás, várakoztatás, stb. -> meglesz :)
  • felcsatlakozott telefonokat közvetlenül meghívni, mint melléket -> szintén alap, házon belüli mellékeket minden további nélkül lehet csörgetni, illetve felhasználni szkriptekben és dial pattern-ekben

Amire figyelj, hogy csak úgy internetre nem nagyon érdemes kitenni SIP szervert, ugyanis a hackerek előszeretettel támadják.

A telefonközpontok virtualizálását én személy szerint erősen ellenzem. Valós idejú szolgáltatásról lévén szó, a rendszer érzékeny az interruptokra és a rendelkezésre álló processzoridőre. Minden egyes megszakítások miatt kieső ezredmásodperc problémákat okozhat a hangminőségben (kihagyások, késleltetések, szaggatott hang). Én dedikált fizikai szerverrel javasolnám ezt megoldani, tekintve, hogy viszonylag sok funkciót kell majd ellátnia (bár azt nem írtad, hogy hány userről lenne szó).

Dióhéjban: egy kisebb fizikai szerverre felrakod az Elastix-ot és azt beadod hostingba valahová (lehetőleg megbízható szolgáltatóhoz), majd IP-szűréssel (csak a VPS IP-tartományából/tűzfal IP-címéről) engedélyezet a bejövő kapcsolatokat. Felkonfigurálod, amire szükséged van, utánanézel annak, amiben esetleg elakadtál és készen is vagy.

Ha kevésbé vagy vállalkozószellemű, vagy nem tudsz időt szánni rá, az is lehet egy opció, hogy megbízol egy profi, VoIP-pal foglalkozó céget, aki pénzért, de garantáltan (jól) működően megcsinálja neked, amit szeretnél. :)