Mit Homematic SMS Nachrichten versenden

Homematic SMS-Framework

Wäre es schön, wenn Homematic auch SMS-Nachrichten versenden könnte?
Dann könnte man wichtige Statusmeldungen direkt per SMS an sein Handy versenden.

Alles was benötigt wird ist ein altes Android-Smartphone mit einer SMS-fähigen SIM-Karte.
Vielleicht ist sogar schon ein Tablet zur Visualisierung vorhanden und kann dazu gleich mitgenutzt werden.

Voraussetzung ist eine lauffähige CUxD Installation mit Exec-Gerät Konfiguration
TIPP: Installation CUxD-Addon

Los geht’s!

IP-Adresse fest vergeben

    Zuerst müssen wir dafür sorgen, damit das Smartphone immer die gleiche IP-Adresse vom DHCP zugewiesen bekommt.
    Wie man dies auf der Fritzbox einrichtet, beschreibe ich hier kurz.

  • Auf der Fritzbox-Weboberfläche einloggen.
  • Unter Heimnetz > Heimnetzübersicht die Geräte heraussuchen.
  • Unter Details des jeweiligen Smartphones die Option Diesem Netzwerkgerät immer die gleiche IPv4-Adresse zuweisen setzen und die IP-Adresse notieren. Hier kann auch gleich ein gebräuchlicher Name als Hostname vergeben werden. Mit dem Speedport oder auch anderen Routern funktioniert dies ähnlich.

Home24-Mediaplayer auf Android-Gerät installieren

https://play.google.com/store/apps/details?id=com.home24.mediaplayer&hl=de
Sollte die App nicht funktionieren, so ist unter Umständen evtl. noch die App Home24 notwendig. Diese ist VOR dem Home24-Mediaplayer zu installieren.
Funktionstest im Browser mit http://HIER_DIE_IP_ADRESSE_EINTRAGEN:50000/tts=test

Variable anlegen

Quicktipp: Variable anlegen

  • SMS-TEXT
    Name: SMS-TEXT Typ: Zeichenkette
  • Homematic SMS versenden

Programm anlegen

Quicktipp: Programm anlegen

  • SMS-Framework
    Bedingung: Wenn… Systemzustand Variable SMS-TEXT bei Aktualisierung auslösen.
    Aktivität: Dann… Hier nichts eintragen!
    Sonst: Script sofort auslösen
    Homematic SMS versenden
    Achtung: im Script muss die IP-Adresse ihres Gerätes und die Rufnummer des Empfängers eingetragen werden!

    ! Home24 Mediaplayer-SMS-FRAMEWORK
    ! by www.homematic-guru.de
    ! Anleitung: https://homematic-guru.de/mit-homematic-sms-nachrichten-versenden
     
    string ip = "192.168.2.199"; !Hier die IP ihres Gerätes eintragen
    string rnr = "016012345678"; !Hier die Rufnummer des Empfängers eintragen
    object o = dom.GetObject ("SMS-TEXT"); !Kann ggf. für mehrere Scripts geändert werden
    string  s = "." # o.Value() # ".";
     
    if ( s != "..") {
      boolean b;
      string n;
      string a;
      string r;
      foreach (r, "Ä-%C3%84\tÖ-%C3%96\tÜ-%C3%9C\tä-%C3%A4\tö-%C3%B6\tü-%C3%BC\t&-%26\tß-%C3%9F") {
        b = true;
        n = "";
        foreach (a,  s.Split (r.StrValueByIndex ("-", 0))) {
          if (b) {
            if (a !=  s) {
              n = a;
            }
            b = false;
          } else {
            n = n # r.StrValueByIndex ("-", 1) # a;
          }
        }
        if (a !=  s) {
           s = n;
        }
      }
       s =  s.Substr (1,  s.Length() - 2);
       string cmd = "wget --no-check-certificate --quiet -O /dev/null \"http://" # ip # ":50000/sms=" # rnr # "&message=" #  s # "\"";
       dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State (cmd);
       o.State ("");
    }
    !  Ende des Scripts
    

Jetzt wird mit dem Text, den man in die Variable SMS-TEXT schreibt eine SMS an den definierten Empfänger versendet.

Beispiel:
Homematic SMS Alarmanlage

Fertig!

Verwendete Hardware


Warning: preg_match(): Compilation failed: invalid range in character class at offset 11 in /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/render_engine.php on line 526

Warning: preg_match(): Compilation failed: invalid range in character class at offset 11 in /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/render_engine.php on line 526

Warning: preg_match(): Compilation failed: invalid range in character class at offset 11 in /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/render_engine.php on line 526

Fatal error: Uncaught Exception: Template 'templates/form/web/widgets/#type.html' not found ! in /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/render_engine.php:723 Stack trace: #0 /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/render_engine.php(454): WYSIJA_help_render_engine->_loadTemplate('templates/form/...') #1 /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/render_engine.php(169): WYSIJA_help_render_engine->_parse('\n{include file=...') #2 /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/form_engine.php(756): WYSIJA_help_render_engine->render(Array, 'templates/form/...') #3 /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/form_engine.php(638): WYSIJA_help_form_engine->render_web_body() #4 /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/views/front/widget_nl.php(160): WY in /homepages/33/d683611508/htdocs/app683611566/wp-content/plugins/wysija-newsletters/helpers/render_engine.php on line 723