9

SMS und Anrufe mit dem Fibaro HomeCenter 2

YESLY Smart Home
by boomx20. Januar 2017

Dank einer neuen Partnerschaft von siio.de mit der Webseite smsflatrate.net ist es nun möglich, mit dem Fibaro HomeCenter, SMS Nachrichten auf euer Handy zu versenden oder euch mit Text-to-Speech-Anrufen über neuste Ereignisse im Smarthome zu informieren.

Warum soll ich mir eine SMS senden, wenn das Fibaro HomeCenter doch Push-Mitteilungen von Haus aus unterstützt? Gute Frage… Es gibt aber einen wesentlichen Vorteil von SMS (Short Message Service) gegenüber von Push-Mitteilungen. SMS funktioniert auch ohne vorhandenes Internet am Handy. So könnt Ihr euch also auch über Ereignisse in eurem Haus informieren lassen, wenn Ihr in Gegenden unterwegs seid, in denen das Mobilfunknetz noch nicht so gut ausgebaut ist, oder Ihr eventuell im Ausland unterwegs seid. Allein das ist schon ein großer Vorteil. Wir gehen aber mit diesem Skript noch einen Schritt weiter:

Neben SMS können auch „Text-to-Speech„-Calls durchgeführt werden. Dabei erhaltet Ihr einen Anruf und ein durch euch vorgegebener Text wird nach Annahme des Telefonates durchgesagt. Wie bereits im Eingangspost erwähnt, setzen wir diesen Service zusammen mit unserem neuen Partner smsflatrate.net um. Hier fällt keine Grundgebühr, keine langfristigen Vertragslaufzeiten, oder ähnliches an und es werden nur die tatsächlichen verschickten Nachrichten abgerechnet.

sms debug

Debug der Szene

Dieser Service kann leider nicht umsonst betrieben und aufrecht erhalten werden. Deshalb fallen beim Betreiber des Service Nutzungsgebühren an. Diese werden pro versendeter Nachricht, beziehungsweise pro versuchtem TTS-Call (unabhängig ob der Anruf entgegengenommen werden kann, oder nicht) berechnet. Die Nutzungsgebühren (Preisliste) belaufen sich auf:

  • 11 Cent pro versendete SMS
  • 13 Cent pro TTS-Call (Festnetz)
  • 25 Cent pro TTS-Call (Mobilfunknetz)

Wenn Ihr euch die oben verlinkte Preisliste anschaut, dann ist euch sicherlich aufgefallen, dass wir für den SMS-Versand die Gateways 10 und 11 nutzen. Dies hat den Hintergrund, dass diese beiden Gateways zu den schnellsten Gateways gehören. Unserer Einschätzung nach, ist dies in einem Alarmfall extrem wichtig, weshalb wir uns dazu entschieden haben, diese beiden Gateways zu nutzen.

Anmeldung bei smsflatrate.net

Um den Service nutzen zu können, benötigt Ihr ein Kundenkonto bei dem Anbieter. Dieses Konto könnt Ihr euch über die Seite smsflatrate.net erstellen. Dort habt Ihr die Möglichkeit, mit einer speziellen Lizenznummer zusätzliches Guthaben zu sichern. Wenn Ihr euch als siio-User dort anmeldet, dann erhaltet Ihr 2 € Bonusguthaben.

Es müssen dazu ein paar Steps durchgeführt werden: Ruft als erstes die Seite auf. Hier findet Ihr rechts oben den Link zur Anmeldung. Hier bedarf es einiger persönliche Daten. Pflichtfelder (einem * (Sternchen) gekennzeichnet), müssen ausgefüllt werden.

Nun müsst Ihr euch noch mit dem siio-Lizenzschlüssel 215100100 (alternativ über das Pull-Down-Menü) einen AppKey generieren. Dieser App Key, welcher die Nutzung des Services erlauft, muss später in dem Skript eingetragen werden.

In dem Bilderkarussel haben wir euch für jeden einzelnen Step Screenshots gemacht und die wichtigen Stellen rot markiert. In der jeweiligen Bildbeschreibung findet Ihr noch weitere Details.

