inchorus SMS Plugin Dokumentation
1 Einführung #
Das SMS-Plugin bietet Ihnen die wesentlichsten Funktionen zum Versenden von SMS Nachrichten aus Ihren inchorus Gadgets über einen SMS-Server.
Folgende Funktionalitäten stehen zur Verfügung:
Versenden von SMS Nachrichten an beliebige Telefonnummern
Transformieren von XML Daten zu einem SMS Text über XSL Templates
Versenden von SMS Nachrichten in unterschiedlichen Sprachen und Zeichensätzen
Anpassung an verschiedene APIs
Die SMS Nachrichten werden mit dem SMS Plugin über die HTTP Schnittstelle des Providers mit der GET Methode an den Server übergeben, der die Nachrichten sendet.
2 Wie wird das Plugin verwendet? #
Plugin einbinden
Öffnen Sie die Datei pom.xml Ihres inchorus Gadget Projektes und ergänzen Sie folgende Zeilen im Abschnitt "dependencies":
<dependency>
<groupId>de.guh.plugin</groupId>
<artifactId>inchorus-sms-plugin</artifactId>
<version>2.x.x</version>
</dependency>
Passen Sie die Versionsnummer auf die aktuelle Version des Plugins an und die benötigten Abhängigkeiten werden automatisch aus dem Maven Repository heruntergeladen.
Initialisieren der SMS-Engine
SMSEngine smsengine = new SMSEngine(
smsURL,
smsStylepath,
smsUser,
smsPassword,
sender
);
Folgende Parameter werden mindestens benötigt:
smsURL
– Spezifiziert die IP-Adresse oder den DNS Namen inklusive dem Pfad zu dem Skript auf dem Server, dass die Anfrage um Senden einer SMS entgegen nimmt.smsStylepath
– An dieser Stelle wird der Verzeichnis-Pfad für die SMS Styles (XSL Templates) benötigt. Es muss der komplette Pfad angegeben werden. Dieser ist davon abhängig, wo Ihr Projekt liegt und sollte ebenfalls mit einem/
enden.smsUser
- Hier muss der Benutzername für den SMS Server angegeben werden.smsPassword
- Dieser Parameter gibt das Passwort für den Nutzer am SMS Server an.
Der parameter sender
ist optional, er bestimmt den Namen oder die Telefonnummer, die als Sender beim Empfänger angezeigt werden soll. Zu beachten ist hier die Beschränkung an die Wahl des Namens, beim Provider ClickSend ist der Name auf 11 alphanumerische Zeichen, ohne die Möglichkeit für Leerzeichen beschränkt. Wird kein Sender angegeben, wird die Nummer des Providers beim Empfänger angezeigt.
Definieren einer SMS
Eine mittels XSL formatierte SMS wird über die Klasse SMSMessage
definiert, dabei werden der Name der Transformationsdatei, die Daten als XML, die Sprache als Ländercode und die Telefonnummer des Empfängers festgelegt:
XML xmlData = new XML("data");
SMSMessage simpleMessage = new SMSMessage(
"simplesms.xsl",
"de",
"0123 456 78 90",
xmlData
);
Die XSL Datei mit dem angegebenen Namen muss im Ordner zu finden sein, der bei der Initialisierung der SMS-Engine als smsStylepath
festgelegt wurde. Die in xmlData
gespeicherten Daten können in dieser XSL Datei transformiert und über die SMS-Engine versendet werden.
Versenden der SMS
Die Nachricht kann über den in der SMS-Engine definierten Server wie folgt versendet werden:
Boolean success = smsengine.sendMessage(simpleMessage);
Alternativ kann eine SMS als einfacher String
definiert werden und zusammen mit der benötigten Codierung über die SMS-Engine versendet werden:
String text = "Dies ist der Inhalt der SMS";
Boolean success = smsengine.sendSMS(
"0123 456 78 90",
text,
"UTF-8"
);
Anpassen an die Server API
Das SMS Plugin ist an die API des Providers ClickSend angepasst. Das Plugin erzeugt eine URL, an das der HTTP Request gesendet wird, die dazu verwendeten Parameter und ihre Bezeichnung hängen oft von der API des Providers ab. Im SMS Plugin sind in der Klasse SMSEngine
für diese Parameter generische Namen hinterlegt: USERNAME
, PASSWORD
, MESSAGE
, TO
und FROM
, die auf die entsprechenden Bezeichnungen abgebildet werden, die in der ClickSend API definiert sind. Beispielsweise verwendet ClickSend statt einem Passwort einen API Key, der den Parameternamen key
besitzt und daher für PASSWORT
verwendet wird. Um z.B. den Namen von PASSWORT
auf einen für Ihre API passenden Wert zu setzen, kann die Methode changeParameterNameMapping(genericName, newName)
verwendet werden. genericName
ist dabei eine der generischen Konstanten und newName
der Name den dieser Parameter für ihre API annehmen soll. Die initiale Belegung lautet wie folgt:
USERNAME = "username"
PASSWORD = "key"
MESSAGE = "message"
TO = "to"
FROM = "senderid"
Darüber hinaus können auch noch weitere Parameter hinzugefügt werden, dafür wird die Methode addParameter(name, value)
verwendet. Bestehende Parameter können überschrieben werden, indem der selbe Name verwendet wird und Parameter werden gelöscht, indem ihr Wert auf null
gesetzt wird.
3 Weitere Informationen #
Nähere Informationen zu den Klassen und Methoden finden sie in der API Dokumentation.
Beispiele finden Sie im Ordner Beispiele.
Bei Fragen und Anregungen nutzen Sie unser inchorus Forum.
Dieses Dokument erhalten sie hier auch als PDF.
4 Ihr Kontakt #
G+H Systems GmbH
Professionell, effizient und zuverlässig.
Ludwigstraße 8
63067 Offenbach am Main
Deutschland
Telefon: +49 (0) 69 85 00 02 - 0
Fax: +49 (0) 69 85 00 02 - 51
Email: info@guh-systems.de
Web: www.guh-systems.de
5 Rechtliche Hinweise #
Die G+H Systems leistet keinerlei Gewähr bezüglich des Inhaltes oder Gebrauchs dieser Dokumentation. Insbesondere werden keine ausdrücklichen oder stillschweigenden Gewährleistungen hinsichtlich der handelsüblichen Qualität oder Eignung für einen bestimmten Zweck übernommen. Die G+H Systems behält sich weiterhin das Recht vor, diese Dokumentation zu revidieren und ihren Inhalt jederzeit und ohne vorherige Ankündigung zu ändern.
Des Weiteren übernimmt die G+H Systems für Software keinerlei Haftung und schließt insbesondere jegliche ausdrücklichen oder impliziten Gewährleistungsansprüche bezüglich der Marktfähigkeit oder der Eignung für einen bestimmten Zweck aus. Außerdem behält sich die G+H Systems das Recht vor, G+H Software ganz oder teilweise jederzeit inhaltlich zu ändern, ohne dass für die G+H Systems die Verpflichtung entsteht, Personen oder Organisationen von diesen Überarbeitungen oder Änderungen in Kenntnis zu setzen.
Copyright © inchorus ist ein Produkt der G+H Systems GmbH
Ohne ausdrückliche, schriftliche Genehmigung des Herausgebers darf kein Teil dieser Veröffentlichung reproduziert, fotokopiert, übertragen oder in einem Speichersystem verarbeitet werden.