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:

Exemplu de cerere URL

https://127.0.0.1:9508/api?action=sendmessage&username=admin&password=abc123&
recipient=06203105366&messagetype=SMS:TEXT&messagedata=Hello+World

Exemplu de răspuns
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>
Rezumat

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