SMPP - Peer-to-Peer կարճ հաղորդագրությունների արձանագրություն

Բարեւ Ձեզ! Թեև ակնթարթային մեսենջերներն ու սոցիալական ցանցերը ամեն օր փոխարինում են հաղորդակցության ավանդական մեթոդներին, դա չի նվազեցնում SMS-ի հանրաճանաչությունը: Ստուգումը հայտնի կայքում կամ գործարքի մասին ծանուցումը կրկնում է, որ նրանք ապրում են և կշարունակվեն: Մտածե՞լ եք, թե ինչպես է այդ ամենն աշխատում: Շատ հաճախ SMPP արձանագրությունն օգտագործվում է զանգվածային հաղորդագրություններ ուղարկելու համար, որոնք կքննարկվեն կտրվածքի տակ:

Հաբրեն արդեն ուներ հոդվածներ smpp-ի մասին, 1,2, բայց նրանց նպատակը չի եղել նկարագրել բուն արձանագրությունը։ Իհարկե, դուք կարող եք անմիջապես սկսել աղբյուրից. բնութագրերը, բայց կարծում եմ լավ կլիներ, որ դրա բովանդակության ամփոփումը լիներ։ Ես կբացատրեմ v3.4-ի օրինակով։Ուրախ եմ ձեր օբյեկտիվ քննադատության համար։

SMPP արձանագրությունը հավասարազոր հաղորդագրությունների փոխանցման արձանագրություն է: Սա նշանակում է, որ յուրաքանչյուր գործընկեր/հաբ սերվեր հավասար է: Ամենապարզ դեպքում, SMS հաղորդագրությունների սխեման այսպիսի տեսք ունի.

SMPP - Peer-to-Peer կարճ հաղորդագրությունների արձանագրություն

Այնուամենայնիվ, եթե ազգային օպերատորը երթուղի չունի, նա միջնորդից է խնդրում դա ինչ-որ հեռավոր տարածաշրջան՝ SMS հանգույց: Երբեմն մեկ SMS ուղարկելու համար անհրաժեշտ է շղթա կառուցել մի քանի երկրների կամ նույնիսկ մայրցամաքների միջև:

Արձանագրության մասին

SMPP-ը կիրառական շերտի արձանագրություն է, որը հիմնված է PDU-ների փոխանակման վրա և փոխանցվում է TCP/IP կամ X25 նիստերի միջոցով՝ sms և ussd հաղորդագրություններ ուղարկելու համար: Սովորաբար SMPP-ն օգտագործվում է մշտական ​​կապի ռեժիմում, սա խնայում է ժամանակը: SMPP-ն օգտագործում է հաճախորդ-սերվեր հաղորդակցման մոդել:

Հաղորդակցման ռեժիմ

SMPP - Peer-to-Peer կարճ հաղորդագրությունների արձանագրություն

SMPP-ի միջոցով ուղարկողի և SMS կենտրոնի միջև հաղորդագրությունների փոխանակումը կարող է իրականացվել հետևյալ ռեժիմներով.

Հաղորդող (հաղորդիչ) - հաղորդագրության փոխանցում մեկ ուղղությամբ, իր հերթին
Ընդունիչ (ստացող) - միայն SMS կենտրոնից հաղորդագրություն ստանալը:
Ընդունիչ (հաղորդիչ) - հաղորդագրությունների փոխանակում SMS կենտրոնի և օգտագործողի միջև

Կառուցվածք

SMPP - Peer-to-Peer կարճ հաղորդագրությունների արձանագրություն

Հաղորդագրության երկարությունը

Մեկ SMS հաղորդագրությունը կարող է պարունակել 70 նիշ կիրիլիցա մուտքագրելիս և ոչ ավելի, քան 157 լատինատառ + 3 UDH Եթե դուք SMS ուղարկեք մեծ թվով նիշերով, այն կբաժանվի մի քանի հատվածի և կմիավորվի ստացող սարքում: Սեգմենտավորման դեպքում նիշերի քանակը կրճատվում է հաղորդագրության վերնագրերով, որոնք ցույց են տալիս հաղորդագրության մասը։ Հետևաբար, մեծ SMS հաղորդագրություն ուղարկելիս այն պարունակում է առավելագույնը 153 լատինական նիշ կամ 67 ոչ տիպիկ նիշ:

Տվյալների կոդավորման սխեման

