Nur ein kleiner Tipp:
Ich verwende für gleiche/ähnliche Beispiele meine 'StateMachine', ein Javascript Programm mit welchem mann einfach State-Machines und sonstige Befehle abarbeiten kann.
Einen ersten Versuch einer Beschreibung gibt es da: http://forum.iobroker.net/viewtopic.php … atemachine
Eine StateMachiene für das Radio könnte so ausschauen:
const Machines = {
RadioLichtBad: {
_all: { timer: ["BewegungsmelderBad~+", "LichtschalterBad~+"], aus: "LichtschalterBad~-" },
aus: { _onEnter: ["radioBad-", "lichtBad-"], _onExit: ["radioBad+", "lichtBad+"], _default:true },
timer: { _timeout: "aus:30000" }
}
}
Sie reagiert auf Schalter oder Bewegung und schaltet Radio und Licht.
Das könnte man erweitern um das Licht natürlich nur bei Dunkelheit zu schalten 🙂
Die ~ bedeutet bei Änderung und +- ein(+)/aus(-).
Die Maschine hat 2 States: aus und timer. bei allen states wird '_all:' abgefragt was bedeutet dass beim Einschalten oder bei Bewegung die Maschine auf timer geht und beim ausschalten auf aus.
timer selbst geht nach 30 Sekunden auf aus.
aus schaltet Lich und Radio ein oder aus je nachdem…
Habe so etliche Steuerungen, auch mit Zeiten und lichtabhängig realisiert.
p.s.: Irgendwann werd ich das in einen Adapter packen -- wenn BlueFox mir zeigt wie ich den Javascript-Adapter dafür ergänzen oder adaptieren kann....