Příchozí SMS
Platforma umožnuje příjem SMS pro uživatele. Příchozí SMS lze získávat pomocí API volání, předávání SMS na email nebo předávání SMS na URL.
Příjem SMS
SMS je možné přiřadit k uřivateli platformy na základě těchto důvodů:
- Telefonní číslo
- SMS byla předána na základě registrovaného telefonního čísla, telefonní číslo, ze kterého byla SMS odeslána.
- Přihlašovací jméno
- SMS byla předána na základě přihlašovacího jména uživatele - první slovo v SMS je uživatelské jméno.
- Session
- SMS byla předána na základě session. Při odeslání SMS je možné požádat o přiřazování příchozí odpovědí, pokud bude příchozí SMS zaslána z telefonního čísla, na které byla uživatelem platformy zaslána SMS a u dané SMS byla vyžádána session, příchozí SMS se přiřadí danému uživateli platformy. Délka session je jeden den.
- Klíčové slovo
- SMS byla předána na základě klíčového slova - první slovo v SMS. Slovo je možné si registrovat.
API volání
SMS info API patří do služby SMS (sms).
Základní popis a tvar API volání a odpovědi najdete popsané samostatně.
Parametry volání API
Volání musí obsahovat všechny základní parametry.
- CTRL
-
Pevná hodnota: sms_in
- from
-
Datum, od kterého se mají listovat SMS (včetně), ve formátu rrrr-mm-dd, nebo rrrr-mm-dd hh:nn:ss.
Není-li parametr zadán, listují se SMS od počátku.
- to
-
Datum, do kterého se mají listovat SMS (včetně), ve formátu rrrr-mm-dd, nebo rrrr-mm-dd hh:nn:ss.
Není-li parametr zadán, listují se SMS do času volání API (čas není shora omezen).
- start
-
Počátek listování (první SMS má index 0).
Není-li parametr zadán, výchozí hodnota je 0.
- count
-
Počet vylistovaných SMS.
Není-li parametr zadán, listují se všechny SMS odpovídající ostatním parametrům.
- msisdn
-
Telefonní číslo odesilatele SMS.
Není-li parametr zadán, listují se všechny SMS.
- reason
-
Není-li parametr zadán, listují se všechny SMS.
SMS jsou listované v obráceném pořadí, než přišli (nejnovější SMS je listované nejdříve).
Příklady volání API
$login = 'user'; $call = microtime(true); $password = md5(md5("heslo").$call); $url = "https://api.profisms.cz/index.php?" . http_build_query(array( "CTRL" => "sms_in", "_login" => $login, "_password" => $password, "_service" => "sms", "_call" => $call, "from" => "2014-06-01", )); /** URL bude vypadat https://api.profisms.cz/index.php?CTRL=sms_in&_login=user &_password=aaaaa75fb5d8e95ce7dbe30e4f36c718&_service=sms&_call=123456&from=2014-06-01 */ $json = join("", file($url));
Odpověď na úspěšný požadavek na API
Základní formát odpovědi naleznete v obecném popisu API.
Ukázka odpovědi
{ "error": { "code":0, "message":"OK" }, "data": { "69964": { "id":69964, "id_user":9, "recipient":"+420606999087", "msisdn":"+420123456789", "created":"2014-06-12 15:05:14", "reason":"login", "text":"Bauglir ahoj", "id_smsout":[] }, "69946": { "id":69946, "id_user":9, "recipient":"+420606999088", "msisdn":"+420987654321", "created":"2014-06-12 14:34:13", "reason":"session", "text":"Odpoved test b 2", "id_smsout":["190757084","190757120"] } }, "_key":"fc4a4d9d5b0f76a2612759f3dd813676", "_time":0.15645599365234 }
Popis objektu data
Objekt data obsahuje seznam přízhodích SMS, klíči (názvy vlastností) jsou ID (inikátní identifikátory) jednotlivých příchozích SMS, vlatnosti jsou objekty:
- id
- Unikátní identifikátor přízhozích SMS.
- id_user
- Uživatel, kterému patří SMS (ID uživatele).
- recipient
- Číslo, na které byla SMS doručena (jedná se o čísla patřící platformě).
- msisdn
- Telefonní číslo odesilatele.
- created
- Datum a čas, kdy byla SMS přijata.
- reason
- Důvod přiřazení SMS.
- text
- Text SMS
- id_smsout
- V případě, že důvodem přiřazení SMS byla session, tato vlastnost je pole obsahující ID odchozích SMS, které mohli být zdrojem odpovědi.
Chyba požadavku
Základní formát odpovědi naleznete v obecném popisu API.
V Extranetu v nastavení, v sekci SMS je možné nastavit "Email adresa pro předávání SMS". Na tuto adresu se zasílá email s informacemi o přízhozí SMS. Format emailu je pevný a není možné jej měnit.
URL
V Extranetu v nastavení, v sekci SMS je možné nastavit "URL adresa pro předávání SMS". Na tuto adresu se zasílá předávají příchozí SMS.
Format URL
V URL je možné nastavit, jaké inforamce chcete získávat a jak se mají parametry jmenovat. Url může obsahovat následující proměnné, které budou následně nahrazeny za hodnoty
- $msisdn
- Telefonní číslo odesilatele.
- $recipient
- Číslo, na které byla SMS doručena (jedná se o čísla patřící platformě).
- $smstext
- Text SMS
- $smsout
- V případě, že důvodem přiřazení SMS byla session, proměnná je nahrazena čárkou oddělenými ID odchozích SMS.
- $smsin
- Unikátní identifikátor přízhozích SMS. Tuto hodnotu je nutné při přadávání kontrolovat, aby nedošlo k vícenásobnému zpracování stejné příchozí SMS.
- $reason
- Důvod přiřazení SMS.
- $created
- Datum a čas, kdy byla SMS přijata.
- $smsout
- Seznam ID odchozích SMS, pro které byla vyžádána session a kterým byla přiřazena tato příchozí SMS jako odpověď. ID SMS jsou oddělena čárkou.
V URL není nutné použít všechny proměnné.
Ukázka URL
http://www.company.com/index.php?ms=$msisdn&smstext=$smstext&in=$smsin&created=$created
http://www.company.com/index.php?ms=%2B420123456789&smstext=Text+prichozi+sms&in=74586&created=2014-07-03+00%3A58%3A50