Fritzbox mit Homematic steuern

Wir verwirklichen Ihre Ideen!

Stacks Image 1533
Fritzbox mit Homematic steuern

Ziel: Die Homematic soll verschiedene Befehle an die Fritzbox senden. Z.B. einen Anruf auslösen.
Stacks Image 1730
Komponenten
Zentrale
Fritzbox
Allgemein
Die Fritzbox ist einer der besten Router auf dem Markt. In Verbindung mit der Homematic kann man aber noch viel mehr herausholen. Die Anwendungsbeispiele sind sehr vielfältig. Es gibt zwar zu diesem Thema auf anderen Seiten schon Beschreibungen, aber diese sind meist nicht aktuell oder nicht vollständig. Darum hier eine kurze und einfache Anleitung zu Einrichtung.

Anwendungsbeispiele:
Automatisches auslösen eines Anrufes an eine beliebige Nummer als Erweiterung der
Alarmanlage
Automatisches ein und ausschalten des Gäste WLAN
Anwesenheitserkennung via Gerätenamen im WLAN.
Anleitung
  • Als erstes muss auf der Homematic der Cux Daemon installiert sein, da ein virtuelles Gerät benötigt wird. Wie man den Cux installiert wird hier beschrieben.
  • Dann wechselt man auf die WebUI der Fritzbox und legt unter System einen einen Fritzbox Benutzer inklusive Passwort an. In meinem Fall ist der Benutzer = CCU und das Passwort = Homematic. Dieser Benutzer wird benötigt damit die Homematic auf die Fritzbox zugreifen kann.
  • In der Fritzbox wechselt man noch zu Telefonie -> Anrufe und aktiviert die Wählhilfe. Das ist notwendig damit man einen automatischen Anruf via CCU auslösen kann
Stacks Image 1656
  • Im Homematic Forum hat ein User verschiedene Shell Scripte für die Fritzbox geschrieben. Es gibt dort wirklich viele Möglichkeiten. Ich beschränke mich in diesem Blog aber auf die für mich wichtigsten. Die Scripte können dort heruntergeladen werden (Link). Vielen Dank dieser Stelle für die tolle Arbeit
  • In den heruntergeladenen Dateien findet man die Fritzbox.cfg
  • Hier muss man nun den zuvor angelegten Fritzbox User und dessen Passwort eintragen und ggf. die IP Adresse der Fritzbox
  • Danach müssen die Dateien mit einem FTP Programm (bpsw. FileZilla) auf die CCU geladen werden
  • Dazu öffnen wir zuerst die WebUI der Homematic und gehen in die Systemsteuerung in den Punkt Sicherheit
  • Dort aktivieren wir temporär die SSH Schnittstelle und vergeben ein Passwort
Stacks Image 1577
  • Jetzt öffnen wir ein FTP Programm und verbinden uns mit der Homematic
Stacks Image 1702
  • Die Fritzbox Dateien müssen in den Pfad:
  • /usr/local/addons/cuxd/user hochgeladen werden
Stacks Image 1706
  • Nun müssen den Dateien noch die korrekten Berechtigungen eingeräumt werden. Dies kann man auch direkt im FTP Programm machen
  • Dazu die Datei Eigenschaften anzeigen lassen und die Berechtigung 755 für alle Dateien vergeben
  • Wenn alles erfolgreich ist kann man den SSH Zugang in der HM WebUI wieder deaktivieren.
Stacks Image 1710
  • In der HM WebUI kann man nun unter Einstellungen -> Geräte -> virtuelle Fernbedienung-> Einstellen die Befehle der Tasten zuweisen.
  • KEY/CMD_Short sh /usr/local/addons/cuxd/user/FB-fon.sh call 12345678 10
  • die angestellte 10 hinten steht für die Dauer des Anrufes
Stacks Image 1583
Stacks Image 1712
  • Man kann dann in jedem Programm das virtuelle Gerät benutzen um einen Anruf bei kurzem Tastendruck auszulösen
Stacks Image 1716
Wichtige Befehle
  • Telefonnummer anrufen

  • #Dieser Befehl kann in der CCU auf einen virtuellen Taster gelegt werden
  • sh /usr/local/addons/cuxd/user/FB-fon.sh call 12345678 10
  • #Dieser Befehl kann als Script in einem Programm aufgerufen werden
  • WriteLine("Telefonnummer wird angerufen");
  • dom.GetObject("CUxD.CUX2801001:3.CMD_EXEC").State("sh /usr/local/addons/cuxd/user/FB-fon.sh call 12345678 10");
  • WLAN prüfen ob ein Gerät vorhanden ist

  • #Dieser Befehl kann in der CCU auf einen virtuellen Taster gelegt werden
  • sh /usr/local/addons/cuxd/user/FB-main.sh presence MacBook Pro Besuch
  • #Dieser Befehl kann als Script in einem Programm aufgerufen werden
  • WriteLine("Prüft Anwesenheit von Besuchern nach den Gerätenamen in der fritzbox Heimnetz Übersicht");
  • dom.GetObject("CUxD.CUX2801001:3.CMD_EXEC").State("sh /usr/local/addons/cuxd/user/FB-main.sh presence MacBook Pro Besuch");
  • #in diesem Fall ist das Wort Besuch eine zuvor angelegte Systemvariable die dann gefüllt wird
  • Gäste-WLAN ein/ausschalten

  • #Dieser Befehl kann in der CCU auf einen virtuellen Taster gelegt werden (1 an und 0 aus)
  • sh /usr/local/addons/cuxd/user/FB-main.sh WLANGast 1
  • #Dieser Befehl kann als Script in einem Programm aufgerufen werden (1 an und 0 aus)
  • WriteLine("Gäste Lan ein/ausschalten");
  • dom.GetObject("CUxD.CUX2801001:3.CMD_EXEC").State("sh /usr/local/addons/cuxd/user/FB-main.sh WLANGast 1");
  • Viele andere Befehle findet man in den Shell Dateien
Wenn alles geklappt hat…
Kommentare