SMSCREATOR

 

 

Schnittstellen-beschreibung

 

 

 

 

 

 

 

 


Inhaltsverzeichnis

1 Allgemein. 5

1.1 Einleitung – Was kann man mit SMSCreator eigentlich machen?. 5

2 SMS Typen. 6

3 SOAP.. 7

3.1 SOAP Funktionen. 7

3.1.1 SendSimpleSMS. 7

3.1.2 SendSMS und SendSMSText 10

3.1.3 SendUDH.. 13

3.1.4 SMSBin-Typen. 15

3.1.5 SendBinData. 16

3.1.6 SendBinURL.. 18

3.1.7 Senden von Logos und Klingeltönen. 20

3.1.8 VB Sample mit SMSCOMAPI. 21

3.2 Versand von mehreren SMS pro Auftrag. 24

3.2.1 Alle Empfänger selber Text 24

3.2.2 Mehrere Empfänger unterschiedlicher Text 24

3.3 Versand mit Java. 24

3.3.1 Struktur des Archivs. 24

3.3.2 Wie integriere ich die SMSCreator API in mein Projekt 25

3.3.3 Unterstützte Java Versionen. 25

4 SMTP (e-Mail 2 SMS) 25

4.1 Allgemein. 25

4.2 Aufbau einer Email 25

4.2.1 XML-Beschreibung einer Email 26

4.3 Beispiel 26

5 RückSMS / Delivery Reports. 28

5.1 Check-SMS. 28

5.2 HLR Abfrage. 28

5.3 Zustellung per HTTP-Request 28

5.4 Zustellung per Email 28

5.4.1 Alternativer Empfänger der RückSMS. 28

5.5 Per Abfrage. 29

5.5.1 Abfrage auf einer Webseite. 29

5.5.2 Received SMS. 29

5.5.3 GetNewRecivedSMS. 30

6 CMDSendSMS. 33

6.1 Parameter. 33

6.2 Verwendung. 33

7 Statistik. 34

7.1 Account-Abfrage. 34

7.1.1 QueryBalance. 34

8 Send MMS. 36

8.1.1 Aufbau. 36

9 Error Codes. 39

10 Glossar. 40

11 Sonstiges. 42

 


Versions-Historie

 

 

Datum

Autor

Bemerkung

06.06.2001

Jürgen Weisental

Erstellung der Schnittstellenbeschreibung

07.04.2004

Jürgen Weisental

Send MMS

21.09.2004

Jürgen Weisental

SMS Typ 19 – Lange SMS mit Absendererkennung über Direktanbindung

22.09.2004

Martin Ammer

Rücksms / delivery Reports

07.03.2005

Boris Stark

Redaktionelle Überarbeitung der Schnittstellen-Beschreibung

07.04.2005

Boris Stark

XML Beschreibung einer E-Mail

30.05.2005

Boris Stark

cmdSendSMS – Shell-basierendes Tool zum Versenden von SMS

13.12.2006

Jürgen Weisental

Korrektur eMail 2 SMS

11.06.2007

Christoph Sperl

Java Schnittstelle hinzugefügt

03.04.2008

Christoph Sperl

SOAP Schnittstellen hinzugefügt

21.04.2008

Christoph Sperl

HLR, DLR Schnittstellen hinzugefügt



1 Allgemein

 

1.1Einleitung – Was kann man mit SMSCreator eigentlich machen?

 

Die SMSCreator Produktlinie bietet die Möglichkeit wichtige Informationen, wie zum Beispiel Werbung, Termine, neue Produkte, Geburtstagsgrüße und vieles mehr per SMS auf die Mobiltelefone von Mitarbeitern, Gästen, Geschäftspartnern und Kunden zu senden.

Hierbei werden alle deutschen Mobilfunkunternehmen unterstützt. Des Weiteren besteht die Möglichkeit, SMS auch weitest gehend weltweit (130 Länder) zu versenden.

 

Um Ihnen die Anbindung an unsere SMSCreator Produktreihe zu erleichtern, finden Sie im folgenden eine ausführliche Schnittstellenbeschreibung. Es wurde versucht die einzelnen Möglichkeiten  so einfach und präzise wie möglich zu erläutern.

 

 

1.2 Möglichkeiten eine SMS über eine Schnittstelle zu versenden

 

 

