Bonghjornu! Ancu s'è i messageri instantani è e rete soziale rimpiazzanu i metudi tradiziunali di cumunicazione ogni ghjornu, questu ùn impedisce micca a popularità di SMS. A verificazione in un situ populari, o una notificazione di transazzione ripete ch'elli campanu è campanu. Avete pensatu à cumu tuttu funziona? Assai spessu, u protokollu SMPP hè utilizatu per mandà messagi in massa, chì seranu discututi sottu u cut.
Habré avia digià articuli nantu à smpp,
U protocolu SMPP hè un protocolu di messageria peer-to-peer. Questu significa chì ogni servitore peer / hub hè uguale. In u casu più simplice, u schema di messageria SMS s'assumiglia cusì:
In ogni casu, se l'operatore naziunale ùn hà micca una strada, dumanda à un intermediariu per questu in una regione remota - un centru SMS. Calchì volta, per mandà un SMS, avete bisognu di custruisce una catena trà parechji paesi, o ancu cuntinenti.
À propositu di u protocolu
SMPP hè un protokollu di l'applicazione chì hè basatu annantu à u scambiu di PDU è hè trasmessu nantu à TCP / IP, o sessioni X25 per mandà sms è ussd. Di solitu, SMPP hè utilizatu in modu di cunnessione persistente, chì risparmia u tempu. SMPP usa un mudellu di cumunicazione cliente-servitore.
Modu di cumunicazione
U scambiu di missaghji trà u mittente è u centru SMS via SMPP pò esse realizatu in i seguenti modi:
Trasmettitore (trasmettitore) - trasmissioni di un missaghju in una direzzione, à turnu
Receiver (ricevitore) - solu riceve un missaghju da u centru SMS.
Transreceiver (transceiver) - Scambiu di messagiu trà u centru SMS è l'utilizatore
strutura
A durata di u messagiu
Un missaghju SMS pò cuntene 70 caratteri quandu scrivite in cirillicu è micca più di 157 caratteri latini + 3 UDH Se mandate un SMS cù un gran numaru di caratteri, serà divisu in parechji segmenti è cumminati in u dispusitivu di ricezione. In u casu di segmentazione, u numeru di caratteri hè ridutta da l'intestazione di u messagiu, chì indicanu a parte di u messagiu. Dunque, quandu invià un grande missaghju SMS, cuntene un massimu di 153 caratteri latini o 67 caratteri micca tipici.
Schema di codificazione di dati
Tuttavia, i caratteri anu da esse codificati per trasmette un missaghju. In u protocolu SMPP, un campu speciale hè rispunsevule per a codificazione - Schema di codificazione di dati, o DCS. Questu hè un campu chì specifica cumu i missaghji deve esse ricunnisciuti. Inoltre, u campu DCS include:
- u settore di caratteri chì definisce a codificazione;
- classi di missaghju;
- dumanda di sguassà automaticamente dopu a lettura;
- una indicazione di cumpressione di missaghju;
- lingua di missaghju di trasmissione;
Alfabetu standard di 7 bit (GSM 03.38). Hè statu sviluppatu per u sistema di messageria in GSM. Questa codificazione hè adattata per l'inglese è una quantità di lingue latine. Ogni caratteru hè custituitu da 7 bits è hè codificata in un ottettu.
UTF-16 (in GSM UCS2) Per include i caratteri mancanti in l'alfabetu 7-bit, hè stata sviluppata a codificazione UTF-16, chì aghjunghje caratteri supplementari (inclusi i cirillichi) riducendu a dimensione di u messagiu da 160 à 70, stu tipu di codificazione. ripete quasi cumplettamente Unicode.
Dati definiti da l'utente di 8 bit. Questi include KOI8-R è Windows-1251. Ancu s'è sta suluzione pare esse più ecunomica cumparatu cù u listessu UTF-16. Ci hè una quistione raghjone di cumpatibulità nant'à i dispusitivi differente. Siccomu in stu casu, i dui dispusitivi deve esse cunfigurati in anticipu.
Classe di messagiu
- Class0, o lampu, un missaghju guardatu in a memoria di u telefunu à a dumanda di l'utilizatori;
- Class1, o quelli cullucati in a memoria di u telefunu;
- Class1, o quelli cullucati in a memoria di u telefunu;
- Class2, deve assicurà chì u messagiu hè guardatu in a memoria di u terminal mobile, altrimenti deve dà notifiche à u centru SMS nantu à l'incapacità di salvà;
- Class3 - in questu casu, u telefunu deve mandà una notificazione chì u messagiu pò esse salvatu, indipendentemente da a quantità di memoria in u dispusitivu. Stu tipu di missaghju implica chì u missaghju hà ghjuntu à u so destinazione;
Tipu di messagiu
Missaghju silenziu (SMS0) Tipu di missaghju SMS senza cuntenutu. Tali SMS vene senza notificazione è ùn hè micca visualizatu nantu à u screnu di u dispusitivu.
PDU
Ogni operazione pdu hè accoppiata è custituita da una dumanda è una risposta. Per esempiu: un cumandamentu chì dice chì una cunnessione hè stata stabilita (bind_transmitter / bind_transmitter_resp), o chì un messagiu hè statu mandatu (deliver_sm / deliver_sm_resp)
Ogni pacchettu pdu hè custituitu di dui parti - un header (header) è un body (body). A struttura di l'intestazione hè a stessa per qualsiasi pacchettu pdu: a lunghezza di u cumandamentu hè a durata di u pacchettu, l'id hè u nome di u pacchettu, è u cumandamentu di statutu indica se u missaghju hè statu mandatu successu o fallutu.
Parametri TLV addiziunali
TLV (Tag Length Value), o campi supplementari. Tali paràmetri sò usati per allargà a funziunalità di u protocolu è sò opzionali. Stu campu hè specificatu à a fine di u campu pdu. Comu esempiu, utilizendu u dest_addr_np_information TLV, pudete urganizà u trasferimentu di l'infurmazioni nantu à u porting di u numeru.
Ton è Npi
U paràmetru TON (Tipu di Numeru) informa SMSC nantu à u formatu di indirizzu è u tipu di rete.
NPI (Numbering Plan Identification) paràmetru chì indica u pianu di numerazione.
Indirizzu surghjente di u messagiu, o nome alfa
I missaghji mandati à u telefunu sò in duie varietà: numericu è alfabeticu. I numeri ponu esse longu (simile à un numeru di telefunu) o cortu. Calchì volta l'operatori anu restrizioni à l'invio di nomi neutrali, cum'è Infosms, Alert etc. A volte l'operatori ùn permettenu micca u trafficu se u nome ùn hè micca registratu in a so reta. Tuttavia, questu hè più di una caratteristica di l'operatore.
Fasi di sottumissione
SMS-SUBMIT manda un missaghju MO FSM (messagiu brevi da u terminal mobile)
SMS-SUMETTE RAPPORTU - cunferma chì u messagiu hè statu mandatu da SMSC
SRI SM (SendRoutingInfo) - L'SMSC riceve infurmazioni da u HLR in quantu à u locu MSC / VLR di l'abbonatu
SRI SM RESP - risposta da HLR in quantu à a carne di pusizioni di abbonati
MT-FSM - dopu avè ricivutu u locu, un missaghju hè mandatu cù l'operazione "Forward Short Message".
MT-FSM-ACK - risposta da SMSC chì u messagiu hè statu mandatu
RAPPORTU STATUS SMS - SMSC manda u statu di cunsegna di missaghju.
Status di consegna di u messagiu
RAPPORTU STATUS SMS pò piglià parechji valori:
DELIVRD messagiu mandatu cun successu
REJECTD - messagiu rifiutatu da u centru SMS
SCADU - u messagiu hè sguassatu da a fila di mandatu dopu a fine di u TTL (vita di u messagiu)
UNELIV - altri casi di mancata consegna
UNKNOWN- Nisuna risposta ricevuta.
Errori di trasmissione
Calchì volta i mutivi per quale i missaghji SMS ùn sò micca consegnati à l'abbonatu. A cunsiquenza di sti mutivi hè l'occurrence di errori. L'errori sò restituiti in PDUs_sms_resp. Tutti l'errori ponu esse divisi in tempuranee (timpuraniu) è permanente (permanente).
Per esempiu, absent_subscriber hè tempurale, l'abbonatu ùn hè micca dispunibule o micca in linea, è permanente - l'abbonatu ùn esiste micca. Sicondu l'errori chì si trovanu, una pulitica per rinvià sti messagi hè furmatu.
Per esempiu, s'è l'abbonatu era occupatu à parlà è ricivutu un telefuninu MT hè un errore occupatu, u missaghju pò esse rinviatu dopu à uni pochi di minuti, però, se l'abbonatu hà bluccatu u serviziu di ricezione di u missaghju, u risentu ùn hà micca sensu. Pudete truvà una lista di errori nantu à e pagine SMSC, per esempiu, cum'è
Source: www.habr.com