Rutarea SMS
Cu Ozeki SMS Gateway poți configura mai multe conexiuni la rețelele mobile pentru a trimite mesaje SMS. Pentru a controla care conexiune este utilizată pentru a trimite un SMS către rețeaua mobilă poți folosi rutarea SMS.
Introducere în rutarea SMSAcest document îți oferă o introducere în rutarea SMS. Acoperă conceptele de bază ale procedurii de rutare SMS în Ozeki SMS Gateway. Vei afla despre tabela de rutare; vei descoperi ce este o regulă de rutare și vei găsi exemple simple de rutare. Exemple mai avansate și mai multe informații sunt disponibile în ghidul de rutare SMS pentru furnizori de servicii SMS, ghidul despre cum să copiezi și să forwordezi mesaje SMS către mai multe destinații și în ghidul de rutare SMS la cel mai mic cost. Dacă dorești să modifici numerele de telefon și textul mesajelor în timpul citirii, te rugăm să vizitezi pagina cum să modifici un mesaj SMS în timp real.
Ce este rutarea SMS?Rutarea SMS este procedura folosită de Ozeki SMS Gateway pentru a decide unde ar trebui să fie trimis un mesaj text SMS. Rutarea SMS se bazează pe potrivirea de modele și permite modificarea mesajelor. Soluțiile de rutare SMS sunt utilizate de furnizori de servicii SMS și organizații mari.
Rutare SMS simplă: Dirijează cu ușurință mesajele SMS către destinațiile dorite folosind reguli simple de rutare. Optimizează livrarea mesajelor cu un setup minim.
Rutare SMS la cel mai mic cost: Maximizează economiile prin rutarea inteligentă a mesajelor SMS prin cele mai ieftine canale disponibile. Reduce costurile SMS fără a compromite livrarea.
Rutare SMS de rezervă: Asigură un serviciu SMS neîntrerupt cu rutare de rezervă fiabilă. Menține o disponibilitate ridicată și previne pierderea mesajelor în caz de defecțiuni ale canalului principal.
Echilibrarea sarcinii cu rutare SMS: Distribuie traficul SMS uniform pe mai multe canale pentru a preveni supraîncărcarea și a îmbunătăți performanța. Sporește stabilitatea și răspunsul sistemului.
Blocarea mesajelor SMS internaționale: Previne trimiterea de mesaje SMS internaționale nedorite sau primirea de mesaje nesolicitate în sistemul tău. Protejează împotriva spam-ului, fraudelor și a costurilor excesive.
Atribuirea numerelor de telefon ale utilizatorilor la rute: Gestionează eficient numerele de telefon ale utilizatorilor prin atribuirea lor la anumite rute SMS. Optimizează rutarea trimiterii și primirii SMS și îmbunătățește experiența clienților.
Pentru a configura rutarea SMS, trebuie să lansezi aplicația Ozeki SMS și să deschizi tabela de rutare făcând clic pe butonul "Routes" din bara de unelte.
Pentru a configura rutarea SMS, urmează acești pași rapizi:
- Deschide Ozeki SMS Gateway pe desktopul Windows
- Conectează-te cu numele de utilizator "admin"
- Deschide aplicația SMS Gateway
- Găsește bara de unelte în partea de sus
- Găsește butonul "Routes" din bara de unelte
- Fă clic pe butonul "Routes" din bara de unelte
- Aceasta va deschide tabela de rutare
- Fă clic pe "create new route" pentru a crea o rută SMS
- Completează formularul de creare a rutei
- Fă clic pe OK pentru a crea noua rută
- Folosește săgețile roșii și verzi pentru a muta regula în poziția dorită
Rutarea atribuie o "Conexiune destinație" mesajului. Cu alte cuvinte, selectează conexiunea destinație unde mesajul ar trebui să fie trimis. În Ozeki SMS gateway totul este o "Conexiune". O conexiune este un punct final de mesagerie, care poate trimite și primi un mesaj. Deși conexiunile sunt afișate în grupuri (ex: utilizatori SMS, legături la rețele mobile, etc), ele sunt totuși conexiuni identice când vine vorba de rutare.
Rutarea SMS este procedura folosită pentru a decide unde ar trebui să fie trimis un mesaj SMS. Această procedură este executată când un mesaj de intrare este trimis către tabela de rutare (Figura 2). Tabela de rutare execută algoritmul de rutare și returnează un mesaj de ieșire, care este identic cu mesajul de intrare, dar are o "Conexiune destinație" atribuită. După procedura de rutare, mesajul de ieșire este trimis către "Conexiunea destinație".
Tabela de rutare SMS constă din reguli de rutare. O regulă de rutare are o condiție de potrivire, un set de comenzi de modificare și o destinație. Când un SMS este trimis, acesta este mai întâi trimis către tabela de rutare, unde este comparat cu regulile de rutare. Dacă o regulă "se potrivește" cu SMS-ul, ea execută modificatorii și trimite mesajul către destinație. Potrivirea se face pe baza condițiilor configurate, cum ar fi conexiunea expeditorului, numărul de telefon al expeditorului, textul mesajului, perioada de serviciu, etc. Regulile de modificare sunt aplicate doar dacă SMS-ul trece condițiile de potrivire. Dacă condițiile de potrivire nu sunt îndeplinite, următoarea regulă de rutare este încercată în tabela de rutare.
Cum sunt executate regulile de rutare SMS?
Pentru fiecare mesaj trimis, tabela de rutare este executată. Execuția se face de sus în jos: Dacă o regulă se potrivește, destinația ("Conexiunea către") este atribuită și rutarea se oprește. Mesajul este trimis către destinația selectată.
Dacă deschizi ecranul principal, vei vedea două vizualizări ale tabelului principal de rutare. În partea de sus găsești un tabel filtrat, care afișează doar "rutele de intrare", iar în partea de jos vezi un tabel filtrat care afișează doar "rutele de ieșire". În practică, numim o rută "rută de intrare" dacă "Conexiunea de la" este clasificată ca o conexiune de rețea SMS. Orice altceva este o rută de ieșire.
Această distincție este făcută pentru că majoritatea utilizatorilor gândesc în termeni de rute de intrare și ieșire. Chiar dacă nu există nicio diferență între astfel de reguli în sistemul de rutare Ozeki, este mai bine să prezinți tabela de rutare în acest fel. Oamenii înțeleg mai bine dacă rutele sunt organizate după conexiunea expeditorului ("Conexiunea de la") în grupuri și doar aceste grupuri filtrate sunt prezentate. Dacă vrei să devii un expert în rutare, folosește întotdeauna tabela principală de rutare în loc de vizualizările filtrate, deoarece îți oferă o mai bună înțelegere a ceea ce se întâmplă cu un anumit mesaj.
Dacă vrei să creezi o regulă de rutare, deschide tabela principală de rutare făcând clic pe butonul "Rute" din bara de instrumente și apoi fă clic pe "Creează rută nouă". Aceasta va deschide formularul de creare a rutei. Observă filele "Potrivire" și "Modificare" în acest formular. Acestea sunt filele unde poți defini condiții de potrivire și comenzi de modificare.
Sistemele mari de SMS pot avea un număr foarte mare de conexiuni. Pentru a simplifica viața, conexiunile "De la" și "Către" oferite sunt filtrate implicit. Conexiunile rar utilizate sunt ascunse. Acest lucru poate duce la faptul că nu îți găsești conexiunea în listă.
Dacă nu vezi conexiunea cu care dorești să lucrezi în lista "De la" sau "Către", fă clic pe butonul cu rotița din fața casetei combo care conține lista de conexiuni. Aceasta va deschide un dialog unde poți selecta alte tipuri de conexiuni care să fie afișate în listă.
Înainte de a intra în configurații complexe de rutare, este o idee bună să înțelegem tabela de rutare implicită. În tabela de rutare implicită vei vedea două rute: out_sms și in_admin. Ruta out_sms este folosită pentru a trimite mesaje de la așa-numiții "utilizatori SMS" către "conexiuni SMS". "Conexiunile SMS" sunt un grup de conexiuni folosite pentru a conecta sistemul tău la rețeaua mobilă. Ruta in_admin este o regulă creată automat pentru a trimite o copie a fiecărui SMS primit către utilizatorul admin. Poți observa modul "Copie" în tabela de rutare. Mai multe informații despre cum să trimiți o copie a unui SMS către un anumit utilizator pot fi găsite în ghidul cum să redirecționezi un SMS primit către mai multe destinații.
Pentru a înțelege cum funcționează ruta out_sms, vom crea două conexiuni client SMPP către doi operatori de rețea mobilă diferiți. Vom numi aceste conexiuni SMPP_client_1 și SMPP_client_2. (În acest exemplu nu vom modifica tabela de rutare implicită). Vom trimite un SMS de la utilizatorul admin, făcând clic pe butonul "New" din bara de instrumente. În această configurație, un SMS de la admin va fi trimis prin SMPP_client_1 sau SMPP_client_2. Sistemul va selecta aleatoriu prima conexiune SMS disponibilă pentru mesajul de ieșire. Ruta folosită este "out_sms", care trimite SMS de la "Orice_Utilizator_SMS" către "Orice_Conexiune_SMS".
Când este folosită ruta implicită, SMS-ul trimis de admin este redirecționat prin ruta numită "out_sms".
Merită menționat că această selecție aleatorie a rutei nu este exact aleatorie. De fapt, un algoritm de echilibrare a sarcinii distribuie traficul între conexiunile de rețea mobilă cu capacitate liberă, ținând cont de capacitatea măsurată anterior a fiecărei conexiuni.
Rutarea SMS-urilor după sursă (Exemplul 2)
Următorul exemplu arată cum poate fi utilizată rutarea SMS-urilor pentru a atribui o destinație fixă unei anumite surse. În exemplul nostru, dorim ca toate mesajele SMS trimise de admin să fie trimise prin SMPP_Client_1. Această configurație este foarte des utilizată, deoarece este adesea o cerință ca un utilizator să folosească întotdeauna o anumită conexiune la rețeaua mobilă. Pentru a realiza acest lucru, putem crea o rută simplă de la sursă la destinație.
Pentru a demonstra cum funcționează această configurație, putem folosi același număr de conexiuni ca în Exemplul 1. Putem adăuga o rută suplimentară în tabelul nostru de rutare care va direcționa SMS-urile de la admin către SMPP_Client_1. Ruta va asigura că un SMS de la admin va fi forțat să iasă prin SMPP_client_1. În această configurație, SMPP_client_2 nu va fi utilizat deloc.
Rutarea SMS-urilor după prefixul numărului de telefon (Exemplul 3)
Următorul exemplu demonstrează cum poate fi realizată rutarea SMS-urilor pe baza prefixelor numerelor de telefon. Aceasta este o sarcină comună, deoarece adesea doriți să trimiteți anumite mesaje care aparțin unei rețele identificate printr-un prefix de număr de telefon către o anumită conexiune. De exemplu, dacă doriți să direcționați SMS-urile destinate Ungariei, ați direcționa mesajele SMS trimise la prefixul +36.... către rețeaua Vodafone Ungaria. De asemenea, puteți configura o a doua rută care direcționează prefixele +44.... către rețeaua T-Mobile din Marea Britanie.
Următoarea figură demonstrează cum puteți defini un prefix de număr de telefon ca o condiție de potrivire. Exemplul utilizează o expresie regulată de tip pcre. Această expresie este utilizată pentru a potrivi adresa destinatarului ("Către numărul de telefon") pentru a decide dacă ruta ar trebui aplicată sau nu.
Rutarea SMS-urilor prin potrivirea numărului de telefon complet (Exemplul 4)
Dacă deții un set de numere de telefon, poți atribui un număr de telefon unic clienților sau utilizatorilor tăi. În acest caz, vei dori să direcționezi mesajele SMS primite trimise către un anumit număr de telefon către un anumit utilizator. Exemplul 4 arată configurația de rutare pentru a atinge acest obiectiv.
În acest exemplu, adăugăm doi utilizatori HTTP: http_user_1 și http_user_2 care vor primi mesajele primite. Unul va fi atribuit numărului de telefon +3633333333, iar celălalt va fi atribuit numărului de telefon +3644444444. Acum creăm două rute cu potrivirea numărului de telefon complet. Aceste rute vor direcționa orice SMS trimis către aceste numere de telefon către utilizatorii corespunzători.
După cum puteți vedea în figura de mai sus, câmpul "De la" este setat la "Any_SMS_Connection". Acest lucru se datorează faptului că dorim ca toate mesajele SMS trimise către numărul de telefon +3633333333 să fie direcționate către http_user_1, indiferent de conexiunea SMS prin care ajung. Destinația ("Către") pentru această rută este fixată la http_user_1. Dacă priviți figura de mai jos, veți vedea că în acest caz specificăm numărul de telefon complet în condiția de potrivire a destinatarului. Observați că nu punem bara oblică (/) înainte și după numărul de telefon. Acest lucru se datorează faptului că nu efectuăm o potrivire a modelului prin expresie regulată în acest caz. Pur și simplu facem o comparație strictă a numărului de telefon.
Configurația pentru http_user_2 este foarte asemănătoare. Diferența constă în câmpul destinației ("Către") și numărul de telefon introdus în caseta grupului "Adresă destinație" din fila "Potrivire" a regulii de rutare. De asemenea, puteți observa că aceste două rute vor fi numite route_3 și route_4.
Dacă lucrezi cu multe rute, este o idee bună să adaugi nume semnificative rutelor, astfel încât să le poți identifica rapid. Există nume mai bune decât route_3 sau route_4 folosite în acest exemplu.
Rutarea SMS-urilor după cuvinte cheie (Exemplul 5)
Următorul exemplu se ocupă de rutarea SMS-urilor pe baza cuvintelor cheie din textul mesajului. Această funcționalitate este adesea folosită în jocurile de tip quiz, votarea prin SMS sau serviciile de căutare a conținutului bazate pe cuvinte cheie. În acest exemplu, direcționăm orice SMS care vine de la Any_SMS_Connection și conține cuvântul "vote" către http_user_2.
Privind următoarea figură, puteți observa că folosim potrivirea prin expresie regulată. În acest model de expresie regulată (numit și model regex), punem un model .* înainte și după cuvânt. Acest lucru spune motorului regex că cuvântul cheie "vote" poate fi oriunde în mesaje. Această condiție se va potrivi cu următoarele texte SMS: "Hello, here is my vote: red" sau "vote red" sau "I am not voting".
De asemenea, puteți lua în considerare adăugarea modificatorului de insensibilitate la majuscule numit "i", care înseamnă ignorarea majusculelor, dacă vă așteptați ca cuvântul cheie să fie trimis fie cu litere mici, fie cu litere mari. Modelul "/.*vote.*/i" s-ar potrivi cu "vote", "Vote", "VOTE" sau "vOtE".
Rutarea SMS-urilor prin potrivire de text și perioadă de timp (Exemplul 6)
Este util să știți că există și o condiție de potrivire a perioadei de serviciu disponibilă, care poate fi utilizată pentru a limita durata de viață a acestei reguli. Această combinație: potrivire de cuvinte cheie în text și perioada de serviciu sunt adesea folosite împreună pentru serviciile de conținut SMS care operează într-o anumită perioadă de timp. În acest exemplu, rutăm orice SMS care vine de la Any_SMS_Connection și conține cuvântul "vote" între 2021-04-01 00:000:00 și 2021-04-30 24:00:00 către utilizatorul http 2.
Cum să testați rutarea SMS-urilor
Dacă doriți să testați rutarea SMS-urilor fără a înainta efectiv mesajele SMS către rețeaua mobilă, puteți configura o conexiune simulator SMPP. Un simulator SMPP poate acționa ca un server SMPP virtual, care acceptă mesaje SMS trimise printr-o legătură SMPP și poate simula rapoarte de livrare SMS.
Lecturi suplimentare despre comenzile de modificare SMS
Exemplele de mai sus au demonstrat condițiile de potrivire SMS. O altă caracteristică puternică se numește modificare SMS în timpul rutării. Ideea este că odată ce un SMS este potrivit cu o regulă, SMS-ul poate fi modificat. Această caracteristică este foarte utilă, deoarece nu numai că vă permite să aveți control asupra tuturor mesajelor care trec prin sistemul dumneavoastră, dar puteți și să reparați anumite erori, cum ar fi numărul de destinație incorect, sau puteți bloca anumite conținuturi inacceptabile. Următoarele documente oferă informații despre modificarea conținutului SMS.
- Cum să modificați destinatarii SMS în rutarea SMS
- Cum să trimiteți copii ale unui SMS către mai multe numere de telefon cu rutarea SMS
- Cum să schimbați ID-ul expeditorului SMS cu rutarea SMS
- Cum să schimbați textul SMS cu rutarea SMS
- Cum să adăugați text la sfârșitul SMS-ului cu rutarea SMS
- Cum să schimbați expeditorul și destinatarul cu rutarea SMS
Întrebări frecvente
Ce este un sistem SMS bidirecțional?
Un sistem SMS care poate trimite și primi mesaje SMS.
În lumea SMS-urilor, un sistem bidirecțional vă permite să aveți o conversație cu
utilizatorii mobili. Puteți trimite mesaje către ei, iar ei vă pot răspunde
prin același sistem.
Când un utilizator mobil răspunde la SMS-ul meu, pot să știu la ce mesaj a răspuns?
Nu, acest lucru nu este posibil.
Imaginați-vă o conversație în care puteți trimite doar o propoziție la un moment dat, fără
nicio memorie a ceea ce a venit înainte. Aceasta este lumea SMS-urilor!
- Conexiuni pierdute: Protocolul SMS nu are o caracteristică încorporată precum un "ID de conversație" pentru a lega mesajele împreună. Fiecare text este tratat ca un mesaj unic și independent.
- Indicii prin cuvinte cheie: Singura modalitate de a conecta potențial răspunsurile la mesajele anterioare este prin includerea cuvintelor cheie în textul mesajului în sine. Aceste cuvinte cheie ar acționa ca puncte de referință pentru a lega mesajele împreună.
- Soluție alternativă cu cod lung (doar pentru SMS IP): Pentru cei care folosesc conexiuni SMS IP cu un furnizor de servicii care suportă coduri lungi (numere expeditor speciale cu mai multe cifre), există un truc potențial. Puteți codifica cifre suplimentare în numărul expeditorului pentru a identifica mesajul original. Cu toate acestea, acest lucru se bazează pe condiții specifice și capacitățile furnizorului de servicii.
Cum pot trimite mesaje SMS în mod fiabil către diferite destinații globale?
Pentru o fiabilitate optimă, luați în considerare configurarea mai multor conexiuni cu furnizori de servicii SMS
în sistemul dumneavoastră. Fiecare conexiune va avea un nume desemnat pentru o referință ușoară
în tabelul de rutare de ieșire.
Tabelul de rutare de ieșire acționează ca centrul dumneavoastră de control. Aici, puteți defini
rute de ieșire care specifică care conexiune va gestiona fiecare mesaj.
Pentru a îmbunătăți fiabilitatea, utilizați cel puțin două conexiuni. O combinație, cum ar fi o
conexiune SMS IP și o conexiune modem GSM, oferă o soluție puternică.
Configurați modemul GSM ca o rezervă pentru conexiunea SMS IP în cadrul
tabelului de rutare de ieșire.
Dacă conexiunea SMS IP nu funcționează corect, tabelul de rutare de ieșire redirecționează automat
mesajele către modemul GSM. Acest lucru asigură livrarea neîntreruptă a mesajelor,
maximizând fiabilitatea sistemului.
Există vreo modalitate prin care pot să-mi dau seama dacă un mesaj SMS primit este un răspuns la un mesaj SMS trimis anterior de mine?
Din păcate, tehnologia SMS în sine nu oferă o metodă încorporată de a identifica dacă un mesaj primit este un răspuns la un SMS trimis anterior. Acest lucru face dificilă asocierea clară a răspunsurilor.
Iată câteva abordări pe care le poți lua în considerare:
- Identificator în textul mesajului: Includeți un identificator unic în mesajul original. Acest lucru vă permite să potențial faceți corespondența cu răspunsul, dar necesită cooperarea utilizatorului și nu este infailibil.
- Potrivirea timestamp-urilor: Comparați timestamp-urile mesajelor trimise și primite. Deși utilă, această metodă poate fi inexactă din cauza întârzierilor posibile.
- Cuvinte-cheie în răspunsuri: Încurajați utilizatorii să includă un cuvânt-cheie specific în răspunsurile lor. Puteți configura apoi o rută de intrare bazată pe acest cuvânt-cheie (Condiția #3: textul mesajului) pentru a crea o asociere aproximativă cu mesajul original. Totuși, respectarea de către utilizatori este crucială pentru această abordare.
Pot să modific parametrii mesajului în timpul rutării?
Da, rutarea SMS oferă o superputere surprinzătoare: capacitatea de a edita numerele de telefon și conținutul mesajului în timpul procesului de livrare! Acest lucru deschide ușa către aplicații creative:
- Îmbunătățirea numărului: Trebuie să adăugați un prefix sau un sufix la un număr de telefon? Rutarea poate gestiona acest lucru, asigurându-vă că apelurile ajung la destinația corectă.
- Publicitate țintită: Doriți să adăugați un mesaj promoțional la mesajele trimise? Rutarea vă permite să integrați aceste reclame în fluxul de comunicare existent.