Integración domótica VeSync (Levoit), gratuita y de código abierto

Purificadores y humidificadores Levoit, enchufes Etekcity, a través de la nube VeSync.
Esta integración controla desde Gladys los dispositivos de la aplicación VeSync: los purificadores de aire y los humidificadores Levoit, y los enchufes inteligentes Etekcity. Funciona a través de la nube de VeSync, como la aplicación y como la integración de Home Assistant.
Desarrollada sin el hardware ni una cuenta VeSync: el código sigue fielmente la biblioteca pyvesync (que usa Home Assistant) y sus respuestas grabadas, pero aún no se ha probado con un dispositivo real. Sus comentarios son bienvenidos en GitHub.
Sin relación con VeSync, Levoit ni Etekcity: las marcas pertenecen a sus propietarios.
Presentación
- Cada purificador, humidificador o enchufe de su cuenta VeSync aparece en la pestaña Descubrir; usted añade a Gladys los que desee.
- Los estados se actualizan cada minuto (ajustable); una orden desde Gladys se aplica al instante.
- Dos activadores de escena: «Filtro del purificador que cambiar» y «Depósito del humidificador vacío».
- Un widget para el panel: calidad del aire y dispositivos principales.
Requisitos
- Gladys 5.1.0 o posterior.
- Una cuenta VeSync (correo y contraseña) en la que sus dispositivos ya estén configurados con la aplicación VeSync. Una cuenta creada con Google o Apple no tiene contraseña: añada una en la aplicación (Perfil, Cuenta) antes de configurar la integración.
- Gladys debe poder acceder a Internet: la integración habla con la nube de VeSync
(
smartapi.vesync.euen Europa,smartapi.vesync.comen Estados Unidos), nunca directamente con los dispositivos.
Instalación
- En Gladys, abra Integraciones y después Instalar desde GitHub.
- Pegue
https://github.com/guim31/gladys-vesyncy confirme. - Abra la integración instalada: aparece la pestaña Configuración.
Configuración
| Campo | Función |
|---|---|
| Correo de VeSync | el correo de su cuenta VeSync |
| Contraseña de VeSync | su contraseña; se queda en la configuración de Gladys, nunca en los registros |
| Región de la cuenta | Europa (por defecto) o Estados Unidos; una elección errónea se corrige al iniciar sesión y la señala «Probar la conexión» |
| Intervalo de actualización (s) | segundos entre dos lecturas de cada dispositivo añadido, 60 como mínimo (por defecto) |
| Umbral de alerta del filtro (%) | el activador «filtro que cambiar» se dispara cuando un filtro baja a este valor (10 % por defecto) |
| Idioma de los nombres de funciones | idioma de los nombres dados a las funciones de un dispositivo al añadirlo y de las listas de modos (francés por defecto) |
Guarde y pulse Probar la conexión: el mensaje indica el número de dispositivos de la cuenta, los compatibles, los modelos no compatibles y la región de la cuenta si difiere de la elegida. Si falla, el motivo aparece en rojo.
Después abra la pestaña Descubrir y añada los dispositivos que desee. El token de sesión de
VeSync se guarda en el volumen /data de la integración: un reinicio no vuelve a iniciar sesión.
Dispositivos
Los nombres son los de la aplicación VeSync. Las funciones dependen del modelo.
Purificadores de aire
Modelos: Core 200S, Core 300S, Core 400S, Core 600S, Vital 100S, Vital 200S, EverestAir, Sprout Air.
| Función | Tipo | Detalle |
|---|---|---|
| Encendido | interruptor | |
| Modo | lista | Automático, Manual, Sueño; Mascotas (Vital), Turbo (EverestAir); sin Automático en el Core 200S |
| Velocidad del ventilador | nivel de 1 a 3 o 4 | elegir una velocidad pasa el purificador al modo Manual |
| PM2,5 | sensor, µg/m³ | salvo el Core 200S, que no tiene sensor |
| Vida útil del filtro | % | salvo el Sprout Air, que no la indica |
| Bloqueo infantil | interruptor | |
| Pantalla | interruptor | el ajuste de la pantalla (algunos modelos la apagan solos en la oscuridad) |
La calidad del aire (excelente, buena, moderada, mala) la muestra el widget.
Humidificadores
Modelos: Classic 200S, Classic 300S, Dual 200S, LV600S, OasisMist 450S, OasisMist 1000S, Superior 6000S, Sprout.
| Función | Tipo | Detalle |
|---|---|---|
| Encendido | interruptor | |
| Humedad | sensor, % | la humedad medida por el dispositivo |
| Humedad objetivo | lista de 30 % a 80 % | la humedad buscada en modo Automático |
| Modo | lista | Automático, Manual; Sueño y Humedad según el modelo |
| Nivel de vapor | nivel de 1 a 2 o 9 | Dual 200S y Sprout: 2 niveles, los demás: 9 |
| Depósito de agua | estado del nivel | «Bajo» cuando el depósito está vacío, «Normal» si no |
Enchufes
| Modelo | Funciones |
|---|---|
| Etekcity 10 A (ESW01, ESW03, UE y EE. UU.), 15 A | Encendido, Potencia (W), Tensión (V), Energía de hoy (kWh) |
| Etekcity ESW10 | Encendido |
«Energía de hoy» es la energía del día que indica VeSync: vuelve a cero cada día.
Cuando un dispositivo deja de estar conectado a la nube de VeSync (desenchufado, Wi-Fi perdido), su distintivo pasa a «inaccesible»; vuelve a «nube» en cuanto responde.
Widget
El widget Calidad del aire VeSync se coloca en un panel (editar el panel, añadir un widget). Muestra:
- un mosaico por purificador (PM2,5) y por humidificador (humedad), seis como máximo, actualizados en directo;
- una fila por dispositivo (diez como máximo): la calidad del aire y el modo de un purificador, con «filtro 8 %» cuando el filtro llega al umbral; la humedad y el modo de un humidificador, o «Depósito vacío» en rojo; el estado y la potencia de un enchufe; «Sin conexión» para un dispositivo inaccesible.
El ajuste Solo este dispositivo limita el widget a un dispositivo (un widget por habitación, por ejemplo). El widget se muestra en el idioma del usuario.
Activadores de escena
| Activador | Cuándo | Variables |
|---|---|---|
| Filtro del purificador que cambiar | el filtro de un purificador baja al umbral de alerta de la configuración | nombre del purificador, vida útil del filtro (%) |
| Depósito del humidificador vacío | un humidificador indica que su depósito está vacío | nombre del humidificador |
Cada activador puede limitarse a un dispositivo o dejarse vacío para todos. Se dispara una sola vez por cambio: una vez por filtro (un filtro nuevo, de nuevo por encima del umbral, lo rearma), una vez por depósito vacío (llenarlo lo rearma). La integración compara dos lecturas sucesivas: un filtro ya bajo o un depósito ya vacío al arrancar la integración no dispara nada.
Acción de configuración
Probar la conexión (pestaña Configuración) inicia sesión en VeSync con las credenciales guardadas y vuelve a leer la lista de dispositivos. El mensaje indica cuántos dispositivos tiene la cuenta, cuántos son compatibles, qué modelos no lo son y si la cuenta está en la otra región. Si falla, el error aparece en rojo: credenciales rechazadas, VeSync inaccesible, demasiadas solicitudes.
Ejemplos de escenas
- Avisar cuando el filtro está gastado: activador «Filtro del purificador que cambiar», acción
«Enviar un mensaje»:
Cambie el filtro de \{\{triggerEvent.data.device_name\}\} (\{\{triggerEvent.data.filter_life\}\} %). - Depósito vacío: activador «Depósito del humidificador vacío», acción «Enviar un mensaje»:
El depósito de {{triggerEvent.data.device_name}} está vacío. - Aire contaminado: activador «Cambio de estado de un dispositivo» en la función PM2,5 del purificador, por encima de 35 µg/m³; acciones: poner el Modo en Automático y encender el purificador.
- Noche tranquila: a las 22:30, poner el Modo del purificador del dormitorio en Sueño y apagar su pantalla.
Actualización y cuotas
- La integración lee con su propio temporizador los dispositivos añadidos a Gladys: un dispositivo solo descubierto nunca se lee. La planificación del núcleo de Gladys («poll») es solo un respaldo, que se omite cuando el dispositivo se acaba de leer.
- Una lectura por dispositivo y por intervalo (60 s por defecto), los dispositivos uno tras otro, más la lista de dispositivos cada 30 minutos. VeSync no publica ninguna cuota: una lectura por minuto es el ritmo de la integración de Home Assistant. Solo se vuelve a iniciar sesión cuando el token caduca.
- Solo se envían a Gladys los valores que cambian, más cada valor una vez cada 12 horas para que siga siendo «reciente».
- Una contraseña rechazada detiene todas las solicitudes hasta una nueva configuración: reintentar cada minuto podría bloquear la cuenta.
Solución de problemas
- «VeSync ha rechazado el correo o la contraseña»: compruébelos en la aplicación VeSync (cerrar sesión, volver a iniciarla). Una cuenta creada con Google o Apple necesita antes una contraseña.
- «No se puede acceder a VeSync»: Gladys no tiene acceso a Internet o la nube de VeSync está caída. La integración lo vuelve a intentar sola en cada intervalo.
- Falta un dispositivo en Descubrir: «Probar la conexión» lista los modelos no compatibles. Un dispositivo eliminado de la aplicación VeSync desaparece de Descubrir.
- Un dispositivo sigue «inaccesible»: ya no está conectado a la nube de VeSync; compruébelo en la aplicación VeSync.
- La cuenta está en la otra región: elija la región que indica «Probar la conexión».
- Registros: normalmente la integración solo escribe el arranque, las pérdidas y vueltas de la
conexión y una línea por orden. Para verlo todo, añada la variable de entorno
LOG_LEVEL=debug. Ni la contraseña ni el token aparecen nunca en ellos.
Limitaciones
- Desarrollada sin el hardware: los modelos son compatibles según pyvesync y sus respuestas grabadas. Informe en GitHub de cualquier dispositivo que se comporte mal.
- No compatibles: ventiladores (de torre, de pie), bombillas, interruptores de pared, freidoras, termostatos, los purificadores LV-PUR131S y LV-RH131S, enchufes de 7 A, de exterior y de marcas asociadas. «Probar la conexión» los lista.
- Sin temporizadores, programaciones, luz nocturna, vapor caliente, secado ni reinicio del filtro: use la aplicación VeSync para ello.
- La humedad objetivo es una lista (30 % a 80 %), ya que Gladys no tiene consigna de humedad.
- Todo pasa por la nube de VeSync: sin Internet, ni lectura ni orden.
- Los nombres de las funciones se fijan al añadir el dispositivo: cambiar el idioma después solo renombra las listas de modos.
Créditos
- pyvesync (MIT, Mark Perdue y colaboradores): el protocolo de la nube de VeSync y las respuestas grabadas de sus pruebas, portados a JavaScript.
- La integración Home Assistant VeSync (Apache 2.0): el comportamiento de referencia y respuestas de prueba.
Parámetros de configuración
Estos son los parámetros que VeSync (Levoit) te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Su cuenta VeSync | section | No | Introduzca el correo y la contraseña de la aplicación VeSync, donde están configurados sus dispositivos Levoit y Etekcity. Después pulse Probar la conexión y añada los dispositivos desde la pestaña Descubrir. Sin relación con VeSync, Levoit ni Etekcity. |
| Correo de VeSync | string | Sí | |
| Contraseña de VeSync | secret | Sí | |
| Región de la cuenta | select | No | Europa para una cuenta creada en Europa, Estados Unidos para América y Japón. Una elección errónea se corrige al iniciar sesión y la señala Probar la conexión. |
| Intervalo de actualización (s) | number | No | Segundos entre dos lecturas de cada dispositivo añadido, un minuto como mínimo. |
| Umbral de alerta del filtro (%) | number | No | El activador filtro que cambiar se dispara cuando el filtro de un purificador baja a este valor. |
| Idioma de los nombres de funciones | select | No | Nombres dados a las funciones de un dispositivo al añadirlo y etiquetas de las listas de modos. |
Cómo instalar VeSync (Levoit) en Gladys
- En Gladys, abre Integraciones: VeSync (Levoit) aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/guim31/gladys-vesync:1.0.1), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/guim31/gladys-vesync.
VeSync (Levoit) requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.
¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.
Sobre las integraciones externas
VeSync (Levoit) es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene guim31, no el equipo principal de Gladys.
- Explorar todas las integraciones externas
- Descubrir las integraciones nativas incluidas en Gladys
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación