NEWS
[gelöst]Welchen Trigger nutzen?
-
@dominik-f sagte: auf was ich da Triggern muss damit dies nur beim Start passiert?
Kein Trigger, sondern Wert prüfen und Nachricht, falls Wasser erkannt.
-
Ich habe den Baustein gefunden, bin aber mit der Umsetzung etwas überfragt. Bei Falls wahr kann ich nichts mit Pushover etc einsetzen
-
@dominik-f sagte: Ich habe den Baustein gefunden
Das ist der falsche Baustein.
Bei mehreren Wassermeldern (mit Selektor):
-
So sieht es jetzt bei mir aus. Wie kann ich denn den Namen des Melders auslesen und automatisch einfügen? Bei dem laufenden Skript funktioniert das Auslesen, bei dem Skriptstart verständlicherweise noch nicht.
-
@dominik-f
Die Abfrage in der Schleife muss lauten:falls Wert vom Objekt ID i
Der Name steht außerhalb von Triggern nicht zur Verfügung. Entweder die ID (Variable
i
) wird übergeben oder man verwendet eine JS-Funktion mit Ergebnis. -
@paul53 sagte in Welchen Trigger nutzen?:
@dominik-f
Die Abfrage in der Schleife muss lauten:falls Wert vom Objekt ID i
Danke für die Berichtigung, hatte ich übersehen.
Der Name steht außerhalb von Triggern nicht zur Verfügung. Entweder die ID (Variable
i
) wird übergeben oder man verwendet eine JS-Funktion mit Ergebnis.Wäre so eine JS-Funktion sehr kompliziert? Es wäre natürlich klasse das direkt "perfekt" zu machen.
-
-
Das "id" ist bei mir dann ein "i" oder? Sorry für die vielen Fragen
-
@dominik-f sagte: Das "id" ist bei mir dann ein "i" oder?
Nein:
id
ist der Funktionsparameter.Bei Aufruf der Funktion übergibst Du die Variable
i
. -
-
@dominik-f sagte: So müsste es dann schlussendlich aussehen oder?
Passt.
-
Ich danke dir mal wieder vielmals für deine tolles Hilfe.
-
Ich hab nochmal eine Verständnisfrage.
Ich habe das Skript nun getestet.
Starte ich es und alle Wassermelder sind auf false, dann steht im Log folgendes:javascript.0 2022-07-30 21:44:20.481 info script.js.common.Überwachung_Wassermelder: registered 2 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
Starte ich es und ein Wassermelder ist auf True, steht dort folgendes:
javascript.0 2022-07-30 21:43:01.662 info script.js.common.Überwachung_Wassermelder: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
Wie kommt es, das dort 0 subcriptions steht wenn ein Wassermelder auf true ist? Das verwirrt mich ein wenig.
-
@dominik-f
Subscriptions zeigt die Zahl der Trigger und müsste mit der Zahl der Wassermelder übereinstimmen, unabhängig davon, welchen Wert sie haben. -
Genau das verwirrt mich, weil ich dort eine 2 erwartet habe.
-
Hier nochmal das Log:
Skript gestartet mit einem Wassermelder der True ist, dann Wassermelder auf false gestellt, Skript gestoppt und wieder gestartet.
Wenn kein Wassermelder beim Start true ist erkennt er alle Triggerjavascript.0 2022-07-30 22:59:08.408 info script.js.common.Überwachung_Wassermelder: registered 3 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 2022-07-30 22:59:08.400 info Start javascript script.js.common.Überwachung_Wassermelder javascript.0 2022-07-30 22:59:04.675 info Stop script script.js.common.Überwachung_Wassermelder javascript.0 2022-07-30 22:58:55.294 info script.js.common.Überwachung_Wassermelder: Wasser behoben test1 javascript.0 2022-07-30 22:58:45.659 info script.js.common.Überwachung_Wassermelder: Wasser erkannt test1 javascript.0 2022-07-30 22:58:45.659 info script.js.common.Überwachung_Wassermelder: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions javascript.0 2022-07-30 22:58:45.637 info Start javascript script.js.common.Überwachung_Wassermelder
-
@dominik-f
Das muss wohl ein Bug im Adapter sein?
Um 22:58:55.294 wurde doch getriggert? -
Ja, es funktioniert auch alles wie es soll.
Es scheint, dass dies nur angezeigt wird, wenn die Schleife als erstes greift
-
@dominik-f sagte: dass dies nur angezeigt wird, wenn die Schleife als erstes greift
Ja, scheint ein Laufzeitproblem zu sein, denn ich kann es bei mir mit einem einfacheren Skript nicht nachvollziehen.
-
Es scheint so zu sein, dass es auf die Anordnung der Bausteine ankommt^^ Steht die Schleife oben, erkennt er wenn wenn diese greift keinen Trigger. Steht die Schleife unter dem Baustein mit dem Trigger wird alles richtig angezeigt
https://forum.iobroker.net/topic/56808/gelöst-welchen-trigger-nutzen/4?_=1659196213531
Hier steht erst Skriptstart und dann laufendes Skript.
Steht laufendes Skript oben und darunter Skriptstart passt es