Mecanism de transmisie prin SMS
1. Centrele SMS
O schemă simplificată pentru trimiterea mesajelor scurte în rețeaua de domiciliu, atunci când ambii abonați se află în aceeași rețea, arată astfel:
Dacă abonații sunt alocați rețelelor diferite (de exemplu, acestea sunt deservite de diferiți operatori),
schema va arăta astfel:
Să aruncăm o privire mai atentă la centrul SMS-urilor.
Centrul SMS este un complex software și hardware destinat primirii, înregistrării și expedierii mesajelor scurte. Centrul SMS, ca orice alt dispozitiv de rețea, are propriul număr de identificare unic. Se pot seta centrele SMS într-o singură rețea. Atunci când trimiteți un mesaj, în plus față de text, se trimite informații care centru SMS ar trebui să proceseze acest mesaj.
Cum este schimbul de mesaje (recepție, înregistrare, livrare, ALERT-SC)
ecran într-o formă lizibilă - de exemplu, "Mesaj trimis" sau "Eroare la transmiterea mesajului"; Modemul "îngheață" și este gata să accepte comenzi noi etc. Dacă răspunsul nu este primit într-o anumită perioadă de timp (de obicei 30-60 de secunde), dispozitivul consideră că transferul a eșuat.
Centrul SMS, după ce a primit mesajul, îl stochează în baza de date și încearcă periodic să găsească destinatarul și să îi trimită mesajul.
3. Setările mesajelor:
Mulți știu despre cei patru parametri ai SMS-ului - data și ora trimiterii, data și ora livrării, expeditorul, textul. Dar sunt multe altele.
În plus față de textul real al mesajului, SMS-ul conține mai mulți parametri, care, atunci când sunt expediați, formează dispozitivul expeditorului.
Parametrii sunt după cum urmează (numele sunt mai degrabă arbitrare):
PRIORITATE. prioritate / urgență a mesajului. Există 4 nivele de prioritate a mesajelor, de la 0 la 3. Dacă primiți un mesaj cu o prioritate peste standardul 0, centrul SMS va încerca să-l livreze "din coadă". Dacă încercarea de livrare nu reușește, acest steag este setat la valoarea implicită. În rețelele GSM, gradarea nivelurilor de urgență arată ca de obicei (0) și urgentă (tot ceea ce este mai mare decât 0).
PERIOADA DE VALIDITATE. perioada actualității mesajului. În acest timp, centrul SMS va încerca să livreze mesajul. Dacă acest parametru nu este setat, se va utiliza perioada de timp setată în setările centrului SMS.
LIVRARE LISTA. livrare programată (amânată). Acest parametru vă informează când să începeți transportul. Dacă nu este specificat, mesajul va fi livrat imediat.
ÎNLOCUIȚI DACĂ ESTE PREZENT. cu această opțiune set SMS-centru va înlocui trimis anterior, dar nu a dat încă un mesaj cu aceleași valori ale câmpurilor „From“ și „To“. Este util să se utilizeze în sistemele de notificare despre sosirea mesajelor vocale.
RPI. Indicator cale de întoarcere. SMS informează destinatarul că răspunsul la mesajul ar trebui să fie trimis pe aceeași cale ca și mesajul original (de exemplu, prin SMS-centrul expeditorului). Inițial, opțiunea a fost conceput pentru a oferi posibilitatea de a răspunde la unele mesaje abonaților în roaming, dar se pare ca pagubele provocate de introducerea acesteia sunt mai mari decât beneficiile.
Iată punctul. Dacă această opțiune este activată în expeditorul mesajului, problemele în schimbul de mesaje nu apar, atâta timp cât ambele părți sunt deservite de un singur SMS-centru (aproape la fel ca și cea deservită de un singur operator). De îndată ce destinatarul mesajului devine un abonat care nu are permisiunea de a trimite mesaje prin intermediul SMS-centrul a utilizatorului expeditor (citește - abonații altor operatori), atunci când încearcă să răspundă la un mesaj de apel a obține eroarea: „Rețeaua nu acceptă transmiterea de mesaje“ sau ceva de genul asta. Acest lucru este firesc, deoarece operatorii interzic „din afară“ pentru a trimite mesaje prin intermediul SMS-centru.
Figura arată progresul mesajului de răspuns A al abonatului, când abonatul B a pornit RPI și a trimis primul său mesaj către abonatul A unei alte rețele.
UDH. Nume antet utilizator (antetul datelor utilizatorului). De fapt, acesta nu este un parametru, ci o parte a unui mesaj text. Câmpul rezervat pentru transmiterea de text, poate fi utilizat în două moduri - fie în totalitate, pentru transmiterea informațiilor de text sau să prezinte o informare extinsă și (dacă aveți spațiu) text.
Specificația pentru proiectarea antetului UDH pentru transmiterea acestor informații se numește EMS (Extended Message Service). În plus față de acest serviciu (nu toți producătorii de dispozitive îl acceptă), Nokia Smart Messaging, care are caracteristici similare, se bucură de popularitate.
Codarea datelor. caracteristică schema de codificare. Pur și simplu puneți codificarea în care este scris mesajul, dar nu doar codificarea.
4. Despre codificări și numărul de caractere în sms
Mulți dintre noi știu deja că într-un mesaj SMS este posibil să se transfere până la 160 de caractere latine sau până la 70 de caractere rusești. Cu toate acestea, motivul specific pentru această discriminare a părții din populația rusă nu este clar pentru toată lumea. Să încercăm să aruncăm o lumină asupra acestei trăsături misterioase a sms-urilor.
În primul rând, vreau să confundăm complet cititorul, spunând că lungimea maximă a sms-ului (nu înseamnă acum așa-numitul sms lung - sms lung) este de 140 de octeți. Această restricție este suprapusă la nivelul rețelei de semnalizare SS7 și este aceeași pentru toate rețelele GSM (de exemplu, în rețelele CDMA această cifră este chiar mai mică). Astfel, deja avem
există trei numere - 160, 140 și 70. Ne vom ocupa fiecare cu fiecare.
140 - numărul maxim de octeți alocați corpului de sms. Este timpul să ne amintim că, în plus față de sms-uri de text există, de asemenea, SMS-uri binare, care servesc pentru a transfera tonuri de apel, imagini, date de tehnologie OTA, etc. Dimensiunea lor maximă este de 140 de octeți.
160 - numărul maxim de caractere latine, care pot fi trimise într-un singur SMS. De fapt, este același 140 de bytes - caracterele sunt ambalate cu procedura de ambalare pe 7 biți. Codificarea utilizată pentru a transfera caractere romane cuprinde 128 de simboluri diferite pentru a codifica oricare din acestea suficient de 7 biți în loc de 8. Având în vedere că 140 bytes - este 1120 biți, obținem care pot găzdui caractere 160 7 biți în 140 de octeți.
70 - numărul maxim de litere rusești care pot fi trimise într-un SMS. Motivul pentru o astfel de restricție este că fiecare literă rusă are două octeți, deoarece este un subset al codării UCS2 (codificare pe 16 biți pentru caractere Unicode). Astfel, codarea tuturor sms-urilor este uniformă, adică dacă se folosește cel puțin o literă rusă, atunci orice caracter (chiar latin) va ocupa doi octeți.
Nu toată lumea știe că unele personaje complet obișnuite, care de obicei se referă la codificarea standard ASCII, utilizează două familiarități în GSM. Aceste caractere sunt puține:
Utilizarea unor astfel de simboluri în textul care conține numai litere, duce la o reducere neașteptată a lungimii maxime. De exemplu, un mesaj format din caractere [] poate conține numai 80 de caractere. Acest efect nu este considerat practic de către orice operator de telefonie mobilă - atunci când trimite un sms cu site-ul vi se permite să formați până la 160 din aceste caractere pe un picior de egalitate cu toate celelalte.
Și un alt punct interesant - în aceeași codificare include mai multe caractere grecești. Este deosebit de interesant faptul că unele dintre ele arată exact ca literele rusești:
Această caracteristică poate fi utilizată pentru a scrie SMS-uri în limba rusă cu caractere latine. Există destul de multe litere latine care arată exact ca literele rusești:
E T O P A A K C C B E u o p a n e 3 bI
În acest caz, puteți scrie în limba rusă un mesaj cu o lungime de până la 160 de caractere, deoarece de fapt se utilizează numai caractere latine și caractere grecești din aceeași codare. Adevărat, pentru aceasta este necesar să arătăm o fantezie și o bogăție remarcabilă a lexiconului.