HTTP API - acțiunea 'sendmessage'
Această comandă HTTP API poate fi utilizată pentru a trimite un mesaj SMS prin intermediul Gateway-ului SMS. Comanda poate fi utilizată pentru a trimite mesaje SMS text sau alte tipuri de mesaje, cum ar fi mesaje SMS binare, logo-uri de operator, tonuri de apel, WAP PUSH, etc... Când utilizați această comandă, trebuie să utilizați un nume de utilizator și parolă HTTP API, trebuie să specificați numărul de telefon al destinatarului și textul mesajului.
Descriere
Pentru a trimite un SMS, utilizați următorul format URL:
https://127.0.0.1:9508/api?action=sendmessage&username=UUUUU&password=PPPPP&
recipient=NNNNN&messagetype=MMMMM&messagedata=DDDDD
127.0.0.1 este o adresă IP locală, așa că vă rugăm să o înlocuiți cu adresa IP sau numele de gazdă al computerului
pe care este instalat Ozeki SMS Gateway. (Notă: 127.0.0.1 este o adresă
de loopback locală care poate fi utilizată atunci când vă conectați la Gateway-ul SMS
de pe același computer.) 9508 este portul implicit al HTTP API-ului Ozeki SMS
Gateway. Acest număr de port poate fi vizualizat și editat în interfața utilizator a Ozeki 10 SMS Gateway,
făcând clic pe butonul Avansat din bara de instrumente.
"UUUUU" și "PPPPP" trebuie înlocuite cu numele de utilizator și parola
utilizatorului pe care l-ați creat în gateway-ul SMS.
Înlocuiți "NNNNN" cu numărul de telefon căruia doriți să trimiteți mesajul SMS.
Puteți utiliza atât formatul local al numărului de telefon, cât și formatele internaționale
de numere de telefon (numerele de telefon formate conform formatului internațional
întotdeauna încep cu semnul '+'). Dacă utilizați formatul internațional al numărului de telefon,
rețineți că trebuie să înlocuiți '%2B' pentru caracterul '+', din cauza
regulilor de codificare URL.
Vă rugăm să înlocuiți "MMMMM" cu tipul mesajului. Tipul de mesaj "SMS:TEXT" ar trebui utilizat pentru
mesajele text.
Datele mesajului conțin mesajul pe care doriți să-l trimiteți. Puneți datele mesajului în locul "DDDDD". Datele mesajului ar trebui să
utilizeze caractere UTF-8 și să fie
codificate URL.
Alți parametri pot fi adăugați la cerere.
Pentru o listă completă a parametrilor disponibili, vă rugăm să consultați tabelul 'Parametrii cererii' de mai jos:
https://127.0.0.1:9508/api?action=sendmessage&username=admin&password=abc123&
recipient=06203105366&messagetype=SMS:TEXT&messagedata=Hello+World
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: 246 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE smsapi PUBLIC "-//OZEKI//DTD XML 1.0//EN" "http://www.ozekisms.com/DTD/smsapi.xml"> <response> <action>sendmessage</action> <data> <acceptreport> <statuscode>0</statuscode> <statusmessage>Mesaj acceptat pentru livrare</statusmessage> <messageid>ERFAV23D</messageid> <recipient>06203105366</recipient> </acceptreport> </data> </response>
Parametrii cererii HTTP
Parametru | Descriere | Valori posibile | Exemplu | Obligatoriu/Optional* |
action | Specifică comanda API HTTP | sendmessage | action=sendmessage | O |
username | Specifică numele de utilizator. Parametrii username și password sunt folosiți pentru autentificarea utilizatorului. Când trimiteți un mesaj, acesta va fi trimis în numele utilizatorului autentificat. Valoarea trebuie să fie codificată URL. | valoare string, lungime maximă de 16 caractere | username=admin | O |
password | Specifică parola. Parametrii username și password sunt folosiți pentru autentificarea utilizatorului. Când trimiteți un mesaj, acesta va fi trimis în numele utilizatorului autentificat. Valoarea trebuie să fie codificată URL. | valoare string, lungime maximă de 16 caractere | password=abc123 | O |
originator | Specifică adresa expeditorului. Această informație va fi afișată pe telefonul mobil care primește mesajul. Aceasta este adresa expeditorului. Poate fi un număr de telefon, un scurt cod sau o adresă alfanumerică a expeditorului. Numărul de telefon poate fi formatat în format local (de ex. 06201234567) sau în format internațional (de ex. +36201234567). Dacă utilizați o adresă alfanumerică a expeditorului (de ex. ozeki), caracterele trebuie să fie codificate în UTF8 și valoarea trebuie să fie codificată URL. | valoare string, lungime maximă de 16 caractere | originator=%2B36201112222 | Op |
recipient | Specifică numărul de telefon al destinatarului.
Mesajul va fi trimis la acest număr de telefon. Numărul de telefon
poate fi specificat în format local (de ex. 06201234567) sau în
format internațional (de ex. +36201234567). Mai multe adrese de destinatari pot fi separate prin două puncte (de ex.: +36201234567,+36202222222) sau punct și virgulă. Valoarea trebuie să fie codificată URL. |
valoare string, lungime maximă de 16 caractere | recipient=%2B36201234567 | O |
messagetype | Specifică tipul mesajului.
Tipul datelor mesajului SMS bazat pe
Specificația Tipului de Mesaj Mobil.
Pentru mesajele text, datele mesajului vor fi text simplu, pentru alte tipuri de mesaje
va fi un document XML.
|
SMS:TEXT SMS:WAPPUSH ... Valorile posibile pot fi găsite în Specificația Tipului de Mesaj Mobil |
messagetype=SMS:TEXT | Op |
messagedata | Specifică textul sau datele mesajului SMS. Valoarea trebuie să fie codificată în UTF8 și să fie codificată URL. | valoare string, lungime maximă de 32768 caractere | messagedata=Hello+World | O |
_charset_ | Specifică setul de caractere al datelor codificate (dacă nu este specificat, se va presupune utf-8).
Noile browsere ar trebui să seteze automat valoarea _charset_. Dacă
browserul dumneavoastră nu suportă această funcționalitate, o puteți seta manual la: |
utf-8 windows-1250 iso-8859-1 iso-8859-2 ... (Valori ale seturilor de caractere suportate) |
_charset_=iso-8859-2 | Op |
serviceprovider | Specifică numele conexiunii GSM Modem sau a furnizorului de servicii SMS IP
care va fi utilizată pentru a trimite mesajul.
Mai multe informații despre selecția conexiunii furnizorului de servicii sunt
disponibile în
Ghidul de rutare SMS al API-ului HTTP SMS.
Valoarea trebuie să corespundă șirului specificat în formularul de configurare al conexiunii furnizorului de servicii. |
valoare string, lungime maximă de 16 caractere | serviceprovider=Vodafone | Op |
sendondate | Specifică data și ora la care mesajul ar trebui să fie trimis.
Valoarea trebuie să utilizeze următorul format de dată: AAAA-LL-ZZ hh:mm:ss. Valoarea trebuie să fie codificată URL |
valoare de dată în format AAAA-LL-ZZ hh:mm:ss | sendondate=2018-12-12+10%3A07%3A05 | Op |
responseformat | După ce gateway-ul trimite mesajul SMS, gateway-ul va returna o pagină web care indică faptul că mesajul a fost trimis cu succes. Conținutul paginii web este formatat conform parametrului responseformat. Puteți avea un răspuns text html pentru a fi ușor de citit de oameni sau puteți avea format xml pentru a fi ușor de procesat de software. |
xml (implicit) html urlencoded |
responseformat=xml | Op |
continueurl | După ce gateway-ul trimite mesajul SMS, gateway-ul va returna o
pagină web care indică faptul că mesajul a fost trimis cu succes.
Conținutul
paginii web este formatat conform parametrului responseformat.
Dacă parametrul responseformat este setat la html, pagina web
poate conține un link "Continuă". Dacă specificați URL-ul în acest parametru,
linkul de continuare va fi afișat și va indica către URL-ul specificat.
Valoarea URL-ului trebuie să fie codificată URL.
URL-ul pe care îl specificați poate conține cuvinte cheie care vor fi înlocuite cu informații de stare corespunzătoare mesajului trimis. Mai multe informații despre cuvintele cheie posibile pot fi găsite în ghidul "Cuvinte cheie URL de trimitere". |
valoare string, lungime maximă de 1024 caractere | continueurl=192.168.1.23 sau continueurl=http%3A%2F%2Fwww.ozekisms. com%2Findex.php%3Fowpn%3D159 Notă: al doilea exemplu conține un URL codificat. |
Op |
redirecturl | După ce gateway-ul trimite mesajul SMS, implicit gateway-ul
va returna o pagină web care indică faptul că mesajul a fost trimis cu succes.
Opțional, puteți cere gateway-ului să redirecționeze automat
browserul către un URL pe care îl specificați. Dacă specificați un URL în
parametrul redirect, răspunsul HTTP returnat
de gateway-ul SMS va conține un URL de redirecționare în antetul HTTP. Acest lucru
va instrui browserul web să urmeze linkul pe care l-ați specificat.
Valoarea URL-ului trebuie să fie
codificată URL.
URL-ul pe care îl specificați poate conține cuvinte cheie care vor fi înlocuite cu informații de stare corespunzătoare mesajului trimis. Mai multe informații despre cuvintele cheie posibile pot fi găsite în ghidul "Cuvinte cheie URL de trimitere". |
valoare string, lungime maximă de 1024 caractere | redirecturl=192.168.1.23 sau redirecturl=http%3A%2F%2F192.168.1.23 %2Findex.php%3Fowpn%3D159 Notă: al doilea exemplu conține un URL codificat. |
Op |
reporturl | Puteți configura o pagină web pentru a procesa informații despre evenimentele "livrat
la rețea" și "livrat la dispozitiv". Dacă
specificați un URL în parametrul reporturl, pagina dvs. web va fi
apelată atunci când aceste evenimente au loc. Valoarea URL-ului pe care îl specificați în
parametrul reporturl trebuie să fie
codificată URL.
URL-ul pe care îl specificați poate conține cuvinte cheie care vor fi înlocuite cu informații de stare corespunzătoare mesajului trimis. Un bun exemplu despre cum să utilizați opțiunea URL de raport poate fi găsit în ghidul cum să trimiteți un SMS programat și să utilizați funcționalitatea reporturl. |
valoare string, lungime maximă de 1024 caractere | reporturl=http%3A%2F%2Fwww.ozekisms. com%2Fproc.php%3Freporttype%3D%24reporttype %26messageid%3D%24messageid Notă: aceasta este versiunea codificată URL a următorului URL. Înainte ca acest URL să fie apelat de gateway-ul SMS, parametrii $reporttype și $messageid vor fi înlocuiți cu valorile corespunzătoare: http://192.168.1.23/proc.php?reporttype=$reporttype& messageid=$messageid va fi apelat ca: http://192.168.1.23/proc.php?reporttype=deliveredtonetwork& messageid=ERFAV23D Lista cuvintelor cheie pe care le puteți utiliza în reporturl sunt: $reporttype $messageid $statuscode $statusmessage $fromstation $fromconnection $fromaddress $tostation $toconnection $toaddress $text $createdate $submitdate $receiveddate |
Op |
messagecount | Specifică numărul exact de mesaje pe care doriți să le trimiteți. Dacă este setat, este necesară indexarea parametrilor 'recipient', 'messagetype' și 'messagedata'. Ghidul detaliat despre 'messagecount' poate fi găsit aici. | număr (valoare implicită: 1) |
messagecount=6 | Op |
maxresponse | Acest număr specifică numărul maxim de mesaje despre care veți primi feedback. Dacă depășiți acest număr, mesajele dvs. vor fi trimise, dar nu veți primi feedback despre ele. Implicit, acest parametru este setat la 500 de mesaje. | număr | maxresponse=1000 | Op |
vp | Specifică perioada de valabilitate pentru mesajul dvs.
Valoarea trebuie să utilizeze următorul format de dată: AAAA.LL.ZZ hh:mm:ss. Valoarea trebuie să fie codificată URL. Citiți acest ghid pentru mai multe informații. |
valoare de dată în format AAAA.LL.ZZ hh:mm:ss | vp=2019.01.28.+10%3A07%3A05 | Op |
* O = Parametru obligatoriu, Op = Parametru optional
Parametri de răspuns
(format de răspuns xml)
Parametru | Descriere | Valori posibile | Exemplu |
acceptreport | Conține răspunsul pentru cererea de trimitere a unui singur destinatar. Dacă au fost specificați mai mulți destinatari, un acceptreport va fi inclus în răspuns pentru fiecare destinatar. Ordinea acceptreport-urilor va corespunde cu ordinea adreselor destinatarilor. | <acceptreport> <statuscode>0</statuscode> <statusmessage>Mesaj acceptat pentru livrare</statusmessage> <messageid>ERFAV23D</messageid> <recipient>06203105366</recipient> </acceptreport> |
|
acceptreport.statuscode | Conține o valoare întreagă care indică succesul sau eșecul. Dacă valoarea este 0, înseamnă că mesajul a fost acceptat pentru livrare. Dacă valoarea este mai mare decât 0, înseamnă că a apărut o eroare și mesajul nu a fost acceptat pentru livrare. | Valoare întreagă, mai mare sau egală cu 0. Mai mică decât 32768. | <statuscode>0</statuscode> |
acceptreport.statusmessage | Conține o reprezentare textuală a codului de stare. Dacă mesajul a fost acceptat, valoarea va fi "Mesaj acceptat pentru livrare". Dacă mesajul nu a fost acceptat pentru livrare, puteți găsi mesajul de eroare în acest câmp. | valoare string, lungime maximă de 1024 de caractere | <statusmessage>Mesaj acceptat pentru livrare</statusmessage> |
acceptreport.messageid | Conține o referință de mesaj care poate fi utilizată pentru a urmări mesajul în gateway-ul SMS. Această referință de mesaj este, de asemenea, utilizată pentru a identifica rapoartele de livrare la rețea și la dispozitiv sau pentru a interoga informații despre mesaj. | valoare string, lungime maximă de 16 caractere | <messageid>ERFAV23D</messageid> |
acceptreport.recipient | Conține adresa destinatarului. | valoare string, lungime maximă de 16 caractere | <recipient>06203105366</recipient> |
Acest articol a fost despre acțiunea HTTP API ‘sendmessage’. Cu această acțiune, puteți trimite mesaje SMS text și multe alte tipuri de mesaje către orice destinatari prin intermediul Ozeki SMS Gateway. Ați văzut exemple de răspunsuri și câteva cereri HTTP suplimentare cu descriere, valori posibile și exemple.
Dacă doriți să aflați mai multe despre starea de livrare a mesajelor dvs., nu ezitați să accesați pagina despre stările de livrare SMS. Dacă doriți să obțineți un șablon de URL, vizitați pagina dedicată.
Dacă doriți să utilizați această soluție în situații reale, descărcați Ozeki SMS Gateway și începeți să-l folosiți acum!
More information