SOAP                  Protokoll, mit dem man Daten zwischen Systemen austauschen kann und Remote Procedure Calls durchgeführt werden können. SOAP verwendet zur Darstellung der Daten XML, zur Übertragung der Nachrichten Internet-Protokolle wie z.B. TCP und HTTP

 

HTTP GET          Die Einfachste und wohl am meist genutzten Methode, SMS per Schnittstelle zu Übergeben.

 

HTTP POST       HTTP Schnittstelle

 

SMTP                  Übertragung als E-Mail (E-Mail to SMS)

Achtung: diese Schnittstelle ist nicht für den Versand von Massen-SMS geeignet. Es kann immer nur eine SMS an mehrere Empfänger verschickt werden

 

UCP                    Diese Schnittstelle ermöglicht den Empfang und den Versand von Daten im UCP-Format. Grundlage dieser Schnittstelle ist das von der Firma GMC entwickelte Universal Computer Protocol (UCP), welches ursprünglich für die Kommunikation zwischen einem Short Message Service Center (SMSC) eines Mobilfunk-Netzes und einem UCP-Client entworfen wurde. Genauere Informationen auf Anfrage.

                           

SMPP                  Ein auf TCP/IP basierendes Industriestandard-Protokoll zur Anbindung von SMSC zu SMSC (Short Message Service Centern) bzw. zu SMS-Service-Plattformen wie z.B. SMSCreator. Die Zugangsdaten erhalten Sie auf Anfrage.

 

FTP                     Schnittstelle um SMS über FTP-Zugang (File Transfer Protocol) zu übertragen.

                            Achtung: zurzeit noch nicht verfügbar


 

2 SMS Typen

 

Nach folgend erhalten Sie eine Beschreibung der möglichen SMS-Typen:

 

Typ

Beschreibung

1

SMS mit Absenderkennung über ausländische Routen

2

Flash SMS

3

kleines Logo (72 x 14 Pixel – Nokia)

4

Picture SMS (maximal 120 Zeichen – Nokia)

5

Klingelton im RTTL Format (Nokia)

6

SMS ohne Absenderkennung (Standard SMS / Rück-SMS)

7

UDH

8

Bookmark (Test)

9

VCARD 1

10

VCARD 2 (Test)

12

EMS Sound (Test)

13

EMS Animation (Test)

14

EMS Bitmap (Test)

15

großes Logo (72 x 28 Pixel – Nokia)

16

SMS ohne Absenderkennung mit Auslieferungsstatus (Delivery Notification – Versand-Benachrichtigung)

17

lange SMS (wird mit 7 Bit codiert; pro 152 Zeichen wird eine SMS benötigt)

18

SMS mit Absenderkennung über Direktanbindung (High Quality Routen). Nach Absprache kann hier eine Delivery Report (siehe: 5.1) angefordert werden.

19

lange SMS mit Absendererkennung über Direktanbindung  (wird mit 7 Bit codiert: pro 152 Zeichen wird eine SMS benötigt)

30

HLR Abfrage auf Mobilfunknummer

50

Festnetz SMS mit variabler Absenderkennung


 

3 SOAP

 

Die Daten werden über eine HTTP SOAP Schnittstelle gesendet.

 

Die WSDL Datei (XML Formatbeschreibung zum Senden von SMS an das SMSCreator Gateway) finden Sie unter:

 

http://soap.smscreator.de/send.asmx?WSDL

 

Um das Versenden von SMS zu unterbinden, verwenden Sie bitte als User und Passwort „Test“.

 

Achtung         Es gibt von jeder Funktion zwei Versionen. Die Erste unterstützt  SOAPRPC (z.B. PoketSoap). Version 2 ist für andere Anwendungen zu verwenden.

 

3.1 SOAP Funktionen

 

3.1.1 SendSimpleSMS

 

Bei mehreren Empfängern oder unterschiedlichen Texten siehe: Punkt 3.2.2

 

Die einfachste Möglichkeit eine SMS zu übertragen.

Bitte öffnen Sie http://soap.smscreator.de/send.asmx und füllen Sie die Felder zum Testen aus.

 

Folgende Parameter können verwendet werden:

 

User                        String                           Benutzername

Password                String                           Passwort

Recipient                 String                           Empfänger

SMSText                 String                           Text

 

Es können alle möglichen Zeichen verwendet werden, da die SOAP-Schnittstelle als Kodierung der Zeichen UTF-8 verwendet.

 

Nach Versand der SMS erhalten Sie diese Rückgabewerte:

 

OK = Alles erfolgreich!

ERROR + Beschreibung des Fehlers

 

 


3.1.1.1 SOAP

Hier ein SOAP Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden:

 

 
POST /send.asmx HTTP/1.1
Host: soap.smscreator.de
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://cetix.de/SendSMS/SendSimpleSMS"
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://cetix.de/SendSMS" xmlns:types="http://cetix.de/SendSMS/encodedTypes" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <tns:SendSimpleSMS>
      <User xsi:type="xsd:string">string</User>
      <Password xsi:type="xsd:string">string</Password>
      <Recipient xsi:type="xsd:string">string</Recipient>
      <SMSText xsi:type="xsd:string">string</SMSText>
    </tns:SendSimpleSMS>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://cetix.de/SendSMS" xmlns:types="http://cetix.de/SendSMS/encodedTypes" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <tns:SendSimpleSMSResponse>
      <SendSimpleSMSResult xsi:type="xsd:string">string</SendSimpleSMSResult>
    </tns:SendSimpleSMSResponse>
  </soap:Body>
</soap:Envelope>

3.1.1.2 HTTP GET

Hier ein HTTP GET Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

GET /send.asmx/SendSimpleSMS?User=string&Password=string&Recipient=string&SMSText=string HTTP/1.1
Host: soap.smscreator.de
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

3.1.1.3 HTTP POST

Hier ein HTTP POST Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

 

POST /send.asmx/SendSimpleSMS HTTP/1.1
Host: soap.smscreator.de
Content-Type: application/x-www-form-urlencoded
Content-Length: length
 
User=string&Password=string&Recipient=string&SMSText=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

 

3.1.2 SendSMS und SendSMSText

 

Bei mehreren Empfängern oder unterschiedlichen Texten siehe: Punkt 3.2.2

 

Sendet SMS mit dem gleichen Text an mehrere Empfänger.

 

Bitte http://soap.smscreator.de/send.asmx öffnen und die Felder zum Testen füllen.

 

User                        String                           Benutzername

Password                String                           Passwort

Caption                   String                           Beschreibung des SMS Auftrages (dient der Identifizierung im User Menü)

Sender                    String                           Absender (maximal 11 Zeichen oder eine Nummer)

Recipient                 String Array                  Empfänger der SMS und parametrisierte Felder
Beispiel: +491711234567;Hans;Peter;

SMSText                 String                           Text der SMS mit 2 parametrisierbaren Feldern
#FELD1# und #FELD2#
Beispiel: Hallo Herr #FELD1# alles Gute zum #FELD2# Geburtstag.

SmsTyp                   INT                               Siehe Tabelle

SendDate                DateTime                      Sendezeit des Auftrages

 

Nach Versand der SMS erhalten Sie diese Rückgabewerte:

 

OK = Alles erfolgreich!

ERROR + Beschreibung des Fehlers

 


3.1.2.1SOAP

Hier ein SOAP Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden

 

POST /send.asmx HTTP/1.1
Host: soap.smscreator.de
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://cetix.de/SendSMS/SendText"
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://cetix.de/SendSMS" xmlns:types="http://cetix.de/SendSMS/encodedTypes" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <tns:SendText>
      <User xsi:type="xsd:string">string</User>
      <Password xsi:type="xsd:string">string</Password>
      <Caption xsi:type="xsd:string">string</Caption>
      <Sender xsi:type="xsd:string">string</Sender>
      <Recipient xsi:type="xsd:string">string</Recipient>
      <SMSText xsi:type="xsd:string">string</SMSText>
      <SmsTyp xsi:type="xsd:string">string</SmsTyp>
      <SendDate xsi:type="xsd:string">string</SendDate>
    </tns:SendText>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://cetix.de/SendSMS" xmlns:types="http://cetix.de/SendSMS/encodedTypes" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <tns:SendTextResponse>
      <SendTextResult xsi:type="xsd:string">string</SendTextResult>
    </tns:SendTextResponse>
  </soap:Body>
</soap:Envelope>

3.1.2.2 HTTP GET

Hier ein http GET Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

 

GET /send.asmx/SendText?User=string&Password=string&Caption=string&Sender=string&Recipient=string&SMSText=string&SmsTyp=string&SendDate=string HTTP/1.1
Host: soap.smscreator.de
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

3.1.2.3 HTTP POST

Hier ein HTTP POST Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

 

