Pause/resume modes

Is there a way to pause MODES, like pausing rules?

For example, if I have modes that function well for our family, but perhaps may not work as well when guests are over, I'd like to have a GUEST mode, that can be turned on with a switch, and while that switch is on, all other modes are deactivated until that switch is turned off.

I don't want our usual morning mode to turn on at 6am, but rather keep the GUEST mode going.

Hope that makes sense?
I'm pretty sure I used to have something like that in RM, but now I can't find a way to do it.

Thanks!

If GUEST mode is initiated and ended by GUEST Switch On/Off, would the remainder of the modes be paused until it goes from On to Off, or will Day mode automatically start at 6am the next day?

Yes, by using Mode Manager app to create a "Guest" mode, and setting Set Modes At Times to "All Days" : "Don't Change" with "Skip" : [checked], you'd satisfy all of your requirements.

I've seen users do the same with a "Vacation" mode. The point is once you set "Guest" or "Vacation", so long as they have the above-mentioned behavior set, other modes won't supersede, effectively "Paused".

You can even take things a step further by allowing "Guest" mode to begin (and, optionally, end) based on a virtual Switch.

How are you settling your modes? Via Mode Manager, Rule Machine, or some other way?

You can't directly pause modes with Rule Machine... you can always manually change modes by using a dashboard tile or something. But if you use Rule Machine to automate mode changes, then you can control modes to a good degree.

For example, I have created a global hub variable called awayMode and then a set of rules that control a set of away modes. The Modes are Home, Away, Away-Secure, and Away-Occupied.

The first set of rules controls the modes. For example:
If variable awayMode = 1, set mode to Away.
If variable awayMode = 2, mode can be either Away-Secure or Vacation, depending on another hub variable value.
If variable awayMode = 3, set mode Away-Occupied
If variable awayMode = 0, set mode Home

The second set of rules controls what happens for each mode. For Example:
If mode = Away, lock all doors once they've been closed for 30 seconds if they weren't locked manually, enable motion alerts on places like back patio or front door, etc.
If mode = Away-Secure, send me an alert if any door or window is opened, motion in any area where there shouldn't be, etc.
If mode = Away-Occupied, that means nobody who lives here is here, but a trusted person with a lock code is.. so disable all alerts except critical alerts like water leaks, disable automations that may confuse someone unfamiliar with automations, notify me and lock unlocked doors or notify for open garage for over 30 minutes once it's dark out, etc...

A bunch of other rules just control the awayMode variable depending on the situation. For example, somebody presses the "ARM" button, or if the last adult in the house has left, set mode variable awayMode to 1. If the last adult in the house leaves but the babysitter or grandmother is present, set awayMode to 3., etc...

If you are using Rule Machine to set modes, just put a required expression of guest switch off. If you turn on the guest switch, it will prevent your other mode rules from running since the required expression will now be false.

2 Likes

There's also Conditional Triggers now that could probably do this, but to be honest I haven't really gone into that rabbit hole yet...

Come to think of it, yes, there is a way to effectively pause modes, using the hub variables I mentioned above...

You could use rules like:
Trigger: mode changes

Actions:
[IF] variable awayMode = 1, [THEN]
Set mode = Away
[END-IF]
[IF] variable awayMode = 2, [THEN]
Set mode = Away-Secure
[END-IF]
[END-IF]

This doesn't exactly "pause" the modes, but would effectively immediately reset the mode to the one commanded by the variable value set with Rule Machine if somebody tried to manually change it..

Thank you! I had no idea what the "skip" column meant

I personally use virtual switches for guest and vacation vs modes. Then as my home transitions into a given mode certain automations may be restricted by the guest or vacation switch. For example with my night mode, the guest room lights don’t turn off if the guest switch is on. Or automatically set day mode if motion is detected on the stairs outside of the guest room after a specific hour. If vacation is on, don’t turn on certain devices in the morning. Etc, etc.

I also have my guest and vacation switches set by calendar entries in my Google Calendar so I don’t have to remember to toggle.

I use a Virtual as well, but a Guest Virtual Presence/Switch. Using that I pause/resume rules, alter actions in the Rule Machine & button logic depending on the switch state. With the presence included in that virtual, allows for using Presence for the Modes.

ie. if Guest is present when activating my Night routine, use the custom Security Settings.

Can you explain or link to where I can learn to link to calendar?

I’d really like to make my kids morning alarm only go off on school days.

I maintain a Google integration for the community. One of my primary use cases was a school day awareness for morning automations. Here is a link to the details. It’s a bit tricky to setup the Google bits but once done you shouldn’t have to adjust. Tons of opportunities with this integration.