WICHTIG: Um das hier gepostete Skript zu nutzen, benötigt Ihr den generierten AppKey. Mit einem anderen Key funktioniert das Skript nicht.

Damit habt Ihr alle möglichen Schritte der Registration durchgeführt. Als nächstes kommen wir dann zu der Konfiguration des Skriptes für das Fibaro HomeCenter 2.

Notwendige Konfigurationen am SMS Skript

Es müssen ein paar kleine Optionen an dem Skript angepasst werden. Auf diese Optionen gehen wir im folgenden ein. Am Anfang des Skriptes findet Ihr den „Options-Header„. Hier können alle wesentlichen Dinge an einer Stelle festgelegt werden. Dies sieht folgendermaßen aus:

Wir gehen die fünf Optionen einfach mal einzeln durch, damit am Ende keine Missverständnisse auftreten:

In die lokale Variable „numbers“ könnt Ihr eure Handynummer eintragen. Wir haben das Skript so programmiert, dass hier an dieser Stelle auch mehrere Nummern eingetragen werden können, welche dann in einer Schleife durchlaufen werden. Beachtet bitte, dass die Nummer immer mit 0049XXXXXX, also im internationalen Format, eingetragen werden muss. Ansonsten könnte es zu Problemen kommen. Wenn Ihr mehrere Nummer eintragen möchtet, dann müssen diese mit einem Semikolon (;) getrennt werden. Dies würde dann im Skript so aussehen:

WICHTIG: Jede Nummer, welche an dieser Stelle eingetragen ist, bekommt auch eine SMS, bzw. einen TTS-Call. Ergo fallen bei zwei eingetragenen Nummern auch Gebühren für zwei SMS an.

Weitere Optionen

Hier muss eure APPKEY von smsflate.net eingetragen werden. Damit verifiziert Ihr euch an der externen API. Den APP-KEY findet Ihr wie oben bereits beschrieben.

Bei dem Sender handelt es sich um den angezeigten Absender der SMS. Achtet hierbei darauf, dass keine Sonderzeichen, Umlaute oder Leerzeichen enthalten sind. Laut Aussage des Betreibers ist die falsche Konfiguration des Absenders die häufigste Ursache, dass SMS nicht zugestellt werden können. Solltet Ihr TTS-Calls nutzen, dann ist diese Option nicht relevant.

Mit dieser Option könnt Ihr festlegen, welche Aktion (also sms, tts-call oder beides zeitgleich (both)) ausgeführt wird. Es werden natürlich die einzelnen Aktionen von eurem Guthaben abgezogen.

Wenn hier ‚flashsms‘ als Option eingetragen ist, dann werden euch beim Starten der Szene sogenannte Flash-SMS auf euer Handy geschickt. Die Flash-SMS müssen nicht geöffnet werden, denn der Text erscheint ohne Benutzeraktion auf dem Handydisplay. Solltet Ihr euch normale SMS zuschicken lassen wollen, dann tragt hier bitte ’sms‘ ein. Bei TTS-Calls ist auch diese Option nicht von Bedeutung und kann ignoriert werden.

WICHTIG: Bei Flash-SMS sind die Nachrichten auf 160 Zeichen begrenzt. Sollten mehr als 160 Zeichen versendet werden, dann könnte es zu Fehlern beim Empfang kommen. Wir empfehlen die Nutzung von normalen Nachrichten. In iOS kann ja die Vorschau der Nachrichten aktiviert werden, wodurch die Nachricht schon auf dem entsprechenden Sperrbildschirm gelesen werden kann.


smsflatrate.net 1.1 – Deutsch – DOWNLOAD ZIP

sms_icon


So versendet Ihr jetzt SMS!

Euch ist sicherlich aufgefallen, dass Ihr in der Szene gar keinen Text, der entweder per SMS verschickt oder automatisch gesprochen wird, setzen könnt. Dies hat auch einen einfachen Grund. Der Text wird bei jedem Start aus einer globalen Variable ausgelesen. Wenn Ihr das Skript das erste Mal ausführt, dann wird euch im Debug angezeigt, dass diese Variable noch angelegt werden muss und die Szene bricht diesen Durchlauf ab.

sms_debug_1