POST /send.asmx/SendText HTTP/1.1
Host: soap.smscreator.de
Content-Type: application/x-www-form-urlencoded
Content-Length: length
 
User=string&Password=string&Caption=string&Sender=string&Recipient=string&SMSText=string&SmsTyp=string&SendDate=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

 


3.1.3 SendUDH

 

Sendet User Data an ein Handy.

Bitte http://soap.smscreator.de/send.asmx öffnen und die Felder zum Testen füllen.

 

User                        String                           Benutzername

Password                String                           Passwort

Recipient                  String Array                  Empfänger der SMS und parametrisierte Felder

Data                        String                           Hier werden die UserData Informationen übertragen.
Aufbau: Feld:Wert|Feld2:Wert|
Mögliche Felder: class,UDH,data
class: Message Class des Daten
udh: User Data Header
data: Daten
binary:0 oder 1 (1= DATA Teil schon Codiert)
coding: 7 oder 8 (Codierung der Nachricht in 7 oder 8 Bit)

Beispiel:
class:3|udh:0B0504158200000003330201|
data:3062F2700A00480E01000000000000000000FFFEFF3FDFE0003C00FFFEFF3FDFE0003800FFFEFF3FDFE0003800FFFEFF3FDFE003F878FFFEFF3FDFE00770ECFFFEFF3FDFE00E71EC0FE0FF3FDFE01C73DC0FE0FF3FDFE01C63F00FE0FFFFDFE03863840FE07FFF9FE739E38C0FE03FFF1FE73FFBF80FE01FFE1FE71CF1E00000|udh: 0B0504158200000003330202|data: 00000000000000

 

SendDate                DateTime                      Sendezeit des Auftrages

 

 

 

 

 


3.1.3.1SOAP

Hier ein SOAP Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

 

POST /send.asmx HTTP/1.1
Host: soap.smscreator.de
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://cetix.de/SendSMS/SendUDH"
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <SendUDH xmlns="http://cetix.de/SendSMS">
      <User>string</User>
      <Password>string</Password>
      <Recipient>string</Recipient>
      <Sender>string</Sender>
      <Data>string</Data>
      <sendDate>string</sendDate>
    </SendUDH>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <SendUDHResponse xmlns="http://cetix.de/SendSMS">
      <SendUDHResult>string</SendUDHResult>
    </SendUDHResponse>
  </soap:Body>
</soap:Envelope>

3.1.3.2 HTTP GET

Hier ein HTTP GET Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

GET /send.asmx/SendUDH?User=string&Password=string&Recipient=string&Sender=string&Data=string&sendDate=string HTTP/1.1
Host: soap.smscreator.de
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

3.1.3.3 HTTP POST

Hier ein HTTP POST Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

POST /send.asmx/SendUDH HTTP/1.1
Host: soap.smscreator.de
Content-Type: application/x-www-form-urlencoded
Content-Length: length
 
User=string&Password=string&Recipient=string&Sender=string&Data=string&sendDate=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

 

3.1.4 SMSBin-Typen

 

Nach folgend erhalten Sie eine Auflistung der möglichen SMSBin-Typen (eine Beschreibung der Abkürzungen finden Sie im Glossar):

 

 

Typ

Beschreibung

10

BMP

11

JPG

12

GIF

13

NOL

14

PNG

31

RTTL


3.1.5 SendBinData

 

Senden von Binären Daten

User

Benutzerkennung

Password

Passwort

Recipient

Empfänger

strMsg

Nachricht

MsgType

siehe Api Doku 4.1

binType

siehe Api Doku 3.1.4

Data

ByteArray der Datei

sendDate

Sendezeit der Nachricht


Ergebnis:
OK MsgID oder Error Nachricht

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.1.5.1SOAP

Hier ein SOAP Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

 

POST /send.asmx HTTP/1.1
Host: soap.smscreator.de
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://cetix.de/SendSMS/SendBinData"
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <SendBinData xmlns="http://cetix.de/SendSMS">
      <User>string</User>
      <Password>string</Password>
      <Recipient>string</Recipient>
      <strMsg>string</strMsg>
      <MsgType>int</MsgType>
      <binTyp>int</binTyp>
      <Data>base64Binary</Data>
      <sendDate>dateTime</sendDate>
    </SendBinData>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <SendBinDataResponse xmlns="http://cetix.de/SendSMS">
      <SendBinDataResult>string</SendBinDataResult>
    </SendBinDataResponse>
  </soap:Body>
</soap:Envelope>

