Աստերիսկ (ԱՀԿ)

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Աստերիսկ (անգլ.՝ Asterisk)
Asterisk logo.png
Նախագծումը՝ Digium
Վերջին թողարկում 1.8.3.2 / մարտի 17, 2011
Նախադիտման թողարկոում 1.8.4-rc2 / փետրվարի 28, 2011
Գրված է՝ C
ՕՀ Միջ-Պլատֆորմ
Տեսակ Ձայն IP-ի վրա
Արտոնագիր GNU General Public License / Proprietary
Վեբկայք www.asterisk.org

Աստերիսկը (անգլ.՝ Asterisk) դա ավտոմատ հեռախոսային կայանի (ԱՀԿ) ծրագրային իրականացումն է; ստեղծվել է 1999 թ, Digiumի Մարկ Սպենսերի կողմից։ Ցանակացած ԱՀԿ-ի նման, այն թույլ է տալիս իրեն կցված հեռախոսներից զանգեր կատարել մեկից մյուսին և կապնվել այլ հեռախոսային ծառայություններին նեռարյալ ընդհանուր օգտագործման հեռախոսային ցանցը (անգլ.՝ PSTN, Public Switched Telephone Network) և ձայն IP-ի վրա (անգլ.՝ VoIP, Voice over IP) ծառայությունները։ Ծրագրի անվանումը վերցվել է աստղանիշ * նիշից։

Աստերիսկը թողարկվել է երկակի արտոնագրման մոդելի ներքո, օգտագործելով GNU General Public License (GPL) որպես ազատ ծրագրային արտոնագիր և սեփականատիրական ծրագրային արտոնագիր(անգլ.՝ proprietary software license), որը թույլ է տալիս տարածել արտոնագրերը որպես սեփականատեր, չհրապարակված համակարգային բաղադրիչները։

Ի սկզբանե նախատեսված լինելով Linux օպերացիոն համակարգի համար, աստերիսկը ներկայումս աշխատում է բազմաթիվ այլ օպերացիոն համակարգերի վրա նեռարյալ NetBSD, OpenBSD, FreeBSD, Mac OS X, and Solaris. Microsoft Windows-ի համար նախատեսված տարբերակը հայտնի է որպես AsteriskWin32.[1]

Հատկություններ[խմբագրել]

Աստերիսկ ծրագրային ապահովումը ներառում է դասական ԱՀԿ-ների բազմաթիվ հատկություններ ինչպիսիք են՝ ձայնային փոստը, համագումար զանգեր (անգլ.՝ conference calling), ինտերակտիվ ձայնային պատասխան (հեռախոսային ընտրացանկ, անգլ.՝ IVR) և կանչերի ինքնաշխատ բաշխում։ Գրելով համարակալման հեռախոսային պլան օգտագործողները կարող են ստեղծել նոր գործառույթներ Աստերիսկի սեփական «ընդլայնւմների» լեզվով, ավելացնելով որոշակի բեռնելի մոդուլներ գրված C-ով կամ կիրառելով Asterisk Gateway Interface (AGI)-ի ծրագրերը՝ օգտագործելով ցանկացած ծրագրվորման լեզու, որը հնարավորություն ունի հաղորդակցվելու ստանդարտ հոսքային համակարգի (անգլ.՝ standard streams system (stdin and stdout)) կամ ցանցային TCP սոկետների միջոցով։

Աստերիսկին սովորական անալոգային հեռախոս կամ ընդհանուր օգտագործման հեռախոսային ցանցի գծերը միացնելու համար սերվերը պետք է հագեցած լինի հատուկ սարքավորումներով։ Դիջիումը և մի շարք այլ կազմակերպություններ վաճառում են PCI քարտեր հեռախոսներ, հեռախոսային գծեր, T1 և E1 գծեր, ինչպես նաև այլ անալոգային և թվային հեռախոսային ծառայություններ սերվերին միացնելու համար։

Միգուցե այսօր մշակողներին ավելի շատ հետաքրքրի այն, որ Աստերիսկը սպասարկում է մեծ քանակի վիդեո[2] և ձայն IP-ի վրա կանխագրեր, որոնք ներառում են SIP, MGCP և H.323։ Ատերիսկը կարող է համգործակցել SIP հեռախոսների մեծ մասի հետ, գործելով ինչպես գրանցող, այնպես էլ որպես ուղեմուտ IP հեռախոսի և ընդհանուր օգտագործման հեռախոսային ցանցի միջև. Աստերիսկի ծրագրավորողները նախագծել են նաև մի նոր կանխագիր Inter-Asterisk eXchange (IAX2), Աստերիսկ ԱՀԿ-րի միջև զանգերի և այն VoIP ծառայություններ տրամադրողների ովքեր կիրառում են այն արդյունավետ կապակցման համար։ Որոշ հեռախոսներ առանց միջնորդ ծրագրի սպասարկում են IAX2 կանխագիրը։

