NEWS
Anfängerfrage zu Skripten: Pro Abfrage ein eigenes Script?
-
Sorry, aber ich habe mal eine ganz dumme Frage: Wenn ihr Skripte zum Abfragen einer Fernbedienung schreibt, nehmt ihr dann für jede Taste ein eigenes Script? Ich bin dabei, eine Routine für meine Tint Remote Fernbedienung zu erstellen. Zum Beispiel nutze ich für die Ein/Aus-Taste einen "Falls Objekt-Trigger" (true) dann mache etwas. Aber dort kann ich ja keine If-Then-Else-Abfrage wie bei den Logikbausteinen nutzen. Und wenn ich anstatt des Triggers einen Logikbaustein nehme, klappt es nicht.
-
Dir steht beides frei. Ein Script je on-Event (Trigger) oder auch alle on-Events der FB in ein Script. Ich würde letzteres bevorzugen. Ein if-then-else bei den on-Events ist nicht notwendig, da du im Script mehrere on-Events registrieren kannst. Es wird dann nur der Code im Script ausgeführt, welcher "dazu" gehört.
-
@Uhula Danke für die schnelle Antwort. Hast du vielleicht einen kurzen Beispielcode? Was meinst du mit On-Event der FB?
-
Das, was du als "Falls Objekt-Trigger" bezeichnet hast. Siehe hier unter "on - subscribe": https://github.com/ioBroker/ioBroker.javascript/blob/master/docs/en/javascript.md
-
@Uhula Danke!
-
@Uhula said in Anfängerfrage zu Skripten: Pro Abfrage ein eigenes Script?:
on - subscribe
Hast du das ungefähr so gemeint?
// Power on({id: "zigbee.0.00158d0003470e01.state", change: 'ne'}, function (data) { console.log('Ein/Aus-Taste gedrückt'); }); // Helligkeit erhöhen on({id: "zigbee.0.00158d0003470e01.brightness_up_click", change: 'ne'}, function (data) { console.log('Brightness up-Taste gedrückt'); }); // Helligkeit verringern on({id: "zigbee.0.00158d0003470e01.brightness_down_click", change: 'ne'}, function (data) { console.log('Brightness down-Taste gedrückt'); }); // Farbrad on({id: "zigbee.0.00158d0003470e01.color", change: 'any'}, function (data) { console.log('Farbrad gedrückt!'); }); // Farbtemperatur on({id: "zigbee.0.00158d0003470e01.colortemp", change: 'any'}, function (data) { console.log('Farbtemperatur gedrückt!'); });
-
@Uwe2020 Genau so!