3.1.5.2 HTTP GET

Hier ein HTTP GET Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden

 

GET /send.asmx/SendBinData?User=string&Password=string&Recipient=string&strMsg=string&MsgType=string&binTyp=string&Data=string&Data=string&sendDate=string HTTP/1.1
Host: soap.smscreator.de
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

3.1.5.3 HTTP POST

Hier ein HTTP POST Beispiel. Es enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden.

 

POST /send.asmx/SendBinData HTTP/1.1
Host: soap.smscreator.de
Content-Type: application/x-www-form-urlencoded
Content-Length: length
 
User=string&Password=string&Recipient=string&strMsg=string&MsgType=string&binTyp=string&Data=string&Data=string&sendDate=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

3.1.6SendBinURL

 

User

Benutzerkennung

Password

Passwort

Recipient

Empfänger

MsgType

siehe Api Doku 4.1

binType

siehe Api Doku 3.1.4

URL

URL der Binaren Datei muss erreichbar sein.

sendDate

Sendezeit der Nachricht


Ergebnis:
OK MsgID oder Error Nachricht

 

3.1.6.1SOAP

Hier ist ein SOAP Beispiel, dieses enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden

 

POST /send.asmx HTTP/1.1
Host: soap.smscreator.de
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://cetix.de/SendSMS/SendBinURL"
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <SendBinURL xmlns="http://cetix.de/SendSMS">
      <User>string</User>
      <Password>string</Password>
      <Recipient>string</Recipient>
      <MsgType>int</MsgType>
      <binTyp>int</binTyp>
      <URL>string</URL>
      <sendDate>dateTime</sendDate>
    </SendBinURL>
  </soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <SendBinURLResponse xmlns="http://cetix.de/SendSMS">
      <SendBinURLResult>string</SendBinURLResult>
    </SendBinURLResponse>
  </soap:Body>
</soap:Envelope>

3.1.6.2 HTTP GET

Hier ist ein HTTP GET Beispiel, dieses enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden

 

GET /send.asmx/SendBinURL?User=string&Password=string&Recipient=string&MsgType=string&binTyp=string&URL=string&sendDate=string HTTP/1.1
Host: soap.smscreator.de
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

3.1.6.3 HTTP POST

Hier ist ein HTTP POST Beispiel, dieses enthält Aufruf und Antwort. Die gezeigten Platzhalter müssen mit tatsächlichen Werten ersetzt werden

 

POST /send.asmx/SendBinURL HTTP/1.1
Host: soap.smscreator.de
Content-Type: application/x-www-form-urlencoded              
Content-Length: length
 
User=string&Password=string&Recipient=string&MsgType=string&binTyp=string&URL=string&sendDate=string
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<string xmlns="http://cetix.de/SendSMS">string</string>

 

 

 

 


 

3.1.7Senden von Logos und Klingeltönen

3.1.7.1 Senden über die SOAP-Schnittstelle

 

Unter http://soap.smscreator.de/send.asmx kann der Webservice angesprochen werden.

Um eine Logo oder Klingelton zu senden wird die Funktion SendHex verwendet.

 

3.1.7.2 SendHex

 

3.1.7.3 Parameter

 

User

Benutzername

Password

Passwort

Recipient

Empfänger des Logos/Klingelton

HexData*

Daten des zu senden Objektes in Hex codiert

MsgType

Endung der Datei

Mögliche Optionen

Logos:             GIF, BMP, NOL, JPG  (72x 14 Pix)

Klingeltöne:      MID und RTTL

 

 

 

  • Die Datei muss von Binär nach Hex codiert werden dabei ist darauf zu achten das  jedes Byte in 2 Hex Zeichen umgewandelt wird.

    Beispiel: Binär 0 wird zu Hex 00


 

3.1.8 VB Sample mit SMSCOMAPI

 

Bei mehreren Empfängern oder unterschiedlichen Texten siehe: Punkt 3.2

 

Vor dem Versenden über COM-Schnittstelle erst: (www.smscreator.de/download/comapi/SMSCreatorCOM.zip) installieren!

 

Hier ein Codebeispiel:

 

Dim oSMS
    Set oSMS = CreateObject("SmscreatorCOM.QuickSMS")
    
    Einstellen eines anderen Proxies (IE Proxy wird default verwendet)
    oSMS.Proxy = "http://proxyserver:2001"
    
    Wird Benutzername und Passwort benötigt einfach setzen
    oSMS.ProxyUser = "puser"
    oSMS.ProxyPasswort = "pw"

    Senden der Nachricht Parameter Benutzer,Passwort,Empfänger,Text   
    MsgBox oSMS.SendSMS("test", "test","0171123456", "Hallo Welt") 

 


