Http Schalter 2 Wege mit Grundbefehl.

  • Und zur Sicherheit noch mal mit curl bitte:

    curl http://192.168.178.14/tgi/control.tgi?p=l


    Ich schätze mal, da kommt dann das dabei heraus:

    <html>0 0 1 0</html>


    Falls wirklich das dabei herauskommt, dann füttern wir diesen Output an ein neues Skript, das wir einfach status.sh nennen. Das erstellst du genauso wie bereits das andere Skript:

    • Konsole der Weboberfläche der Homebridge öffnen.
    • Dort eingeben sudo nano status.sh. Dort den folgenden Code eingeben:
    Bash
    #!/bin/bash
    STRING=$(curl -s http://192.168.178.14/tgi/control.tgi?p=l)
    PORTS=$(echo $STRING | sed -e 's/<[^>]*>//g')
    STATE=$(echo $PORTS | cut -d " " -f $1)
    
    echo $STATE
    • Absichern mit control-x (oder strg-x), dann y, dann die Entertaste.
    • Eingeben: chmod +x status.sh
    • Jetzt muss die Plugin-Konfiguration geändert werden. Also in der Weboberfläche der Homebridge auf Plugins klicken, dann auf die drei überlanderliegenden Punkte des Plugins Homebridge Cmdswitch2, dort dann auf Einstellungen. Dann den dort vorhandenen JSON-Code durch das folgende ersetzen:
    • Speichern und Homebridge neu starten.

    Das sorgt dafür, dass die Anzeige in HomeKit dem Status deines Gerätes entspricht, auch wenn du es außerhalb von HomeKit schaltest. Das Plugin checkt jetzt alle 3 Sekunden ("interval": 3), wie der Status ist und setzt die Anzeige in der Home-App auf den richtigen Wert.


    Alles Theorie: ich habe ja keine Möglichkeit, das zu testen. Ich habe daher eine kleine Umgebung aufgebaut, die deine NetIO soweit simuliert, dass ich eine Antwort wie 0 1 0 0 bekomme. In der Simulation funktioniert es bestens.

    Einmal editiert, zuletzt von sschuste ()

  • Moin in die Runde,


    Homebridge findet die mit euch erstellten Dateien Switch und Status nicht mehr. Allerdings bekomme ich nun auch die Fehlermeldung, dass der Command Nano nicht bekannt ist.


    Das wiederherstellen aus einem älterem Backup hat auch nicht geholfen, die Datei kann ich aber gerne zur verfügung stellen.


    Bräuchte nochmal Unterstützung bitte.



  • Sieht ja super aus. Mache bitte mal im Terminal ein ls -l und poste hier den Output. Gab es ein Update zwischendurch und weißt du noch, was geupdated wurde?

  • Deine Fehlermeldung zeigt, dass das Skript /var/lib/homebridge/status.sh nicht gefunden werden kann. Dein ls -l zeigt, dass es /volume1/homebridge/status.sh heißt.


    Passe die JSON-Konfiguration deiner Homebridge entsprechend an und ersetze alle /var/lib/homebridge/status.sh durch /volume1/homebridge/status.sh, und tue das entsprechend auch für /var/lib/homebridge/switch.sh. Danach die Homebridge neustarten.