Skip to content

AutoArm

Alarm Auto Arming

Rhizomatics Open Source hacs

Ruff pre-commit.ci status Coverage Tests Github Deploy CodeQL Dependabot Updates




Automate the arming and disarming of the built-in Home Assistant Alarm Control Panel Integrations, with additional support for calendar integration, manual override via remote control buttons, and mobile push actionable notifications.

Why use alarm control panels?

A (virtual) Manual Control Panel is useful, even if there is no real alarm system, as a single central state of the home, and then use that to drive automations, notifications etc rather than littering notifications with checks for presence, time of day, vacations or similar.

For example, it is likely that many things will change if ARMED_VACATION applies, and you may want to have all PIR alerts silenced if alarm state is DISARMED. This builds on how real alarm systems have worked for decades.

One big obstacle to using Alarm Control Panel is having to remember to change the alarm panel state when people are in or out of the house, at night or when away on holiday. AutoArm solves that problem, and makes the Alarm Control Panel essential for any well-automated home.

Setup

AutoArm is one of the default repositories on HACS, so there's no need to register a custom repo.

Notifications will work with any HomeAssistant notification implementation, and works best with Supernotify for multi-channel notifications with mobile actions.

Alarm Panel Configuration

Autoarm will work with any Home Assistant of the Alarm Control Panel Integrations. If you don't have one, try Create an Alarm Panel

Automated Arming

See Automated Arming for the various mechanisms, options and how to configure.

Throttling

To guard against loops, or other reasons why arming might be triggered too often, rate limiting is applied around the arm call, limited to a set number of calls within the past so many seconds. Configured by rate_limit section in config.

Notifications

Two notifications are sent:

  • Alarm status has changed, by any means
  • A button has been pressed, and the arm status will be actioned with a few seconds delay

The alarm status message uses the quiet profile, and the other one normal profile. This lets you change the priority, or any of the other message content.

notify:
    common:
      service: notify.supernotify
    quiet:
      data:
        priority: low
        apply-scenarions: nerdy
    normal:
      data:
        priority: medium

If you want to send to e-mail and mobile then this will fail with a notify group unless you use very basic messages, since additional fields, like the actions in the data field for Actionable Notifications aren't supported by other notification platforms. The best way to resolve that is with Supernotify which will tune each message for the underlying transport ( mobile apps, and also e-mail, text, chime etc.) along with lots of other tuning options.

Home Assistant Features Supported

References

Built with Material for MkDocs