Handbuch Versendung von SMS per email
Bevor Sie diese Schnittstelle nutzen, denken Sie darüber nach, ob es nicht einfacher wäre, stattdessen unsere http-Schnittstelle zu nutzen. Dort müssten Sie für jede SMS einen separaten URL-Aufruf machen.
- Festes E-Mail Format umwandeln (einfach)
- XML -Schnittstelle (flexibler)
- Sendeberichte empfangen
- Antworten empfangen
- Individuell
- Problemlösungen
- Programmier-Beispiele
1.) Festes E-Mail Format umwandeln
Sie schreiben eine email mit dem Mailprogramm Ihrer Wahl und senden die email im reinen Textformat (nicht HTML) an unser SMS-Gateway sms@sms4.de.
Die Umwandlung funktioniert nur, wenn die email-Adresse des Senders dem System bekannt ist.
Tragen Sie die email-Adresse mit der Sie senden daher zuvor unter
Einrichten -> Email-Berechtigungen ein.
Dies dient dazu, ausgehende SMS auf Benutzer/Kunden abrechnen zu können.
Die email-Adresse des neu angelegten Benutzers wird automatisch für das
Gateway freigeschaltet. Um einem einzelnen Benutzer manuell den Zugang zum email-SMS-Gateway
zu sperren (oder zu öffnen) können Benutzer mit Administrator-Rechten
unter Verwaltung -> Email-Berechtigungen die email-Adressen einzeln
hinzufügen oder löschen.
Alle Aufträge, die an das E-Mail-to-SMS-Gateway sms@sms4.de gesendet werden, werden standardmäßig auf Dubletten geprüft. Aufträge (d.h. E-Mails), die in den letzten 24h mit dem gleichen Text an die gleichen Empfänger bereits versendet wurden, werden ausgefiltert.
Dieser Filter kann abgeschaltet werden je Benutzer unter
Einrichten -> Versand-Optionen.
Bitte senden Sie die email als reinen Text, nicht als HTML.
Beispiel 1:
|
|
Die Email muss folgendes Layout haben:
An / To:Bitte unsere Emailadresse sms@sms4.de für das E-Mail->SMS Gateway angeben.
Betreff / Subject:
Dort können Sie etwas Beliebiges eingeben (die Eingabe wird nicht weiterverarbeitet).
Nachricht / Body:
Im Body der Email müssen Sie SMS4.de Schlüsselwörter angeben. Die Schlüsselwörter werden gefolgt von einem Doppelpunkt : und dem
nachfolgenden Wert.
Schlßsselwort | Beispiel | Beschreibung |
---|---|---|
KUNDENNR (Pflicht) | KUNDENNR:XY12345 | Ihre SMS4.de Kundennummer hier kostenlos beantragen |
HANDYNR (Pflicht) | HANDYNR:01701010101 HANDYNR:491701010102 HANDYNR:436012345678 | Die Zielnummern. Wenn Sie an mehrere Empfänger gleichzeitig schreiben wollen, schreiben Sie die Schlüsselwörter untereinander, z.B. HANDYNR:01701010101 HANDYNR:01701010102 oder HANDYNR:491701010101 HANDYNR:491701010102 SMS ins Ausland immer mit Ländercode ohne + oder führende Nullen angeben z.B. für Österreich Vorwahl +43: HANDYNR:436012345678 oder Schlßsselwort LAND verwenden (siehe unten) |
TEXT (Pflicht) | TEXT:Dies ist mein Text\nNeue Zeile | Der Text der SMS, 160 Zeichen (ISO-8859-15). Zeilenumbrüche werden durch Eingabe von \n im Text realisiert. |
TEXT1 TEXT2 TEXT3 (optional anstatt TEXT) |
TEXT1:Dies ist mein Text in Zeile 1 TEXT2:Weil er mehr als 60 Zeichen hat, kommt TEXT3:der Rest in Zeile 2 und 3 |
Bei manchen Mailprogrammen z.B. Outlook kann es vorkommen, dass automatisch Zeilenumbrüche nach 76 Zeichen eingefügt werden. Falls Sie deshalb feststellen, das nur die ersten
ca. 70 Zeichen übertragen werden, splitten Sie den Text in 3 Zeilen mit
TEXT1:Hier die ersten ca. 50 Zeichen TEXT2:Hier die nächsten ca. 50 Zeichen TEXT3:Hier die nächsten ca. 50 Zeichen Ohne Zeilenumbrüche (ENTER-Taste) innerhalb des Textes ! Zeilenumbrüche werden durch Eingabe von \n im Text realisiert. |
ABSENDER (optional) | ABSENDER:Der-Peter | Die Absenderkennnung nur für Tarif 1 und 5: 6 bis 11 Zeichen Text (keine Sonderzeichen) oder 6 bis 14 Ziffern, bei Tarif 5 - SMS ins Festnetz - sind nur Ziffern erlaubt (Den Vorgabewert können Sie in den Einstellungen angeben). |
TARIF (optional) | TARIF:1 | Bei Tarif ist 1 oder 7 möglich. Details zu den Tarifen finden Sie in der Preisliste. Der Vorgabewert ist standardmäßig 1, kann aber benutzerspezifisch unter den Einstellungen festgelegt werden. |
SENDEZEIT (optional) | SENDEZEIT:12.05.2010 09:45 | Die gewünschte Versendezeit der SMS im Format tt.mm.jjjj hh:mm |
LAND (optional) |
LAND:43 HANDYNR:06012345678 HANDYNR:06012345679 | Ländercode der Zielnummern in HANDYNR ohne + oder führende Nullen. Kann nur einmal pro E-Mail verwendet werden. Nicht verwenden, wenn die Zielnummern bereits den Ländercode enthalten! Die Kombination von z.B. LAND:43 HANDYNR:06012345678 HANDYNR:06012345679 wird gesendet an: 436012345678 436012345679 |
EMPFAENGER (optional) | EMPFAENGER:Hans | Alternativ oder zusätzlich zu Zielnummern mit HANDYNR kann auch der Name des Empfängers als Ziel angegeben werden. Wenn Sie an mehrere Empfänger gleichzeitig schreiben wollen, schreiben Sie die Schlüsselwörter untereinander, z.B. EMPFAENGER:Hans EMPFAENGER:Maria |
NAME (optional) | NAME:Hans | wie EMPFAENGER. |
GRUPPE (optional) | GRUPPE:Fruehschicht | Alternativ oder zusätzlich zu Zielnummern mit HANDYNR kann auch der Name der Gruppe als Ziel angegeben werden. |
REPLYTO (optional) | REPLYTO:antwort_an@andere-als-user-email.de | Antworten (Tarif 7) und Sendeberichte (Tarif 1 und 7) werden nicht an die E-Mail des Benutzers, sondern an die angegebene REPLYTO E-Mail-Adresse gesendet. |
EMAILCC (optional) | EMAILCC:kopie_an@irgendjemand.de | Eine E-Mailkopie der SMS wird an EMAILCC gesendet. Mögliche Werte: Gruppenname,Empfängername oder E-Mail-Adresse. Nicht in Kombination mit SENDEZEIT verfügbar. |
2.) XML -Schnittstelle
Um eine email mit mehreren Empfängern und unterschiedlichen Texten in SMS umzuwandeln, bieten wir eine XML-Schnittstelle an.
Sie schreiben eine email mit dem Mailprogramm Ihrer Wahl und senden die email im reinen Textformat (nicht HTML) an unser XML-Gateway xml@sms4.de.
Die Umwandlung funktioniert nur, wenn die email-Adresse des Senders dem System bekannt ist.
Tragen Sie die email-Adresse mit der Sie senden daher zuvor unter
Einrichten -> Email-Berechtigungen ein.
Dies dient dazu, ausgehende SMS auf Benutzer/Kunden abrechnen zu können.
Die email-Adresse des neu angelegten Benutzers wird automatisch für das
Gateway freigeschaltet. Um einem einzelnen Benutzer manuell den Zugang zum email-SMS-Gateway
zu sperren (oder zu öffnen) können Benutzer mit Administrator-Rechten
unter Verwaltung -> Email-Berechtigungen die email-Adressen einzeln
hinzufügen oder löschen.
Alle Aufträge, die an das E-Mail-to-SMS-Gateway xml@sms4.de gesendet werden, werden standardmäßig auf Dubletten geprüft. Aufträge (d.h. E-Mails), die in den letzten 24h mit dem gleichen Text an die gleichen Empfänger bereits versendet wurden, werden ausgefiltert.
Dieser Filter kann abgeschaltet werden je Benutzer unter
Einrichten -> Einstellungen.
Bitte senden Sie die email als reinen Text, nicht als HTML.
Beispiel 1:
|
Beispiel 2:
|
Die Email muss folgendes Layout haben:
An / To:Bitte unsere Emailadresse xml@sms4.de für das XML-Gateway angeben.
Betreff / Subject:
Ihre Kundennummer z.B. XY12345. Zugang hier kostenlos beantragen.
Nachricht / Body:
Den Body der email bauen Sie auf wie folgt:
XML-Element | Beispiel | Beschreibung |
---|---|---|
<emailtosms> ... </emailtosms> (Pflicht) |
|
Oberstes Element für den Email-to-SMS Auftrag |
<sms> ... </sms> (Pflicht) |
|
Mit <sms> beginnt innerhalb des emailtosms-Blocks die eigentliche SMS und wird mit </sms> abgeschlossen. |
<handynr></handynr> (Pflicht) |
|
Die Zielnummern. Wenn Sie an mehrere Empfänger gleichzeitig schreiben wollen, verwenden Sie das Element mehrfach, z.B.<handynr>017212345678</handynr> <handynr>017212345679</handynr>oder <handynr>4917212345678</handynr> <handynr>4917212345679</handynr>SMS ins Ausland immer mit Ländercode ohne + oder führende Nullen angeben z.B. für Österreich Vorwahl +43: <handynr>436012345678</handynr> |
<text></text> (Pflicht) |
|
Der Text der SMS, 160 Zeichen (ISO-8859-1). Wenn Sie an mehrere Empfänger gleichzeitig, aber mit unterschiedlichen Texten schreiben wollen, verwenden Sie mehrere Bl?cke mit <sms></sms>. |
<absender></absender> (optional) |
|
Die Absenderkennnung nur für Tarif 1 und 7: 6 bis 11 Zeichen Text (keine Sonderzeichen) oder 6 bis 14 Ziffern (Den Vorgabewert können Sie in den Einstellungen angeben). |
<tarif></tarif> (optional) |
|
Bei Tarif ist 1 oder 7 möglich. Details zu den Tarifen finden Sie in der Preisliste. Der Vorgabewert ist standardmäßig 1, kann aber benutzerspezifisch unter den Einstellungen festgelegt werden. |
<kundennr></kundennr> (optional) |
|
Falls Sie den Betreff Ihrer E-Mail nicht ändern können, geben Sie Ihre SMS4.de Kundennummer im Body der E-Mail an. Diese Angabe wird aber nur berücksichtigt, wenn im Betreff nicht bereits eine gültige Kundennummer steht (d.h. Kundennummer im Betreff ist vorrangig). |
<replyto></replyto> (optional) |
|
Antworten (Tarif 7) und Sendeberichte (Tarif 1 und 7) werden nicht an die E-Mail des Benutzers, sondern an die angegebene REPLYTO E-Mail-Adresse gesendet wenn diese angegeben ist. |
<sendezeit></sendezeit> (optional) |
|
Die gewünschte Versendezeit der SMS im Format tt.mm.jjjj hh:mm |
3.) Sendeberichte empfangen
Siehe unter Sendeberichte per E-Mail erhalten
4.) Antworten empfangen
Antworten empfangen Sie mit Tarif 7 wenn Sie unsere Zentralnummer +4915126108575 als Absender angeben.
5.) Individuell
für 100 EUR netto zzgl. 19% Mwst. passen wir unser Gateway Ihrem individuellem Format an, falls Ihre Applikation die E-Mail-Formatierung nicht verändern kann.
6.) Problemlösungen
Bitte stellen Sie sicher dass im E-Mail Header folgende Werte gesetzt sind:
Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 8bit
sonst kann es zu Problemen mit Umlauten und Zeilenumbrüchen kommen. Die Schlüsselwörter können dann u.U. nicht mehr ausgelesen werden.
Konfiguration Exchange Server 5.5 unter Windows 2003 Server
Windows Server 2003 System-Manager Globale Einstellungen Internet-Nachrichtenformate Standard Karte Nachrichtenformate jetzt klicken auf UUENCODE Zeichensatz ISO-8859-1 und OK
Wenn Sie MS Outlook 2002 oder 2003 verwenden, aber keinen Exchange Server
Stellen Sie den Zeichensatz ein:
Extras Optionen Karte E-Mail-Format Abschnitt Nachrichtenformat klicken auf Internationale Optionen... Codierungsoptionen Zeichensatz Westeurop?isch (ISO) auswählen und OK
Bei MS Outlook 2002 oder 2003 kann man das Content-Transfer-Encoding nicht direkt einstellen. Man muss dazu einen Registry-Eintrag namens
InternetMailTextEncoding vornehmen.
Der Registry-Eintrag wird aber beim Einsatz eines Exchange-Servers ignoriert.
Eine Anleitung finden Sie bei Microsoft:
How Outlook applies encoding to plain text e-mail messages in Outlook 2003 and Outlook 2002
Einstellung bei Outlook Express 6
Stellen Sie den Zeichensatz ein:
Extras Optionen Karte Senden Abschnitt Format für "Nachricht Senden" klicken auf Nur-Text-Einstellungen... MIME Textcodierung mit Keine auswählen und OK
Stellen Sie die Codierung ein:
Extras Optionen Karte Senden Abschnitt Senden klicken auf Internationale Einstellungen... Standardzeichensatz Zeichensatz Westeuropäisch (ISO) auswählen und OK
7.) Programmier-Beispiele
Beispielcode für PHP:
<? /* ============================================================ Beispielcode für den Versand von SMS ?ber Email (festes Format) von www.sms4.de ==============================================================*/ $kdnr = "XY12345"; // Bitte mit Ihrer Kundennr ersetzen // Ihre Absenderkennung ( 6 bis 11 Zeichen Text oder 6 bis 14 Ziffern ) // relevant für Tarif 1 und Tarif 7 $absender="017488997766"; // Handynummer $handynr = "01701010101"; $text = 'nur ein Test\n2. Zeile'; // Text der SMS $tarif = 1; // mit Absenderkennung und Sendeberichten, direkte Terminierung im SMSC // E-Mail-Adresse des Gateways $to = 'sms@sms4.de'; // eine berechtigte E-Mail-Adresse $from = 'meine@berechtigte-email.de'; // Betreff: beliebig $subject = 'Beispielmail SMS4.de'; // Nachricht / Body $message = "KUNDENNR:$kdnr HANDYNR:$handynr TEXT:$text ABSENDER:$absender TARIF:$tarif"; // Header der Mail zusammenbauen $head=''; $head .= 'From: ' . $from . "\n"; $head .= "MIME-Version: 1.0\n"; $head .= "Content-type: text/plain\n"; $head .= "Content-Disposition: inline\n"; $head .= "Content-Transfer-Encoding: 8bit\n"; // Verschicken der Mail mail($to, $subject, $message, $head); ?>
Beispielcode für Perl:
#!/usr/bin/perl ##################################################################### #Beispielcode für den Versand von SMS ?ber die XML-Schnittstelle #von www.sms4.de ##################################################################### $kdnr= "XY12345";# Bitte mit Ihrer Kundennr ersetzen # Ihre Absenderkennung ( 6 bis 11 Zeichen Text oder 6 bis 14 Ziffern ) # nur relevant für Tarif 1 und Tarif 5 $absender = "Der-Peter"; # Handynummer $handynr = "01701010101"; $tarif = 1;# mit Absenderkennung und Sendeberichten, direkte Terminierung im SMSC # Text der SMS $text = "test sms 1 mit Text 1 neue zeile"; $to = 'xml@sms4.de';# E-Mail-Adresse des Gateways $from = 'meine@berechtigte-email.de';# eine berechtigte E-Mail-Adresse open (SENDMAIL, "|/usr/lib/sendmail -oi -t") || die "Can't open Sendmail\n"; print SENDMAIL <<"..."; Subject: $kdnr To: $to From: $from MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Disposition: inline Content-Transfer-Encoding: 8bit <emailtosms> <sms> <text>$text</text> <handynr>$handynr</handynr> <absender>$absender</absender> <tarif>$tarif</tarif> </sms> </emailtosms> ... close(SENDMAIL);
Beispiel für Nagios (Perl):
Lesen Sie dazu in unseren FAQ: Wie kann ich Alarmierungen von Nagios per SMS versenden?