3.1.8.1Perl Sample

Bei mehreren Empfängern oder unterschiedlichen Texten siehe: Punkt 3.2

 

Benötigt SOAP::Lite

und Crypt::SSLeay, wenn HTTPS verwendet werden soll.

 

 

use SOAP::Lite;
use strict;
my $s = SOAP::Lite
 
       -> uri('http://cetix.de/SendSMS')
#       HTTPS Verbindung
       -> proxy('http://soap.smscreator.de/send.asmx')
 
       -> on_action(sub{sprintf '%s/%s', @_ })
#               -> on_debug(sub{print@_});
 
#Senden über die Einfach Methode
 
my $User = SOAP::Data->name('User' => 'test')->type('string')->uri('http://cetix.de/SendSMS');
my $Pw = SOAP::Data->name('Password' => 'test')->type('string')->uri('http://cetix.de/SendSMS');
my $Empf = SOAP::Data->name('Recipient' => '49171123457')->type('string')->uri('http://cetix.de/SendSMS');
my $Text = SOAP::Data->name('SMSText' => 'Hallo Welt')->type('string')->uri('http://cetix.de/SendSMS');
 
my $result = $s->SendSimpleSMS2($User,$Pw, $Empf, $Text)->result;
 
print "\nResult: " . $result . "\n";
 PHP Sample

Bei mehreren Empfängern oder unterschiedlichen Texten siehe: Punkt 3.2

 

<?php
function PostToHost($host, $path, $data_to_send) {
  $fp = fsockopen($host, 80);
  fputs($fp, "POST $path HTTP/1.1\r\n");
  fputs($fp, "Host: $host\r\n");
  fputs($fp, "Content-type: application/x-www-form-urlencoded\r\n");
  fputs($fp, "Content-length: ". strlen($data_to_send) ."\r\n");
  fputs($fp, "Connection: close\r\n\r\n");
  fputs($fp, $data_to_send);
  while(!feof($fp)) {
      $res .= fgets($fp, 128);
  }
  fclose($fp);
  return $res;
}
 
function SendSMS($user,$pw,$jobid,$Msg,$Rcp,$MsgTyp,$Sender)
{
        //Vorbereiten der Daten
        $data = "User=$user&Password=$pw&Caption=" . rawurlencode($jobid) . "&Sender=" . rawurlencode($Sender) . "&SMSText=" . rawurlencode($Msg) . "&Recipient=" . rawurlencode($Rcp) . "&SmsTyp=$MsgTyp&SendDate=";
 
        //Senden an den Server
        $x = PostToHost(
              "soap.smscreator.de",
              "/send.asmx/SendText",
              $data
        );
 
        //Auswerten des Ergebnisses
 
        $iStart = strpos($x,"SendSMS\">") + 9;
        $iEnde = strpos($x,">",$iStart);
 
        return substr($x,$iStart,$iEnde-$iStart);
}
 
?>
 
<html>
<head><title>PHP Form Post SMS Sample</title></head>
<body>
        
        SMS Result: <?php echo SendSMS("test","test","Caption","Hallo PHP","01711234567",6,""); ?>
 
</body>
</html>

 

3.2 Versand von mehreren SMS pro Auftrag

Diese Funktionen gelten für alle oben genannten SMS Übertragungsarten.

3.2.1 Alle Empfänger selber Text

 

Mehrere Empfänger erhalten die gleiche SMS.

 

- im Empfängerfeld (Recipient) werden die einzelnen Empfänger durch ein \n (Hex 10)                                         

  getrennt

 

Beispiel: Normale SMS

 

0171124567;FELD1;FELD2/n

 

SMS an mehrere Empfänger

 

Nummer       Feld1    Feld2

0171124567;Michael;Müller\n

0171124568;Klaus;Mustermann\n

0171124569;Helmut;Schmit

 

- SMS Text: Hier könnte Ihr Nachricht stehen …

 

3.2.2 Mehrere Empfänger unterschiedlicher Text

 

Im Text können mehrere Felder vergeben werden (siehe Besipiel).

 

- Die einzelnen Empfänger werden durch ein \n (Hex10) getrennt.

 

