Capabilities
Intrusion Alarm Panel
Domain intrusion_alarm_panel: states, services, device classes and features.
Entity ids in this domain look like intrusion_alarm_panel.<object_id>.
Use in preferences
{ key: 'device', label: 'Device', type: 'entity', domainFilter: 'intrusion_alarm_panel', required: true }States
getState() returns the raw token. subscribe filters, entity.is() and matchesState() also accept the friendly label the app shows (any case; spaces, hyphens and underscores interchangeable).
| Device class | DISARMED | ARMING | ARMED_AWAY | ARMED_STAY | PENDING | TRIGGERED |
|---|---|---|---|---|---|---|
| any | Disarmed | Arming | Armed Away | Armed Stay | Pending | Triggered |
subscribe($g.device, { to: 'DISARMED' }, onChange);
subscribe($g.device, { to: 'Disarmed' }, onChange); // same thing, by label
if ($g.device.is('Disarmed')) { /* … */ }Services
Also routable (IntrusionAlarmPanelServices), not in the wizard catalog — callable as entity.<service>(); the integration may reject unsupported ones at runtime:
armAway, armStay, armStayWithPin, cancelPending, confirmAlarm, disarm, silenceAlert, trigger, updateConfig