The Need
Gladys has a Panic mode, and today is the closest thing to it when the alarm goes off. But it’s not the same thing: panic is someone voluntarily pressing a button. An intrusion is a sensor detecting something. Both deserve different reactions, and we need to be able to distinguish them in a scene.
Second issue: when a scene reacts to the alarm, it knows almost nothing. Not which sensor triggered it, not in which room, not in which mode the alarm was, not who disarmed it. Impossible to send a notification that says « Intrusion — garage door » instead of an anonymous « alarm triggered. »
Finally, two small issues already mentioned elsewhere on the forum naturally fit here: testing multiple modes at once in a condition and triggering a scene on code entry.
What is Expected
Scene triggers that cover the full life of the alarm:
- requested arming, armed alarm, disarmed alarm
- entry delay started
- alarm triggered — distinguishing intrusion and panic
- code entered, code refused, sensor ignored
And for each, a usable context in the actions: the mode, the sensor, the room, the user, the time.
What it Would Look Like
WHEN
Alarm ▸ triggered by an intrusion
IF
Alarm ▸ the mode is [ Night ] [ Away ]
THEN
Living room siren ▸ trigger
Lights ▸ turn all on
Notification ▸ "Intrusion: {{alarm.sensor}}
({{alarm.room}}) at {{alarm.time}}"
Questions to Decide
- What is the exact list of triggers to expose? Too few and we fall back into DIY; too many and the scene editor becomes unreadable.
- What context information: sensor, room, mode, user, time — others?
- Should there be an end-of-alert event? « The alarm is no longer sounding » is useful for turning off a siren or putting away the lights.
- Should the alarm engine propose default actions (trigger a designated siren), or leave everything to the scenes? The « nothing is imposed » side is consistent with Gladys, but requires everyone to write at least one scene for the alarm to make noise.
- Should there be a history of alarm events viewable in the interface, independent of the scenes? Over what depth?
Complexity and Dependencies
Medium. Part of it can be done without waiting for anything: multi-mode conditions, the trigger on code, the panic/intrusion distinction. The context « which sensor triggered » assumes, however, that Gladys knows the alarm sensors — see Alarm: declare monitored sensors and choose which are active in each mode.
This request is part of a set from the discussion Gladys Alarm System (needs F01 and F06).