Zum Inhalt

Push

Um Push-Benachrichtigungen über die Smartha App zu erhalten, werden zwei Dinge benötigt: Ein CloudMatic Account und die Smartha App.

Es wird kein aktives CloudMatic-Paket (keinen Zugang) benötigt, der Account muss lediglich mit der Zentrale verknüpft sein. Wie die Registrierung durchgeführt werden kann, ist im Abschnitt CloudMatic-Konto erstellen beschrieben. Wie der Account mit der Zentrale verknüpft werden kann, ist im Abschnitt CloudMatic-Konto mit einer Zentrale verknüpfen beschrieben.

Sollte die Smartha App noch nicht auf dem Smartphone installiert sein, muss diese zuerst installiert werden. Die Smartha App kan kostenfrei im jeweiligen Store erworben werden.

Apple Android Amazon Windows

Die Smartha App kostenlos herunterladen

Push unter Windows nicht vorhanden

Die Funktion "Push" steht auf der Plattform Windows nicht zur Verfügung!

Einrichtung der App

Sobald die Smartha App gestartet ist, muss über das Hauptmenü der Menüpunkt Push gewählt werden. Nach erfolgreicher Anmeldung wird ein API-Key generiert, mit dem Nachrichten an dieses Endgerät versendet werden können.

Eine detaillierte Beschreibung über den Prozess findet sich in der Smartha App Dokumentation.

API-Key als Variable

Die Smartha App bietet nach der erfolgreichen Generierung des API-Key die Möglichkeit diesen als eine Variable auf der Zentrale zu speichern. Dieser Vorgang ist zu empfehlen.

API-Key manuell auf der Zentrale speichern

Zuerst wird eine neue Variable auf der Zentrale erstellt. In der WebUI der CCU wird der Punkt "Einstellungen" > "Systemvariable" geöffnet und anschließend auf "Neu" geklickt. Ein Name (z.B. "PushKeySmartphone") wird vergeben und als Typ "Zeichenkette" ausgewählt.

Push Variable

Es ist erforderlich, den API-Key in die Variable zu schreiben. Hierfür wird ein neues Programm auf der Zentrale unter "Programme und Verknüpfungen" > "Programme & Zentralenverknüpfung" erstellt. Die WENN-Bedingung bleibt leer, in der Aktivität DANN wird die neu erstellte Variable ausgewählt. Der API-Key wird als Wert eingetragen. Anschließend wird auf "OK" gedrückt.

API-Key setzen

Nach dem Klicken auf "OK" wird das Programm ausgeführt und der Wert für die Variable festgelegt. Das Programm kann nun über die Checkbox in der letzten Spalte der Programmliste deaktiviert werden. Bei jeder Aktivierung wird es aufgrund der fehlenden Bedingung sofort ausgeführt.

Unter "Status und Bedienung" > "Systemvariablen" sollte nun die neue Variable mit Ihrem Schlüssel angezeigt werden.

API-Key anzeigen

Wenn sich der API-Key des verwendeten Endgeräts ändert, kann das zuvor erstellte Programm geöffnet und der neue API-Key als Wert für die Variable eingetragen werden. Anschließend kann auf "OK" geklickt werden. Um das Programm auszuführen, wird es einmalig über die Checkbox in der letzten Spalte der Programmtabelle aktiviert und danach wieder deaktiviert.

Versenden einer Push-Nachricht

HomeMatic

Um nun eine Push-Nachricht an das Endgerät zu versenden, muss ein Programm auf der HomeMatic erstellt werden. Um ein neues Programm auf der Zentrale anzulegen, muss in der WebUI der Zentrale zum Punkt Programme und Verknüpfungen > Programme & Zentralenverknüpfung navigiert werden. Einem neuen Programm sollte ein aussagekräftiger Name zugewiesen werden. Des Weiteren sollte eine Wenn-Bedingung definiert werden. Für die Dann-Bedingung kann eines der beiden folgenden Skripte vollständig kopiert werden.

! Ersetzen Sie 'PushKeySmartphone' durch den Namen Ihrer Systemvariable
string APIKey = 'ESY:' # dom.GetObject('PushKeySmartphone').Value();

! Hier den Betreff der Nachricht angeben
string event = 'ACHTUNG: Alarm!';

! Hier den Inhalt der Nachricht angeben
string PushText = 'Die Haustür wurde geöffnet!';

! Alles ab hier bitte UNVERÄNDERT übernehmen

string stdout;
string stderr;
string teilstr;
string sendtext = "";
string sendevent = "";

