InFo-Tech emelt díjas SMS szolgáltatás kommunikációs protokollja Ver.: 2.1
InFo-Tech SMS protokoll Az emelt díjas SMS szolgáltatással kapcsolatos beállításokat az adminisztrációs felületen végezheti el. Ugyanezen panelen találja a tesztfelületet is. http://www.info-tech.hu/admin A beérkezett SMS-ek átadása-átvétele egy egyszerű adat-kommunikációs protokollra épül. Minden esetben amikor ügyfelei SMS-t küldenek, rendszerünk az Ön által megadott szkriptet meghívja és GET metódussal átadja az SMS adatait. A kommunikáció két lépésben történik! Az első lépésben átadjuk a beérkezett SMS adatait, illetve továbbítjuk a mobilszolgáltató felé a válasz SMS tartalmát. A második lépésben küldi a mobilszolgáltató a delivery reportot, melyből kiderül, hogy az első lépésében megkezdett fizetési tranzakció sikeresen lezárult e. A vásárlást akkor kell jóváírni a felhasználónak ha szolgáltató visszaigazolta annak sikerességét! A kommunikáció első lépése A kommunikáció első lépésében a következő paraméterek kerülnek átadására: status: ez a paraméter jelzi, hogy melyik lépésnél tart a kommunikáció. Az első lépésben értéke 1. id: az SMS egyedi azonosítója prefix: az prefix (kezdőszó), mellyel az SMS kezdődik uzenet: az SMS prefix utáni része telefonszam: az SMS küldő telefonszáma a következő formában: 36703363926 kategoria: ez mutatja, hogy mely díjkategóriában érkezett az SMS, értékei országonként a következők lehetnek: Magyarország: 2: 160 Ft + ÁFA 4: 250 Ft + ÁFA 6: 400 Ft + ÁFA 9: 800 Ft + ÁFA 11: 1.600 Ft + ÁFA 15: 4.000 Ft + ÁFA A külföldi szolgáltatók esetén a kategória változó az SMS bruttó díját tartalmazza! Szerbia: 840: az SMS díja 700 RSD + Áfa, bruttó 840 RSD Szlovákia: 3: az SMS díja 2,5 EUR + Áfa, bruttó 3 EUR - 2 -
operator: azt mutatja, hogy ténylegesen- melyik mobilszolgáltató hálózatából érkezett az SMS, pl. HU_VODAFONE: magyar Vodafone HU_TMOBILE: magyar T-mobile HU_PANNON: magyar Telenor RS_VIP: szerb VIP RS_TELENOR: szerb Telenor SK_O2: szlovák O2 stb. Miután fogadta az adatokat egy választ kell küldenie a rendszerünknek. Ennek a válasznak a tartalma attól függ, hogy a prefix típusa beállítási lehetőségnél statikus vagy dinamikus értéket adott meg. Mi a különbség a statikus és dinamikus dinamikusan generált válasz SMS között? Statikus: ebben az esetben, amint beérkezik az SMS, a rendszerünk visszaküldi az ön által beállított tartalmat a mobilszolgáltató irányába, ami néhány percen belül megérkezik az SMS küldőjének telefonjára. Ezzel párhuzamosan a beérkezett SMS-t továbbítjuk az Ön rendszerébe. Statikus válasz SMS esetén az ön fogadó szkriptjétől egy OK t vár a rendszerünk, ezzel nyugtázva, hogy a fogadta az adatokat és a kommunikáció sikeres volt. Amennyiben az OK nem érkezik meg, az SMS rendszer 5 percenkét újból és újból megpróbáljuk átadni azt. Fontos! Statikus beállítás esetén is tud bizonyos változó tartalmat visszaküldeni. Ehhez a válasz SMS mezőben a válasz SMS szövege mellett- a $id t kell megadni. Ekkor a válasz SMS-ben a $id helyén egy számsor fog megjelenni, ami az SMS egyedi azonosítója. Pl. Üzeneted megérkezett! Jelszavad: $id ekkor a következő fog megérkezi a válasz SMS-ben: Üzeneted megérkezett! Jelszavad: 123459876 Abban az esetben ha nincs szükség arra, hogy minden esetben más és más választ küldjön vissza célszerű a Statikus beállítást használni. Dinamikus: SMS érkezésekor továbbítjuk azt az Ön rendszerébe és a válasz SMS tartalmát az Ön SMS fogadó szkriptjétől várjuk. Tehát ekkor nem OK-t kell visszaküldeni, hanem a válasz SMS tartalmát. Abban az esetben ha az Ön rendszere nem elérhető vagy üres sztringet küld, akkor a prefix beállításainál megadott válaszüzenetet fogjuk a mobilszolgáltató irányába továbbítani. - 3 -
A kommunikáció második lépése A kommunikáció második lépésében a következő paraméterek kerülnek átadására: status: ez a paraméter jelzi, hogy melyik lépésnél tart a kommunikáció. A második lépésben értéke 2. id: az SMS egyedi azonosítója, ez határozza meg, hogy melyik SMS-re vonatkozik a dlr. dlr: ez az érték jelzi, hogy az emelt díjas vásárlás sikeres volt e. DELIVRD: sikeres volt a fizetés. UNDELIV: sikertelen volt a fizetés. A delivery report általában a kommunikáció első lépése után néhány másodpercen belül megérkezik, azonban elfordulhat, hogy csak percek vagy akár órák múlva érkezik meg a visszaigazolás! A prefix beállítási paraméterei Prefix: A használni kívánt prefix. Minimum három karakter hosszúnak kell lennie és csak az angol abc betűit tartalmazhatja. URL: Itt kell megadni azt a szkriptet (teljes elérési úttal), ami az SMS -ek feldolgozását végzi. Pl.: www.domainnev.hu/sms/fogad.php Abban az esetben ha nincs szükség arra, hogy az SMS-t átadjuk az Ön oldalára, -a statisztikai modullal- csak monitorozni szeretné az SMS forgalmát, akkor hagyja üresen ezt a mezőt. Válasz SMS: Statikus prefix esetén az itt megadott sztringet küldjük vissza a válasz SMS-ben. Dinamikus prefix esetén akkor küldjük vissza ezt a tartalmat, ha nem érkezik meg Öntől a válasz SMS tartalma. - 4 -
Prefix típusa: Itt adhatja meg, hogy a válasz SMS tartalmát statikusan vagy dinamikusan szeretné generálni. Tájékoztató: Ez a mező csak külföldi prefix esetén jelenik meg. Néhány szóban meg kell adni, hogy a vásárlásért cserébe mit kap a felhasználó. Pl. Hirdetése kiemelésre kerül a valami.hu oldalon. A tájékoztatót az adott ország nyelvén kell megírni (google translate megfelelő.) Példaprogramok Statikus válasz esetén <?php /*GET paraméterek átvétele*/ $status = $_GET['status']; $id = $_GET['id']; $prefix = $_GET['prefix']; $uzenet = trim($_get['uzenet']); $telefonszam = $_GET['telefonszam']; $kategoria = $_GET['kategoria']; $operator = $_GET['operator']; $dlr = $_GET['dlr']; if ( $status == 1 ) /*Ebben a programrészben történik az adatok feldolgozása, eltárolása saját adatbázisában! Ez minden felhasználó esetén egyedi*/ /*A kommunikáció első lépését lezáró OK visszaküldése*/ echo OK ; if ( $status == 2 ) /*Ebben a programrészben történik a fizetés sikerességének vagy sikertelenségének elkönyvelése*/?> /*A kommunikáció második lépését lezáró OK visszaküldése*/ echo OK ; - 5 -
Dinamikus válasz esetén <?php /*GET paraméterek átvétele*/ $status = $_GET['status']; $id = $_GET['id']; $prefix = $_GET['prefix']; $uzenet = trim($_get['uzenet']); $telefonszam = $_GET['telefonszam']; $kategoria = $_GET['kategoria']; $operator = $_GET['operator']; $dlr = $_GET['dlr']; if ( $status == 1 ) /*Ebben a programrészben történik az adatok feldolgozása, eltárolása saját adatbázisában! Ez minden felhasználó esetén egyedi*/ /*A válaszüzenet visszaküldése, mi az így kapott sztringet továbbítjuk a mobilszolgáltató irányába*/ echo A portál használatához szükséges adatok: azonosító: mici jelszó: macko ; if ( $status == 2 ) /*Ebben a programrészben történik a fizetés sikerességének vagy sikertelenségének elkönyvelése*/?> /*A kommunikáció második lépését lezáró OK visszaküldése*/ echo OK ; - 6 -
Tesztfelület Ahhoz, hogy ne élesben, SMS-ek küldésével keljen kipróbálnia rendszerét az admin felületen belül létrehoztunk egy tesztoldalt ahol szabadon tesztelheti az adat-kommunikációt. A tesztoldalon az SMS tartalma sorban kell megadni azt a sztringet, ami majd a valós SMS esetén- a prefixet követi. A prefix listában találja az ön által használható prefixeket és itt tudja kiválasztani, hogy mely prefixre legyen elküldve a teszt SMS. A kategória listából kell kiválasztani, hogy, mely díjkategóriában küldi a teszt SMS-t. A küld pontra kattintva a program meghívja azt a szkriptet ami az adatok fogadását végzi az Ön szerverén. A tesztfelületen megjelenik a válaszüzenet és az, hogy sikeres volt e a rendszerek közötti kommunikáció. - 7 -