Variable ’sms_text‘ wird noch benötigt

Um die Variable anzulegen, müsst Ihr die Variablen-Steuerung eures HomeCenters öffnen (Steuerung -> Variablen-Steuerung) und könnt dort dann eine normale Variable (keine vordefinierte) mit dem Namen sms_text anlegen. Wenn Ihr nach dem Anlegen die Szene ein zweites Mal ausführt, wird der Inhalt der Variablen vom Skript geprüft und ein Test-Text („Dies+ist+ein+Test„) gesetzt und die Szene wiederum abgebrochen. Nach diesen zwei manuellen Starts ist die Szene dann abschließend konfiguriert und beim nächsten Durchlauf wird dann die SMS versendet. Wenn nun eine SMS auf euren konfigurierten Handys angekommen ist, dann ist die Einrichtung vollständig abgeschlossen. Der finale Test wurde demnach bestanden.

sms_debug_2

Debug nach der erfolgreichen Einrichtung

Wie Ihr in dem Screenshot erkennen könnt, prüft das Skript nach jedem Durchlauf, wie viel Guthaben noch auf eurem Account bei smsflatrate.net noch vorhanden ist. Sollte weniger als 1 € noch auf dem Account vorhanden sein, dann wird der Text rot debuggt und Ihr erhaltet eine Warnung.

Wie kann ich die Szene jetzt überhaupt nutzen…

…werdet Ihr euch sicherlich Fragen. Würden wir auch, hätten wir den Artikel bis hierhin gelesen. Wir haben uns über die Konstellation ein paar Gedanken gemacht und sind zu dieser Lösung gekommen. Die Szene zum Versenden von SMS ist hier wie eine Funktion ausgelagert. So habt Ihr die Möglichkeit die Szene einmalig anzulegen und aus anderen Skripten, welche SMS versenden sollen, zu starten. Dazu setzt Ihr in dem anderen Skript die bereits erwähnte Variable auf den Text, welchen Ihr versenden wollt und startet die Szene über LUA. Dies würde dann so aussehen:

Wie Ihr an den Code-Zeilen erkennen könnt, wird hier der Wert der Variablen auf „Wasseralarm+Sensor+hat+Wasser+erkannt“ geändert. Wenn jetzt über die zweite Code-Zeile die Szene gestartet wird, dann liest das SMS-Skript den Wert aus und übergibt diesen an die API von smsflatrate.net. Beachtet bitte, dass Leerzeichen im Text immer als „+“-Zeichen gesetzt werden müssen. Dies ist bei SMS genauso wie bei dem TTS-Call. Solltet Ihr fälschlicherweise Leerzeichen in der globalen Variable setzen, dann erkennt die API diese Zeichen nicht korrekt und es wird keine SMS verschickt. Mit dem nächsten Befehl wird dann die Szene gestartet. Hier muss die ID entsprechend eurer Szene geändert werden.

sms_flash

Links eine normale SMS – Rechts eine Flash-SMS

WICHTIG: Es können auch SMS mit mehr als 160 Zeichen versendet werden. Dies wird dann in mehreren SMS durchgeführt. Hier müssen dann auch die Kosten für den Versand von mehreren SMS einkalkuliert werden. Beachtet dazu bitte folgende Liste. Ein TTS-Call kann 1000 Zeichen lang sein, dies entspricht einer Ansage von circa 360 Sekunden.

SMS-Zeichen

  • bis 160 Zeichen // up to 160 characters = 1
  • 2 x 153 Zeichen // characters = 306 Zeichen // characters = 2
  • 3 x 153 Zeichen // characters = 459 Zeichen // characters = 3
  • 4 x 153 Zeichen // characters = 612 Zeichen // characters = 4
  • 5 x 153 Zeichen // characters = 735 Zeichen // characters = 5
  • 6 x 153 Zeichen // characters = 918 Zeichen // characters = 6
  • 7 x 153 Zeichen // characters = 1071 Zeichen // characters = 7

Solltet Ihr jetzt noch ein iPhone und ein Mac OS besitzen, dann können diese SMS auch an euren Mac über die Nachrichten-App weitergeleitet werden. Wer sich dafür interessiert, der findet ein gutes Tutorial bei macnotes. So habt Ihr in eurer MacOS-Benachrichtigungszentrale immer alle Neuigkeiten in der Übersicht.

