Can someone offer an opinion on the the best way to accomplish these 2 simple things:
- Add randomization to the timing of certain rules:
When not at home, I would like certain lights to go on/off with a bit of randomness so that it does not appear to be programmatic. i.e. NOW: lights x,y and z turn on at sunset, and turn off at 11:45 pm. GOAL: A random interval inserted before every on or off command so that each day the timing is slightly varied. Presently the only way I can think of to do this would be to create a parent rule, which triggers a list of children rules (x,y and z), each child having 2 events, some kind of sleep timer (a script?) and then send the command itself. Is there a cleaner way to do this? Should I skip the GUI and just write a script?
- I would like to opt-out of certain automation rules, if the related thing was recently manipulated by a person.
e.g. If a light was turned on by a rule, the light can/should also be turned off by a rule. BUT if the light was turned on by a person, i prefer that the person overtakes responsibility for the state of the thing, and certain automation rules should no longer apply.
This would mean that certain people wouldn’t get upset when she finds herself in the dark due to a bot/rule because; “obviously I want the lights on, I JUST turned the lights on”!
I can imagine any automation rule setting a state like “bot-activated” to be “true”, and then ONLY fire related automation rules if “bot-activated” is still true, however, unless I manipulate the “bot-activated” state whenever controls are manually manipulated (without a rule), it won’t actually accomplish the goal. What’s the concept I’m missing here?
I’m still pretty new to this. Your thoughts are much appreciated.