SLOONO.de-API Account: Massensms
Aus SLOONO.de-API
Es können Informationen zu den Massensmstabellen abgerufen werden. Außerdem kann der Tabelleninhalt geändert werden.
Inhaltsverzeichnis |
[Bearbeiten] API
[Bearbeiten] Anfrage
Adresse: http://www.sloono.de/API/httpkonto.php?section=tab
| Parameter | Typ | Beschreibung | Standard |
|---|---|---|---|
| user | Text | Username | |
| password | Text | MD5-Hashwert des Passworts | |
| action | Text | Ein Befehl:
Abhängig vom Befehl müssen noch ggf. zusätzliche Parameter angegeben werden. |
view |
| return | Text | Mit dieser Variable wird das Antwortformat festgelegt. Mit text wird die Antwort als Mehrzeiliger Text zurückgegeben während xml ein XML-Schema liefert. | text |
| httphead | Zahl | Wenn httphead auf 1 gesetzt wird, so werden bei Fehlern HTTP-Header ungleich 200 gesendet. Beim Wert 0 muss der Fehler aus der Antwort abgelesen werden. | 1 |
Alle Variablen, die keinen Standartwert haben müssen gesetzt werden!
[Bearbeiten] Befehle
- view - Tabellenliste holen
Der Befehl view gibt die Liste der vorhandenen Massensms-Tabellen aus. Es sind keine weiteren Parameter erforderlich.
- add - Eine neue Zeile in eine Tabelle hinzufügen
Diese Parameter müssen zu den normalen Parametern zusätzlich noch angegeben werden.Parameter Typ Beschreibung name Text Name der gewählten Tabelle. Dieser Wert muss gesetzt werden! col1 Text Die erste Spalte enthält immer eine gültige Handynummer. Dieser Wert muss gesetzt werden! col... Text Wenn die Tabelle mehrere Spalten besitzt (col2, col3, .... ) können diese auch gefüllt werden.
- delete - Eine Zeile in einer Tabelle löschen
Diese Parameter müssen zu den normalen Parametern zusätzlich noch angegeben werden.Parameter Typ Beschreibung name Text Name der gewählten Tabelle. Dieser Wert muss gesetzt werden! handynummer Text Handynummer, deren Zeile gelöscht werden soll. Dieser Wert muss gesetzt werden!
- change - Eine Zeile in einer Tabelle ändern
Kurz: Mit handynummer wird die Zeile ausgewählt, mit col1, col2, ... werden die Zellen in der Zeile neu geschrieben. Diese Parameter müssen zu den normalen Parametern zusätzlich noch angegeben werden.Parameter Typ Beschreibung handynummer Text Handynummer, deren Zeile geändert werden soll. Dieser Wert muss gesetzt werden! name Text Name der gewählten Tabelle. Dieser Wert muss gesetzt werden! col1 Text In der ersten Spalte steht die Handynummer. Soll diese geändert werden muss mit col1 eine gültige Nummer übergeben werden. Dieser Wert ist optional. col... Text Wenn die Tabelle mehrere Spalten besitzt (col2, col3, .... ) können diese auch gefüllt werden.
[Bearbeiten] Antworten
Eine Vorauswahl wird bereits mit dem HTTP-Header der Antwort getroffen. Wenn etwas anderes als HTTP 1/1 200 OK als Antwort empfangen wird ist ein Fehler aufgetreten. Zurückgegeben wird ein Fehlercode, ein Fehlertext und Informationen (falls vorhanden).
[Bearbeiten] Beispiele
So kann eine GET-Anfrage aussehen:
http://www.sloono.de/API/httpkonto.php?user=musteruser&password=e16b2ab8d12314bf4efbd6203906ea6c§ion=tab&action=view
So kann eine Textantwort aussehen:
101
Erfolgreiche Abfrage
Command: List tables
Tables:
Table1: Test
[Bearbeiten] Empfehlung
Es ist empfehlenswert bei den Massentabellen return=xml zu verwenden und die Antworten mit einem XML-Parser auszuwerten. Bei den Massensmstabellen werden manche Informationen wie z. B. der Tabelleninhalt verschachtelt zurückgegeben, da ist ein XML-Parser die optimale Lösung.
[Bearbeiten] Quellcodebeispiele
[Bearbeiten] PHP
<?phpfunction Massensmstabellen($User,$Password) {
if(strlen($User) == 0) return false;
if(strlen($Password) == 0) return false;
$url = "http://www.mmsclick.de/API/httpkonto.php?section=tab";
$url .= "&user=".urlencode($User);
$url .= "&password=".md5($Password)."&httphead=0";
$Antwort = @file($url);
if($Antwort == false) return false;
if(trim($Antwort[0]) != 101) return false;
$ant = false;
for($i=5;$i<count($Antwort);$i++) {
$x = explode(": ",trim($Antwort[$i]));
if(trim($Antwort[$i]) != "") $ant[$x[0]] = $x[1];
}return $ant;
}function ZeileHinzufuegen($User,$Password,$Tabelle,$Daten) {
if(strlen($User) == 0) return false;
if(strlen($Password) == 0) return false;
if(strlen($Tabelle) == 0) return false;
if(!is_array($Daten) || count($Daten) == 0) return false;
$url = "http://www.mmsclick.de/API/httpkonto.php?section=tab";
$url .= "&action=add&user=".urlencode($User);
$url .= "&password=".md5($Password)."&httphead=0";
$url .= "&name=".urlencode($Tabelle);
foreach($Daten as $i => $cell)
$url .= "&col".($i + 1)."=".urlencode($cell);
$Antwort = @file($url);
die(print_r($Antwort,true));
if($Antwort == false) return false;
if(trim($Antwort[0]) != 102) return false;
if(trim($Antwort[3]) != "Command: Add row.") return false;
return true;
}function ZeileLoeschen($User,$Password,$Tabelle,$Handynummer) {
if(strlen($User) == 0) return false;
if(strlen($Password) == 0) return false;
if(strlen($Tabelle) == 0) return false;
if(strlen($Handynummer) == 0) return false;
$url = "http://www.mmsclick.de/API/httpkonto.php?section=tab";
$url .= "&action=delete&user=".urlencode($User);
$url .= "&password=".md5($Password)."&httphead=0";
$url .= "&name=".urlencode($Tabelle);
$url .= "&handynummer=".urlencode($Handynummer);
$Antwort = @file($url);
if($Antwort == false) return false;
if(trim($Antwort[0]) != 102) return false;
if(trim($Antwort[3]) != "Command: Delete row.") return false;
return true;
}?><?php$massensmstab = Massensmstabellen("Max","PW von Max");
if($massensmstab == false)
echo "Fehler!";
else {
echo "<h1>MMSCLICK Massensmstabellen</h1><ol>";
foreach($massensmstab as $var => $wert)
echo "<li>".$wert."</li>\n";
echo "</ol>";
}?><?phpif(ZeileHinzufuegen("Max","PW von Max","Tabelle",
array("+12(123)12345678","Variable A")))
echo "+12(123)12345678 wurde hinzugefügt.";
elseecho "+12(123)12345678 konnte nicht hinzugefügt werden!";
?><?phpif(ZeileLoeschen("Max","PW von Max","Tabelle","+12(123)12345678"))
echo "+12(123)12345678 wurde gelöscht.";
elseecho "+12(123)12345678 konnte nicht gelöscht werden!";
?>