foreach(teilstr, event.Split(" ")) {
    sendevent = sendevent # "+" # teilstr;
}
foreach(teilstr, PushText.Split(" ")) {
    sendtext = sendtext # "+" # teilstr;
}

system.Exec('/bin/sh /etc/config/addons/mh/prowl.sh ' # APIKey # ' ' # sendevent # ' ' # sendtext, &stdout, &stderr);
! Ersetzen Sie 'Push...' durch die Namen Ihrer Systemvariablen
string PushMichaHandy = 'ESY:' # dom.GetObject('PushMichaHandy').Value();
string PushDirkTablet = 'ESY:' # dom.GetObject('PushDirkTablet').Value();
string PushEddyPixel = 'ESY:' # dom.GetObject('PushEddyPixel').Value();
string PushBueroTablet = 'ESY:' # dom.GetObject('PushBueroTablet').Value();

! Hier den Betreff und Inhalt der Nachricht angeben
string event = 'ACHTUNG: Alarm!';
string PushText = 'Die Haustür wurde geöffnet!';

string stdout;
string stderr;
string teilstr;
string sendtext = "";
string sendevent = "";

foreach(teilstr, event.Split(" ")) {
    sendevent = sendevent # "+" # teilstr;
}
foreach(teilstr, PushText.Split(" ")) {
    sendtext = sendtext # "+" # teilstr;
}

! Hier für jedes Gerät eine eigene Zeile mit dem Namen der Systemvariable erstellen
system.Exec('/bin/sh /etc/config/addons/mh/prowl.sh ' # PushMichaHandy # ' ' # sendevent # ' ' # sendtext, &stdout, &stderr);
system.Exec('/bin/sh /etc/config/addons/mh/prowl.sh ' # PushDirkTablet # ' ' # sendevent # ' ' # sendtext, &stdout, &stderr);
system.Exec('/bin/sh /etc/config/addons/mh/prowl.sh ' # PushEddyPixel # ' ' # sendevent # ' ' # sendtext, &stdout, &stderr);
system.Exec('/bin/sh /etc/config/addons/mh/prowl.sh ' # PushBueroTablet # ' ' # sendevent # ' ' # sendtext, &stdout, &stderr);

Sonderzeichen

Sonderzeichen und Steuerbefehle müssen escaped werden!

string PushText = "Text mit Sonderzeichen \(z.B. Klammern müssen escaped werden\)";

Verschiedene Töne

Die Smartha App ermöglicht es verschiedene Push-Töne zu empfangen. Dazu muss im Titel einfach das entsprechende Präfix mitgesendet werden.

string event = '[alarm] ACHTUNG: Alarm!';
Zur Verfügung stehen derzeit: alarm, alarm2, alarm3, bell, jingle

Wichtig für die Plattform Android

Ab Android 7 kann nur der Benutzer selbst die Alarmbenachrichtigungen aktivieren. In den Android-System-Einstellungen der Smartha App unter Benachrichtigungen muss der entsprechende Kanal angetippt und die Option Bitte nicht stören ignorieren aktiviert werden.

Forum Beitrag

Diese Funktion ist aufgrund des Feedbacks der Nutzer im Forum entstanden.

Bild in der Push-Nachricht

Die Smartha App ermöglicht es ab der Version 2.4.0 eine Push-Nachricht mit einem Bild zu empfangen. Dazu muss beim Senden im Titel der entsprechende Präfix mit der Bild-URL mitgesendet werden. Die Bild-URL muss aus dem Internet erreichbar sein.

string event = '[imageurl\(https://www.cloudmatic.de/img/icons/warning.png\)]ACHTUNG: Alarm!';
string event = '[alarm][imageurl\(https://www.cloudmatic.de/img/icons/warning.png\)]ACHTUNG: Alarm!';

Smartha App - Push Bilder

Smartha App - Push mit Bildern

Push-Beispiel

Die WENN-Bedingung kann durch eine Abfrage definiert werden. In der DANN-Bedingung wird die Option "Skript" ausgewählt, woraufhin das Push-Skript eingefügt wird.

Push Beispiel

In diesem Beispiel wird nun eine Push-Nachricht empfangen, wenn der Duty Cycle der Zentrale größer oder gleich 70 Prozent ist.

Wichtig

Der Systemvariablenname im Skript muss durch den Namen der erstellten Systemvariable getauscht werden.

smartha home

Um eine Push-Nachricht zu versenden, muss der Node-Blue Knoten Push in der Kategorie CloudMatic verwendet werden.