Tärniga telefoniserveri seadistamine nullist. Asteriski telefoni installimine ja konfigureerimine Linux Ubuntus. Lühiülevaade saadaolevatest moodulitest: moodulite haldus

23.02.2012 15:56

Artikkel, mis võimaldab algajatel programmeerijatel teha põhilise tärni seadistamise

Asterisk on üks levinumaid IP-telefoniservereid koos selliste süsteemidega nagu Switchwox ja 3CX. Suurem populaarsus see süsteem mis on saadud kvaliteetse Interneti levikuga meie riigis, aga ka paljude telefonipakkujate poolt telefoninumbrid SIP-vormingus ehk nn SIP-numbrites. Üheks selliseks ettevõtteks on Datagroup, mis on end kinnitanud sideteenuste turul ühe liidrina. SIP-numbrite odavnemisega on mõttekas kasutada kaasaegset telefonisüsteemid Vana analoog-mini-PBX asemel IP-telefon. Selle põhjuseks on Asteriskil põhinevate kõnekeskuste laialdane funktsionaalsus. Samal ajal on seadmete ja Asteriski seadistamise maksumus praktiliselt sama, mis rahalistes kuludes.

Tärni installimine toimub Digiumi poolt välja töötatud vabalt levitatava lähtekoodi allalaadimise ja seejärel kompileerimisega. Tärniallikad on olemas ainult unixiga ühilduvate operatsioonisüsteemide jaoks, millest levinumad on Linux ja FreeBSD. Tärni installimine Windowsi alla on võimalik ainult virtuaalse masina rakendamisel. Tärni uusimad versioonid saate alla laadida järgmiselt lingilt. Peal Sel hetkel Selle serveri 4 versiooni töötatakse korraga välja. Versioonidel tärn 1.4 ja tärn 1.6 on kõigist moodulitest suurim stabiilsus. Teisest küljest on funktsionaalsuse osas võrreldav versioon tärniga 1.8, millel on paljude uute moodulite ja funktsioonide tugi, sealhulgas SRTP-protokolli tugi, töö IPv6-ga ja töövõime paranemine SIP-i ja ISDN-iga töötamisel.

Selles artiklis käsitletakse asteriski versiooni 1.6.22 installimist Linux Fedora Tuum.

Installimise alustamiseks laadige alla tärniga tähistatud allikad. Selleks käivitage serverikonsoolis järgmised käsud:

# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.2.22.tar.gz

# tar -xzvf tärn-1.6.2.22.tar.gz

Enne allikate koostamist paigaldame kõik vajalikud kaasasolevad moodulid ja utiliidid:

# yum installige gcc

# yum installige gcc-c++

# yum install make

# yum installige libxml2-devel

# yum install ncurses-devel

Pärast kõigi täiendavate utiliitide installimist installime tärni enda:

# cd tärn-1.6.2.22

Pärast edukat installimist leiate kataloogist /etc/asterisk konfiguratsioonifailid tärn"a. Tärni seadistamine toimub konfiguratsioonifailide redigeerimise teel, millel on väga spetsiifiline struktuur ja operaatorid. Tärni seadistamisel on konfiguratsiooni aluseks failid sip.conf ja extensions.conf. Neid faile uurides ja redigeerides saate tagama serveri õige töö.

Fail sip.conf sisaldab kõigi serveris registreeritud SIP-seadmete sätteid, mis seejärel suhtlevad üksteisega, ühendades kaks või enam SIP-kanalit, käivitades seeläbi telefoniühendus- see tähendab kõne.

Faili sip.conf näide:


kvalifitseeruda = jah
nat=ei


vaikimisi kehtivusaeg = 3600
keelama=kõik
luba=seadus
luba=ulaw
kasutajalt=044XXXXXXX
host = 80.91.169.2
ebaturvaline=kutsu,port
Secret=xxxxxxxxxxxxx
tüüp=peer
kasutajanimi=044XXXXXXX
kontekst=sissetulev
keel=et
kvalifitseeruda = jah
dtmfmode=auto


tüüp=sõber
host=dünaamiline
ebaturvaline=kutsu,port
kasutajanimi=fxo
secret=xxxxxxxxxx
kontekst=sissetulev
kvalifitseeruda = jah
nat=ei
canreinvite=ei
allowtransfer=ei
dtmfmode=auto
keelama=kõik
luba=seadus
luba=ulaw


tüüp=sõber
regexten=101
Secret=xxxxxxxxxxxxxx
kontekst=sisemine
host=dünaamiline
callerid="101"
keelama=kõik
luba=seadus
luba=ulaw
keel=et
kõnegrupp=1
pickupgroup=1
kvalifitseeruda = jah
canreinvite=jah
kõnepiirang=4
nat=ei

See näide näitab lihtsat SIP-seadmete loendit. On lihtne märgata, et konfiguratsioon sisaldab nurksulgudes olevaid plokke. Just need plokid kirjeldavad mis tahes seadmete (eakaaslaste) konfiguratsiooni Asteriski seadistamisel. Vaatame lühidalt läbi plokid ja kõige elementaarsemad parameetrid.

Plokk on vajalik. See sisaldab sätteid ja valikuid, mis kehtivad vaikimisi kõikidele plokkidele. Ehk kui seadme kirjeldamisel parameetrit ei täpsustata, siis Asterisk loeb selle sellest plokist.

Järgmised kolm plokki kirjeldavad otseselt SIP-seadmeid. Selguse huvides on kõigil kolmel seadmel erinev eesmärk. Plokis kirjeldatakse Datagroupi ettevõtte sip-numbri parameetreid, plokis VOIP-lüüsiga ühenduse loomise parameetreid ja plokis tavalise sisemise sip-seadme parameetreid, mida saab kasutada tarkvara- või riistvaraline IP-telefon. .

Vaatame üle SIP-seadmete peamised parameetrid. Konteksti parameeter määrab, millist tegevusalgoritmi konkreetsele seadmele rakendada. Callerid määrab partneri numbri ja nime, mis kuvatakse, kui sellelt helistatakse. Keelamise ja lubamise valikud määravad, milliseid koodekeid suhtluseks kasutada. Salajane valik on selle partneri registreerimise parool. Soovitatav on muuta paroolid piisavalt keeruliseks, et vältida pahatahtlike häkkimist.

Fail extensions.conf kirjeldab kontekstide ja suhtluskanalite vahelisi koostoimeid, mida võib olla palju. Tegelikult on see fail tärni seadistamisel peamine.

Näidisfail extensions.conf:


laiend => _XXX,1,valimine(SIP/$(EXTEN),120,tT)
exten => _XXX,n,Lõpeta

Laiend => _X.,1,Dial(SIP/andmerühm/$(EXTEN),120,tT)
exten => _X.,n,Lõpeta


laiend => _X.,1,Dial (SIP/101,60,tT)
exten => _X.,2,Katkesta

Pikenda => h,1,Katkesta

Selles kõige lihtsamas näites on meil kaks toimingute algoritmi (kontekst) – sisemine ja sissetulev. Tuletagem meelde, et kontekstidega sidumine toimub eakaaslaste loomisel failis sip.conf ja seejärel määratakse see failis extensions.conf, kui proovite alustada suhtlust kaaslasega.

Kirjeldame neid kahte konteksti üksikasjalikumalt. Juba nende nimede järgi saab selgeks, et neid kasutatakse siseabonentide ja sissetulevate kõnede algoritmide jaoks. Üldine näide, mida saab väljendada järgmisel real, aitab teil mõista selle faili kujundust:

Laiendus => _XXX,n,käsk(valikud)

Need valikud dešifreeritakse järgmiselt:

Exten => _XXX on teenuse prefiks, millega algavad peaaegu kõik selle faili read. See kirjeldab sissetuleva konteksti esitust. Teisisõnu, kui selle konteksti võttis ühendust kaaslase number 101, peaks selle algoritm algama konstruktsiooni laiendiga => 101. Prefiks toetab regulaaravaldisi ja seda saab määrata üldiselt. Näiteks exten => _XXX näitab, et see algoritm hõlmab kõiki kolmekohalisi partnereid.

N - algoritmi rea number. Igas programmikoodis on rida lauseid, mida täidetakse kordamööda. Samamoodi on selline jada ka tärni seadetes. Ainus erinevus seisneb selles, et tärniga täidetavad käsud on nummerdatud. Esimese rea selgesõnaline märkimine on kohustuslik. Nagu olete ehk märganud, algavad kõik kontekstid ridadega:

Laienda => _XXX,1,…..
laiendada => _X.,1,…..
pikendada => h,1,……

Kuid edasisi ridu saab nummerdada kaudselt, st järgmiselt:

Laienda => _XXX,n,…..
laiendada => _X.,n,…..
pikendada => h,n,……

Kui rea number on kaudselt määratud, käivitab tärn need järjestikku ülalt alla, nagu iga muu koodi puhul.

Käsk – käsk täidetakse tärniga. Põhilisi käske pole nii palju. Sest põhiseaded Piisab teada käsu Dial süntaksit, mille abil vaatame ülejäänud valikuid.

Näiteks:
exten => _X.,1,Dial(SIP/101,60,tT) – tärn valib laienduse 101 ja proovib 60 sekundi jooksul abonendini jõuda, võimalusega helistaja ja vastuvõtva partneri kõne pealt kuulata (tT valikud)
exten => _X.,1,Dial(SIP/datagroup/$(EXTEN),120,tT) tärn valib numbri, mis edastatakse muutujas $(EXTEN), kasutades eelnevalt failis sip.conf määratud andmerühma sarnast

Esimest näidet kasutati sissetulevas kontekstis. See tähendab, et kõik sellesse konteksti tulevad sissetulevad kõned suunatakse ümber siseabonendile, kes kõnedele vastab. Teine näide omakorda näitab, kuidas väljaminev kõne valitud numbri edastamine teenusemuutujas $(EXTEN).

Näidisfaile saab otse sellest artiklist kopeerida ja kleepida failidesse sip.conf ja extensions.conf ning muuta mõningaid valikuid (sisselogimised, partnerite nimed, paroolid jne). Pärast tärni seadistamist käivitame serveri lihtsa käsuga:

Edasised toimingud saab valmistada käsurida tärn, mis käivitatakse käsuga:

# tärn -rvvvvd

Kui olete konsoolis, saate kontrollida oma serveri tööd. See kuvab kõik toimingud, mida see teeb.

P.S. Kui teil ei õnnestunud serverit konfigureerida või vajate keerukamat konfiguratsiooni, aitame teid hea meelega tärni konfigureerimisel. Meie kontaktid.


Kanalite konfiguratsioonifail asukohas , nii sissetulevate kui ka väljaminevate kõnede jaoks.

Iga SIP-klient või -server on selles failis määratletud tekstiplokina, mis on sarnane allolevale:


tüüp=aaa
parameeter1=väärtus
parameeter2=väärtus

Kus xxx on SIP-kliendiga seotud nimi või see võib olla suvaline SIP-seadme nimi, millele saab viidata muudest konfiguratsioonifailidest. Tavaliselt, kui SIP-telefoni laiendinumber on 123, algavad selle faili vastavad sätted reaga . Pange tähele, et sellele laiendile 123 helistamiseks peate seda oma valimisplaanis kirjeldama. võib olla: "kasutaja", "kaaslane" või "sõber".

Tärniserver määrab päise From: kasutajanime alusel, kas sissetulev kõne kattub seadme nimega klientide puhul, mille tüüp=kasutaja (SIP-domeeni eirates). Teine võimalus sissetulevate SIP-päringute töötlemiseks on teha kindlaks, kas need vastavad selle faili jaotisele, kasutades sissetuleva päringu IP-aadressi, et teha kindlaks, kellelt päring tuli, ja otsida kasutaja jaotisest sobivat Host= parameetri väärtust. Kui see parameeter on seatud väärtusele Host=dynamic, ei leidu vasteid enne, kui SIP-klient end serveris registreerib.

Tärn SIP-kliendina Lisage jaotises olevasse konfiguratsioonifaili registri definitsioon:

Vorming:
register => kasutaja [:salajane[:authuser]] @host [:port]

Näide:
; Registreerige sip pakkuja juures number 2345, nagu meie poolel number 1234.
register => 2345: [e-postiga kaitstud]/1234

kasutaja – SIP-serveri jaoks kasutatav kasutajatunnus (näiteks 2345) authuser – valikuline kasutajanimi SIP-serveri autoriseerimiseks saladus – kasutaja parool host – SIP-serveri domeen või hostinimi. See SIP-server tuleb määratleda faili sip.conf eraldi jaotises, kus tuleb määrata selle parameetrid (mysipprovider.com). port – millisele pordinumbrile saadetakse hostserveris registreerimistaotlused. Vaikimisi - 5060 /1234 - laienduse number kõnede vastuvõtmiseks teie tärnis. 1234 - sisestatud SIP-i päise kontakti, SIP-i registreerimistaotlus. Seda laiendust kasutab kaug-SIP-server, kui sellel on vaja helistada teie tärnile. Vaadake allolevaid näiteid. Vaikimisi kasutatakse kontekstipõhist "s".
See kõik on muidugi hea, kuid krüptimata paroolide kasutamine tekstifailis ei ole hea mõte, kuid mida saate praegu veel teha?
Registreerida tuleb vaid juhul, kui: a) Teile peab olema võimalik helistada ja b) ühel osapoolel on dünaamiline IP-aadress. Saate kontrollida, kas teie server on edukalt registreerunud, kasutades CLI käsku: "SIP SHOW REGISTRY", samamoodi saate oma serverisse registreeritud klientide loendi käsuga: "SIP SHOW PEERS". Saate vaadata rohkem detailne info registreeritud kliendi kohta, kasutades käsku: "SIP SHOW PEER". Täiendavate käskude loendi saamiseks käivitage CLI-konsoolis käsk "HELP SIP".

Serveri määratlus väljuvate kõnede tegemiseks peaks olema umbes selline:


tüüp=peer
saladus=parool
kasutajanimi=2345
host=sipserver.mysipprovider.com
kasutajalt = 2345
fromdomain=fwd.pulver.com
nat=jah
kontekst=minupakkujalt ; see võistlus peab olema määratletud failis extensions.conf

Väljaminevate kõnede tegemiseks peab failis extensions.conf olema valimisreegel, mis näeb välja umbes selline:

Laiend => _9.,1,Dial(SIP/$(EXTEN:1)@mysipprovider-out,30,r)

