pilight – Netzwerkgeräte einbinden und prüfen

Screenshot_2014-12-13-17-52-06In meiner pilight-Installation gibt es nicht nur Funksteckdosen, die man ein- und ausschalten kann, sondern auch Geräte, zu denen ich einfach einen Status „AN/AUS“ haben möchte. Zum einen als Übersicht, zum anderen können diese Stati dann als Kriterium in den „Rules“ von pilight genutzt werden. Ein Beispiel habe ich anhand meines Subwoofers im Einführungspost beschrieben.

Die Geräte, um die es hier geht, sind Netzwerkgeräte, die man per IP überprüfen kann. Ein guter, alter Ping muss her, um zu entscheiden, ob ein Gerät eingeschaltet ist oder nicht. In beiden Fällen wird ein Signal an den pilight-Server gesendet, der den Status in der GUI dann per „readonly“-On/Off-Button darstellt.

Alle 5 Minuten (in der Zeit von 5:00 bis 23:55 Uhr) läuft dafür ein Skript auf dem Pi, der die Geräte der Reihe nach anpingt und das Ergebnis verarbeitet.

Das Skript „check-devices.sh“ sieht folgendermaßen aus:

Die Funktion wird also mit der IP-Adresse und dem Namen des Gerätes, wie es in pilight definiert ist(!), aufgerufen. Ist das Gerät erreichbar, wird der pilight-Schalter auf „on“ gesetzt und im negativen Fall auf „off“.

4 Kommentare

  • Pingback: pilight – Mein Einstieg in die Hausautomation | noltenet.de

  • Hey,

    finde deine Seite recht interessant, gute Ideen und sehr gute Lösungen und Lösungsansätze. Bei dem Status der network devices allerdings kam ich nicht weiter. Wie muss denn die config.json dafür aussehen? Hast du vielleicht ein Beispiel? Wäre toll wenn du mir dabei helfen könntest.

     

    Gruß Benny

  • Hallo Benny,

    danke für dein Feedback. In der config.sys bindest du das Gerät als „generic_switch“ ein:

    Im GUI-Teil definierst du das Gerät dann als „read-only“. Du kannst den Status also nicht selber ändern, sondern der Schalter dient nur der Statusanzeige:

    Der Status wird nun „von außen“ per Skript gesteuert…

  • Hallo zusammen, finde die Ansätze gut… bring es nur leider irgendwie nicht hin … nachdem ich viel gegoogelt hab mit den Cronjobs bin ich auf 2 Ansätze gestossen einmal über den root und einmal über den Pi ….

     

    führe ich das script aus kommt immer als Fehler

    keine Berechtigung … muss ich hier noch Rechte vergeben ?

    wo hast du deinen Cronjob eingerichtet ?

    PS und hast du nen Tipp ob es alternativen zu dem ON OFF Button gibt ?

    Gruß Normen

Kommentar hinterlassen

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