Weihnachtsprojekt: AVM Smart Home mittels Kommandozeile steuern

Schon seit einiger Zeit nenne ich einen  AVM FRITZ!Powerline 546E mein eigen. Ich hatte ihn mir damals angeschafft und unser Wlan fürs Wohnzimmer etwas zu verstärken (auch wenn der Adapter leider nur 2,4GHz kann) und da mich damals schon die Möglichkeit der Steuerung der Steckdose interessiert hat. 

Leider ist die Steuerung über die MyFRITZ! oder über die Oberfläche der FRITZ!Box etwas träge (die App braucht für den initialen Start einige Sekunden und bis man sich auf der Webseite angemeldet hat und sich durchgeklickt hat vergeht auch etwas Zeit), sodass ich von dieser Möglichkeit bisher kaum Gebrauch gemacht habe. Nun gibt es bereits einige Projekte im Netz, welche entweder als große Hausautomation daherkommen (z.B. FHEM, welchs z.B. von einem Kollegen zur Steuerung und Überwachung von Heizkörpern eingesetzt wird) oder aber als kleines PHP Skript zur Übersicht im Browser ohne Anmeldemaske.

Den bereits verlinkten Post aus dem IP-Phone-Forum habe ich mir schließlich als Ansporn genommen um mittels einem kleinen Bash Skript die AVM Home Automation (kurz AHA) API über die Komandozeile ansteuern zu können. Das Skript ist einmal in einen externen Login Teil (dieser könnte auch für andere Skripte wiederverwendet werden) und den eigentlich Smart Home Teil aufgeteilt. Letzteres Skript ist so gebaut, dass es von Haus aus mit mehreren Schaltern umgehen kann (holt sich die Liste von der Box, bis auf Zugangsdaten keine Konfiguration notwendig) und sowohl interaktiv als auch automatisiert (z.B. mittels Cron) laufen kann.

Das Skript kann über mein hierfür neu angelegtes Script Repository heruntergeladen werden. Ob es aber tatsächlich mit mehreren Schaltern funktioniert kann ich aber erst testen, wenn der bestellte FRITZ!DECT 200 angekommen ist. Inzwischen habe ich das Skript auch mit mehreren Adaptern testen können.

5 Gedanken zu „Weihnachtsprojekt: AVM Smart Home mittels Kommandozeile steuern

  1. Das Kommando setswitchtoggle funktioniert bei mir nicht. Warum auch immer, da recht sich nichts. Die Ausführung schaltet den Status nicht um und liefert auch nichts zurück.
    Mache es jetzt mittels setswitchon bzw. setswitchoff.

    Allerdings würde mich interessieren, ob das Problem bekannt ist.

    VG Thomas

    1. Hallo Thomas,

      setswitchtoggle ist bei mir sogar der Hauptweg zur Umschaltung meiner beiden Schalter. Ich habe gerade nochmal geprüft aber im Repository ist die letzte (und bei mir funktionierende) Version.

      Welche Fritzbox und welche Firmware hast du denn?

          1. FRITZ!OS 06.06
            FRITZ!Box Fon WLAN 7270 v3

            Dasselbe Problem. Diese Unstimmigkeit zwischen der API und dem was die Box tatsaechlich tut war mir schon frueher aufgefallen als ich eine Android App fuer AHA geschrieben habe.

            Schaetze mal der Fehler liegt bei AVM.

            Ansonsten funktioniert das Skript super. Danke fuers teilen!

Schreibe einen Kommentar

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