Pange tähele, et $(EXTEN:1) konstrukt toob välja kogu muutuja sisu, mis sisaldab kutsutavat laiendit (vastab mustrile), välja arvatud esimene number, antud juhul: 9 + numbrite komplekt. Lisateavet leiate kirjelduse jaotisest alamstringidega töötamise kohta.


laiend => 1234,1,Vastus; 1234 - laiendus alates kontaktinfo, vaikimisi - "s"
laiend => 1234,2,Dial(SIP/111,25,Ttr) ; sissetulev kõne suunatakse SIP-telefonile 111
pikendada => 1234.3,Katkesta

SIP-i konfiguratsioon – üldine jaotis Faili sip.conf jaotis sisaldab järgmisi muutujaid:

= : Lubatud koodekid, kodeki valimise järjekorra määrab nende selles käsus kirjeldatud järjekord (Esimene kasutamine: DISALLOW=ALL, enne konkreetsete koodekite lubamist) allowtransfer= jah | ei: ilmus alates versioonist 1.4.0. Kui see on seatud "ei" - keelab kõik kõnede edastamise tüübid. (välja arvatud need, mis on lubatud kasutaja seadete kirjelduses). =all:Keelab kõigi koodekite kasutamise (üldseade) allowguest = jah (vaikimisi) | ei: külaliskõnede lubamine või keelamine (vaikimisi – jah, kui tärn on ehitatud OSP-toega, saate väärtuseks määrata parameetri "osp") = jah | ei: kui see on sisse lülitatud, saab igaüks kasutada serverit partnerina (juurdepääsu kontrollimata; võib olla mugav SER SIP puhverserveriga töötamisel). bindaddr = 0.0.0.0:IP-aadress, millele tärn võtab vastu SIP-kõnede IP-pakette bindport=5060:pordi number, kuhu tärn võtab vastu SIP-kõnede IP-pakette callerid = : Teave helistaja*Id kohta, kasutatakse juhul, kui ühtegi neist pole , mida võiks selle väärtusena kasutada. Vaikimisi on "tärn". (Vaikeväärtuse alistamise võimalus on saadaval versioonis Asterisk 1.0.9. Ma pole teistes versioonides täiesti kindel.) = värskenda | jah | ei (globaalne seadistus). Mingil põhjusel on vaikeväärtus "Jah", ole ettevaatlik... kontekst = : See on vaikeseade, mida kasutatakse siis, kui kliendil pole oma defineeritud. Seda kliendipõhist kasutatakse kõnede suunamiseks sellelt kliendilt soovitud sihtkohta. Sisu on kirjeldatud valimisplaani failis - extensions.conf. defaultexpirey=120: sissetuleva või väljamineva registreerimisperioodi kestus. : inband | info | rfc2833 (global setting) = domeenid: komadega eraldatud domeenide loend, mille eest Tärniserver vastutab. (ilmus tärnis 1.2.x) = 200.201.202.203: IP-aadress, mida kasutatakse SIP-sõnumites, kui meie server on NAT-i taga. externhost = hostinimi.tld: ( uus parameeter in Asterisk 1.2.x) externrefresh = xxx: selle parameetriga määrame, kui sageli otsitakse DNS-kirjest parameetris "externhost" määratletud hostinime (uus parameeter versioonis Asterisk 1.2.x) = 192.168.1.0/255.255. 255.0: kohaliku võrgu ja selle maski määratlus. fromdomain= : SIP-sõnumite väljale From: vaikedomeeni määramine SIP ua (kliendina) töötamisel. maxexpirey=3600: maksimaalne lubatud registreerimisaeg. mineexpiry=60: (Muutuja kasutusele võetud alates Tärni versioonist 1.4.0) Minimaalne lubatud logimise kestus. = jah | ei (seadistus partnerühenduste jaoks) Pange tähele, et Tärn 1.0.x puhul nat parameeter võib võtta järgmisi väärtusi: ei | mitte kunagi | marsruut | jah. notifymimetype=text/plain: Võimaldab alistada MWI NOTIFY sõnumite MIME tüübi, mida kasutatakse süsteemi saadetud sõnumites. pedantic = jah|ei: lubage kõne ID väljade ja kõigi ridade aeglane ja pedantne kontrollimine mitmerealise SIP-sõnumi päises ja URI-kodeeritud päiste portis = : SIP-i vaikeport. (see ei ole port, millel teie tärn IP-pakette kuulab. Vaata parameetrit: bindport) promiscredir=yes | ei: luba 302 ümbersuunamise sõnumite tugi; (Ei – edastab kõik kohalikule laiendile, mis on väljal Kontakt vastu võetud, mitte laiendile, mis on määratud kõne sihtkoha väljal.) realm = vald (See säte võib vaikeväärtusest muuta autoriseerimise valdkonda - Tärn, mis tahes teie valitud Töötab alates Asteriski versioonist 1.x) register => @ / : Registreeruge SIP-i pakkuja serverisse. = jah|ei: Luba kõnede otsing tos= : See valik on eemaldatud alates versioonist Tärn 1.4.0. IP QoS parameetrite määramine väljaminevatele meediumivoogudele. t1min= : (Muutuja kasutusele võetud alates Tärni versioonist 1.4.0) Minimaalne latentsusaeg sõnumite edastamine hostile ja tagasi (edasi-tagasi aeg), mille puhul jälgitakse olekut (jälgitav host). Vaikeväärtus on 100 ms. = : (Muutuja ilmus alates Asteriski versioonist 1.4.0) IP QoS parameetrite määramine SIP-pakettidele. = : (muutuja kasutusele võetud alates versioonist Asterisk 1.4.0) IP QoS parameetrite määramine pakettide jaoks, mis edastavad heliandmeid RTP protokoll. = : (Muutuja ilmus alates Asteriski versioonist 1.4.0) IP QoS parameetrite seadistamine pakettide jaoks, mis edastavad videoandmeid RTP-protokolli kaudu.
videosupport=yes|no: Lubab SIP video toe: parameeter võimaldab muuta SIP päise "User-Agent" väärtust. = jah|ei: kui see on lubatud, saab saadud Remote-Party-ID väärtust usaldada.

SIP-i konfiguratsioon – kliendid ja partnerid Iga SIP-kliendi kirjelduses saab määrata järgmisi muutujaid:

