SLOONO.de-API SMS: SOAP
Aus SLOONO.de-API
Für den SMS-Versand steht jetzt auch ein Webservice zur Verfügung .
Inhaltsverzeichnis |
API
Adresse: http://www.sloono.de/API/soapsms.php
Definition (WSDL): http://www.sloono.de/API/soapsms.php?wsdl
Anfrage
Für die Anfrage ist der komplexe Datentyp SMS1 notwendig.| Feld | Typ | Beschreibung | Standard |
|---|---|---|---|
| user | Text | Username | |
| password | Text | MD5-Hashwert des Passworts | |
| typ | Zahl | API-ID, des zu verdenenen SMS-Typs. Siehe Verfügbare SMS-Typen | 0 |
| timestamp | Zahl | UNIX-Timestamp der genünschten Sendezeit. Bei 0 oder einem vergangenem Zeitpunkt wird sofort gesendet. | 0 |
| text | Text | SMS-Text mit maximal 1600 Zeichen. | |
| from | Zahl | Absenderkennung:
|
1 |
| to | Text | Zielnummern getrennt durch Komma (,) und im nationalen oder internationalen Format (0123/456789 oder +49(123)456789). Es können auch die Spitznamen aus dem Adressbuch oder Vor- + Nachname aus dem Adressbuch benutzt werden. | |
| action | Text | Es können die Werte info oder send gesetzt werden. Der Wert send überträgt die SMS ins System von MMSCLICK, während info nur Informationen über die SMS wie z. B. Preis zurück gibt. Nach dem senden werden die gleichen Informationen zurück gegeben. | send |
Alle Variablen, die keinen Standartwert haben müssen gesetzt werden!
Antwort
Als Antwort wird ein Datensatz vom komplexe Datentyp Antwort zurückgegeben.
| Feld | Typ | Beschreibung |
|---|---|---|
| code | Zahl | Antwortcode (Liste der Antwortcodes) |
| codetext | Text | Textbeschreibung des Antwortcodes. |
| info | Zahl/Text | Informationen über den Status, Fehlermeldungen oder Informationen über die SMS. |
Quellcodebeispiele
PHP
In diesem PHP-Beispiel wird die SOAP-Erweiterung[1] von PHP5 verwendet.
<?phpmb_internal_encoding("UTF-8");
echo "<pre>";
//////////////////////////////////////////////////////////////////////////////////// Einstellungen für Account und SMS /////////////////////////////////////////////////////////////////////////////////////// ÄNDERN! ////////////////////////////////////////////////////////////////////////////////////define("ABSENDER_Handynummer",1);
define("ABSENDER_Kennung_1",2);
define("ABSENDER_Kennung_2",3);
define("ABSENDER_Kennung_3",4);
define("ABSENDER_Kennung_4",5);
$suser = "Username"; // Nickname
$spw = "Passwort"; // Accountpasswort
$styp = 2; // Test: Pro-SMS
$smstext = "Testtext: Hallo Süße! Schlaf schön&träum' was Süßes!";
$ziel = "+49(160)123456"; // Zielrufnummer, bitte einstellen!
$absender = ABSENDER_Handynummer; // Test: Handynummer
//////////////////////////////////////////////////////////////////////////////////// Beispielfunktionen /////////////////////////////////////////////////////////////////////////////////////// NICHT ÄNDERN! /////////////////////////////////////////////////////////////////////////////////////*** SMS-Klasse als Objekt für SOAP.*/class clsSMS1 {
public $user;
public $password;
public $from;
public $to;
public $text;
public $typ;
public $timestamp;
public $action;
}/*** SMS via SOAP versemdem** Diese Funktion versendet eine SMS über die SOAP-Schnittstelle von SLOONO.** @param string Nickname zum Login* @param string Password zum Login* @param string SMS-Text zum versenden* @param string Zielrufnummer wie auf der Webseite* @param int Absenderkennug (1 = Handynummer, 2 = Kennung 1, 3 = Kennung 2, ...)* @param int API-ID des verfügbaren SMS-Typs* @param int Timestamp zum versenden*/function SMS_versenden($Nickname,$Password,$Text,$Ziel,$Absender=ABSENDER_Handynummer,$Typ=2,$Versenden = 0) {
if(mb_strlen($Text) == 0)
return array("Code" => 201, "Codetext" => "Kein Text","Info" => "");
if(mb_strlen($Text) > 1600) $Text = mb_substr($Text,0,1600);
if($Versenden < time()) $Versenden = 0;
if($Absender < ABSENDER_Handynummer || $Absender > ABSENDER_Kennung_4)
$Absender = ABSENDER_Handynummer;
if($Versenden < time()) $Versenden = 0;
if($Typ < 0 || $Typ > 3) $Typ = 0;
$wsdl = "http://www.sloono.de/API/soapsms.php?wsdl";
// Hinweis: PHP-SOAP funktioniert besser mit einer lokalen WSDL-Datei.$sc = NULL;
try {$sc = new SoapClient($wsdl, array('soap_version' => SOAP_1_2));
} catch (SoapFault $sf) {
return array("Code" => 500, "Codetext" => "SOAP-Fehler","Info" => print_r($sf,true));
}$sms = new clsSMS1();
$sms->user = $Nickname;
$sms->password = md5($Password);
$sms->from = $Absender;
$sms->to = $Ziel;
$sms->text = $Text;
$sms->typ = $Typ;
$sms->timestamp = $Versenden;
$sms->action = "send";
$result = $sc->smssenden1($sms);
return array("Code" => $result->code,"Codetext" => $result->codetext,"Info" => $result->info);
}//////////////////////////////////////////////////////////////////////////////////// SMS verschicken und Ergebnis als ausgeben ////////////////////////////////////////////////////////////////////////////////////print_r(SMS_versenden($suser,$spw,$smstext,$ziel,$absender,$styp));
echo "</pre>";
?>
.NET 2.0
Das folgende Beispiel ist mit Visual Studio 2008 erstellt worden.Beispiel:
- Als erstes muss ein neues Projekt erstellt werden
- Projekt > Webverweis hinzufügen ...
- URL: http://www.sloono.de/API/soapsms.php?wsdl
- Webverweisname: SLOONOSMS
- Nun kann Sourcecode geschrieben werden. Z. B. folgenden Code:
VB.NET
'Webservice-ObjektDim WS As New SLOONOSMS.soapsms1
'SMSDim WSFrage As New SLOONOSMS.SMS1
WSFrage.action = "send"
WSFrage.from = 1
WSFrage.password = MD5_Hash("Musterpasswort")
WSFrage.text = "SMS-Text"
WSFrage.timestamp = New System.UInt64
WSFrage.timestamp.Parse("0")
WSFrage.to = "+49(123)4567890"
WSFrage.typ = "Discount"
WSFrage.user = "Musternickname"
'AntwortDim WSAntwort As SLOONOSMS.Antwort
WSAntwort = WS.smssenden1(WSFrage)
'Auswerten:' WSAntwort.code' WSAntwort.codetext' WSAntwort.info
C#
//Webservice-ObjektSLOONOSMS.soapsms1 WS = new SLOONOSMS.soapsms1();
//SMSSLOONOSMS.SMS1 WSFrage = new SLOONOSMS.SMS1();
WSFrage.action = "send";
WSFrage.from = 1;
WSFrage.password = MD5_Hash("Musterpasswort");
WSFrage.text = "SMS-Text";
WSFrage.timestamp = new System.UInt64;
WSFrage.timestamp.Parse("0");
WSFrage.to = "+49(123)4567890";
WSFrage.typ = "Discount";
WSFrage.user = "Musternickname";
//AntwortSLOONOSMS.Antwort WSAntwort;
WSAntwort = WS.smssenden1(WSFrage);
//Auswerten:// WSAntwort.code// WSAntwort.codetext// WSAntwort.info
.NET 3.5/4.0 (WCF)
Das folgende Beispiel ist mit Visual Studio 2010 erstellt worden.Beispiel:
- Als erstes muss ein neues Projekt erstellt werden
- Projekt > Dienstverweis hinzufügen ...
- URL: http://www.sloono.de/API/soapsms.php?wsdl
- Namespace: SLOONOSMS
- Nun kann Sourcecode geschrieben werden. Z. B. folgenden Code:
VB.NET
'Webservice-ObjektDim WS As New SLOONOSMS.soapsms1PortTypeClient
'SMSDim WSFrage As New SLOONOSMS.SMS1
WSFrage.action = "send"
WSFrage.from = 1
WSFrage.password = MD5_Hash("Musterpasswort")
WSFrage.text = "SMS-Text"
WSFrage.timestamp = New System.UInt64
WSFrage.timestamp.Parse("0")
WSFrage.to = "+49(123)4567890"
WSFrage.typ = "Discount"
WSFrage.user = "Musternickname"
'AntwortDim WSAntwort As SLOONOSMS.Antwort
WSAntwort = WS.smssenden1(WSFrage)
'Auswerten:' WSAntwort.code' WSAntwort.codetext' WSAntwort.info
C#
//Webservice-ObjektSLOONOSMS.soapsms1PortTypeClient WS = new SLOONOSMS.soapsms1PortTypeClient();
//SMSSLOONOSMS.SMS1 WSFrage = new SLOONOSMS.SMS1();
WSFrage.action = "send";
WSFrage.from = 1;
WSFrage.password = MD5_Hash("Musterpasswort");
WSFrage.text = "SMS-Text";
WSFrage.timestamp = new System.UInt64;
WSFrage.timestamp.Parse("0");
WSFrage.to = "+49(123)4567890";
WSFrage.typ = "Discount";
WSFrage.user = "Musternickname";
//AntwortSLOONOSMS.Antwort WSAntwort;
WSAntwort = WS.smssenden1(WSFrage);
//Auswerten:// WSAntwort.code// WSAntwort.codetext// WSAntwort.info