From 7a32a333da23e2e402311df1fe9bc01171ab4af9 Mon Sep 17 00:00:00 2001 From: Bohdan Bahno Date: Mon, 29 Jun 2026 00:54:00 +0100 Subject: [PATCH] Migrate to notifying all devices on active appliance --- ...ncy_Socket_Control_with_Notifications.yaml | 40 +++++++------------ 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/Occupancy_Socket_Control_with_Notifications.yaml b/Occupancy_Socket_Control_with_Notifications.yaml index dafd20c..82ff93a 100644 --- a/Occupancy_Socket_Control_with_Notifications.yaml +++ b/Occupancy_Socket_Control_with_Notifications.yaml @@ -1,6 +1,6 @@ blueprint: - name: Occupancy Socket Control with Power Alert (Multi-Device) - description: Turns off sockets when everyone leaves home and turns them back on when someone returns. Sends an alert to multiple chosen mobile devices if an appliance was actively drawing power when the home became empty. + name: Occupancy Socket Control with Global Power Alert + description: Turns off sockets when everyone leaves home and turns them back on when someone returns. Automatically sends an alert to all mobile devices if an appliance was actively drawing power when the home became empty. domain: automation input: home_zone: @@ -34,13 +34,6 @@ blueprint: step: 0.1 unit_of_measurement: W default: 1.0 - notify_devices: - name: Notification Devices - description: Select one or more mobile devices to receive the alert. - selector: - device: - integration: mobile_app - multiple: true mode: restart @@ -48,7 +41,6 @@ variables: switch_target: !input target_switches sensor_entity: !input power_sensor zone_entity: !input home_zone - target_devices: !input notify_devices trigger: - platform: zone @@ -74,27 +66,23 @@ action: entity_id: !input home_zone below: 1 sequence: + # Check power consumption before sending notifications - if: - condition: numeric_state entity_id: !input power_sensor above: !input power_threshold then: - # Loop through each selected device and push the notification - - repeat: - for_each: "{{ target_devices }}" - sequence: - - domain: mobile_app - type: notify - device_id: "{{ repeat.item }}" - title: "⚠️ Appliance Safely Turned Off" - message: >- - {% set switch_entity = switch_target.entity_id if switch_target.entity_id is string else (switch_target.entity_id | first | default('')) %} - {% set name = state_attr(switch_entity, 'friendly_name') | default('An appliance') | lower %} - {% set area = area_name(switch_entity) | default('') %} - {% set zone_name = state_attr(zone_entity, 'friendly_name') | default('home') | lower %} - - The {{ name }}{% if area %} in the {{ area | lower }}{% endif %} was actively drawing power when you left {{ zone_name }}. It has been shut down automatically. Please verify if this requires further attention. - + - action: notify.notify + data: + title: "⚠️ Appliance Safely Turned Off" + message: >- + {% set switch_entity = switch_target.entity_id if switch_target.entity_id is string else (switch_target.entity_id | first | default('')) %} + {% set name = state_attr(switch_entity, 'friendly_name') | default('An appliance') | lower %} + {% set area = area_name(switch_entity) | default('') %} + {% set zone_name = state_attr(zone_entity, 'friendly_name') | default('home') | lower %} + + The {{ name }}{% if area %} in the {{ area | lower }}{% endif %} was actively drawing power when you left {{ zone_name }}. It has been shut down automatically. Please verify if this requires further attention. + # Turn off the target sockets - action: switch.turn_off target: !input target_switches