Սպասարկելով դասական և VoIP հեռախոսային ծառայությունները, Աստերիսկը մշակողներին հնարավորություն է տալիս կառուցել նոր հեռախոսային համակարգեր, կամ աստիճանաբար տեղափոխել գոյություն ունեցող համակարգերը նոր տեխնոլոգիաների։ Որոշները օգտագործում են Աստերիսկ սերվերները սեփական ԱՀԿ-երը փոխարինելու համար; մյուսները լրացուցիչ հատկություններ մատուցելու համար (ինչպիսին են՝ ձայնային փոստը, հեռախոսային ընտրացանկը, վիրտուալ հեռախոսային խանութները կամ պակասեցնելով ծախսերը միջազգալին զանգերը կատարել Ինտերնետի միջոցով)

VoIP հեռախոսային կազմակերպությունները կարող են, որպես տարբերակ, աջակցել Աստերիսկը ինչպես օգտագործողի գործակալ կամ մայրուղային միացում IAX2 կամ SIP կանխագրերով անալոգ հեռախոսային ադապտերների հետ միասին, նաև այլ ծրագրային օգտագործողի գործակալներ։

Աստերիսկը առաջիններից է եվել բաց կոդով ծրագրային ԱՀԿ-ների մեջ, որոնք այժմ բազմաթիվ են[3]։

Ի լրացում VoIP կանխագրերի, Աստերիսկը աջակցում է բազմաթիվ ավանդական շրջառույթային-փոխանջատման կանխագրեր ինչպիսին են ISDN և SS7. Սա պահանջում է համապատասխան սարքավորում, ստեղծված երրորդ կողմի արտադրողների կողմից, որն աջակցում է այս կանխագրերը։ Ամեն մի կանխագիրը պահանջում է հատուկ ծրագրային մոդուլների, ինչպիսիք են՝ DAHDI(Zaptel), Libpri, Libss7, chanss7, wanpipe և այլն, տեղադրում։ Այս հատկություններով Աստերիսկը տրամադրում է հաղորդակցության լայն սպեկտր։

Աստերիսկը բազմաթիվ "ԾԱՀԿ արկղի մեջ" հիմանական բաղադրիչն է, որոնք և՛ վճարովի, և՛ անվճար նախագծեր են։ Որոշակի վճարովի արտադրանքներ հանդիսանում են ծրագրաապարատային փաթեթներ, որոնց համար արտադրողը սպասարկում և թողարկում է անվճար ծրագրային ապահովում։ Օրինակներն են TrixBox և Elastix.

Աստերիսկը նաև ներառված է LinuxMCE տնային ժամանցի/ավտոմատացման համակարգում։

Կազմաձև[խմբագրել]

Աստերիսկը որպես աշխատող համակարգ կազմաձևելու համար ադմինիստրատորը պարտավոր է՝

  • ստեղծել ուղիներ/սարքավորումներ, որոնք թույլ կտան Աստերիսկին կապնվել ձայնային կապուղիով, որն օգտագործում է այդ ուղին և/կամ սարքավորումը։ Դրանք կարող են լինել VoIP, կամ TDM, կամ անալոգային հեռախոսային սարքավորումներ։
  • բաղադրել համարակալման հեռախոսային պլանը, գրված Աստերիսկի ղեկավարման լեզվով, ալգորիթմը արտահայտելու կամ հոսքը կառավարելու համար, որը Աստերիսկը օգտագործում է այդ ուղիներով ներկայացված զանգերին պատասխանելու համար։ Աստերիսկը կարող է օգտագործվել բազմաթիվ հատուկ ծրագրերի համար և հարմարեցված համարակալման հեռախոսային պլանը պետք է ստեղծվի յուրաքանչյուր նպատակի համար, ինչպիսիք են ԱՀԿ-ի գործառույթները։ Այսպիսով Աստերիսկը իրենից ներկայացնում է ԱՀԿ կառուցելու համար ՛շինարարարկան հավաքածու՛, այլ ոչ թե ինքնին ԱՀԿ ինչպես սովորաբար մտածում են։