Beispiel:

 

Nummer      Feld1               Feld2

0171124567;Michael Müller;45trx45\n

0171124568;Klaus;Mustermann\n

0171124569;Helmut;Schmit

 

- SMS Text

 

Beispiel:

 

Hallo #FELD1# am Do haben wir eine Party. Dein Code ist #FELD2#.

 

3.3 Versand mit Java

Um diese Schnittstelle nutzen zu können, müssen Sie sich das Schnittstellenarchiv: http://www.smscreator.de/docs/java.zip

3.3.1Struktur des Archivs

Bat                     Ordner der ausführbare Skripte zur Entwicklung.

Bin                     Ordner in den die .class Dateien ausgegeben werden.

Example            Beispiele der Benutzung.

Lib                     Ordner mit den Bibliotheken

Src                    Ordner für den Quellcode

.classpath          Eclipse Klassenpfad Informationen

.project              Eclipse Projekt in dem Entwickelt wurde.

 

3.3.2 Wie integriere ich die SMSCreator API in mein Projekt

Um die API in ein Projekt zu integrieren müssen dem neuen Projekt

alle Libraries aus dem "lib"-Ordner hinzugefügt werden.

 

Um die Funktionen der API zu nutzen muss ein neuer Service erzeugt werden:

de.cetix.SendSMS.Send service = new de.cetix.SendSMS.SendLocator();

 

Von diesem Service kann dann das Soap Objekt geholt werden:

de.cetix.SendSMS.SendSoap sendSoap = service.getSendSoap();

 

Über das erhaltene Soap Objekt können nun alle verfügbaren

Operationen ausgeführt werden.

z.B. eine einfache Text SMS versendet werden:

sendSoap.sendText("user","pw","caption","sender","recipient","text","typ","date");

 

Achtung: Das Zeichenformat für die Soap Schnittstelle ist _nicht_ UTF8,

sondern ISO-8859-1 (Latin1). Um hier Sonderzeichen-Fehlern vorzubeugen sollte

schon beim Einlesen auf das richtige Charset geachtet werden.

In der Beispielanwendung etwa durch:

new InputStreamReader(System.in, Charset.forName("ISO-8859-1"));

 

3.3.3 Unterstützte Java Versionen

 

Die API wurde auf der Java 1.4.2 und Java 6 getestet und funktionierte

hier einwandfrei.

Java Versionen vor 1.4 werden nicht unterstützt.

 

Sollte eine Inkompatibilität auftreten, bitten wir um eine kurze Information

an support@netxp.de , damit dies behoben werden kann. Danke.

4 SMTP (e-Mail 2 SMS)

4.1 Allgemein

 

Empfänger der SMS ist Handynummer@sms.smscreator.de

Es wird nur das Feld ‚AN’ ausgewertet.

 

Sie können als SMTP Server mail.smscreator.de angeben (Port 25).

 

Kann der Betreff nicht geändert werden können Sie alternativ auch im ‚AN’-Feld

Ihre Zugangsdaten übertragen.

Aufbau: Handynummer.Benutzername.Passwort@sms.smcreator.de

 

4.2 Aufbau einer Email

 

Empfänger:      Handynummer@sms.smscreator.de

Body:               Text der Nachricht (die ersten 160 Zeichen werden verwendet)

Empfänger:      Empfänger der SMS

 

Betreff:

Benutzer:          Account Name

Passwort:         Account Passwort

SendeZeit:        Optional die Zeit wann die SMS übertragen werden soll.
                                    Format: dd.mm.yyyy HH:MM:SS

SenderId:          Abesender ID  (max 11 Zeichen)
Wird diese Option gewählt kann keine RückSMS (oder Nummern Überprüfung) aktiviert werden

 

Beispiel für den Aufbau des Betreffs:

Test1;Test2;13.12.2006 13:30;01701234567 oder

Test1;Test2;13.12.2006 13:30;Feuerwehr

4.2.1 XML-Beschreibung einer Email

Mit Hilfe dieser XML-Struktur sind auch mehrere Empfänger möglich. Bei mehreren Empfängern diese XML-Struktur in den Body der Email kopieren.

 

<top>

 

 

 

 

<recv>

 

 

 

 

<nr>Handynummer1</nr>

<!-- Rufnummer des Empfängers -->

 

 

<nr>Handynummer2</nr>

<!-- Rufnummer des Empfängers -->

 

</recv>

 

 

 