: kasutaja saab seostada teatud juurdepääsukoodiga (kontokoodiga). Kasutatakse selleks. : lubatud ja keelatud koodekid. : Kategooria jaoks CDR-i kirjed . Saate valida: vaikimisi, väljajätmine, arveldamine, dokumentatsioon. Vaata: .allowoverlap: Alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: jah. "Ei" määramine keelab "kattuvat helistamist".allowsubscribe: alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: ei. Seadistamisel "ei" keelatakse selle kliendi oleku (tellimuste) jälgimine: alates versioonist 1.4.x. Lubage (jah) või keelake (ei) kõne edastamist selle kasutaja jaoks.auth: Alates versioonist 1.4.x. Link kirjele jaotisest (ainult partnertüüp). automaatne kadreerimine: alates versioonist 1.4.x. Luba (jah) või keela (ei) automaatne kadreerimine"a.buggymwi: alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: ei. Cisco SIP püsivara ei toeta täielikult RFC-d uue kõneposti (MWI) olemasolu näitamiseks Määrake selle parameetri väärtuseks "jah", et vältida veateadete saamist MWI saatmisel selle seadme kaudu. callingpres: alates versioonist 1.4.x CallerId avaldamise režiim fail doc/callingpres.txt distributsioonist asterisk.call-limit: alates versioonist 1.4.x__ Limit kasutaja kõnede arvule tüübile "peer" - väljuvatele, "user" - sissetulevatele kõnedele : Lubage ainult juhul, kui klient toetab funktsiooni: .cid_number: Versioonist 1.4.x välja CallerID.context osa: Valimisplaani kontekst, millesse sellelt kliendilt tulevad kõned langevad: Kliendi vaike-IP-aadress. Host= on defineeritud kui DÜNAAMILINE. Kasutatakse juhul, kui klient pole veel registreerunud, kui see on vajalik. : Kuidas klient käsitleb DMTF-i signaalimist. : määrake kasutajanimi väljale "saatja", kui seda kirjet kasutades helistatakse. = : määrab vaikedomeeni SIP-sõnumite väljale Saatja, kui kõne tehakse seda kirjet kasutades.fullname: Alates versioonist 1.4.x. Nimeosa, väljad CallerID.g726nonstandard: Alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: ei. Kui klient nõustub kasutama sideseansi jaoks helikodekit G726-32, kasutades RFC3551 asemel AAL2 tihendamist (mida on vaja Sipura seadmete ja Grandstreami lüüside ja võib-olla ka teiste jaoks). See on vastuolus RFC3551 spetsifikatsiooniga, klient _peab_ nõustuma kasutama AAL2-G726-32 asemel:-(host: Kuidas leiame oma kliendi - IP-aadress või hostinimi. Kui vajate telefoni enda registreerimiseks, kasutage väärtus dünaamiline IP-aadressi või hostinime asemel. : SIP-kliendiga samaaegsete ühenduste arvu piirang. Need parameetrid on vananenud ja neid ei kasutata versioonis 1.4.x. : väga|jah|ei|kutsu|port: Määrab, kuidas käsitleda ühendusi kaaslastega. Vaikeväärtus on "ei" (autentimine on lubatud kõigi ühenduste jaoks). (kutse ja port lisatud versioonis 1.2.x). : keelekood, mis on määratletud failis indikatsioonid.conf – kus on määratletud tervituskeel ja riigipõhised telefoni tooni seaded. : kõnepostilaiend (uute sõnumite indikaatori jaoks) max kõne bitikiirus: alates versioonist 1.4.x. Video maksimaalne bitikiirus kbit/s. Vaikimisi: 384 kbit/s.mohsuggest: Alates versioonist 1.4.x. Selleks vaadake sip.conf. : MD5-Räsi stringid: " :asterisk: " (saab kasutada salaparameetri asemel).musiconhold: määrab sellelt SIP-telefonilt tulevate kõnede jaoks muusikahoidmise klassi. Sellele telefonile tulevate kõnede puhul tuleb selle klassi seadistamine teha käsuga, mille prioriteet on kõrgem (valimisplaanis madalam prioriteet) kui valimisplaani käsul Dial. Parameeter MusicOnHold on seatud tehtud kõnede, mitte telefonide jaoks, ja kui käsku kasutatakse laienduse kõne käsitlemiseks, alistab see selle parameetriga antud kõne jaoks määratud väärtuse. : see muutuja muudab seda, kuidas Asteriski server käitub NAT-i tulemüüri taga olevate klientidega. Kuid see parameeter ei lahenda probleemi, kui Asterisk ise on sellise tulemüüri taga ja klient on väljaspool (in Interneti-võrgud tavalise IP-aadressiga).outboundproxy: puhverserveri aadress väljuvate kõnede jaoks (ainult partneri tüüp).luba, keelata: IP-aadressi ja IP-võrgu piirangud kliendi jaoks. Märkus: versioonis 1.4.x maski parameetrit enam ei kasutata. : rühmitus oma kolleegidele helistamiseks, kasutades kombinatsiooni "*8" ja rakendust Pickup(), et töötada laiendiga *8.port: kliendi SIP-port.progressinband: Alates versioonist 1.4.x. Väärtused: jah/ei/mitte kunagi, vaikimisi: mitte kunagi. Kas tärn peaks looma jaoks oma helina helistaja (ribasisene helin). Kasutage väärtust "mitte kunagi", et seda signaali mitte kunagi genereerida, isegi kui mõni kummaline seade ei suuda seda ise genereerida: Alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: ei. Kui on seatud "jah", siis lubame mittekohaliku IP-aadressiga SIP-klientidele saata SIP-sõnumeid koodiga 302 või kõne suunamise sõnumeid. Väärib märkimist, et Promiscrediri käitumine kohalikus süsteemis tehtud kõne suunamisel võib viia kõneahelani, kuna Tärn ei saa juuksenõelaga kõnedega hakkama. : Kontrollige perioodiliselt kliendi saadavust. restcid: (jah/ei) Seda valikut ei kasutata, kasuta selle asemel callingpres. rfc2833compensate: alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: ei. Lubab kompenseerida DTMF-signaalide edastamist teistest tärniga serverite versioonidest kuni 1.4.*. Sellistel juhtudel peate selle funktsiooni lubama, vastasel juhul ei tööta DTMF-signaali vastuvõtt korralikult. : lõpetage kõne, kui RTP-meedia voogu ei toimu kauem kui x sekundit ja kui liin ei ole ooterežiimis. : Katkestage kõne, kui RTP-meediumivoo tegevust ei toimu kauem kui x sekundit, ooterežiimis (väärtus peab olema suurem kui rtptimeout) salajane: Kui Asterisk toimib SIP-serverina, peab see SIP-klient olema selle parooliga volitatud ( jagatud saladus). Kui Asterisk toimib SIP-kliendina, mis töötab SIP-kaugserveriga, mis nõuab autoriseerimist "SIP INVITE" päringute jaoks, siis kasutatakse seda välja autoriseerimiseks "SIP INVITE" sõnumites, mille meie tärn saadab kaug-SIP-serverisse.sendrpid : kas saata sellele SIP-kliendile Remote-Party-Id päis või mitte. Väärtused: jah/ei, vaikimisi: yes.setvar: Alates versioonist 1.4.x. Väärtus määrab kanalimuutujale paari "muutuja=väärtus", kui helistate sellest seadmest.subscribecontext: alates versioonist 1.4.x. Määrab konteksti nime, milles SIP-päringuid töödeldakse SUBSCRIBE.subscribemwi: Alates versioonist 1.4.x. Väärtused on "jah" ja "ei". Eesmärk vt sip.conf.t38pt_udptl: Alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: ei. Selle kliendi T.38 toe lubamine/keelamine. : Väärtused: jah/ei, vaikimisi: ei. Määrake "jah", kui saate SIP-kliendilt saadud Remote-Party-ID-d usaldada. : Kliendi tüüp - ainult väljaminevad kõned, ainult sissetulevad kõned või kas kasutada kliendikoodi: Alates versioonist 1.4.x. Väärtused: jah/ei, vaikimisi: no.usereqphone: Alates versioonist 1.4.x. Väärtused on "jah" ja "ei". Kas lisada tavalist helistamisnumbrit sisaldavale URI-le ";user=phone" või mitte. : kui Asterisk tegutseb SIP-kliendina, mis töötab SIP-kaugserveriga, mis nõuab autoriseerimist "SIP INVITE" taotluste jaoks, siis kasutatakse seda välja autoriseerimiseks "SIP INVITE" sõnumites, mille meie tärn saadab kaug-SIP-serverisse. . Ja ka meie Asteriski serveris registreeruvate partnerite puhul, kui seda kasutajanime kasutatakse KUTSU sõnumites, kui see on serveris registreeritud.videosupport: Väärtused: jah/ei, vaikimisi: jah. Võimalus lubada SIP-video tugi. Võimalik, et peate lubama videotoe konkreetse SIP-kliendi jaoks, kui see on näiteks konfiguratsiooni globaalses osas keelatud ja soovite selle valikuliselt lubada ainult konkreetsetele kasutajatele.vmexten: Alates versioonist 1.4.x. Eesmärgiks vaadake sip.conf (ainult partneri tüüp).