Աստերիսկը կառավարվում է կազմաձևման ֆայլերի հավաքածուն խմբագրելու միջոցով։ Դրանցից մեկը, extensions.conf, պարունակում է համարակալման հեռախոսային պլանը և վերահսկում է Աստերիսկի աշխատանքային հոսքը։ Գործընթացը վերահսկող տարրերը ինչպիսիք են՝ անվանական փոփոխականները, ընթացակարգային մակրոները, համատեքստերը, ընդլայնումները և գործողությունները, սահմանելու համար օգտագործվում է սեփական գրվածքային լեզուն։ Համատեքստերը խմբավորում են բոլոր վավեր նպատակակետային թվային կոդերը, որոնք կիրառվում են այն կապուղիների համախմբում որոնց վրա կարող են ներկայացվել մուտքային (դեպի Աստերիսկ) զանգերը։ Այս թվային կոդերը, որոնք անվանվում են "ընդլայնումներ" (չնայած հաճախ բուն ընդլայնում չեն) գրվածքների (անգլ.՝ script) սկզբնակետերն են, որոնք Աստերիսկին հրահանգում են ինչպես մշակել այդ համարին կատարված զանգերը տվյալ համատեքստի ներքո։

Պարզաբանելու համար՝ համատեքստերը սահմանում են զանգի աղբյուրը, իսկ ընդլայնումները սահմանում են նպատակակետը։

Քանի որ յուրաքանչյուր կապուղի հայտարարում է համատեքստ, համարակալման հեռախոսային պլանը թույլատրում կամ սահմանափակում է իր սարքին թույլատրելի ընդլայնումներն և սարքավորումները։ Ընդլայնումները հնարավորություն ունեն բազմաստիճան կատարման, որոնցից յուրաքանչյուրն կատարում է կամ տրամաբանական գործողություններ, կամ ուղղորդում է ծրագիրի ընթացքը, կամ աշխատացնում է Աստերիսկում հասանելի բազնաթիվ կիրառույթներից որևիցե մեկը։

Կիրառույթները հատուկ գործողություններ կատարող բեռնելի մոդուլներ են, ինչպիսիք են հավաքել որոշակի հեռախոսի համար կամ նեռքին ընդլայնում (app_dial), իրագործել համագումար ծառայություններ (app_meetme), կամ կատարել ձայնային փոստի (app_voicemail). Հասանելի կիրառույթների բազմաթիվ լինելը եզակի հնարավորություն և գործիքների համախումբ է տրամադրում ձևակերպել ալգորիթմներ որոնք կաորղ են իրականացնել հեռաղոսակապի տարբեր, հարմարեցված սցենարների լայն զանգված։ Կիրառույթները ղեկավարում են Աստերիսկի հիմնական ֆունկցիաները ներքին տարրական գործողությունների միջոցով, որոնք կարգավորվում են ընդլայնվող ձևով մոդուլար ճարտարապետության և կիրառույթների ծրագրավորման փոխկապակցիչների (անգլ.՝ API) միջոցով։

Աստերիսկի համակարգում ծրագրավորումը կարող է իրականացվել նաև առանձնացված, արտաքին կիրառույթների միջոցով օգտագործելով Asterisk Gateway Interface. Asterisk Gateway Interface (AGI)-ը ծրագրային փոխկապակցիչ և հաղորդակցման կանխագիր է, նախատեսված Աստերիսկի հետ միջ-գործընթացային հաղորդակցման համար։ Այս արտաքին, օգտագործողի կողմից գրված ծրագրերը մեկնարկվում են Աստերիսկի համարակալման հեռախոսային պլանի կողմից pipes-ը օգտագործելով, հեռախոսակապի գործողություններին կցված ղեկավարման և ձայնային կապուղինրը կարգավորելու համար։ Այն նման է վեբ սերվերների CGI հատկությանը որտեղ ցանկացած լեզու կարելի է օգտագործել standard streams, stdin և stdout-ի միջոցով Աստերիսկի հետ հաղորդակցվող արտաքին ծրագիր գրելու համար։

Գոյություն ունեն Աստերիսկի մի քանի օգտագործողի գրաֆիկական փոխկապակցիչներ (ՕԳՓ) (անգլ.՝ Graphical user interface (GUI))։ Այս փոխկապակցիչները ադմինիստրատորին թույլ են տալիս դիտել, խմբագրել և փոփոխել Աստերիսկի տարբեր ասպեկտնեռ վեբ փոխկապակցիչի միջոցով։ Աստերիսկ 1.8-ից սկսած, “Asterisk-GUI” կոչված ՕԳՓ-ն Digium-ի կողմից մշակվել է որպես առանձին Աստերիսկ. Գոյություն ունեն նաև այլ ՕԳՓ-ներ օրինակ FreePBX։ trixbox (նախկինում Asterisk at home (A@H)) Աստերիսկ և FreePBX ներառող Աստերիսկի տարածված փաթեթ է։ PBX in a Flash (PIAF) այլ նմանատիպ փաթեթ է։

Դիջիումը նաև ստեղծել է AsteriskNow կոչվող փաթեթը, հարմարեցված Լինուքսի տեղադրումով և ներառում է FreePBX և բոլոր լրացուցիչ ծրագրերը "off-the-shelf" ԱՀԿ տրամադրելու համար, որի համար միայն պահանջում է օգտագործողի կողմից նախապատրաստել համարակալման հեռախոսային պլանը և միացնել անհրաժեշտ սարքավորումները։ AsteriskNow-ի թիրախային շուկան ադմինիստրատորներն են, ովքեր ցանկանում են տեղադրել ԱՀԿ օգտագործելով Աստերիսկ, սակայն հնարավոր է, որ չունեն սերվերների կոնֆիգուրացիայի փորձ, որպեսզի իրականացնեն Աստերիսկի հիմանական տեղադրումն և սկզբնական կազմաձևումը

Տեղայնացված տարբերակներ[խմբագրել]

Ի սկզբանե մշակված լինելով ԱՄՆ-ի համար, իր անվճար լինելով, ազատ օգտագործման արտոնագրի, բաց կառուցվածքի, ընդարձակելիության և հատկությունների գերազանց համախմբի շնորհիվ Աստերիսկը դառձել է աշխարհով հայտնի VoIP ԱՀԿ։ Ինտերակտիվ ձայնային պատասխանի և ձայնային փոստի համար նախատեսված Ամերիկյան Անգլերեն, Ֆրանսերեն և Իսպաներեն կանացի ձայները ներառյալ նոր լեզվական տարբերակները, ինչպիսիք են Ավստրալիական Անգլերենը [1], մշտապես թարմացվում են միջազգային մշակողների կողմից տարբեր լեզուներով և բարբառներով։ Բացի անվճար Աստերիսկի ձայնային հավաքածուներից կան նաև լրացուցիչ վճարովի հավաքածուներ տարբեր լեզուներով, բարբառներով և սեռերով։

Մշակում[խմբագրել]

Հիմնական թողարկումներ։

  • 1.0 - Թողարկվել է 2004թ. սեպտեմբերի 23-ին [4]
  • 1.2 - Թողարկվել է 2005թ. նոյեմբերի 15-ին[5]
  • 1.4 - Թողարկվել է 2006թ. դեկտեմբերի 26-ին[6]
  • 1.6 - Թողարկվել է 2008թ. հոկտեմբերի 2-ին[7]
  • 1.8 - Թողարկվել է 2010թ. հոկտեմբերի 21-ին[8]

Ներառում[խմբագրել]

Աստերիսկը ներառված է կամ օգտագործվում է բազնաթիվ այլ նախագծերում։ Կրկնօրինակ նախագծերը կարող են լճանալ կամ միավորվել մեկը մյուսի հետ ժամանակի ընթացքում։ Ստորև բերված են աստերիսկի կիրառումով մի քանի նախագծերի օրինակներ՝

Հղումներ[խմբագրել]

  1. «Asterisk Win32 website»։ http://www.asteriskwin32.com/։ Վերցված է 2011-05-11։ 
  2. «Video support in Asterisk»։ Asterisk.org։ http://www.asterisk.org/doxygen/trunk/AstVideo.html։ Վերցված է 2010-06-18։ 
  3. VoIP Now (2007-04-16)։ «74 Open Source VoIP Apps & Resources»։ http://www.voipnow.org/2007/04/74_open_source_.html։ Վերցված է 2007-12-22։ 
  4. «Asterisk 1.0 released»։ TMCnet։ 2004թ, սեպտեմբերի 23։ http://blog.tmcnet.com/blog/tom-keating/voip/asterisk-10-released.asp։ Վերցված է 2009-03-26։ 
  5. Keating, Tom (2005թ, նոյեմբերի 16)։ «Asterisk 1.2 released»։ TMCnet։ http://blog.tmcnet.com/blog/tom-keating/asterisk/asterisk-12-released.asp։ Վերցված է 2009-03-26։ 
  6. «Asterisk 1.4.0 released»։ Asterisk.org։ 2006թ. դեկտեմբերի 20։ http://www.asterisk.org/node/48266։ Վերցված է 2009-03-26։ 
  7. «Asterisk 1.6.0 released»։ Asterisk.org։ 2008թ. հոկտեմբերի 2։ http://www.asterisk.org/node/48539։ Վերցված է 2009-03-26։ 
  8. «Asterisk 1.8.0 Now Available!»։ Asterisk.org։ 2010թ. հոկտեմբերի 21։ http://www.asterisk.org/node/51444։ Վերցված է 2010-10-24։ 
  9. XiVO

Արտաքին հղումներ[խմբագրել]