
Actualizado el 03 de febrero de 2026
Automatizaciones de Calendario en Home Assistant: La Guía Definitiva 2026
Las automatizaciones de calendario en Home Assistant son una de las herramientas más potentes y, a la vez, más sencillas de implementar para llevar tu hogar inteligente al siguiente nivel. Permiten ejecutar acciones basadas en el inicio o el final de un evento programado, con la flexibilidad de añadir un desfase de tiempo para anticiparnos o reaccionar a dichos eventos. En esta guía actualizada para 2026, exploraremos a fondo cómo dominar los disparadores de calendario para crear una domótica verdaderamente proactiva.
Lo mejor de esta funcionalidad es su versatilidad. Es compatible tanto con el calendario local que puedes gestionar íntegramente dentro de Home Assistant, como con servicios externos a través de la integración de calendario de Google u otros calendarios compatibles con CalDAV. Esto abre un mundo de posibilidades: desde encender las luces 15 minutos antes de que termine tu jornada laboral hasta recibir notificaciones personalizadas para eventos importantes.
Fundamentos de los Disparadores de Calendario
El concepto central es el «disparador» (o trigger). En una automatización, el disparador es la condición que inicia la secuencia de acciones. Para los calendarios, tenemos dos eventos principales que podemos usar como disparador:
start: La automatización se ejecuta cuando un evento del calendario comienza.end: La automatización se ejecuta cuando un evento del calendario finaliza.
Además, podemos usar el parámetro offset para ajustar el momento exacto del disparo. Por ejemplo, un offset de -00:15:00 en un evento start hará que la automatización se ejecute 15 minutos antes del inicio del evento. Si fuera positivo (00:15:00), se ejecutaría 15 minutos después.