<opt>

 

 

 

 

<msgid>10765937757776</msgid>

<!-- interne NachrichtenID; wird bei RückSMS benötigt -->

 

 

<type>sms</type>

<!-- SMS Typ: sms = RückSMS, flash = FlashSMS -->

 

 

<offset>NULL</offset>

<!-- Datum/Zeit für Versendung: null = sofort; ansonsten im Format TT-MM-JJJJ HH:MM -->

 

</opt>

 

 

 

<msg>test</msg>

<!-- Nachricht -->

</top>

 

 

4.3 Beispiel

 

1 Empfänger

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Mehrere (hier 3) Empfänger

 


5 RückSMS / Delivery Reports

 

RückSMS bzw. Delivery Reports  können auf mehrere Arten zugestellt und abgefragt werden:

 

 

  • Zustellung per http-Request
  • Zustellung per Email
  • Per Abfrage auf Webseite

5.1 Check-SMS

Mit dem SMS Typ 16 kann eine so genannte Check-SMS versendet werden. Mit dieser Check-SMS erhalten Sie einen Zustellreport über alle mit diesem Typ versendeten SMS.

Abruf siehe: 5.5.1. Eine variable Absenderkennung ist bei diesem Typ nicht möglich.

 

Sollte ein Versand mit variabler Absenderkennung (Typ 18) erfolgen und Sie für diese SMS ebenfalls eine Statusreportabfrage benötigen, setzen Sie sich bitte mit uns in Verbindung. Hier besteht die Möglichkeit, so genannte Delivery Reports anzufprdern.

5.2 HLR Abfrage

Das HLR (Home Location Register) ist eine Datenbank, das Auskunft darüber gibt, ob es eine Mobilfunknummer eines Benutzers gibt und in welchem Heimatnetz sie sich befindet (Provider). Bei dieser Abfrageart, wird dem Kunden keine SMS gesendet.
Die HLR Abfrage kann über alle Schnittstellen, die die Einstellung des SMS-Typs (HLR=SMS-Typ 30) zulassen, erfolgen. Eine HLR Abfrage wird in der Regel dazu verwendet, einen bestehenden Nummernstamm auf Gültigkeit der Rufnummern zu überprüfen. Seit einiger Zeit können Mobilfunkkunden die Zugewiesenen Rufnummern zu einem anderen Netzfremden Provider „mitnehmen“, auch hier kann die HLR-Abfrage die Kosten für Fremdnetzversand drastisch verringern. Näheres erfahren Sie von unserem Beraterteam.

5.3 Zustellung per HTTP-Request

 

Bei dieser Zustellung, benötigen Sie eine öffentlich zugängliche Internetseite, auf die wir diese Nachrichten zustellen können.

 

Hier ein Beispiellink:

 

http://gateway.test.de/netxp.php?id=#ID#&text=#MSG#&from=#MOBIL#&smstyp=#STATUS#

 

 

5.4 Zustellung per Email

 

Hier benötigen wir eine Email-Adresse von Ihnen, auf die wir die RückSMS zustellen können.

Delivery Reports werden nicht per Email zugestellt.

 

Ausgabepunkte sind hier:

Sender   :

Datum    :

Nachricht:

5.4.1Alternativer Empfänger der RückSMS

 

Sie können in jedem Job einen alternativen Empfänger für die Rücksms angeben.

In der Caption backmail:empfaenger@email.de angeben.

Jede auf dieses Job Empfangene SMS wird nun an die angegebene Adresse gesendet.

 

 

5.5 Per Abfrage

 

5.5.1Abfrage auf einer Webseite

 

Mit dem Link: http://soap.smscreator.de/smscrecived/checkdata.aspx

 

Können Sie eine Internetseite aufrufen und mit Hilfe Ihrer Seriennummer und des Passwortes, alle Rücksms bzw. delivery Reports abrufen.

 

Abrufkriterien sind hier:

 

Datum

Format (csv oder HTML Tabelle)

JobId

Nur Statusberichte (Alle, Nur Erfolgreiche oder nur Fehler)

5.5.2Received SMS

 

Liefert alle Nachrichten ab einem Zeitpunkt

User

Benutzerkennung

Password

Passwort

strLastDate

von Datum


Ergebnis: CSV String
Aufbau:
Sender;Datum;Nachricht;NewLineZeichen

 

 

5.5.2.1SOAP

Hier ist ein SOAP Beispiel, dieses