HomeBridge Variablen,Logik, Regeln, Bedingungen - Python Programme zum ansteuern der Geräte?

  • Hallo


    nach etwas probieren und dank dem tollen Feedback in diesem Forum's habe ich es geschafft und Homebridge rennt mit den ersten Plugins :saint:


    Jetzt meine Frage: wie erstellt Ihr eure Automatisationen?


    Python zur Steuerung

    In HomeKit ist ja alles etwas beschränkt und lässt sich nicht wie gewollt realisieren, als Beispiel das Daikin Local Plugin lässt mich zwar die Klimaanlage steuern jedoch kann ich in HomeKit keine Automatisation erstellen, da das Gerät nicht als Sensor auswählbar ist. Über das Plugin kann man jedoch sehr wohl die Temperatur als Wert zurückbekommen, dann wäre es ja theoretisch möglich ein Python Programm zu erstellen in welchen ich den Wert auslese und dann die Klimaanlage einschalte?

    Macht man dies so oder bin ich am "Holzweg"? (Das Programm läuft dann quasi parallel zur Bridge auf dem Pi)

    --> Wo findet man Informationen zu den Schnittstellenbefehlen mit welchen ich über Python die Geräte von der Homebridge anspreche/auslesen kann? (falls es das überhaupt gibt)


    Logikfunktionen

    Die Klassischen Befehle If, when,.... bzw. das Erstellen von Variablen um komplexere Regeln zu formulieren, wie macht ihr das? Über HomeKit und dann auf Kurzbefehle?

    Hier sind die Kurzbefehle ja auch etwas beschränkt, wie macht ihr dass?

    Ich habe gesehen es gibt auch Logik Plugins aus denen bin ich aber auch nicht schlau geworden....

    Ein konkretes Beispiel wäre eine Intelligente Szene welche nur 1 mal aktiviert wird in der Früh, z.B:

    Auslöser (Sensor erkennt Bewegung) if x=0 & Zeit=6:00-8:00 dann x=1 und aktiviere Szene "GutenMorgen"

    Auslöser (Uhrzeit 8:01) x=0


    Danke

    Martin


    • Hilfreich

    Über das Plugin kann man jedoch sehr wohl die Temperatur als Wert zurückbekommen, dann wäre es ja theoretisch möglich ein Python Programm zu erstellen in welchen ich den Wert auslese und dann die Klimaanlage einschalte?

    Theoretisch: ja.

    Macht man dies so oder bin ich am "Holzweg"?

    Das macht man normalerweise nicht so. Homebridge liefert Werte an HomeKit und die Automationen werden dann dort erstellt. Wird ein Wert nicht geliefert, hat man entweder Pech oder Apples Home-App kann ihn nicht darstellen und man muss möglicherweise ein anderes HomeKit-Programm verwenden (beispielsweise Eve).


    Auf dem Raspi werden keine Automationen erstellt, was nicht heißt, dass das nicht gehen könnte.

    Ein konkretes Beispiel wäre eine Intelligente Szene welche nur 1 mal aktiviert wird in der Früh, z.B:

    Auslöser (Sensor erkennt Bewegung) if x=0 & Zeit=6:00-8:00 dann x=1 und aktiviere Szene "GutenMorgen"

    Auslöser (Uhrzeit 8:01) x=0

    Das wird alles über HomeKit auf deinem iPhone gelöst und kann hässlich komplexe Formen annehmen. Allerdings gibt es App, die deutlich mehr können, als Apple den Anwendern zumuten will, beispielsweise die App Home+.

    --> Wo findet man Informationen zu den Schnittstellenbefehlen mit welchen ich über Python die Geräte von der Homebridge anspreche/auslesen kann? (falls es das überhaupt gibt)

    Endlich mal eine einfache Frage: es gibt keine Informationen oder nur sehr spärlich gesäte. Das Auslesen ist eigentlich einfach. Was einem der JSON-Wust sagen will, ist dann Detektivarbeit.


    Hier findet man mal einen kleinen Happen:

    Curl examples.

    This turns off the device at aid 2 iid 9 curl -X PUT http://127.0.0.1:51826/characteristics --header "Content-Type:Application/json" --header "authorization: 031-45-154" --data "{ \"characteristics\": [{ \"aid\": 2, \"iid\": 9, \"value\": 0}] }"

    This is all the accessories curl -X PUT http://127.0.0.1:51826/accessories --header "Content-Type:Application/json" --header "authorization: 031-45-154"


    Ich hab damit wenig anfangen können, aber auch nur kurze Zeit damit herumgespielt. Ich habe mich dann auf Node Red verlegt. Das ist natürlich kein Python.

  • es gibt einige "Homebridges" auf basis python.

    Ich habe mir Sensoren gebastelt, die mit der Python-basierenden Homebridge "HAP-Python" via 433-MHz kommunizieren. Es läßt sich alles frei definieren.