Pange tähele, et Asterisk ei toeta (veel) SIP-i TCP-transpordi kaudu. Toetatud ainult UDP-protokolli kaudu. Grandstreami telefonide puhul: määrake parameeter dtmfmode=info ja GXP2000 puhul dtmfmode=inband kasutab Asterisk väljamineva voo saatmiseks ajastusallikana sissetulevat voogu. Kui sissetulev voog katkeb vaikuse summutamise funktsiooni tõttu, on muusika hoidmise kvaliteet väga halb. Seetõttu ei saa te vaikuse summutamise funktsiooni kasutada. Veenduge kindlasti, et KÕIK SIP telefonid Vaikuse summutamine on keelatud. Näited Iga SIP-klient, mis peab tärniga töötama, peab olema määratletud failis SIP.CONF. Allpool on mõned näited:


tüüp=sõber ; võib olla: "sõber" (see on: peer+kasutaja), "kaaslane" või "kasutaja"
kontekst=from-sip
kasutajanimi=grandstream1 ; tavaliselt langeb see parameeter kokku jaotise nimega -
kasutajalt=grandstream1 ; määrab näiteks helistaja ID ümber
; võib olla vajalik kõnede suunamiseks – FWD
callerid=John Doe
host=192.168.0.23 ; Kasutame staatilist, kuid sisevõrgu IP-aadressi
nat=ei ; Meie telefoni ja tärni vahel puudub IP-aadressi tõlge (NAT).
canreinvite=jah ; sunnib kogu RTP kõneliikluse läbima tärni
dtmfmode=info ; võib olla nii INBAND kui ka INFO, näiteks BudgeTone telefonidele
postkast=1234@default ; kliendil on kõnekast 1234 kõnekasti kontekstis: "vaikeseade"
keelama=kõik ; enne parameetri allow= kasutamist peate määrama disallow=al
luba=ulaw ; Pange tähele: kliendi jaotistes kodeki valimise järjekord
; parameetris allow= kirjeldatud ei oma tähendust!
;allow=alaw
;allow=g723.1 ; Asterisk toetab g723.1 kodekit ainult läbipääsurežiimis!
;allow=g729 ; Ainult pass-thru režiimis, kui teil pole g729 kodeki kasutamise litsentsi


Lülitage X-Lite kliendis vaikuse summutamise funktsioon välja ("Transmit Silence"=YES)!
;Pange tähele, et Xlite ise saadab NAT-i elushoidmise pakette, seega pole vaja qualify=yes.
tüüp=sõber
kasutajanimi=xlite1
callerid="Jane Smith"
host=dünaamiline
nat=jah ; X-Lite'i klient asub IP-aadressi tõlkega (NAT) ruuteri taga
canreinvite=ei ; Kui klient on NAT-i taga, määratakse tavaliselt EI
keelama=kõik
luba=gsm ; GSM-koodek nõuab palju vähem ribalaiust, nii et ulaw.
luba=ulaw
luba=seadus


tüüp=sõber
saladus = bla
host=dünaamiline
dtmfmode=inband ; Saate valida järgmiste hulgast: inband, rfc2833 või info
defaultip=192.168.0.59
postkast=1234,2345 ; Kõneboks indikaatori "uued sõnumid vastu võetud" jaoks
keelama=kõik
luba=ulaw ; kui dtmf režiimiks on seatud "inband",
luba=seadus ; siis peaksime kasutama ainult g.711 koodekit


tüüp=sõber
kasutajanimi=kasutaja2_pingtel
saladus = bla
host=dünaamiline
kvalifitseeruda=1000 ; Peame klienti mittetöötavaks,
; kui temalt vastamine võtab aega üle 1 sekundi.
kõnegrupp=1,3-4 ; Klient on kõnegruppide 1, 3 ja 4 liige
pickupgroup=1,3-4 ; Saame helistada, vajutades *8,
; rühmade 1, 3 ja 4 kõnede jaoks
defaultip=192.168.0.60
keelama=kõik
luba=ulaw
luba=seadus
luba=g729

Tüüp = sõber
kasutajanimi=kasutaja3_cisco
saladus = bla
nat=jah ; See telefon on NAT-iga ruuteri taga
host=dünaamiline
canreinvite=ei ; Cisco seadmed mõnikord külmuvad
; pärast teatud arvu uuesti kutsumise taotlusi
kvalifitseeruda=200 ; Peame pidu mittetöötavaks,
; kui vastus sellest tuleb kauem kui 200 ms
defaultip=192.168.0.4
keelama=kõik
luba=ulaw
luba=seadus
luba=g729


tüüp=sõber

Kasutajanimi=kasutaja4_cisco
kasutajalt=markster ; Määrake helistaja numbri asemel väljale "saatja" asetatav kasutajanimi
saladus = bla
defaultip=192.168.0.4 ; kasuta host=dynamic või defaultip=...
amaflags=vaikimisi ; Võib olla: vaikimisi, väljajätmine, arveldamine, dokumentatsioon
kontokood=markster ; Arveldamise lihtsustamiseks on kasutaja seotud kontokoodiga.
keelama=kõik
luba=ulaw
luba=seadus
luba=g729
luba=g723.1

Allolev kirjeldus on võetud Digium Asteriski käsiraamatust.

Pärast nende SIP-kontode määramist oma klientidele failis SIP.conf on neil klientidel võimalus registreeruda tärniserveris ja teha väljaminevaid kõnesid. Selleks, et nad saaksid kõnesid vastu võtta, peate oma valimisplaani failis kirjeldama nende laiendusi. Näide:

Laiendus => 1010,1, helistamine (SIP/kasutaja3_cisco,10,t)

Kui keegi helistab numbril 1010, siis üritatakse helistada SIP-kliendile, mis on registreeritud kui user3_cisco.

