I suspect this is a simple issue, but I'm not exactly sure how to make this work.
I have multiple "house states": Weekday, Weekend, Holiday, and Vacation. Most of these are self explanatory, and are automatically changed based on a schedule. Vacation is used when we leave town.
So I have a series of things that are triggered when the houseState is changed to Vacation:
-- Alarm armed to max
-- certain lighting schedules changed
-- outdoor speakers disabled
-- etc, etc, etc.
-- the light by our exit door is even blinked to show that Indigo received the change and executed the commands (I thought that was a nice touch)
That is all easy to do with a single trigger on "variable houseState changed to vacation".
But I am having trouble figuring out how to reverse these changes when the house is taken out of Vacation mode and changed to one of the other states.
I can't just trigger on "variable houseState becomes not equal to Vacation", right? I assume that means "the variable just took a value of anything other than Vacation," and not, "the value changed away from the value Vacation." Am I correct on that?
Because that would execute every time the houseState changed to anything other than Vacation (such as the change from weekday to weekend on Saturday morning).
And I don't think I can put a conditional on the tridder like "houseState becomes not equal to Vacation, execute actions if houseState is equal to Vacation", because the state would have already chaged to something else before the conditional was checked, and therefore the conditional would never be met.
I think I am missing some easy solution to detect a change away from a particular variable value, irrespective of what the variable value becomes.
Thanks.