[UPDATED] Check Open Windows & Doors

I thought someone else might find this useful.

This is a port of an app I had created for ST
This reacts to number of 'triggers', when triggered it will check the configured window/door contacts to see if any are open
If open it will announce a list of open contacts with either a Music Player device or a Speech Synthesis device. (The speech synth can be the Pushover device)
If there are none then it will tell you with a (configurable) message
(If there is no 'all closed' message then the app will not attempt to speak or send a pushover message

The following 'triggers' are available:

  • Button
  • Mode Change
  • Switch
  • Time
  • Water Sensor
  • Nest Heating
  • Nest Cooling
  • Standard Thermostat Heating
  • Standard Thermostat Cooling

Easy to use, it has worked for me on ST for a couple of years, so I've brought it to Hubitat

You can find it here:


As always, please let me know if you have any problems

Updated 02/10/2018
Child Version: 2.0.0

Four new triggers:

Nest Heating
Nest Cooling
Standard Thermostat Heating
Standard Thermostat Cooling

Updated 02/10/2018
Child Version: 1.8.0

Added two new features.
Trigger by 'Time'
Trigger by 'Button'

Updated 01/10/2018
Child Version: 1.6.0

Added 'Mode' switching
Removed multiple commas (,) from 'join' section so it looks better when used with Pushover

Updated 28/09/2018
Child Version 1.5.0
Parent Version 1.0.0

Converted to Parent/Child app

Please delete previous version as they are no longer supported

Updated 28/09/2018
Version 1.4.0

Now added the ability to trigger from a water sensor (I use it to advise of any open windows if it's raining )
Also.. A new switch feature...
You can configure a switch to turn on/off with the message if any open or all closed

I have to thank @Royski for his help in debugging and testing this feature

Updated 28/09/2018
Version 1.2.0
Now added the ability to use a 'speech synthesis' device (which can also be used with a PushOver driver)



This is awesome @Cobra . Pretty much what I have attempted in RM (previously a webCoRE Piston I had for a long time). The Piston was triggered by a virtual switch (Goodnight), which checked all contacts defined in my variable. Then based on the outcome (contacts open/closed), ran the triggers. If contacts were found open, I was told which and to close them and run again. If all were closed, it would then continue to bid me Goodnight, and switch all selected devices off.

How difficult would it be to add an outcome of the check, and then have predefined switches turned off? Feel free to tell me to **** off by the way :slight_smile:


Hey Andy,
Great app but I'm having just one issue. My Google Home Assistant device isn't showing up as a speaker option.


I feel like I am missing something obvious here...
Installed the code into the apps code but I do not see it on the apps page.

You don't see this?


After saving within the apps code, you need to 'load' the app.


@Royski @bptworld

OK... this was supposed to be a little 'quickie' that I didn't need to do anything with..

So.. Brian, you want me to rewrite it for speech synth :slight_smile:
and Roy... I ain't got a clue what you want!! :slight_smile:
Something with triggering a switch?


yeah I am an idiot, was blind :stuck_out_tongue:
All good now.


haha, really sorry mate.

Effectively using whether they are open/closed as a trigger.

If Open, carry on an speak what is open.
If Closed then trigger switches state (on/off).

That kind of thing.
Hope that reads better, and again, please feel free to tell me to "do one". :slight_smile:


Tempted! :slight_smile:

So.. if there are no open windows/doors turn on a switch?
If there ARE open contacts then just speak?


Haha, as would I :slight_smile:

Yeah. example:-Goodnight.

  • Virtual Switch "Goodnight" as the "trigger switch".
  • App checks the contact sensors
  • Triggers the appropriate response to the speaker
  • If closed - Speaks Goodnight buddy - "turns switches/lights off" - End
  • If Open - Speaks response of what is open - You close them and run it again - End


Nope, not if it's too much work or trouble. I know this is just a hobby. Just wanted to mention that a speaker device wasn't listed.

Move along...nothing to see here.

1 Like

Half way through recoding now...

I would never leave you out Bryan :slight_smile:


Rewriting for selectable speaker mode is not too difficult (they just use different 'speak' commands)

Adding a 'useful' switch will take a little longer
I will need to give options to trigger the switch when there ARE any open contacts and when there are NO open contacts


Thanks, I do appreciate all you do.

Not a problem Andy, no idea how difficult these things are, but I know they are, the app is awesome just as it is :+1:
Totally appreciated :slight_smile:


This is working nicely! Donation inbound! Thank you for your work

1 Like

Great app and fills a hole left from when I converted from webcore piston over to HSM. Would it be hard to add Notification (pushover in my case) support, in additional to the speak. Could be the same message format. The pushover driver implements "speak" notifications normally, but it didn't show in this case.

Late at night I'd prefer it not do the voice announcement but still send a push over notification to our phones.

Thanks for all you do!

I'll be installing this as soon as @Cobra finishes the "speech synthesis" functionality! Thanks again Andy, great app!

Thank you for your donation, it is appreciated