СМПП – кратки протокол за равноправне поруке

Здраво! Иако месинџери и друштвене мреже свакодневно замењују традиционалне методе комуникације, то не умањује популарност СМС-а. Верификација на популарном сајту, или обавештење о трансакцији се понавља, живе и живеће. Да ли сте се икада запитали како све то функционише? Врло често се СМПП протокол користи за слање масовних порука, о чему ће бити речи у наставку.

На Хабреу су већ постојали чланци о смпп-у, 1,2, али њихов циљ није био да опишу сам протокол. Наравно, можете одмах почети од оригиналног извора - спецификације, али мислим да би било лепо да постоји кратак резиме тога. Објаснићу на примеру в3.4. Биће ми драго због ваше објективне критике.

СМПП протокол је пеер-то-пеер протокол за размену порука. То значи да сваки равноправни/хуб сервер има једнака права. У најједноставнијем случају, шема СМС порука изгледа овако:

СМПП – кратки протокол за равноправне поруке

Међутим, ако национални оператер нема руту до неког удаљеног региона, за то тражи посредника - СМС чвориште. Понекад, да бисте послали један СМС, морате изградити ланац између неколико земаља, или чак континената.

О протоколу

СМПП је протокол слоја апликације који се заснива на ПДУ размени и преноси се преко ТЦП/ИП, или Кс25 сесија за пренос СМС и уссд порука. Типично, СМПП се користи у трајном режиму, што помаже у уштеди времена. СМПП користи модел комуникације клијент-сервер.

Режим свази

СМПП – кратки протокол за равноправне поруке

Размена порука између пошиљаоца и СМС центра путем СМПП-а може се вршити у следећим режимима:

Предајник (предајник) - преношење поруке у једном правцу, једну по једну
Пријемник - прима само поруку од СМС центра.
Трансрецеивер (трансцеивер) - Размена порука између СМС центра и корисника

Структура

СМПП – кратки протокол за равноправне поруке

Дужина поруке

Једна СМС порука може да садржи 70 карактера када се куца ћирилицом и не више од 157 латиничних знакова + 3 УДХ Уколико пошаљете СМС са великим бројем карактера, он ће се поделити на неколико сегмената и комбиновати у пријемном уређају. У случају сегментације, број карактера се смањује заглавља поруке која означавају део поруке. Дакле, када шаљете велику СМС поруку, она садржи највише 153 латинична знака или 67 нетипичних знакова.

Шема кодирања података

Међутим, симболи захтевају кодирање да би пренели поруку. У СМПП протоколу за кодирање је одговорно посебно поље - Дата Цодинг Сцхеме, или ДЦС. Ово је поље које одређује како поруке треба да се препознају. Поред тога, ДЦС поље укључује:

  • скуп знакова који дефинише кодирање;
  • класа порука;
  • захтев за аутоматско брисање након читања;
  • индикација компресије поруке;
  • језик емитовања порука;

Стандардна 7-битна абецеда (ГСМ 03.38). Развијен је за ГСМ систем за размену порука. Ово кодирање је погодно за енглески и бројне латинске језике. Сваки знак се састоји од 7 бита и кодиран је у октет.

УТФ-16 (у ГСМ УЦС2) За укључивање знакова који недостају у 7-битном алфабету, развијено је УТФ-16 кодирање, које додаје додатне знакове (укључујући ћирилицу) смањењем величине поруке са 160 на 70; овај тип кодирања скоро потпуно реплицира Уницоде .

8-битни кориснички дефинисани подаци. То укључује КОИ8-Р и Виндовс-1251. Иако се ово решење чини економичнијим у поређењу са истим УТФ-16. Поставља се разумно питање компатибилности на различитим уређајима. Јер у овом случају оба уређаја морају бити унапред конфигурисана.

Мессаге цласс

  • Цласс0, или фласх, порука која се чува у меморији телефона по избору корисника;
  • Класа 1 или оне које се налазе у меморији телефона;
  • Класа 1 или оне које се налазе у меморији телефона;
  • Класа 2 мора осигурати да порука буде сачувана у меморији мобилног терминала, у супротном мора упозорити СМС центар о немогућности чувања;
  • Класа 3 – у овом случају телефон мора да пошаље обавештење да се порука може сачувати, без обзира на количину меморије у уређају. Ова врста поруке подразумева да је порука стигла до примаоца;

