Created
April 29, 2026 10:31
-
-
Save milperks/2fd07c9ee9d902627b71a6f37b62704a to your computer and use it in GitHub Desktop.
Home assistant Alarmo automation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| alias: Alarm system | |
| description: "" | |
| #Trigger IDs used to direct automation to certain actions | |
| triggers: | |
| - trigger: state | |
| entity_id: | |
| - alarm_control_panel.alarmo | |
| to: triggered | |
| id: Triggered | |
| - trigger: event | |
| event_type: mobile_app_notification_action | |
| event_data: | |
| action: disarm_alarm | |
| id: DisarmMobile | |
| - device_id: b9ac5f68d3182e35d621668a97454abb | |
| domain: alarm_control_panel | |
| entity_id: 1239d4cc8cdd1acddbd584b28572cc0f | |
| type: disarmed | |
| trigger: device | |
| id: Disarmed | |
| - trigger: time | |
| at: "08:30:00" | |
| id: Morning | |
| conditions: [] | |
| actions: | |
| - choose: | |
| - conditions: #This triggers the alarm. It generates a TTS notification and a normal notification with an action button to disable. I set a delay of 15 seconds in case I want to disable it and then the device alarms are triggered if the alarm is still in the 'triggered' state (rather than having been disabled). | |
| - condition: trigger | |
| id: | |
| - Triggered | |
| sequence: | |
| - parallel: | |
| - action: notify.mobile_app_ursula | |
| metadata: {} | |
| data: | |
| message: π¨π¨π¨ Home alarm triggered!! π¨π¨π¨ | |
| data: | |
| actions: | |
| - action: disarm_alarm | |
| title: Disable | |
| destructive: true | |
| channel: Alarm | |
| importance: max | |
| vibrationPattern: 100, 1000, 100, 1000, 100 | |
| notification_icon: mdi:alarm-light | |
| - data: | |
| message: TTS | |
| data: | |
| tts_text: >- | |
| Home alarm has been triggered! Home alarm has been | |
| triggered! Home alarm has been triggered! Home alarm has | |
| been triggered! | |
| media_stream: alarm_stream_max | |
| action: notify.mobile_app_ursula | |
| enabled: true | |
| - delay: | |
| hours: 0 | |
| minutes: 0 | |
| seconds: 15 | |
| milliseconds: 0 | |
| - choose: | |
| - conditions: | |
| - condition: state | |
| entity_id: alarm_control_panel.alarmo | |
| state: triggered | |
| sequence: | |
| - parallel: | |
| - action: light.turn_on | |
| metadata: {} | |
| data: {} | |
| target: | |
| entity_id: | |
| - light.kitchen_lights | |
| - light.upstairs_hall_light | |
| device_id: 9c0906484324524a5a66ac4d9cc3bd5b | |
| - action: eufy_security.trigger_base_alarm_with_duration | |
| data: | |
| duration: 300 | |
| target: | |
| entity_id: | |
| - alarm_control_panel.eric | |
| enabled: true | |
| - action: eufy_security.trigger_camera_alarm_with_duration | |
| metadata: {} | |
| data: | |
| duration: 300 | |
| target: | |
| entity_id: | |
| - camera.back_garden | |
| - camera.front_door | |
| - camera.garage | |
| - conditions: #This disables the alarm and is triggered by either tapping the notification action defined in the trigger automation or by a button entity on the dashboard. | |
| - condition: trigger | |
| id: | |
| - DisarmMobile | |
| - Disarmed | |
| sequence: | |
| - parallel: | |
| - device_id: 9cf96a1ead5d7d695029b4de846167fb | |
| domain: button | |
| entity_id: 834b827a1c538282ea9773ec766214a7 | |
| type: press | |
| - action: alarm_control_panel.alarm_disarm | |
| metadata: {} | |
| data: {} | |
| target: | |
| entity_id: alarm_control_panel.alarmo | |
| - device_id: dc1e4ef9baa3adeeec12e29b623c7c33 | |
| domain: button | |
| entity_id: 903a002b960fec6916d58b788940a8e0 | |
| type: press | |
| - device_id: d3a7ecbd2a605d2a853b5c6fbbe74588 | |
| domain: button | |
| entity_id: f12f24d9c1a303ac49246d5bc9d601df | |
| type: press | |
| - device_id: 6ee45a7b5f6b85b944236e0f87d7f13d | |
| domain: button | |
| entity_id: 116e3ba61bb0ad7db9b8846a2208cb72 | |
| type: press | |
| - conditions: #This automatically disables the alarm when 'morning' is triggered at 8:30. This is a failsafe in case my normal morning routine doesn't run. Added in a condition to check if it is already disabled as otherwise it logs errors.. | |
| - condition: trigger | |
| id: | |
| - Morning | |
| - condition: not | |
| conditions: | |
| - condition: state | |
| entity_id: alarm_control_panel.alarmo | |
| state: disarmed | |
| sequence: | |
| - device_id: b9ac5f68d3182e35d621668a97454abb | |
| domain: alarm_control_panel | |
| entity_id: 1239d4cc8cdd1acddbd584b28572cc0f | |
| type: disarm | |
| mode: parallel | |
| max: 5 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment