HTTP API - 'receivemessage' művelet
Ez a művelet SMS-ek fogadására használható az SMS Gateway-ből HTTP lekérdezéssel. Az HTTP lekérdezés azt jelenti, hogy az SMS-eket letöltjük a gateway beérkezett üzenetek mappájából, ahogyan egy weboldalt is letöltenénk. Ebben a részben információt találsz arról, hogyan használhatod a receivemessage műveletet, milyen paramétereket kell megadni, és egy példa HTTP kérés is található a bejövő üzenetek letöltéséhez.
Leírás
A bejövő szöveges üzenetek letöltéséhez használd a következő URL formátumot:
https://127.0.0.1:9508/api?action=receivemessage&username=UUUUU&password=PPPPP&
folder=inbox&limit=2&afterdownload=delete
A 127.0.0.1 helyett azt a hosztnevet vagy IP-címet kell beírnod, ahol az SMS gateway telepítve van. A 9508-as portszám az Ozeki SMS Gateway alapértelmezett HTTP portja. A portszám konfigurálható az Ozeki 10 SMS Gateway felületén, az Eszköztárban található Haladó gombra kattintva.
A felhasználónevet és jelszót a "UUUUU" és "PPPPP" helyére kell beírnod. A felhasználónév és jelszó azonosítja a gateway-ben létrehozott felhasználót. Amikor meghívod a receivemessage műveletet az URL meghívásával, a lekérdezésben megadott felhasználó beérkezett üzenetei lesznek letöltve.
Az üzenet folder paraméterét inbox-ra kell állítani.
A limit paraméter határozza meg a letöltendő üzenetek számát. Ajánlott egyszerre kevesebb mint 1000 üzenetet letölteni. A maradék üzeneteket későbbi lekérdezésekben töltheted le.
Az afterdownload paraméter segítségével törölheted az üzeneteket az SMS gateway-ből, miután sikeresen letöltötted őket.
Példa URL kérés
https://127.0.0.1:9508/api?action=receivemessage&username=admin&password=abc123&
folder=inbox&limit=2&afterdownload=delete
Példa válasz
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: 824 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE response PUBLIC "-//OZEKI//DTD XML 1.0//EN" "http://www.ozekisms.com/DTD/response.xml"> <response> <action>receivemessage</action> <data> <message> <messageid>ERFAV23D</messageid> <originator>06301234567</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Hello world</messagedata> <senttime>2008-01-16 10:04:00</senttime> <receivedtime>2008-01-18 20:58:04</receivedtime> </message> <message> <messageid>GYT4455D</messageid> <originator>06209994444</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Second message</messagedata> <senttime>2008-01-16 10:08:00</senttime> <receivedtime>2008-01-18 20:58:05</receivedtime> </message> </data> </response>
Kérés paraméterei
Paraméter | Leírás | Lehetséges értékek | Példa | K/O* |
action | Meghatározza az HTTP API parancsot | receivemessage | action=receivemessage | K |
username | Meghatározza a felhasználónevet. A felhasználónév és jelszó paraméterek a felhasználó hitelesítésére szolgálnak. A hitelesítés után az üzenetek a felhasználó beérkezett üzeneteiből lesznek letöltve. Az értéknek URL-kódoltnak kell lennie. | szövegérték, maximum 16 karakter hosszú | username=admin | K |
password | Meghatározza a jelszót. A felhasználónév és jelszó paraméterek a felhasználó hitelesítésére szolgálnak. A hitelesítés után az üzenetek a felhasználó beérkezett üzeneteiből lesznek letöltve. Az értéknek URL-kódoltnak kell lennie. | szövegérték, maximum 16 karakter hosszú | password=abc123 | K |
folder | Meghatározza a mappa nevét. Alapértelmezés szerint az üzenetek a beérkezett üzenetek mappájából lesznek letöltve. A receivemessage művelet más mappákból is letölthet üzeneteket. |
inbox (alapértelmezett) outbox deliveredtonetwork deliveredtohandset deliveryfailed |
folder=inbox | O |
limit | Meghatározza a szerverről egy kérésben letölthető üzenetek maximális számát. A maradék üzeneteket későbbi lekérdezésekben töltheted le. | egész szám, az alapértelmezett limit 1000 | limit=10 | O |
afterdownload | Meghatározza, hogyan kezeljék az üzeneteket a sikeres letöltés után.
Az üzenetek törölhetők az SMS gateway-ből; megjelölhetők letöltöttként, vagy érintetlenül is hagyhatók.
Ha érintetlenül maradnak, a következő letöltési kérésnél újra letöltődnek. |
delete (alapértelmezett) mark untouch |
afterdownload=delete | O |
responseformat | Meghatározhatod a felhasználó bejövő üzeneteinek formátumát. | xml, html, url-encoded | responseformat=xml | O |
* K = Kötelező paraméter, O = Opcionális paraméter
Válasz paraméterei
(xml válasz formátum)
Paraméter | Leírás | Lehetséges értékek | Példa |
message | Egyetlen üzenetet tartalmaz. Az adat szakasz sok üzenetet tartalmazhat. Az üzenetek száma az adat szakaszban kisebb vagy egyenlő a limit paraméter értékével. | <message> <messageid>ERFAV23D</messageid> <originator>06301234567</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Hello world</messagedata> <senttime>2028-01-16 10:04:00</senttime> <receivedtime>2028-01-18 20:58:04</receivedtime> </message> |
|
message.messageid | Egy üzenet azonosítót tartalmaz, amely az SMS gateway-ben követhetővé teszi az üzenetet. Ez az azonosító a kézbesítési jelentések lekérdezésére vagy az üzenet információk lekérdezésére is használható. | szövegérték, maximum 16 karakter hosszú | <messageid>ERFAV23D</messageid> |
message.originator | A küldő telefonszámát tartalmazza. Ez az a telefonszám, amelyről az üzenet érkezett. | szövegérték, maximum 16 karakter hosszú | <recipient>06301234567</recipient> |
message.recipient | A címzett telefonszámát tartalmazza. Ez az a telefonszám, amelyre az üzenet érkezett. | szövegérték, maximum 16 karakter hosszú | <recipient>06201112222</recipient> |
message.messagetype | Az üzenet típus azonosítóját tartalmazza, amely a Mobile Message Type Specification szerint van meghatározva. A legtöbb esetben ez SMS:TEXT lesz. | szövegérték, maximum 1024 karakter hosszú | <recipient>SMS:TEXT</recipient> |
message.messagedata | Az üzenet adatát tartalmazza. Szöveges üzenetek esetén ez az SMS szövege. Más üzenettípusok esetén ez egy XML struktúra, amely a Mobile Message Type Specification szerint van meghatározva. Az üzenet adat UTF8 kódolású. | szövegérték | <messagedata>Hello world</messagedata> |
message.senttime | Az időbélyeget tartalmazza, amely azt mutatja, mikor küldték el az üzenetet a küldő telefonról. | Dátum-idő érték a következő formátumban: ÉÉÉÉ-HH-NN óó:pp:mm | <senttime>2028-01-16 10:04:00</senttime> |
message.receivedtime | Az időbélyeget tartalmazza, amely azt mutatja, mikor érkezett meg az üzenet az SMS gateway-re. | Dátum-idő érték a következő formátumban: ÉÉÉÉ-HH-NN óó:pp:mm | <senttime>2028-01-18 20:58:04</senttime> |
Összefoglalás
Ebben a cikkben minden szükséges információt megtaláltál a 'receivemessage' művelet használatához az HTTP SMS API-nkkal.
Ezzel a megoldással kihasználhatod az http lekérdezés előnyeit a bejövő szöveges üzenetek fogadásához. Mindent megtettünk annak érdekében, hogy egyszerű legyen, és minél fájdalmatlanabban vezessünk át minden részleten. Ha már végigvitted a lépéseket, láthattad az HTTP SMS API használatának előnyeit. Ha még nem kezdted el az SMS rendszered API-val való kiegészítését, ne vesztegesd az időt. Kezd el most!
Ha több hasznos információt szeretnél megtudni más hasonló SMS megoldások előnyeiről, kérjük, látogasd meg a üzenetküldésről szóló oldalt ugyanezzel a rendszerrel.
Reméljük, ez az oldal hasznos lesz minden olvasó számára, különösen a kezdőknek.
More information