sms_macos

SMS Empfang auf dem MacOS (Notification Center)

WICHTIG: Beim Testen der Szene solltet Ihr immer den Text ein wenig variieren. Ansonsten erkennt das System, dass es sich möglicherweise SPAM handelt und blockiert die Zustellung. Ist bei uns bisher aber noch nicht passiert.

Weitere Features in der Zukunft

In der nächsten Zeit wird es auf siio immer mal wieder Szenen geben, welche das Thema hier aufgreifen. Die Entwicklung bei smsflatrate.net steht auch nicht still und auch hier wird es in Zukunft neue Funktionen geben, über die wir natürlich berichten werden. Das Thema bleibt also immer aktuell auf siio. In dem nächsten Teil werden wir euch zeigen, wie Ihr eine SMS mit dem HCL versenden könnt, denn dafür gibt es bei unserem Partner auch eine Möglichkeit.

Wir könnten uns zum Beispiel auch eine feste Integration des Skriptes in das Rauchmelderskript oder in das Skript für das Alarmpanel vorstellen. So könntet Ihr im Notfall immer auf eine Nachricht, welche unabhängig vom Internetempfang vom Handy ist, erhalten. Wie sieht es bei euch aus? Habt Ihr noch Ideen, welche wir unbedingt realisieren sollten, beziehungsweise müssten? Wir würden uns über eure Kommentare freuen.

Wir möchten uns an dieser Stelle auch ganz herzlich bei dem Geschäftsführer von smsflatrate.net, Michael Koppe, für die gute und vertrauensvolle Zusammenarbeit bedanken.

siio-App
About The Author
boomx
  • Melissa
    22. Januar 2017 at 17:55

    SUPER! Vielen Dank. Wir sind in der Schweiz und hatten unser Alarmsystem von Swisscom, namens „SmartLife“ https://www.swisscom-smartlife.ch/ bezogen. „Hatten“ sage ich deswegen, weil SmartLife ihren Betrieb und damit auch deren Support per Ende Januar 2017 vollständig einstellt, da sie, gemäss Press-Release, zuwenig Kunden hatten.

    Alle (wenigen?) SmartLife-Kunden waren sich genau diese Funktion gewohnt, dass man bei Alarm auch einen Anruf (oder SMS) auf eine x-beliebige Nummer generieren konnte. Dementsprechend vermissten wir genau diese Anruf-Funktion bei Fibaro (und sind zumindest in der Schweiz sicher nicht die Einzigen, welche das bei Fibaro vermissten). Jetzt nicht mehr. Toll. Bravo! Auch von uns ein grosses MERCI.

    Gruss

  • Jojo
    30. Januar 2017 at 11:32

    Moin,

    ich finde die SMS-Info auch echt klasse. Nur was ist, wenn keine Internetverbindung besteht? Gibt es eine Möglichkeit, irgend ein externes SMS-„Gatway“ anzuschließen das dann per normalen Mobilfunknetz eine SMS verschickt?

  • hans_honig
    23. April 2017 at 21:16

    Hallo! Wann lässt sich über das hcl die SMS Funktion nutzen? Grüße

    • 17. Mai 2017 at 22:48

      Hi,

      du kannst an smsflatrate eine Mail über das HCL senden. Damit wird dann eine SMS ausgelöst. Leider ist dies nicht sehr zuverlässig, weshalb wir uns mit der Funktion bisher nicht weiter beschäftigt haben.

      Gruß

  • alexkoch73
    17. Mai 2017 at 22:21

    Hallo! Ich bräuchte echt einmal Unterstützung. Irgendwas läuft bei mir schief. Ich habe die Anleitung 10x durchgespielt – bei smsflatrate.net erfolgreich einen APP-
    Key generiert und alles wie oben beschrieben eingetragen …. Leider kommt es nur überhaupt nicht zu einem Debug. Ich drücke auf „start“ und nichts passiert. Ich arbeite mit einer Fibaro HC2, 4.120. Kannst Du mir helfen?

Leave a Response