The short version of this is: Can a RuleMachine rule be created that mimics the arming pre-check (described in this thread) and which can send or speak a notification that identifies the specific "open/unlocked" device?
I created a simple Triggered Rule that checks the window and door sensors in the house, in effect so that I can check whether or not the HSM will actually arm the house before I leave the geofence that triggers Away mode. (It's annoying to get to the edge of a geofence on foot, only to find that the house couldn't arm itself!)
So I created a rule that mimics the routines that HSM executes when arming the house, so that I can find out if my house isn't going to be secured before I'm blocks away:
[Library Window, Front Door, Basement Outside Door, Garage Door, Server room window, Kitchen door to deck] any open
When there are any open sensors, I get sent PushOver notification ("The house is not secure. The %device% is %value%.")
The app is triggered by a Virtual Momentary button ("Security check"), pushed either on a dashboard, or by voice command to Alexa.
When I run it with one of the doors open, however, I get the notification
"The house is not secure. The Security Check is on."
Because of course! The device triggering the event is the Security Check button, so %device% is being interpreted as referring to the trigger button, rather than the offending door sensor.
I thought maybe I'd have to create a set of individual Rule-only Rules ("front door open","back door open") each of which has its own
PushOver: %device% is %value%
statement in the
Select Actions for False section. So I did that, and then I created a simple Trigger-only Rule that would run each of the Rule-only Rules. But again, because the trigger is the "event device" I guess, my PushOver messages always say "Security Check" instead of the failing device.
Essentially, I'm roughly mimicking the Rule shown here, but you'll notice that the notification there can only muster "Front door closed or other door open."
Is it possible that there is an expanded placeholder vocabulary that has something like %target% or something? Or that %device% could somehow adopt a contextual meaning that allows it to do double-duty?
Even easier, maybe — could HSM simply segment the existing pre-arming check as a callable event by itself?