NEWS
PING Smartphone WLAN Energiesparmodus berücksichtigen
-
@paul53 Hat prima funktioniert. Dankeschön
Das Script sieht nun so aus:
Jetzt habe ich noch einige manuelle Datenpunkte erstellt. Der Wert wird bei der jeweiligen Person auf True gestellt, wenn diese Zuhause ist. Das klappt auch.
Alex = false
Paula = true
Lilo = false
Amy = falseNun erstelle ich ein neues Script.
Dafür benötige ich einen Trigger der prüft ob eine der jeweiligen Personen zuhause ist. Schließlich sollen sich die Lichter erst abschalten wenn alle Personen auf "false" stehen bzw. sich einschalten wenn einer oder mehr "true" ist.Ist bestimmt nicht schwer, aber ich als Anfänger komme nicht drauf wie man das am einfachsten umsetzt.
Alle Lösungen die mir einfallen, würden zu einem überladenen Skript führen. -
Hy, denke das du nach so langer Zeit schon eine entsprechende Lösung gefunden hast aber da ich grade erst diesen Beitrag gesehen habe (habe mal ganz dreißt dein Skript kopiert
) dachte ich schreib mal wie ich das gelöst habe:
Als erstes habe ich, ähnlich wie du, allen ein eigenes Objekt gegeben (Anwesenheit XX: true/false) welches ich durch mehrere Skripte steuere (Ping, Kamera usw.). Durch diese Objekte werden wiederum andere Skripte gesteuert für die einzelnen Dinge die passieren sollen wenn XX anwesend ist.
Zusätzlich habe ich zwei allgemeines Objekte: "Status" und "Status manuell". Hier wird (bei "Status"), wenn mindestens eine Person anwesend ist "Zuhause" eingetragen, wenn alle weg sind "Abwesend". Gesteuert durch ein separates Skript, welches sich auf die "Anwesenheit" Objekte bezieht.
Das Objekt "Status manuell" ist für die Visualisierung gedacht, damit hier eben "manuell" zumindest die allgemeine Anwesenheit/Abwesenheit angeklickt werden kann. Ein Skript wiederum überträgt das auf den normalen "Status".Das Skript zum Abfragen der "Anwesenheit" und Eintragung vom "Status" lauf über mehrere ODER-Verknüpfungen und beinhaltet noch Dinge wie Telegram-Nachricht bzgl. "Status" und die Urlaubsmeldung.
Gruß
Jan -
An alle die Ahnung haben: Würde das in diesem Beispiel nicht auch funktionieren? Ich weiß das hierbei nur eins der Objekte sich ändern muss um den Trigger zu triggern. Würde aber die Abfrage nach dem Wert auch beinhalten das nur eins der Objekte Wahr sein müsste?
Ist jetzt nur so dahin "geschmiert", daher keine Eintragungen, geht hier nur darum das ihr versteht was ich meine.
Antwort wäre schön, könnte das durchaus auch in anderen Bereichen einsetzen wenn es so funktioniert.
-
@schlumpf sagte: Würde aber die Abfrage nach dem Wert auch beinhalten das nur eins der Objekte Wahr sein müsste?
Nein, es muss eine ODER-Verknüpfung aller Werte erfolgen, wenn man erfassen will, dass kein Wert wahr ist. Bei so vielen Datenpunkten verwendet man besser eine Schleife über eine Liste, ähnlich wie hier.
-
Ok, wenn ich das richtig verstehe funktioniert das nicht weil er nicht alle zusammen abfragt sondern jedes einzeln.
Das was du geschrieben hast hatte ich mir auch schon angeguckt und versucht nachzubauen, hab es aber nicht hinbekommen. Ich denke das liegt daran, dass, wenn ich es richtig verstanden habe, die Aufzählungen abgefragt werden. Diese nutze ich allerdings nicht, daher scheint es bei mir nicht zu funktionieren.
Könnte man sowas nicht auch mit einer Liste oder Änlichem bewerkstellen?
-
@schlumpf sagte: Könnte man sowas nicht auch mit einer Liste oder Änlichem bewerkstellen?
-
WOW, so einfach? Oh mann!!!
Also, ich habe zwar noch nicht ganz verstand "warum" aber es funktioniert!
Vielen Dank Paul, du bist der Beste!
-
Hallo Paul, ich schon wieder.
Habe versucht das Blockly oben für ein anderes Projekt umzubauen, komme aber grade nicht weiter und hoffe du bist so geduldig und hilfst mir nochmal.
Eigentlich wollte ich einfach nur 2 Lampen in vorher über mein VIS zu definierenden Farbein blinken lassen. Soweit so gut, hat eigentlich auch alles soweit funktioniert. Ich habe mir ein Skript geschrieben, welches die Werte aus 4 Benutzerdefinierten Objekten nimmt und sie zu einem Comando für die beiden Hue-Lampen umwandelt und mit dem "alert:lselect" zum Blinken bringt. Hier habe ich 2 Skripte zusammen gebaut.
In der Theorie (nach ein paar Versuchen) klappt es auch, nur leider nur mit einer Lampe anstatt beiden. Sicher einfach nur ein dummer denkfehler oder fehlendes Wissen, aber ich komme einfach nicht drauf.
-
@schlumpf sagte: leider nur mit einer Lampe anstatt beiden.
Nimm die Blöcke "die Schleife abbrechen" raus.
-