Այնուամենայնիվ, հաղորդագրություն փոխանցելու համար նիշերը պետք է կոդավորվեն: SMPP արձանագրությունում կոդավորման համար պատասխանատու է հատուկ դաշտ՝ Data Coding Scheme կամ DCS: Սա դաշտ է, որը նշում է, թե ինչպես պետք է ճանաչվեն հաղորդագրությունները: Բացի այդ, DCS դաշտը ներառում է.

  • նիշերի հավաքածու, որը սահմանում է կոդավորումը.
  • հաղորդագրությունների դաս;
  • կարդալուց հետո ավտոմատ ջնջման հարցում;
  • հաղորդագրության սեղմման նշում;
  • հեռարձակման հաղորդագրության լեզուն;

Ստանդարտ 7-բիթանոց այբուբեն (GSM 03.38): Այն մշակվել է GSM հաղորդագրությունների համակարգի համար: Այս կոդավորումը հարմար է անգլերենի և մի շարք լատիներեն լեզուների համար: Յուրաքանչյուր նիշ բաղկացած է 7 բիթից և կոդավորված է օկտետի մեջ:

UTF-16 (GSM UCS2-ում) 7-բիթանոց այբուբենում բացակայող նիշերը ներառելու համար մշակվել է UTF-16 կոդավորումը, որն ավելացնում է լրացուցիչ նիշեր (ներառյալ կիրիլիցա)՝ նվազեցնելով հաղորդագրության չափը 160-ից մինչև 70, այս տեսակի կոդավորումը: գրեթե ամբողջությամբ կրկնում է Յունիկոդը:

8-բիթանոց օգտագործողի կողմից սահմանված տվյալներ: Դրանք ներառում են KOI8-R և Windows-1251: Չնայած այս լուծումը կարծես ավելի խնայող է, համեմատած նույն UTF-16-ի հետ: Տարբեր սարքերում համատեղելիության ողջամիտ հարց կա: Քանի որ այս դեպքում երկու սարքերը պետք է նախապես կարգավորվեն:

Հաղորդագրության դաս

  • Class0, կամ ֆլեշ, հաղորդագրություն, որը պահվում է հեռախոսի հիշողության մեջ՝ օգտագործողի խնդրանքով.
  • Class1, կամ հեռախոսի հիշողության մեջ պահվողներ;
  • Class1, կամ հեռախոսի հիշողության մեջ պահվողներ;
  • Class2, պետք է ապահովի, որ հաղորդագրությունը պահպանվի բջջային տերմինալի հիշողության մեջ, հակառակ դեպքում պետք է SMS կենտրոնին ծանուցումներ տա պահպանման անհնարինության մասին.
  • Դաս 3 - այս դեպքում հեռախոսը պետք է ծանուցում ուղարկի, որ հաղորդագրությունը կարող է պահպանվել՝ անկախ սարքի հիշողության քանակից: Այս տեսակի հաղորդագրությունը ենթադրում է, որ հաղորդագրությունը հասել է իր նպատակակետին.

Հաղորդագրության տեսակը

Լուռ հաղորդագրություն (SMS0) SMS հաղորդագրության տեսակ առանց բովանդակության: Նման SMS-ները գալիս են առանց ծանուցման և չեն ցուցադրվում սարքի էկրանին:

PDU- ն

Յուրաքանչյուր pdu գործողություն զուգակցված է և բաղկացած է հարցումից և պատասխանից: Օրինակ՝ հրաման, որն ասում է, որ կապ է հաստատվել (bind_transmitter / bind_transmitter_resp), կամ որ հաղորդագրություն է ուղարկվել (deliver_sm / deliver_sm_resp)

SMPP - Peer-to-Peer կարճ հաղորդագրությունների արձանագրություն

Յուրաքանչյուր pdu փաթեթ բաղկացած է երկու մասից՝ վերնագիր (վերնագիր) և մարմին (մարմ): Վերնագրի կառուցվածքը նույնն է ցանկացած pdu փաթեթի համար. հրամանի երկարությունը փաթեթի երկարությունն է, id-ը փաթեթի անունն է, իսկ կարգավիճակի հրամանը ցույց է տալիս՝ հաղորդագրությունը հաջողությամբ ուղարկվել է, թե ձախողվել է:

Լրացուցիչ TLV պարամետրեր

TLV (Tag Length Value) կամ լրացուցիչ դաշտեր: Նման պարամետրերն օգտագործվում են արձանագրության ֆունկցիոնալությունը ընդլայնելու համար և պարտադիր չեն: Այս դաշտը նշված է pdu դաշտի վերջում: Որպես օրինակ, օգտագործելով dest_addr_np_information TLV-ը, կարող եք կազմակերպել համարի տեղափոխման մասին տեղեկատվության փոխանցումը:

թոն եւ Նփի