Märkused Muutujat $(VXML_URL) saab kasutada täiendava elemendi lisamiseks SIP "To:" sõnumi päisesse. Selle muutuja väärtus lisatakse semikoolonitega eraldatuna SIP-sõnumi päise "To:" lõppu. Pange tähele, et eelmine kirjeldus selle funktsiooni kasutamise kohta oli vale; selle muutuja kasutamine ei mõjuta sõnumite allalaadimist Cisco 7960 telefoni (mis on praegu Cisco telefonide SIP-püsivaras keelatud). Seda probleemi kirjeldab: autori e-kiri Muutujat $(ALERT_INFO) saab kasutada uue päise "Alert-Info" loomiseks: seda saab kasutada konkreetse helinatüübi määramiseks telefoniaparaadid SIP-protokolliga töötavad Cisco ettevõtted, millele on installitud püsivara versioon 6.0 või uuem. Telefonide puhul saab muutuja ALERT_INFO aktsepteerida järgmised väärtused, et määrata kindel sisseehitatud helin: - Bellcore-BusyVerify
- Bellcore-Stutter
- Bellcore-MsgWaiting
- Bellcore-dr1
- Bellcore-dr2
- Bellcore-dr3
- Bellcore-dr4
- Bellcore-dr5
Hetkel ei saa teist kõnet määrata, saate valida ainult kõne esitamise valikuid. Peate väga tähelepanelikult kuulama, et öelda, et kõnetoonid on tõesti mingil moel erinevad. Ciscole on veaaruanne: Cisco vea ID CSCec42938, milles pakutakse välja kõnesignaalide valimise võimalus. Näide 1 John Todd, loligo.com: http://www.loligo.com/asterisk/current/sip.conf.Ühenduse loomine Free World Dialupiga (ilma NAT-i kasutamata) [üldine]
keelama=kõik
luba=gsm
luba=ulaw
luba=seadus
kontekst=from-sip
maksimaalne kehtivusaeg = 180
defaultexpirey=160
tos=usaldusväärsus
registreeru => : @fwd.pulver.com/KONTAKT

[fwd.pulver.com]
tüüp=sõber
saladus=
kasutajanimi=
host=fwd.pulver.com
ebakindel=väga ; sissetulevate FWD-kõnede toetamiseks

Nüüd läheme faili kirjelduse juurde ja vaatame, kuidas saame kontekste konfigureerida valimise osas.

Näide 2 Tärni kasutamine koos SIP-puhverserveriga SER [üldine]
kontekst=VÄLJAVAD
autocreatepeer=jah

[Pakkuja]
tüüp=sõber
kasutajanimi=XXXXX
saladus=XXXXXX
host=xxxxx.FakeProvider.com

Nüüd, kui Asterisk saab SER-iga kõne, teostab see toimingu "automaatne loomine" ja võimaldab kõnet töödelda VÄLJAVAHETUSE kontekstis.

Faili sip.conf haldamine välistest allikatest: kasutage SIP-kanalite jaoks reaalajas mehhanismi. Nii nagu teistes .conf-failides, saab käsku #include kasutada teise faili lisamiseks sip.conf-i konfiguratsiooni erinevad versioonid: Lisafunktsioonid, lisatud alates versioonist 0.7.2 2004-01-23: Lisatud CLI-käsk "sip reload", et taaskäivitada sip-kanal, et failis sip.conf tehtud muudatused jõustuksid ilma Tärniserverit taaskäivitamata. 2004-01-25: tugi SIP partnerite määratluste andmebaasi salvestamiseks. Konfiguratsiooni andmebaasi salvestamine ei olnud praegu täielikult rakendatud, kuid see töötab. Vt: 2004-06: SIP-i kasutajamääratluste andmebaasi salvestamise tugi.

Asterisk on avatud lähtekoodiga arvutitelefonilahendus lähtekood, mis toetab Linuxi operatsioonisüsteemi VoIP-, SIP- ja PJSIP-protokolle. Kui ühendate arvutiga vastavad seadmed, saate Asteriski abil luua täisväärtusliku ATC-jaama. Programmi põhifunktsioonide hulgas on kõnepost, konverentsid, interaktiivne häälmenüü ja kõnede levitamine.

Selles artiklis vaatleme, kuidas installida Asterisk 13 Ubuntu 16.04. Enamik uus versioon Programm pole ametlikes hoidlates, kuna tavakasutajad seda nii sageli ei kasuta, seega peame selle allikast kompileerima.

Asteriski installimine Ubuntu 16.04

Allikatest ehitamiseks peame tegema enamiku toimingutest superkasutaja nimel, nii et saame kohe täielikud õigused süsteemis:

Pange tähele, et kui logite oma serverisse sisse ssh-i kaudu root kasutajana, peate ikkagi ühenduse looma tavakasutajana ja alles siis lülituma juurkonsoolile. Järgmisena peate programmi töötamiseks installima sõltuvused:

apt-get install build-essential wget libssl-dev libncurses5-dev libnewt-dev libxml2-dev linux-headers-$(uname -r) libsqlite3-dev uuid-dev git subversion

cd /usr/src
$ wget downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz

Allikate lahtipakkimiseks tippige:

tar zxvf tärn-13-current.tar.gz

Enne programmi koostamist peame ehitama ja installima pjprojecti. Esiteks laadige alla allikad:

git kloon git://github.com/asterisk/pjproject pjproject
$ cd pjprojekt
$ ./configure --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video --disable-opencore-amr CFLAGS="-O2 -DNDEBUG"
$ make dep make && make install
$ldconfig
$ ldconfig -p|grep pj

Lõpuks oleme nüüd valmis Asteriski ehitama ja installima Ubuntu 16.04-le:

cd .. contrib/scripts/get_mp3_source.sh
$ contrib/scripts/install_prereq install

Need käsud võimaldavad teil installida mõned sõltuvused mp3 esitamiseks. Selle täitmiseks võib kuluda veidi aega ja peate sisestama ka riigikoodi. Järgmisena alustame kokkupanekut:

./configure && make menuvali && tee && tee install

Kui installimine on lõppenud, käivitage järgmine käsk, et vältida sadade konfiguratsioonifailide käsitsi loomist:

Init-skriptide installimiseks, mis võimaldavad tärniga automaatselt käivituda, käivitage:

tee config ldconfig

Nüüd saate käivitada tärniserveri ja veenduda, et kõik tõesti töötab:

teenuse tärniga algus

Ja vaadake terminali kaudu teavet utiliidi kohta:

Kui kõik tehti õigesti ja Asteriski installimine Ubuntu 16.04-le õnnestus, siis kõik töötab.

Asteriski seadistamine Ubuntus 16.04

Programm töötab superkasutajana. Kuid me vajame seda tärniga kasutajana töötamiseks, seega peame tegema veel mõned sätted. Nii et teie süsteem on sisse lülitatud rohkem turvalisust. Esmalt peate töötava teenuse peatama:

rühma lisage tärn
$ useradd -d /var/lib/asterisk -g tärn tärn

Järgmisena peame muutma initsialiseerimisskripti, et programm töötaks nimel soovitud kasutaja. Saame faili /etc/default/asterisk käsitsi redigeerida, kuid lihtsam on kasutada järgmisi käske:

sed -i "s/#AST_USER="täht"/AST_USER="täht"/g" /etc/default/sterisk
$ sed -i "s/#AST_GROUP="täht"/AST_GROUP="täht"/g" /etc/default/sterisk

Selleks, et kõik toimiks õigesti, tuleb tärniga kasutajale anda juurdepääs kõikidele programmikataloogidele:

chown -R tärn: tärn /var/spool/asterisk /var/run/asterisk /etc/asterisk /var/(lib,log,spool)/sterisk /usr/lib/asterisk

Samuti näitame failis asterisk.conf õiged kasutajaseaded runuser ja rungroup väljade jaoks:

sed -i "s/;runuser = tärn/runuser = tärn/g" /etc/asterisk/asterisk.conf

$ sed -i "s/;rungroup = tärn/rungroup = tärn/g" /etc/asterisk/asterisk.conf

Kui kõik on valmis, käivitage varem peatatud teenus või taaskäivitage, kui te pole seda peatanud:

sudo teenuse tärn algus

Seejärel kontrollime:

Kui kasutaja ja rühm on tärniga, siis tegime kõik õigesti.

järeldused