Врста поруке

Тиха порука (СМС0) Тип СМС поруке без садржаја. Овај СМС стиже без обавештења и не приказује се на екрану уређаја.

ПДУ

Свака пду операција је упарена и састоји се од захтева и одговора. На пример: команда која каже да је веза успостављена (бинд_трансмиттер / бинд_трансмиттер_респ), или да је порука послата (деливер_см / деливери_см_респ)

СМПП – кратки протокол за равноправне поруке

Сваки пду пакет се састоји од два дела - заглавља и тела. Структура заглавља је иста за сваки пду пакет: дужина команде је дужина пакета, ид је име пакета, а команда статуса показује да ли је порука пренета успешно или са грешком.

Додатни ТЛВ параметри

ТЛВ (вредност дужине ознаке) или додатна поља. Такви параметри се користе за проширење функционалности протокола и нису потребни. Ово поље се појављује на крају пду поља. На пример, користећи ТЛВ дест_аддр_нп_информатион, можете организовати пренос информација о преносивости броја.

Тон и Нпи

ТОН (Типе оф Нумбер) параметар обавештава СМСЦ о формату адресирања и врсти мреже.
НПИ (Нумберинг План Идентифицатион) параметар који указује на план нумерације.

СМПП – кратки протокол за равноправне поруке

Адреса извора поруке или алфа име

Поруке које се шаљу на ваш телефон долазе у две варијанте: дигиталне и алфабетске. Дигитални бројеви могу бити дуги (слично телефонском броју) или кратки. Понекад оператери имају ограничења за слање са неутралних имена, на пример Инфосмс, Алерт итд. Понекад оператери неће дозволити саобраћај ако име није регистровано на њиховој мрежи. Међутим, ово су пре карактеристике оператера.

Фазе подношења

СМПП – кратки протокол за равноправне поруке

СМС-СУБМИТ - ово је слање МО ФСМ поруке (кратка порука са мобилног терминала)
СМС-ПОШАЉИ ИЗВЕШТАЈ — потврда да је поруку послао СМСЦ
СРИ СМ (СендРоутингИнфо) - СМСЦ прима информације од ХЛР-а о МСЦ / ВЛР локацији претплатника
СРИ СМ РЕСП — одговор ХЛР-а у вези са позицијом претплатника месо
МТ-ФСМ — након пријема локације, порука се шаље помоћу операције „Проследи кратку поруку“.
МТ-ФСМ АЦК — одговор СМСЦ-а да је порука послата
СМС-ИЗВЕШТАЈ О СТАТУСУ — СМСЦ шаље статус испоруке поруке.

Статус испоруке поруке

СМС-ИЗВЕШТАЈ О СТАТУСУ може имати неколико вредности:
ДЕЛИВРД порука је успешно испоручена
РЕЈЕЦТД — СМС центар је одбио поруку
ИСТЕКА — порука се уклања из реда за слање након завршетка ТТЛ-а (животни век поруке)
УНДЕЛИВ - остали случајеви неиспоруке
НЕПОЗНАТО-није примљен одговор у вези са отпремом.

Грешке у преносу

Понекад постоје разлози због којих се СМС поруке не испоручују претплатнику. Последица ових разлога је појава грешака. Грешке се враћају у ПДУс_смс_респ. Све грешке се могу поделити на привремене (Темпорари) и трајне (Перманент).

На пример, абсент_субсцрибер се може класификовати као привремени - претплатник није доступан или није на мрежи, и стални - претплатник не постоји. У зависности од грешака које се јављају, формира се политика за поновно слање ових порука.

На пример, ако је претплатник био заузет током позива и примио грешку МТ слушалица је заузета, порука се може поново послати након неколико минута, међутим, ако је претплатникова услуга примања порука блокирана, поновно слање неће имати смисла. Листу грешака можете пронаћи на СМСЦ страницама, на пример, као ово.

Извор: ввв.хабр.цом

Додај коментар