Alerta de luces encendidas si no hay nadie en la casa

Hola!

Arme una automatización para ayudarnos porque hay veces que llegamos a la casa y decimos chuuuu se nos quedó una luz encendida, la idea es que home assistant detecte esto, genera una notificación en el telefono y desde la misma podamos apagar las luces o generar un snooze o tiempo donde ignorará esto.

Son dos helpers los necesarios y dos automatizaciones, el codigo deben modificarlo segun sus entities en home assistant, tambien está pensado para dos personas pero pueden sumar o disminuir si necesitan, cualquier duda es bienvenida en los comentarios.

Objetivo

  • Meta: Detectar cuando dos personas están “fuera de casa” y hay luces encendidas, enviar una notificación con dos acciones: “Apagar todas las luces” o “Snooze 12h”.
  • Snooze: Bloquea la automatización por 12 horas para permitir luces encendidas (por ejemplo, limpieza), y luego se reactiva automáticamente.
  • Canal: Notificaciones interactivas vía la app móvil de Home Assistant.

Entidades y servicios

  • Personas:

    • person.person_a
    • person.person_b
  • Grupo de luces:

    • light.all_lights
  • Helper (snooze):

    • input_boolean.snooze_lights
  • Servicios de notificación móvil:

    • notify.mobile_app.phone_a
    • notify.mobile_app.phone_b

Paso a paso

1) Crear el helper de all.lights

  • Dónde: Ajustes → Dispositivos y servicios → Helpers → Crear helper.
  • Tipo: Group /.
  • Nombre sugerido: Todas las luces.
  • Verificación: En Developer Tools → States, busca “todas las luces” y copia el entity_id exacto

2) Crear el helper de snooze (input_boolean)

  • Dónde: Ajustes → Dispositivos y servicios → Helpers → Crear helper.
  • Tipo: Toggle / Interruptor (input_boolean).
  • Nombre sugerido: Snooze Luces.
  • Verificación: En Developer Tools → States, busca “snooze” y copia el entity_id exacto (ej: input_boolean.snooze_lights).
    • Si aparece con doble prefijo (ej: input_boolean.input_boolean_snooze_luces), usa ese nombre tal cual en el YAML.

3) Confirmar los servicios de notificación

  • Dónde: Developer Tools → Actions (pestaña).
  • Tip: Cambia a “Go to UI mode” si ves solo el editor YAML.
  • Buscar: En el campo “Service”, escribe notify. y selecciona tus servicios (ej: notify.mobile_app.phone_a y notify.mobile_app.phone_b).
  • Prueba: Ejecuta una notificación simple para verificar que llega al teléfono.

4) Crear la automatización que envía la notificación

  • Condiciones:
    • Ambas personas en not_home.
    • Al menos una luz encendida (light.all_lights en on).
    • Snooze apagado (input_boolean.snooze_lights en off).

5) Manejar las acciones de la notificación

  • Acciones:
    • “Apagar todas las luces” → light.turn_off sobre el grupo de luces.
    • “Snooze 12h” → Enciende el input_boolean y lo apaga después de 12 horas con un delay.

CODIGO

AUTOMATIZACION 1

alias: Aviso luces encendidas sin nadie en casa
mode: single
trigger:

  • platform: state
    entity_id:
    • person.person_a
    • person.person_b
      to: “not_home”
      condition:
  • condition: state
    entity_id: light.all_lights
    state: “on”
  • condition: state
    entity_id: input_boolean.snooze_lights
    state: “off”
    action:
  • service: notify.mobile_app.phone_a
    data:
    title: “Luces encendidas sin nadie en casa”
    message: “¿Qué quieres hacer?”
    data:
    actions:
    - action: “APAGAR_LUCES”
    title: “Apagar todas las luces”
    - action: “SNOOZE”
    title: “Snooze 12h”
  • service: notify.mobile_app.phone_b
    data:
    title: “Luces encendidas sin nadie en casa”
    message: “¿Qué quieres hacer?”
    data:
    actions:
    - action: “APAGAR_LUCES”
    title: “Apagar todas las luces”
    - action: “SNOOZE”
    title: “Snooze 12h”

AUTOMATIZACION 2

alias: Respuesta notificación luces
mode: single
trigger:

  • platform: event
    event_type: mobile_app_notification_action
    event_data:
    action: “APAGAR_LUCES”
  • platform: event
    event_type: mobile_app_notification_action
    event_data:
    action: “SNOOZE”
    action:
  • choose:
    • conditions:
      • condition: template
        value_template: “{{ trigger.event.data.action == ‘APAGAR_LUCES’ }}”
        sequence:
      • service: light.turn_off
        target:
        entity_id: light.all_lights
    • conditions:
      • condition: template
        value_template: “{{ trigger.event.data.action == ‘SNOOZE’ }}”
        sequence:
      • service: input_boolean.turn_on
        target:
        entity_id: input_boolean.snooze_lights
      • delay: “12:00:00”
      • service: input_boolean.turn_off
        target:
        entity_id: input_boolean.snooze_lights

Cómo funciona

  • Disparo: Cuando ambos person.person_a y person.person_b cambian a not_home.
  • Chequeo: Si light.all_lights está on y snooze_lights está off.
  • Acción: Envía notificaciones a ambos móviles con dos botones.
  • Respuesta:
    • “Apagar todas las luces” apaga light.all_lights.
    • “Snooze 12h” enciende el helper y lo apaga después de 12 horas; durante ese lapso no se enviarán nuevas alertas.

Posibles problemas y soluciones

  • Nombre real del helper:
    • Verifica el entity_id exacto en Developer Tools → States.
  • Servicios de notificación:
    • Usa Developer Tools → Actions → “Go to UI mode” para encontrarlos con notify..
  • No llegan notificaciones:
    • Revisa permisos de la app, conexión del dispositivo y prueba un envío manual.
  • Automatizaciones no se actualizan:
    • Usa “automation.reload” o reinicia Home Assistant tras cambios grandes.