See on kõik. Asterisk 13 installimine Ubuntu 16.04-le on lõpule viidud. Nüüd saate minna edasine kohandamine võrgud abonentide vahel otse Interneti kaudu helistamiseks. Klienditarkvarana saab kasutada mis tahes vajalikke protokolle toetavat programmi, näiteks Jitsi või Linphone.

autori kohta

Asutaja ja saidi administraator, olen kirglik avatud lähtekoodiga tarkvara ja Linuxi operatsioonisüsteemi vastu. Praegu kasutan peamise operatsioonisüsteemina Ubuntut. Lisaks Linuxile huvitab mind kõik sellega seonduv infotehnoloogia ja kaasaegne teadus.

Tärni seadistamisele on pühendatud veebisaidid, foorumid ja terved portaalid, nagu voip-info.org. Kuid alati leidub inimesi, kelle jaoks see teema on tihe mets ja toode tuleb turule tuua "eile". Vaid poolteist kuud tagasi teadsin ma Asteriskist ainult selle olemasolu. See töö on mõeldud vaid selleks, et muuta nende elu veidi lihtsamaks, kes on pärast mind samas olukorras. See võib sisaldada mis tahes astme vigu. Kui olete Asteriski seadistamisguru, osutage veale, ma parandan selle ja minu järeltulijad on teile tänulikud.

Kõigepealt oli sõna

Mingil ajal pöörati minu jõupingutuste kaudu ettevõtte infrastruktuuri arendamise strateegia sõna otseses mõttes pea peale. Tõsteti välja eesmärgid ja eesmärgid ning selgus, et raha säästmiseks vajame dünaamilist mobiilset serveritaristut, et probleemide korral saaksime kiiresti taastuda ja/või teises kohas tõusta, et oleks lihtsam hoolitseda. riistvara jne jaoks. P.

Siis oli asi

Üldiselt oli paberil kõik ilus ja lihtne. See oli vaid Asteriski juurutamise ja konfigureerimise küsimus.
Kõigepealt osteti kaks lihtsat serverit. Core i7-930, 12 GB mälu ja 12 TB SATA kettaid. Nendesse serveritesse installiti ja juurutati tasuta Xen Server virtuaalserverid ja tööjaamad kaugtöötajatele.
Nagu väline salvestusruum Ma kasutan QNAP NAS-i, mille olen päritud.
Terabaidine kohalik salvestusruum on vajalik ainult meediapanga salvestamiseks, mis on üsna suur. Serverid ise kaaluvad kokku alla 3 terabaidi.
Üks serveritest oli Asterisk, mis asendas vana Panasonicu TDE-200. Sest firma vajab odavat sidet, otsenumbrid sisse erinevad riigid, ja vabad läbirääkimised töötajate vahel, siis üldiselt pole sellele 12 seekli eest alternatiivi.

Esimene päev: tee maailma

Asterisk otsustati Citrix Xeni jaoks natiivselt konfigureerida operatsioonisüsteem CentOS. Sama, ainult küljelt. Teen kohe broneeringu: olen kogu oma elu olnud Windowsi administraator ja olen *nixiga "mänginud" ainult virtuaalsetes masinates, arvestamata paari riistvaras olevat veebiserverit. Seetõttu lõhnab see Asteriski kasutuselevõtt Citrix Xenis kogenud inimeste vaatenurgast naiivsust.
Üldiselt järgisin tõestatud teed: ametlikest juhenditest pärit mannekeenide üksikasjalik juhend avatakse sülearvutis ja täidetakse serveris sõna otseses mõttes ja ilma algatuseta. Kangelaseparandajatena on võimalik mängida hiljem, kui kõik on seadistatud ja “vaikimisi” olekus töötab ning esimene täielik varukoopia tehtud.

Teine päev: yum install tärn -y

Mitte, et ma oleksin väga üllatunud, aga sellest hoolimata pöördusin telekommunikatsioonisõbra poole Asteriski seadistamise kohta nõu küsima, kui avastasin, et seal on juba kolm elavat Asteriski kahvlit: 1,4, 1,6 ja 1,8. Igal neist on oma prussakad ja vedelikud. Sest Mind ei meelitanud lootus kapriisist tärnist jagu saada, nii et otsustasin installida versiooni 1.4, nagu sõbra oma, et seadistusi võimalikult hästi ühilduda. Kuigi hiljem pidime sellise vajaduse ilmnemisel TCP-toe puudumise tõttu versioonile 1.6 üle minema.
Selleks ühendati CentOS-ile digiumi hoidla ja installiti sellest Asterisk.
Paigaldamine sujus ootuspäraselt, viperusteta. Põhimõtteliselt kasutati mõistlikku samm-sammult teekaarti koos voip-infoga.
iptables parandati kohe, et võimaldada liiklust SIP-portides.
Mitte kohe, kuid soovitan tulevastel põlvkondadel kohe installida ja seadistada fail nimega fail2ban. See ei ole üleliigne programm Internetiga avatud serveris. Päev pärast installimist langes kogu Taiwan iptablesi põhjal otsustades.

Kolmas päev: PBX-i funktsionaalsuse tehnilised andmed

Alustame lõbusast osast – planeerimisest. Enne konfigureerimisprotsessi on vaja kõik kliendi soovid kirja panna ja struktureerida ning kindlasti sõlmida leping, et vältida edaspidiseid konflikte, mis on tüüpilised “ei, ma ütlesin hoopis muud”. Minu puhul on kliendiks ettevõte, kus ma töötan, aga see ei muuda midagi. Kirjutame funktsionaalsusele tehnilise spetsifikatsiooni, arutame seda vastutavate inimestega, lahendame erimeelsused ja allkirjastame lõpliku versiooni ning alustame Asteriski seadistamist.
Konfiguratsiooni spetsifikatsioonid osutusid järgmiselt:

  • Telefoninumber on neljakohaline.
  • Numbri esimene number on selle riigi märk, kus kontor asub.
  • Nummerdamine igas osakonnas algab järgmise saja esimese numbriga.
  • Iga osakond on eraldi kõnegrupp.
  • Kui helistatud abonent ei ole mingil viisil kõne jaoks kättesaadav, suunatakse kõne üle kogu grupile.
  • Sissetulevate kõnede teenindamise loogika:
  • Kõnele vastamiseks.
  • Mängige tervitust.
  • Esitage reklaam praeguste tutvustuste kohta.
  • Mängige erinevatele osakondadele helistamise võimalusi või pakkuge abonendi numbri valimist.
  • Alates punktist 2 oodake, kuni kõik käsud sisestatakse.
  • Pärast sammu 4 lõpetamist oodake veel 10 sekundit, kuni käsklused sisestatakse.
  • Kui käske pole, esitage kõnesuvandid uuesti.
  • Kui tellija on endiselt loll, suunake kõne sekretärile.
  • Kasutajad, kes sellist teenust vajavad, peaksid lisama kõneposti. Sel juhul, kui kasutaja ei ole mingil viisil kõne jaoks saadaval, suunake kõne kõneposti.
  • Vaikimisi on kõned lubatud ainult Venemaale ja Itaaliasse - riikidesse, kus meie ettevõte peamiselt tegutseb. Ülejäänud suunad avatakse vastavalt vajadusele kõige kitsamate maskidega, sest me kõik mäletame õudusjutte"Kuuba telefonioperaatorite" kohta ja me ei taha, et ühel päeval hakkaks meie PBX järsku helistama Sierra Leonesse kõigil 50 kanalil hinnaga 14 dollarit minutis iga kanali kohta.

Esmapilgul on ülesanne lihtne ja Asteriski seadistamine ei võta palju aega, kuid praktikas kulus selle koordineerimiseks üsna palju verd. Eelkõige leppida kokku kõigi juhiste keelamises, välja arvatud selgelt lubatud juhised. Klient pidi sellega nõustuma ainult siis, kui muidu oli paratamatu vajadus seadistada VPN igas PBX-iga ühendavas seadmes. Püüan jääda kõige lihtsamate ja arusaadavamate konfiguratsioonide juurde ning kliendile tundub alati, et süsteemi funktsionaalsuse lisamine on "vajutamiseks vaid paar nuppu".

Neljas päev: nano sip.conf

Nüüd algab lõbus: Asteriski seadistamise protsess.
Et mitte venitada niigi pikka artiklit, koormates seda Täpsem kirjeldus Esialgse seadistuse ja sellele järgneva häälestamise piinamine, näitan lihtsalt oma praeguseid konfiguratsioone koos kommentaaridega selle kohta, mis on mis.


kontekst=default ;vaikekontekst
allowguest=no ;pole külalisi, me ei oota kedagi
allowoverlap=no ;See parameeter määrab, kas lubame täiendavate numbritega kõne edastamist või mitte. Me ei luba seda.
alwaysauthreject=yes ;See parameeter tähendab, et kõik välise kliendi vead näevad välja ühesugused – autoriseerimisviga. Mõeldud PBX-i häkkimise keerulisemaks muutmiseks.
useragent=Orgue de Barbaris ;Nii tutvustame end teistele. Identifitseerisin end esimese grammofoni nime järgi, et teenusepakkujate tehnilisel toel oleks lihtsam oma PBX-iga dialoogi leida, sest... Pean nendega perioodiliselt suhtlema.
defaultexpiry=360 ;Klientide kohustusliku ümberregistreerimise intervall.
callevents=yes ;See on tuleviku jaoks, et klient saaks ootelolevate nuppudega muusikat esitada
limitonpeer=yes ;Loome kaaslastelt väljaminevad ja sissetulevad kõned kokku.
tcpenable=yes ;Luba SIP-i jaoks TCP-protokoll.
rtptimeout=60 ;Kui kaua klient ei pruugi vastata, enne kui ta süsteemist välja visatakse.
language=ru ;Süsteemi keel. Kasutatakse häälmenüü jaoks.
bindport=5060 ;Vaikimisi port. Seda saab muuta, et muuta PBX arvutamise ja häkkimise keeruliseks, kuid lahendus on vastuoluline.
bindaddr=0.0.0.0 ;Mul on nullid, sest... PBX-il on kaks liidest ja mõlemal on kliendid.
srvlookup=jah
tos_sip=cs3 ; http://www.voip-info.org/wiki/view/Asterisk+sip+tos
tos_audio=efdisallow=all ;esmalt keelake kõik koodekid
luba=alaw ;siis lubame kasutada ainult neid, mida tahame. Järjekord pole oluline.
luba=g729
luba=g723
luba=ulaw

canreinvite=no ;See parameeter ei võimalda klientidel otse suhelda. Side toimub ainult serveri kaudu. Teen seda nii, kuna mobiilikliendid kasutavad tasulisi kliente protokolliga g.729a ja lauatelefoni kliendid tasuta kliendid ilma selleta. Seetõttu eelistasin serverit pingestada, koodi alawg.729a käigult ümber kodeerides ühenduse kvaliteedi kasuks mobiilikliendid. Pealegi ei märka Core i7-930 seda koormust üldse.

Telefoni- ja PBX-serverite loomiseks on vaja Linuxi programmi Asterisk. Tal on palju kasulikud funktsioonid, mis sobib igas kontoris. Konverentsid, automaatvastajad, kõnede jagamine, tekstisõnumid, video, kõnemenüü ja kõnepost. Utiliit toetab populaarseid sideprotokolle. Neid saab vahetada. Kuid Asteriski installimine Ubuntule pole kõige lihtsam asi. Rakendus laaditakse alla ja konfigureeritakse terminali kaudu. Seetõttu peate õppima konsoolikäske.

  • Minge käsuga "cd" kausta "contrib/scripts/".
  • Avage skript "get_mp3_source.sh".
  • Tippige "make install".
  • Oodake, kuni arhiivid alla laaditakse.
  • Installitud Asterisk tuleb konfigureerida nii menüü kui ka terminali kaudu. Nii et avage oma konsool.

  • Loo konfiguratsioonifailid. Saab kasutada testina. Käsk on "make samples".
  • Aktiveerige automaatkäivitusfunktsioon - "make config ldconfig".
  • Nüüd saate teenuse käivitada - "teenuse tärniga alustamine".
  • Või avage see kohe deemonina - “/etc/init.d/asterisk start”. Selle konsooli lubamiseks sisestage käsk "sudo asterisk -rvvvcd".
  • Praegu on Asteriskiga töötamiseks vaja superkasutaja õigusi. Kuid parem on luua üksikkasutaja ja anda talle juurdepääs programmi funktsioonidele. Selle jaoks:

  • Keelake utiliit ajutiselt - "teenuse tärn peatus".
  • Lisage uus kasutaja - "adduser [nimi]". Saate luua grupi, millele annate vajalikud õigused. See on kasulik, kui otsustate luua mitu kasutajat, kellega koos töötada erinevaid teenuseid Tärn.
  • Nüüd vajame käivitamiseks kataloogi. Lisage see käsu "mkdir" abil. Pärast seda kirjutage parameeter “-p” ja tee kausta “/var/run/asterisk”.
  • Rakenduse kohe avamiseks soovitud kasutaja all muutke faili “/etc/default/sterisk”. Määrake seal järgmised parameetrid: "AST_GROUP="dialout"" ja "AST_USER="asterisk"".
  • Seda saate teha lihtsamalt – sisestage skript "sed -i ‘s/#AST_USER="asterisk"/AST_USER="asterisk"/g' /etc/default/sterisk".
  • Andke kasutajale juurdepääs kõikidele programmikaustadele - "chown -R [kasutajanimi] [kataloogi tee]".
  • Avage fail "asterisk.conf", leidke selles parameeter "runuser" ja määrake selles vastloodud kasutaja. Kui tegite rühma, kirjutage ümber ka rida "rungroup".
  • Taaskäivitage süsteem - "reboot".
  • Logige sisse Tärni kasutajana - "su [nimi]".
  • Ja käivitage programm.
  • Selle teabe vaatamiseks sisestage "täht -rvvvv".
  • Utiliit on kasutamiseks valmis. Edasised toimingud sõltuvad jaama kasutustingimustest. Konfiguratsiooni sisaldavad mitu faili:

    • konf - Üldised seaded server. Selles saate näidata, kui palju abonente on ühendatud. Nad kehtestavad helistamisreeglid.
    • conf - see konfigureerib ka valimisreegleid ja määrab kõne parameetrid.
    • conf - abonendikontode konfigureerimine.

    Tärniga loote Iga PBX raskusi. Sellel on palju kasulikke funktsioone ja mooduleid. Pärast installimist ja seadistamist saate jaamaga klienttarkvara abil suhelda. Näiteks Linphone.