SLOONO.de-API SMS: SOAP

Aus SLOONO.de-API

Wechseln zu: Navigation, Suche

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. Handynummer
  2. Absenderkennung 1
  3. Absenderkennung 2
  4. Absenderkennung 3
  5. Absenderkennung 4
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.

  1. <?php
  2. mb_internal_encoding("UTF-8");
  3. echo "<pre>";
  4.  
  5. /////////////////////////////////////////////////////////////////////////////////
  6. /// Einstellungen für Account und SMS                                         ///
  7. /////////////////////////////////////////////////////////////////////////////////
  8. /// ÄNDERN!                                                                   ///
  9. /////////////////////////////////////////////////////////////////////////////////
  10.  
  11. define("ABSENDER_Handynummer",1);
  12. define("ABSENDER_Kennung_1",2);
  13. define("ABSENDER_Kennung_2",3);
  14. define("ABSENDER_Kennung_3",4);
  15. define("ABSENDER_Kennung_4",5);
  16.  
  17. $suser = "Username";			// Nickname
  18. $spw = "Passwort";			// Accountpasswort
  19. $styp = 2;				// Test: Pro-SMS
  20.  
  21. $smstext = "Testtext: Hallo Süße! Schlaf schön&träum' was Süßes!";
  22. $ziel = "+49(160)123456";		// Zielrufnummer, bitte einstellen!
  23. $absender = ABSENDER_Handynummer;	// Test: Handynummer
  24.  
  25. /////////////////////////////////////////////////////////////////////////////////
  26. /// Beispielfunktionen                                                        ///
  27. /////////////////////////////////////////////////////////////////////////////////
  28. /// NICHT ÄNDERN!                                                             ///
  29. /////////////////////////////////////////////////////////////////////////////////
  30.  
  31. /**
  32.  * SMS-Klasse als Objekt für SOAP.
  33.  */
  34. class clsSMS1 {
  35. 	public $user;
  36. 	public $password;
  37. 	public $from;
  38. 	public $to;
  39. 	public $text;
  40. 	public $typ;
  41. 	public $timestamp;
  42. 	public $action;
  43. }
  44.  
  45. /**
  46.  * SMS via SOAP versemdem
  47.  * 
  48.  * Diese Funktion versendet eine SMS über die SOAP-Schnittstelle von SLOONO.
  49.  * 
  50.  * @param string Nickname zum Login
  51.  * @param string Password zum Login
  52.  * @param string SMS-Text zum versenden
  53.  * @param string Zielrufnummer wie auf der Webseite
  54.  * @param int Absenderkennug (1 = Handynummer, 2 = Kennung 1, 3 = Kennung 2, ...)
  55.  * @param int API-ID des verfügbaren SMS-Typs
  56.  * @param int Timestamp zum versenden
  57.  */
  58. function SMS_versenden($Nickname,$Password,$Text,$Ziel,$Absender=ABSENDER_Handynummer,$Typ=2,$Versenden = 0) {
  59. 	if(mb_strlen($Text) == 0)
  60. 		return array("Code" => 201, "Codetext" => "Kein Text","Info" => "");
  61. 	if(mb_strlen($Text) > 1600) $Text = mb_substr($Text,0,1600);
  62. 	if($Versenden < time()) $Versenden = 0;
  63. 	if($Absender < ABSENDER_Handynummer || $Absender > ABSENDER_Kennung_4)
  64. 		$Absender = ABSENDER_Handynummer;
  65. 	if($Versenden < time()) $Versenden = 0;
  66. 	if($Typ < 0 || $Typ > 3) $Typ = 0;
  67. 	$wsdl = "http://www.sloono.de/API/soapsms.php?wsdl";
  68. 	// Hinweis: PHP-SOAP funktioniert besser mit einer lokalen WSDL-Datei.
  69. 	$sc = NULL;
  70. 	try {
  71. 		$sc = new SoapClient($wsdl, array('soap_version' => SOAP_1_2));
  72. 	} catch (SoapFault $sf) {
  73. 		return array("Code" => 500, "Codetext" => "SOAP-Fehler","Info" => print_r($sf,true));
  74. 	}
  75.  
  76. 	$sms = new clsSMS1();
  77. 	$sms->user = $Nickname;
  78. 	$sms->password = md5($Password);
  79. 	$sms->from = $Absender;
  80. 	$sms->to = $Ziel;
  81. 	$sms->text = $Text;
  82. 	$sms->typ = $Typ;
  83. 	$sms->timestamp = $Versenden;
  84. 	$sms->action = "send";
  85.  
  86. 	$result = $sc->smssenden1($sms);
  87. 	return array("Code" => $result->code,"Codetext" => $result->codetext,"Info" => $result->info);
  88. }
  89.  
  90. /////////////////////////////////////////////////////////////////////////////////
  91. /// SMS verschicken und Ergebnis als ausgeben                                 ///
  92. /////////////////////////////////////////////////////////////////////////////////
  93. print_r(SMS_versenden($suser,$spw,$smstext,$ziel,$absender,$styp));
  94. echo "</pre>";
  95. ?>

.NET 2.0

Das folgende Beispiel ist mit Visual Studio 2008 erstellt worden.

Beispiel:

  1. Als erstes muss ein neues Projekt erstellt werden
  2. Projekt > Webverweis hinzufügen ...
    • URL: http://www.sloono.de/API/soapsms.php?wsdl
    • Webverweisname: SLOONOSMS
    Weiter mit Verweis hinzufügen.
  3. Nun kann Sourcecode geschrieben werden. Z. B. folgenden Code:


VB.NET

  1. 'Webservice-Objekt
  2.  
  3. Dim WS As New SLOONOSMS.soapsms1
  4.  
  5. 'SMS
  6. Dim WSFrage As New SLOONOSMS.SMS1
  7. WSFrage.action = "send"
  8. WSFrage.from = 1
  9. WSFrage.password = MD5_Hash("Musterpasswort") 
  10. WSFrage.text = "SMS-Text"
  11. WSFrage.timestamp = New System.UInt64
  12. WSFrage.timestamp.Parse("0")
  13. WSFrage.to = "+49(123)4567890"
  14. WSFrage.typ = "Discount"
  15. WSFrage.user = "Musternickname"
  16.  
  17. 'Antwort
  18. Dim WSAntwort As SLOONOSMS.Antwort
  19. WSAntwort = WS.smssenden1(WSFrage)
  20.  
  21. 'Auswerten:
  22. ' WSAntwort.code
  23. ' WSAntwort.codetext
  24.  
  25. ' WSAntwort.info

C#

  1. //Webservice-Objekt
  2.  
  3. SLOONOSMS.soapsms1 WS = new SLOONOSMS.soapsms1();
  4.  
  5. //SMS
  6. SLOONOSMS.SMS1 WSFrage = new SLOONOSMS.SMS1();
  7. WSFrage.action = "send";
  8. WSFrage.from = 1;
  9. WSFrage.password = MD5_Hash("Musterpasswort");
  10. WSFrage.text = "SMS-Text";
  11. WSFrage.timestamp = new System.UInt64;
  12. WSFrage.timestamp.Parse("0");
  13. WSFrage.to = "+49(123)4567890";
  14. WSFrage.typ = "Discount";
  15. WSFrage.user = "Musternickname";
  16.  
  17. //Antwort
  18. SLOONOSMS.Antwort WSAntwort;
  19. WSAntwort = WS.smssenden1(WSFrage);
  20.  
  21. //Auswerten:
  22. // WSAntwort.code
  23. // WSAntwort.codetext
  24.  
  25. // WSAntwort.info


.NET 3.5/4.0 (WCF)

Das folgende Beispiel ist mit Visual Studio 2010 erstellt worden.

Beispiel:

  1. Als erstes muss ein neues Projekt erstellt werden
  2. Projekt > Dienstverweis hinzufügen ...
    • URL: http://www.sloono.de/API/soapsms.php?wsdl
    • Namespace: SLOONOSMS
    Weiter mit OK.
  3. Nun kann Sourcecode geschrieben werden. Z. B. folgenden Code:


VB.NET

  1. 'Webservice-Objekt
  2.  
  3. Dim WS As New SLOONOSMS.soapsms1PortTypeClient
  4.  
  5. 'SMS
  6. Dim WSFrage As New SLOONOSMS.SMS1
  7. WSFrage.action = "send"
  8. WSFrage.from = 1
  9. WSFrage.password = MD5_Hash("Musterpasswort") 
  10. WSFrage.text = "SMS-Text"
  11. WSFrage.timestamp = New System.UInt64
  12. WSFrage.timestamp.Parse("0")
  13. WSFrage.to = "+49(123)4567890"
  14. WSFrage.typ = "Discount"
  15. WSFrage.user = "Musternickname"
  16.  
  17. 'Antwort
  18. Dim WSAntwort As SLOONOSMS.Antwort
  19. WSAntwort = WS.smssenden1(WSFrage)
  20.  
  21. 'Auswerten:
  22. ' WSAntwort.code
  23. ' WSAntwort.codetext
  24.  
  25. ' WSAntwort.info

C#

  1. //Webservice-Objekt
  2.  
  3. SLOONOSMS.soapsms1PortTypeClient WS = new SLOONOSMS.soapsms1PortTypeClient();
  4.  
  5. //SMS
  6. SLOONOSMS.SMS1 WSFrage = new SLOONOSMS.SMS1();
  7. WSFrage.action = "send";
  8. WSFrage.from = 1;
  9. WSFrage.password = MD5_Hash("Musterpasswort");
  10. WSFrage.text = "SMS-Text";
  11. WSFrage.timestamp = new System.UInt64;
  12. WSFrage.timestamp.Parse("0");
  13. WSFrage.to = "+49(123)4567890";
  14. WSFrage.typ = "Discount";
  15. WSFrage.user = "Musternickname";
  16.  
  17. //Antwort
  18. SLOONOSMS.Antwort WSAntwort;
  19. WSAntwort = WS.smssenden1(WSFrage);
  20.  
  21. //Auswerten:
  22. // WSAntwort.code
  23. // WSAntwort.codetext
  24.  
  25. // WSAntwort.info
Meine Werkzeuge