NEWS
[gelöst] Trigger Statusänderungen
-
Hallo zusammen,
ich habe zur Überwachung meiner Fenster und der Temperaturen für drinnen und draußen Xiaomi Sensoren im Einsatz.
Aktuell haben ich zur Überwache ich jeden Sensor einzeln mit:on({id: Sensor, change: "ne"}, function (obj) { });Nun möchte ich aber zzgl. einen Überprüfung einbauen, ob die Sensoren überhaupt erreichbar sind („reachable = true“). Und ich Frage mich, ob man das nicht besser lösen kann als eine „on..“ für jeden Wert.
Denn mittlerweile habe ich über 20 Sensoren…Hat jemand eine Idee?
-
Nun möchte ich aber zzgl. einen Überprüfung einbauen, ob die Sensoren überhaupt erreichbar sind
Was möchtest du auf dieser Basis entscheiden? Wenn (erreichbar / nicht erreichbar), dann ...?
@eumats sagte in Trigger Statusänderungen:
Denn mittlerweile habe ich über 20 Sensoren…
Da denke ich an ein Array mit den Sensor-IDs, das du bei Skriptstart in einer Schleife durchläufst und die benötigten Trigger erstellst.
-
Nun möchte ich aber zzgl. einen Überprüfung einbauen, ob die Sensoren überhaupt erreichbar sind
Was möchtest du auf dieser Basis entscheiden? Wenn (erreichbar / nicht erreichbar), dann ...?
@eumats sagte in Trigger Statusänderungen:
Denn mittlerweile habe ich über 20 Sensoren…
Da denke ich an ein Array mit den Sensor-IDs, das du bei Skriptstart in einer Schleife durchläufst und die benötigten Trigger erstellst.
Ich möchte folgendes Erreichen:
Wenn reachable = false, dann schicke Telgrammeldung, dass der Sensor nicht erreichbar ist. Genauso würde ich dann meine Fenster offen/geschlossen Erkennung gerne darauf umbauen. Also wenn Fenster offen, dann Telgrammeldung.
-
Ich möchte folgendes Erreichen:
Wenn reachable = false, dann schicke Telgrammeldung, dass der Sensor nicht erreichbar ist. Genauso würde ich dann meine Fenster offen/geschlossen Erkennung gerne darauf umbauen. Also wenn Fenster offen, dann Telgrammeldung.
@eumats Dann brauchst du je einen Trigger für reachable und offen/zu. Die kannst du in etwa so bauen:
const sensorIDs = [ "sensor.0.id1", "sensor.0.id2", // ... ]; for (const sensor of sensorIDs) { on({id: sensor + ".reachable", change: "ne"}, (obj) => { //... Wertänderung verarbeiten }); // analog für Sensorwert } -
@Andre-R sagte in Trigger Statusänderungen:
@eumats mach dir doch ein Blockly Script wenn false dann Telegram Nachricht
Du hast die Frage nicht gelesen, oder? ;) Für 20 Sensoren wird das recht umständlich in Blockly
@AlCalzone sagte in Trigger Statusänderungen:
@Andre-R sagte in Trigger Statusänderungen:
@eumats mach dir doch ein Blockly Script wenn false dann Telegram Nachricht
Du hast die Frage nicht gelesen, oder? ;) Für 20 Sensoren wird das recht umständlich in Blockly
Korrekt... Außerdem mag ich Blocky nicht so.... ;-)
-
@AlCalzone doch hab ich schon gelesen. ich habs halt so gemacht. weil ich Anfänger bin und von Javascript keine Ahnung habe.

-
@AlCalzone doch hab ich schon gelesen. ich habs halt so gemacht. weil ich Anfänger bin und von Javascript keine Ahnung habe.

-
@eumats Dann brauchst du je einen Trigger für reachable und offen/zu. Die kannst du in etwa so bauen:
const sensorIDs = [ "sensor.0.id1", "sensor.0.id2", // ... ]; for (const sensor of sensorIDs) { on({id: sensor + ".reachable", change: "ne"}, (obj) => { //... Wertänderung verarbeiten }); // analog für Sensorwert }@AlCalzone
Vielen Danke für die schnelle Reaktion. Ich werde es mal versuchen für mich zu adaptieren... -
@AlCalzone
Kann ich den Namen eines Datenpunktes abfragen? Also z.B. Fenster Flur...
-
@AlCalzone
Kann ich den Namen eines Datenpunktes abfragen? Also z.B. Fenster Flur...
-
@eumats Der name steht in
getObject(id).common.name. Wenn du das häufiger brauchst, macht es Sinn, die Namen einmal zu Skriptstart zu lesen und in einer Variable zu merken.@AlCalzone
Danke!
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden