openHAB2: kostenfreie Push-Notifications via Telegram auf’s Smartphone

Es wäre ja schön, wenn man sich das Haus einfach per Messenger melden könnte, wenn was nicht passt oder wenn bestimmte Ereignisse eingetreten sind.

Um sich Nachrichten vom Smarthome-System auf’s Handy schicken zu lassen gibt es diverse Push-Notification-Anbieter, kostenfrei geht’s mit der App Telegram und dem dazugehörigen openhab2-Binding. Push-Notifications sind dann via rule-Befehl von openHAB problemlos möglich. Und einfach und schnell in max. 15 Minuten eingerichtet ist das Ganze auch noch.

Telegram App installieren

Zuerst die App Telegram am Handy installieren. Dann in der App auf das Suchen-Feld klicken und „botfather“ eintippen und den dann angezeigten so benannten Kontakt anklicken.

Nun muss ein Bot erstellt werden, dazu

  1. /newbot senden
  2. Namen für den gewünschten Bot senden
  3. Benutzernamen für den gewünschten Bot senden
  4. Raus aus dem Bothfather-Chat und einen neuen Chat starten, diesmal den oben vergebenen Benutzernamen suchen und einfach irgendeine Testnachricht schicken
  5. Nun im Webbrowser die URL https://api.telegram.org/bot[DEINAPIKEY]/getUpdates aufrufen und [DEINAPIKEY] durch den API-Schlüssel ersetzen, der in der Botfather-Nachricht genannt wurde
  6. Die Daten im Browser anzeigen lassen, Firefox zeigt das als JSON gleich ganz gut an, aus dem Ausschnitt mit der Testnachricht holen wir nun die „id“:

openHAB2 konfigurieren

Jetzt PaperUI aufrufen, unter Add-Ons / Actions die Telegram Action auswählen / installieren.

Dann unter /etc/openhabe/services/telegram.cfg die Konfigurationsdaten für die Telegram Action anpassen, anbei mein bot:

bots=bot1
bot1.chatId=[ID DES CHATS]
bot1.token=[DEINAPIKEY]

Um die Änderungen wirksam zu machen muss der openHAB service neu gestartet werden:

sudo systemctl restart openhab2.service

Beim Hochfahren von openHAB ist die Konfiguration auch im Logfile zu sehen und wenn es wie folgt aussieht, ist die Konfig schon einmal syntaktisch korrekt:

2018-01-26 15:49:14.797 [INFO ] [egram.internal.TelegramActionService] – Bot bot1 loaded from config file

openHAB2 – Rules: Ansprechen des Bots

Um den Bot anzusprechen kann nun in beliebigen Rules der Bot angesprochen werden.

Zum Testen lasse ich mich mit folgender Rule über eine Veränderung des Lichts in meinem Büro informieren:

rule "Bot Test - Informiere über Lichtstatus"
when Item OG_LICHT_BUERO changed
then sendTelegram("bot1", "Licht hat Status geändert auf " + OG_LICHT_BUERO.state.toString())
end
Und das gibt dann folgendes Ergebnis:

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.