NEWS
[gelöst] Scripte die mehrfach auslösen und Objekte
-
Scripte die mehrfach auslösen und Objektaktualisierung
Guten Abend zusammen,
ich habe gleich mehrere Probleme mit selbstgebauten Blocky Scripten welche mehrfach auslösen.
Ich bin kein Programmierer, daher würde ich mich über Hilfe freuen und vielleicht auch über die Erklärung was ich falsch gemacht habe. Ich würde mir das gern weiter beibringen und aus meinen Fehler lernen :-).
Die beiden Scripte lösen die Telegram Nachrichten mehrfach aus. Das Anwesenheitsscript bringt mir die Telegram Nachricht im Schnitt 4x.
Das Script an der SP111 weckte mich letzte Nacht bei über 900 Nachrichten in Unter einer Minute …Bei meinen Recherchen fiel mir nun auf das Teilweise die Objekte im IOBroker nicht Zeitnah aktualisiert werden. Am Beispiel der SP111_11 ist mir aufgefallen das Tasmota bereits 0 Watt meldet, in den Ereignissen beim IOBroker auch die Nachrichten mit der Meldung via MQTT eingehen. Das entsprechende Objekt aber weiterhin bei 25 Watt stand. Erst nach über einer Minute wurde das Objekt dann aktualisiert.
Kann mir hier vielleicht jemand einen Tipp geben was hier falsch läuft?
Lt HTOP auf dem RPi (Raspberry Pi 4 mit 4 GB) ist die CPU im Schnitt bei < 10% Auslastung auf allen Kernen und der RAM ist zu ca. 25% verwendet.Vielen Dank und viele Grüße
Alex -
ok, die lösen mehrfach aus.. sieht man, aber was willst Du denn eigentlich ursprünglich?
ich verstehe die Verwendung und Zweck deiner mehreren Trigger nicht.
Also beim ersten sagste,
wenn Power Knopf an oder aus dann soll wenn Wert wahr(wo initialisiert?)
wieder trigger hat sich power an/aus dann wenn wert keiner gelich 8 und vorheriger wert grösser 8
dann ist sp11 abgeschaltet?
das untere auch keine Ahnung warum denn zwei Trigger?
für was?
Schreibe bitte einfach was das Ergebnis sein soll, dann kann ich Dir sagen, wie das Blockly auszusehen hat. -
@Azrael
Dinge die falsch sind:- trigger im trigger - das geht nie gut
- timeout im trigger ohne Schutz vor mehrfachstart - der läuft öfter
- trigger auf aktualisiert ohne und mit Bestätigung - auch die kommen meist zu oft.
Ansonsten muss ich @Alex-0 zustimmen: beschreib mal was das tun soll, sonst wird das nichts.
A.
-
@Asgothian
Eins hast noch vergessen
Mit ner Funktion zu arbeiten macht nur Sinn, wenn man die auch mehrfach verwendet, ansonsten sorgt die nur für Unübersichtlichkeit und mehr unnötigen Code. -
Hallo alle zusammen,
vielen Dank soweit. Ich habe da glaube ich einen Denkfehler gehabt.
Ich dachte ich muss erstmal die ganze Aufgabe Triggern bevor der Wert (8 Watt) geprüft wird.
Daher dachte ich die Prüfung auf 8 Watt geschieht so nur wenn die Steckdose eingeschaltet ist.
Die Funktion habe ich genommen um ggf. später mehrere Steckdosen für eine ähnliche Arbeitsweise in einem Script zusammen zu fassen.Ziel ist eigentlich einfach nur:
Bild 1:
Falls die Steckdose eingeschaltet und die Wattzahl unter 8 Watt liegt schalte die Steckdose ab.Bild 2:
Sobald die Handy von meiner Freundin und mir länger wie 10 Minuten aus dem Haus sind schalte bestimmte Dinge ab. Hier ist das Telegram eben aktuell nur zum testen da.Gruß
Alex -
@Azrael
ah ok, alles klar also zu block 1:
einfach deine Objekte noch auswählen.Code:
zu Block 2:
hier mit einem Trigger arbeiten. Eigentlich müsste der erste Trigger ausreichen und dann deine Bedingung setzen.
-
-
Hallo Zusammen,
wollte noch kurz Feedback geben.
Ich hatte das alles umgesetzt, und seither klappt es Prima.
Vielen Dank an alle!VG