Configura las notificaciones por email en Home Assistant y recibe alertas en tu bandeja
Las notificaciones en el sistema de domótica Home Assistant son una parte fundamental. Gracias a la posibilidad de configurar notificaciones de diferentes tipos, sabremos en tiempo real todo lo que ocurre con los diferentes sensores en nuestro hogar, e incluso podemos realizar automatizaciones complejas para realizar ciertas acciones, y, además, que nos notifique cuando se ejecuten para tenerlo en cuenta. Este sistema de domótica nos permitirá crear diferentes tipos de notificaciones, por ejemplo, podemos configurar notificaciones por Telegram, notificaciones Push y también por correo electrónico. Si te interesa configurar un servidor SMTP en Home Assistant para enviar notificaciones por email, hoy en RedesZone os lo vamos a enseñar paso a paso.
El sistema de domótica de Home Assistant es compatible con cualquier servicio de email que soporte el envío a través del protocolo SMTP. Hoy en día, la mayoría de servicios gratuitos como Gmail, Outlook o Yahoo! permiten este protocolo para enviar correos electrónicos. Sin embargo, hay un punto clave que se debe tener en cuenta antes de configurar las notificaciones por email en esta herramienta si se va a usar Gmail: hace falta crear una contraseña de aplicación. Y todo por el hecho de que se obliga a tener la autenticación en dos pasos.
Contraseña de aplicación para Gmail
No obstante, hay que tener en cuenta un aspecto muy importante si vas a usar Gmail, y es que con la obligación de tener autenticación en dos pasos en todas y cada una de las cuentas, es completamente necesario crear una «Contraseña de aplicación» para poder usar el SMTP de forma externa con sistemas como Home Assistant u otros.
En el caso de Gmail, debemos irnos a «Gestionar la cuenta de Google«, y en el menú de «Seguridad» debemos pinchar sobre «Autenticación en dos pasos«, y nos saldrá lo siguiente:
Aquí tendremos que irnos abajo del todo, y pinchar en «Contraseñas de aplicaciones«, concretamente en la flecha que indica hacia la derecha. En este menú, tendremos que crear una nueva clave de aplicación, le podemos dar el nombre de «Home Assistant». Cuando nos muestre la contraseña de aplicación, deberemos copiarla y usar cuando tengamos que introducir la contraseña de Gmail. Esta será la «nueva clave» de Gmail para la aplicación.
Una vez que hayamos conseguido la clave de aplicación para poder usarla en Home Assistant, procedemos a realizar la configuración del correo. Por lo que será el momento de continuar con el proceso de configuración en este software para que empieces a recibir las diferentes alertas de tu bandeja de entrada.
Configuración del correo en Home Assistant
Después de tener en cuenta el anterior punto, si es que en tu caso vas a usar Gmail, ya es el momento de configurar la notificación por correo electrónico en Home Assistant. Para hacerlo, debemos abrir el fichero de configuración «Configuration.yaml«. Nosotros usamos el complemento de «File Editor» que lo podéis encontrar en «Ajustes / Complementos«.
Este complemento es uno de los más usados por nosotros para escribir el código en todos los archivos de configuración que necesitamos. Por lo que hay que tenerlo bien claro en todo momento. Ahora bien, el código fuente que debéis escribir es el siguiente:
notify:
- platform: smtp
name: "Nombre que quieras para identificarlo en el menú de notificaciones"
sender: "email_del_que_envia@gmail.com"
recipient: "email_del_que_recibe_correos@gmail.com"
server: "smtp.gmail.com"
timeout: 15
port: 587
username: email_del_que_envia@gmail.com
password: clave_aplicacion_generada
encryption: starttls
sender_name: "Home Assistant - RedesZone"
Una vez ya tenemos escrito el código fuente necesario dentro de esta herramienta, hay que continuar el proceso de configuración. Y es que ahora os vamos a explicar cada una de las opciones de configuración que nos vamos a encontrar:
- name: debemos indicar un nombre descriptivo, para que cuando llamemos al servicio de «Notificaciones» en automatizaciones, podamos verlo rápidamente. Si usamos solamente un servicio SMTP de correo, podemos darle el nombre de «Gmail» como hemos hecho nosotros. Si vais a configurar varios servidores SMTP de correo, entonces tendrás que diferenciarlo claramente.
- sender: es el correo desde el que enviaremos todos los emails, debe coincidir con el «username» que añadamos.
- recipient: es el correo al que enviaremos todos los emails, no tiene por qué coincidir con el «sender». Si tenemos una cuenta de email secundaria para este tipo de servicios, aquí podremos poner nuestra cuenta de email «buena». Si solamente tienes una cuenta, entonces coincidirá con el «sender».
- server: es el dominio del servidor SMTP del proveedor de correo electrónico que uses. En el caso de Gmail debéis poner ese que os hemos puesto antes.
- timeout: debemos dar un margen (segundos) por si ocurre algún error, volver a intentarlo.
- port: es el puerto utilizado para el protocolo SMTP.
- username: nombre de usuario para autenticarnos, en el caso de Gmail, es el mismo que el del correo electrónico (con el @gmail.com incluido). Este username debería ser el mismo que el «sender».
- password: es la contraseña que hemos generado para una aplicación con la opción de Gmail, si usas otros proveedores es la contraseña de acceso.
- encryption: es el tipo de cifrado para el envío de los correos electrónicos, dependiendo del proveedor tendrás que cambiarlo. Para Gmail es «starttls» tal y como os hemos indicado.
- sender_name: es el nombre que aparecerá a la hora de recibir el correo electrónico
En la siguiente captura podéis ver nuestra configuración del «Configuration.yaml».
Hay que tener en cuenta que, una vez que hemos configurado el archivo, tendremos que pinchar en guardar, luego pulsar sobre «Herramienta para desarrolladores» y será el turno de pasar a reiniciar el Home Assistant para que recargue bien todos los archivos .yaml.
Más que nada, porque si no reiniciamos no será capaz de reconocerlo, es un paso muy importante que hay que llevar a cabo para que todo se cargue correctamente y empiece a funcionar sin problemas. Os recomendamos visitar la web oficial de SMTP en Home Assistant donde vienen explicadas todas las opciones. De esta manera, puedes encontrar muchos más detalles acerca de las diferentes opciones que hay disponibles, si es que necesitas conocer algún dato más.
Prueba de envío de un email
Una vez que ya hemos configurado de la forma correcta el correo para recibir las notificaciones en este software, es el turno de ponerlo a prueba con el envío de un email. Así podremos salir de dudas de si funciona bien o no. Para realizar una prueba rápida de un envío de correo electrónico, simplemente debes irte a «Herramientas para desarrolladores«, nos vamos a «Servicios» y después buscas el servicio de «Notificaciones» y elegimos el de «with Gmail» que es el que hemos configurado. Ahora le damos un «title» que será el ASUNTO del email, y escribimos lo que queramos en el cuerpo del mensaje.
En nuestra bandeja de correo electrónico, podemos ver el asunto del email, y también el nombre que hemos indicado para el envío del correo. Además, podemos ver el cuerpo del mensaje sin problemas (como podemos observar en la siguiente imagen):
Si queremos configurar este servicio de email en cualquier automatización, simplemente debemos elegir el servicio «Notificación with Gmail» que hemos visto antes, escribiremos el asunto del correo electrónico en «title» y posteriormente el cuerpo del mensaje en «message«, tal y como podéis ver en la siguiente captura:
Ten en cuenta que, si tienes activada la verificación en dos pasos en tu servicio de email, seguramente tengas que crear una «contraseña de aplicación» para poder autenticarnos adecuadamente mediante el protocolo SMTP, de lo contrario, no funcionará porque no estaremos autenticándonos con seguridad. Algo que necesitas en caso de usar Gmail como explicábamos al principio.
Por otro lado, si en tu caso vas a usar varios correos para enviar emails, podrás configurar tantos como tú quieras, después tendrás que elegir el correcto cuando vayas a configurar una automatización. Este protocolo es compatible con cualquier servicio como Gmail, Hotmail, Outlook, Yahoo! y en definitiva, cualquier servicio de correo ya que es un protocolo estándar. Si tienes tu propio dominio y dispones de correo, también podrás enviar emails de forma completamente automática a través de ese buzón de correo.
De esta forma tan sencilla, podemos tener la posibilidad de enviar correos electrónicos a modo de notificaciones o alertas desde nuestro Home Assistant. En nuestro caso personal, usamos Telegram para la mayoría de automatizaciones, sin embargo, también hemos usado el correo electrónico para guardar un histórico de todas las notificaciones que hemos recibido. Además, no olvides que también podrías configurar notificaciones push en Home Assistant para verlas muy rápidamente desde nuestro smartphone Android o iOS. Los avisos por correo son una muy buena alternativa a las notificaciones por Telegram, por si el servicio está caído o bloqueado en España, así como para los usuarios que no tienen cuenta de Telegram y quieren recibir todas las notificaciones en su smartphone o PC, y es que tendremos todo en la bandeja de correo.