1.Zawartość dokumentu
Transkrypt
1.Zawartość dokumentu
Dokumentacja interfejsu HTTPD Platforma BSMS.PL Instrukcja podłączenia po przez http Dokumentacja interfejsu httpd (strona 2) SPIS TREŚCI 1. Zawartość dokumentu 2. Informacje ogólne 2.1 Zastosowanie 2.2 Połączenie HTTPD 2.2.1 Parametry połączenia 2.2.1.1 Wersja HTTPD 2.2.1.2 Adres URL 2.2.1.3 Metoda przesyłania danych 2.2.1.4 Autoryzacja 2.2.1.5 Zmienne 2.2.1.6 Połączenie SSL 2.2.2 Ograniczenia połączenia 2.3 Operacje wspierane przez interfejs 2.3.1 Wysyłanie SMS-ów metodą GET lub POST 2.3.2 Sprawdzanie statusów metodą GET lub POST str.3 str.4 str.8 Dokumentacja interfejsu, mySQL (strona 3) 1.Zawartość dokumentu Dokument ten opisuje interfejs HTTPD pozwalający na połączenie z platformą bsms.pl. Jest to pierwsza wersja dokumentacji 2.Informacje ogólne Interfejs httpd to możliwość wysłania SMS-ów za pomocą protokołu http. Klient, który w swojej usłudze zaktywuje ten interfejs otrzymuje dostęp do api http, który umozliwia wysyłanie sms-ów. Podłączenie może odbyć się za pomocą dowolnej aplikacji klienckiej, czy skryptu wykorzystującego interfejs http. 2.1. Zastosowanie Opisany w niniejszym dokumencie, interfejs HTTPD ma zastosowanie jedynie w ramach platformy, www.bsms.pl i jest jej częścią składową. Interfejs pozwala na wysyłanie SMS-ów w ramach wspomnianej platformy i jest to jedynego jego zastosowanie w obecnej wersji. 2.2. Połączenie do HTTPD Połączenie do http następuje po wywołaniu URL do skrypty. 2.2.1 Parametry połączenia Niniejszy punkt zawiera istotne dla komunikacji parametry połączenia klienta z bazą danych. 2.2.1.1 Wersja HTTPD Wersja protokolu httpd: 1.0 2.2.1.2 Adres URL Wszyscy użytkownicy łączą się z serwerem powinni wywoływać adres http://apsisms.bsms.pl/send-sms.php 2.2.1.3 Metoda przesyłania danych Protokuł obsługuje metody POST oraz GET 2.2.1.4 Autoryzacja Autoryzowanie wysyłki odbywa się po przesłaniu zmiennej md5 wygenerowanej na podstawie Loginu oraz Hasła. Dokumentacja interfejsu httpd(strona 4) 2.2.1.5 Zmienne md5 – suma kontrolna połączonych zmiennych LOGIN + HASŁO przykład: md5(‘login’.’pass’); msisdn – numer odbiorcy body – Treść SMS-a send_after – Pole nieobowiązkowe (przypadku podania tej zmiennej należy użyć daty formacie 2010-03-15 10:00:00) le nie obowiązkowe (zmienna „f” spowoduje wysłanie sms-a typu FLASH) status – Wartość „true” spowoduje zapytanie o status wyslanego SMS-a id – ID sms-a, którego ma dotyczyć zapytanie o status 2.3 Operacje wspierane przez interfejs Interfejs HTTPD wspiera dwie podstawowe operacje: Wysyłanie SMS-ów Sprawdzanie Statusów wysłanych SMS-ów 2.3.1 Wysyłanie SMS-ów metodą GET LUB POST Aby wysłać SMS-a metodą GET należy przygotować odpowiedni parametr: Przykład PHP: ********************************************************************************************* <? $aut['login'] = 'test'; $aut['pass'] = 'test'; $aut['url']='apisms.bsms.pl/send-sms.php'; function send_get_sms($post=false,$msisdn,$body,$send_after=null,$type_sms=null,$status=null,$id=null){ global $aut; $cUrl = curl_init(); if($post){ $link=('http://'.$aut['url']); $POST ='md5='.md5($aut['login']. $aut['pass']).'&msisdn='.$msisdn.'&body='.str_replace(' ','%20',$body).'&send_after='.$send_after.'&type_sms='.$type_sms.'&status='.$status.'&id='.$id; }else{ $link=('http://'.$aut['url'].'?md5='.md5($aut['login']. $aut['pass']).'&msisdn='.$msisdn.'&body='.$body.'&send_after='.$send_after.'&type_sms='.$type_sms.'&status='.$s tatus.'&id='.$id); } curl_setopt($cUrl, CURLOPT_URL, $link); curl_setopt($cUrl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($cUrl, CURLOPT_CONNECTTIMEOUT, 2); curl_setopt($cUrl, CURLOPT_TIMEOUT, 5); if($post){ curl_setopt($cUrl, CURLOPT_POST, 1); curl_setopt($cUrl, CURLOPT_POSTFIELDS, $POST); } curl_setopt($cUrl, CURLOPT_FOLLOWLOCATION, false); $content = curl_exec($cUrl); curl_close($cUrl); return $content; } echo send_get_sms(false,'+48100100',’test’); ?> ********************************************************************************************** Funkcja send_get_sms może zwrócić 2 wartości. FAILED w przypadku jakiegoś błędu lub wartość numeryczną, czyli ID SMS-a. Pierwsza wartość w funkcji określa metodę wysyłki False – metoda GET True – metoda POST 2.3.2 Sprawdzanie statusów metodą GET LUB POST Sprawdzenie statusu odbywa się identyczną funcją j/w opisaną wyżej echo send_get_sms(false,null,null,null,null,TRUE,’1’); gdzie w tym przypadku 1 to id SMS-a