Creando tu Primera Automatización de Calendario
En 2026, Home Assistant ofrece un editor visual muy potente que facilita enormemente la creación de automatizaciones sin necesidad de tocar una sola línea de código YAML. Sin embargo, entender la estructura YAML sigue siendo útil para configuraciones más complejas.
Método 1: Usando la Interfaz de Usuario (Recomendado)
- Navega a Ajustes > Automatizaciones y escenas.
- Haz clic en el botón azul «Crear automatización».
- Selecciona «Crear nueva automatización».
- En la sección «Disparadores», haz clic en «+ Añadir disparador».
- En el menú desplegable, elige «Calendario».
- Configura las opciones:
- Entidad: Selecciona tu
entity_idde calendario (ej:calendar.personal). - Evento: Elige si quieres que se dispare al Inicio o al Fin del evento.
- Desfase: Introduce el desfase de tiempo si es necesario (ej:
-00:15:00).
- Entidad: Selecciona tu
- Añade las condiciones y acciones que desees ejecutar.
Método 2: Editando en YAML
Si prefieres el control total, puedes definir el disparador directamente en YAML. La estructura básica es la siguiente:
automation:
- trigger:
- platform: calendar
# Valores posibles: start, end
event: start
# El entity_id de tu calendario
entity_id: calendar.personal
# Desfase de tiempo opcional para disparar antes o después del evento
offset: "-00:15:00"
# ... resto de tu automatización (condiciones y acciones)Nota importante sobre el modo de ejecución: Es recomendable evitar el modo single para las automatizaciones de calendario. Si varios eventos coinciden a la misma hora, solo se ejecutaría una instancia. Utiliza modos como queued o parallel para asegurar que todas las automatizaciones se disparen correctamente. Ten en cuenta también que los calendarios se actualizan cada 15 minutos, así que al hacer pruebas, crea los eventos con más de 15 minutos de antelación.
Ejemplos Prácticos de Automatizaciones de Calendario
Veamos cómo aplicar estos conceptos para resolver necesidades reales. A continuación, he preparado varios ejemplos, desde los más básicos hasta algunos más avanzados.
Ejemplo 1: Notificación de Eventos
Esta automatización envía una notificación persistente en Home Assistant al comienzo de cualquier evento en el calendario calendar.personal.
automation:
- alias: "Notificación de evento del calendario"
trigger:
- platform: calendar
event: start
entity_id: calendar.personal
action:
- service: persistent_notification.create
data:
message: "Evento: {{ trigger.calendar_event.summary }} a las {{ as_timestamp(trigger.calendar_event.start) | timestamp_custom('%H:%M') }}"
title: "Recordatorio de Calendario"Ejemplo 2: Encender y Apagar Luces Automáticamente
Imagina que tienes un evento en tu calendario llamado «Noche de cine». Esta automatización encenderá las luces del salón cuando empiece el evento y las apagará cuando termine.
automation:
- alias: "Horario de luces para eventos"
trigger:
- platform: calendar
event: start
entity_id: calendar.device_automation
- platform: calendar
event: end
entity_id: calendar.device_automation
condition:
- condition: template
value_template: "{{ 'Noche de cine' in trigger.calendar_event.summary }}"
action:
- service: "light.turn_{{ 'on' if trigger.event == 'start' else 'off' }}"
target:
entity_id: light.luces_salonEjemplo Avanzado 1: Notificación por Telegram con Antelación
Este ejemplo es más útil en el día a día. Nos avisará por Telegram 10 minutos antes de que comience cualquier evento que contenga la palabra «Reunión» en su título.
automation:
- alias: "Aviso de reuniones por Telegram"
trigger:
- platform: calendar
event: start
entity_id: calendar.trabajo
offset: "-00:10:00"
condition:
- condition: template
value_template: "{{ 'Reunión' in trigger.calendar_event.summary }}"
action:
- service: notify.telegram_bot_personal # Reemplaza con tu servicio de notificación
data:
message: "Recordatorio: La reunión '{{ trigger.calendar_event.summary }}' empieza en 10 minutos en {{ trigger.calendar_event.location | default('ubicación no especificada') }}."Ejemplo Avanzado 2: Climatización Inteligente
Si tienes un evento recurrente para marcar el final de tu jornada laboral, puedes usarlo para que tu casa te reciba con la temperatura perfecta. Esta automatización enciende la calefacción 30 minutos antes de que acabe tu jornada, siempre que la temperatura exterior sea inferior a 15°C.
automation:
- alias: "Activar climatización antes de llegar a casa"
trigger:
- platform: calendar
event: end
entity_id: calendar.trabajo
offset: "-00:30:00"
condition:
- condition: numeric_state
entity_id: sensor.temperatura_exterior
below: 15
action:
- service: climate.set_temperature
target:
entity_id: climate.termostato_salon # Por ejemplo, un termostato Airzone o un cabezal Aqara
data:
temperature: 21
hvac_mode: heatVariables de Activación del Calendario
Cuando un disparador de calendario se activa, pone a nuestra disposición una serie de datos (variables) sobre el evento que podemos usar en nuestras condiciones y acciones. Estas son las variables de activación de calendario más importantes:
| Variable de Plantilla | Datos |
|---|---|
trigger.platform | Valor fijo: calendar |
trigger.event | El tipo de evento que ha disparado la automatización: start o end. |
trigger.calendar_event | El objeto completo del evento del calendario. |
trigger.calendar_event.summary | El título o resumen del evento. |
trigger.calendar_event.start | Fecha y hora de inicio del evento, ej: 2026-04-10 11:30:00-07:00. |
trigger.calendar_event.end | Fecha y hora de finalización del evento, ej: 2026-04-10 11:45:00-07:00. |
trigger.calendar_event.all_day | Valor booleano (true/false) que indica si es un evento de día completo. |
trigger.calendar_event.description | La descripción detallada del evento, si está disponible. |
trigger.calendar_event.location | La ubicación del evento, si está disponible. |
trigger.offset | El objeto de desfase de tiempo (TimeDelta) configurado en el disparador. |
Consideraciones Adicionales para 2026
Gestión de Zonas Horarias y Eventos Recurrentes
Una pregunta frecuente es cómo se gestionan las zonas horarias y los eventos que se repiten. La buena noticia es que Home Assistant lo maneja de forma transparente:
- Zonas Horarias: Home Assistant respeta la información de zona horaria incluida en los eventos de calendarios externos como el de Google. Para el calendario local, utilizará la zona horaria configurada en tu instancia de Home Assistant. Es crucial asegurarse de que la configuración general de tu sistema (en Ajustes > Sistema > General) sea correcta.
- Eventos Recurrentes: ¡Funcionan sin problemas! El disparador de calendario tratará cada ocurrencia de un evento recurrente como un evento individual. Si tienes una reunión todos los lunes a las 9:00, la automatización se disparará todos los lunes a esa hora.
Con esta guía, tienes todo lo necesario para empezar a exprimir el potencial de las automatizaciones de calendario en Home Assistant. Te animo a que experimentes con tus propios calendarios y descubras nuevas formas de hacer tu hogar más inteligente y adaptado a tu ritmo de vida.
