Imagina poder ajustar el encendido de las luces, la calefacción, o incluso el despertador, dependiendo de si es un día laboral o un festivo.


En la automatización del hogar, uno de los principales objetivos es hacer nuestra vida más sencilla, adaptando los dispositivos y acciones a nuestras necesidades cotidianas. Con Home Assistant, las posibilidades son infinitas, y una de las características más útiles para automatizaciones basadas en la rutina es la capacidad de saber si es un día laborable o festivo.

Imagina poder ajustar el encendido de las luces, la calefacción, o incluso el despertador, dependiendo de si es un día laboral o un festivo. Para esto, Home Assistant nos ofrece una integración muy práctica: WorkDay. Esta integración nos permite diferenciar entre días hábiles, fines de semana y festivos, basándose en el calendario oficial de tu país o región.

¿Por qué es importante? Las automatizaciones sin contexto pueden fallar en momentos clave. No es lo mismo la rutina de un día entre semana, donde tal vez necesitas que todo funcione con precisión y puntualidad, que un día festivo o fin de semana, donde el ritmo puede ser más relajado. Tener esta distinción hará que tu sistema domótico sea más inteligente, adaptable y eficiente.

En este artículo, te explicaré cómo configurar la integración WorkDay en Home Assistant y cómo puedes aprovecharla para que tus automatizaciones respondan de forma adecuada según el tipo de día. ¡Vamos a empezar!

Instalación de la Integración WorkDay

Como siempre que hacemos para instalar una integración nueva, nos vamos a Ajustes - Dispositivos y Servicios y luego Añadir Integración. Aquí tenemos que buscar "WorkDay" o "Día laborable".

Lo adaptamos a nuestras necesidades dando un nombre al sensor y seleccionando nuestro país:

Luego deberemos de hacer una configuración a nuestro gusto, primero indicando los días laborables, por defecto de Lunes a Viernes (pero si trabajáis también sábado se puede añadir). Y luego los días festivos, por defecto de Sábado a Domingo y vacaciones.

Si hemos seleccionado España como país (desconozco si esto es para otros países también) al final de todo podemos seleccionar de que Comunidad Autónoma somos y así se añaden los festivos de cada una.

También, podemos añadir los días de vacaciones que tenemos, aunque se pueden añadir siempre que sea necesario.

Una vez añadamos la integración, podremos revisar el sensor:

Añadir días de vacaciones

Dentro del apartado de integraciones, pulsaremos la integración y luego haremos clic sobre Configurar para añadir días de vacaciones.

Dentro del apartado Añadir vacaciones/festivos tendremos que añadir la fecha en el siguiente formato AAAA-MM-DD. Por ejemplo, este artículo se está escribiendo el 22 de octubre del 2024, la fecha que hay que introducir es 2024-10-22.

Si ahora vamos al sensor para revisar que aparece, debería de salir en OFF indicando que no es un día laboral:

También, podemos desactivar días festivos como días laborables. Por ejemplo, imagina que te toca trabajar para todos los santos, el 1 de noviembre que es festivo. Puedes añadir esa fecha en el apartado Elimina vacaciones/festivos.

Usar integración en automatizaciones

Vamos a poner un ejemplo sencillo para explicar esto, imaginemos que necesitamos que todos los días laborables a las 9h se encienda el cargador del portátil donde trabajamos. Para hacer esto, tendremos que usar la integración de WorkDay para cuando sea un día laborable active el enchufe.

El código sería el siguiente:

description: "Enciende enchufe a las 9 si es día laboral"
mode: single
triggers:
  - trigger: time
    at: "09:00:00"
conditions:
  - condition: state
    entity_id: binary_sensor.laborablevoidnull
    state: "on"
actions:
  - type: turn_on
    device_id: 987d10e9b768f3693f61214325709240
    entity_id: 982c3224dc99da91499ad0cccd8c6fd4
    domain: switch

Y vamos a verlo paso a paso. En primer lugar, el disparador que debe lanzar esta integración, será una elemento de fecha, todos los días a las 9 de la mañana:

Con una condición clara, cuando la entidad del sensor que hemos creado esté encendido (que significa que es un día laborable):

Si esto se cumple, entonces encenderás el enchufe del portátil para tener batería mientras trabajamos:

Y listo! Ahora tendremos una automatización que encenderá la batería del portátil todos los días laborables a las 9 de la mañana. Para hacer el apagado, tendremos que hacer lo mismo pero con otra hora y con la acción de apagado.


Más sobre ./voidNull

Haz que cada palabra cuente: tu donación nos inspira a seguir creando contenido. Accede al apartado de Donación para hacer tu aportación