TON (Type of Number) պարամետրը SMSC-ին տեղեկացնում է հասցեավորման ձևաչափի և ցանցի տեսակի մասին:
NPI (Numbering Plan Identification) պարամետր, որը ցույց է տալիս համարակալման պլանը:

SMPP - Peer-to-Peer կարճ հաղորդագրությունների արձանագրություն

Հաղորդագրության աղբյուրի հասցեն կամ ալֆա անունը

Հեռախոսին ուղարկվող հաղորդագրությունները լինում են երկու տեսակի՝ թվային և այբբենական: Թվերը կարող են լինել երկար (հեռախոսահամարի նման) կամ կարճ: Երբեմն օպերատորները սահմանափակումներ ունեն չեզոք անուններից ուղարկելու հարցում, ինչպիսիք են Infosms, Alert և այլն: Երբեմն օպերատորները թույլ չեն տալիս երթեւեկությունը, եթե անունը գրանցված չէ իրենց ցանցում: Այնուամենայնիվ, սա ավելի շատ օպերատորի առանձնահատկությունն է:

Ներկայացման փուլերը

SMPP - Peer-to-Peer կարճ հաղորդագրությունների արձանագրություն

SMS-ՆԵՐԿԱՅԱՑՐԵԼ ուղարկում է MO FSM հաղորդագրություն (կարճ հաղորդագրություն բջջային տերմինալից)
SMS-ՆԵՐԿԱՅԱՑՆԵԼ ՀԱՇՎԵՏՎՈՒԹՅՈՒՆ — հաստատում, որ հաղորդագրությունն ուղարկվել է SMSC-ով
ԳՀԻ ՍՄ (SendRoutingInfo) - SMSC-ն տեղեկատվություն է ստանում HLR-ից բաժանորդի MSC/VLR գտնվելու վայրի վերաբերյալ:
SRI SM RESP — HLR-ի պատասխանը բաժանորդի դիրքի մսի վերաբերյալ
MT-FSM - գտնվելու վայրը ստանալուց հետո հաղորդագրություն է ուղարկվում «Փոխանցել կարճ հաղորդագրություն» գործողության միջոցով
MT-FSM-ACK — պատասխան SMSC-ից, որ հաղորդագրությունն ուղարկվել է
SMS ԿԱՐԳԱՎԻՃԱԿԻ ՀԱՇՎԵՏՎՈՒԹՅՈՒՆ — SMSC-ն ուղարկում է հաղորդագրությունների առաքման կարգավիճակը:

Հաղորդագրության առաքման կարգավիճակը

SMS ԿԱՐԳԱՎԻՃԱԿԻ ՀԱՇՎԵՏՎՈՒԹՅՈՒՆ կարող է վերցնել մի քանի արժեքներ.
ԴԵԼԻՎՐԴ հաղորդագրությունը հաջողությամբ առաքվեց
ՄԵՐԺՎԵԼ Է — SMS կենտրոնի կողմից մերժված հաղորդագրություն
ԺԱՄԿԵՏԱՆՑ - հաղորդագրությունը հեռացվում է ուղարկման հերթից TTL-ի ավարտից հետո (հաղորդագրության ժամկետը)
ՉԺԱՄԱՆԱԿՎԵԼ - չառաքման այլ դեպքեր
Անհայտ է- Պատասխան չի ստացվել։

Փոխանցման սխալներ

Երբեմն պատճառները, որոնց պատճառով SMS հաղորդագրությունները չեն առաքվում բաժանորդին: Այս պատճառների հետևանքը սխալների առաջացումն է։ Սխալները վերադարձվում են PDUs_sms_resp-ում: Բոլոր սխալները կարելի է բաժանել ժամանակավոր (ժամանակավոր) և մշտական ​​(մշտական):

Որպես օրինակ՝ absent_subscriber-ը ժամանակավոր է, բաժանորդը հասանելի չէ կամ առցանց չէ, իսկ մշտական՝ բաժանորդը գոյություն չունի: Կախված տեղի ունեցող սխալներից՝ ձևավորվում է այս հաղորդագրությունները նորից ուղարկելու քաղաքականություն։

Օրինակ, եթե բաժանորդը զբաղված է եղել խոսելով և ստացել է MT հեռախոսը զբաղված է սխալ, հաղորդագրությունը կարող է նորից ուղարկվել մի քանի րոպե անց, սակայն, եթե բաժանորդն արգելափակել է հաղորդագրությունների ստացման ծառայությունը, նորից ուղարկելն իմաստ չի ունենա: SMSC-ի էջերում կարող եք գտնել սխալների ցանկ, օրինակ, ինչպես սա է.

Source: www.habr.com

Добавить комментарий