Historial de versiones - MiWiFi XiaoHack Edition


📡 Releases automáticos desde GitHub

Las versiones más recientes se sincronizan automáticamente desde GitHub.

Mostrando 26–30 de 57 releases

📦 v3.3.4 – XiaoHack Edition

Fecha: 2025-08-02 19:01:47
Ver release original en GitHub

📝 Changelog — Integración MiWiFi

📦 Versión v3.3.4 – 2025-08-02


✨ Nuevas funciones

  • Añadir directamente funciones no compatibles a través del servicio

Cuando falla una comprobación de compatibilidad, ahora puede utilizar el nuevo servicio miwifi.add_unsupported para agregar un par modelo/característica directamente a unsupported_user.py sin editar archivos manualmente.

  • Verificación de doble capa para detectar duplicados

Ahora, el servicio comprueba tanto el archivo original __HTML_PLACEHOLDER_0__ como el archivo de usuario __HTML_PLACEHOLDER_1__ antes de añadir entradas, evitando así duplicados innecesarios.

  • Notificaciones dinámicas

Se agregaron notificaciones contextuales:

  • ➕ Agregado: Cuando se agrega correctamente un modelo/función.
  • ⚠️ Ya existe: Cuando el modelo/característica ya está presente en unsupported.py o unsupported_user.py.
  • Soporte multilingüe para nuevas notificaciones

Se han añadido nuevas claves de traducción para todos los idiomas compatibles, con el fin de proporcionar información más clara al usuario.


✅ Correcciones y estabilidad

  • Carga dinámica de módulos mejorada:

Carga correctamente unsupported_user.py incluso cuando se utilizan importaciones relativas.

  • Operaciones de archivos no bloqueantes:

Las operaciones de escritura de archivos para unsupported_user.py ahora se ejecutan de forma segura para subprocesos, evitando así el bloqueo del bucle de eventos de Home Assistant.


⚙️ Mejoras del backend

  • Refactorización de código en __HTML_PLACEHOLDER_0__:

Se agregó get_combined_unsupported() para fusionar dinámicamente unsupported.py y unsupported_user.py para realizar comprobaciones de compatibilidad.

  • Comprobador de compatibilidad extendido:

Ahora utiliza el registro combinado no compatible, lo que permite que las entradas personalizadas surtan efecto de inmediato.


✅ Compatibilidad

  • ✅ Compatible con Home Assistant 2025.7.4 y versiones posteriores.
  • 🧩 Es totalmente compatible con todas las versiones del panel a partir de la 1.3.0.

📘 Cómo actualizar

  1. Reemplace todos los archivos dentro de su carpeta custom_components/miwifi/ con el contenido de esta versión.
  2. Reiniciar Home Assistant.
  3. Utilice el nuevo servicio miwifi.add_unsupported a través de Herramientas para desarrolladores → Servicios para agregar dinámicamente funciones no compatibles.

ℹ️ Información adicional

  • Seguridad de los archivos:

Los cambios se almacenan en unsupported_user.py y se conservan durante las actualizaciones.

  • Soporte de doble capa:

Ahora la integración lee tanto del archivo unsupported.py (entradas del mantenedor) como del archivo unsupported_user.py (tus entradas personalizadas).


💖 Soporte y donaciones

Si esta integración te resulta útil y quieres apoyar su desarrollo continuo, puedes hacer una donación aquí:

Cada contribución me ayuda a dedicar más tiempo a desarrollar y mejorar MiWiFi. ¡Gracias! 🙌

📦 v3.3.3 – XiaoHack Edition

Fecha: 2025-07-24 18:52:30
Ver release original en GitHub

📝 Changelog — Integración MiWiFi

📦 Versión v3.3.3 – 2025-08-01


✨ Nuevas funciones

  • Limpieza automática para exportaciones de registros:
  • El servicio miwifi.download_logs ahora elimina automáticamente los archivos ZIP antiguos, conservando solo el más reciente.
  • Calentamiento para los manejadores de registros:
  • Ahora, todos los archivos de registro se abren y se inicializan previamente durante el arranque para evitar retrasos o bloqueos cuando se escribe el primer registro.

🛠 Correcciones críticas

  • Se eliminó el bloqueo de E/S en la inicialización del registrador:
  • Se eliminaron las advertencias de Detected blocking call to open() causadas por la creación tardía del manejador de archivos.
  • Ahora, todos los gestores de registros abren los archivos fuera del bucle de eventos, lo que mejora la estabilidad del inicio.
  • Se han corregido los errores del servicio __HTML_PLACEHOLDER_0__:
  • Se corrigió la creación del directorio usando exist_ok=True, resolviendo [Errno 17] El archivo ya existe al exportar los registros.

✅ Correcciones y estabilidad

  • Mayor fiabilidad en la detección de compatibilidad:
  • CompatibilityChecker ahora realiza hasta 5 veces (anteriormente 2), lo que reduce los falsos negativos para funciones como rom_update.
  • Capacidades detectadas previamente conservadas:
  • Si una función se detectaba como compatible anteriormente, ya no se marca como no compatible debido a fallos temporales de red o de la API.
  • 🛠️ Lógica de registro de panel fijo:
  • El panel ahora solo se vuelve a registrar si cambia la versión del frontend.
  • Evita la duplicación de mensajes de registro:
  • [MiWiFi] Versión del panel local cargada...
  • [MiWiFi] Panel registrado correctamente...
  • 🛠️ Inicialización del registrador mejorada:
  • Se inicializa solo una vez por integración, evitando así la necesidad de recrear los controladores para cada nodo.
  • Evita mensajes duplicados cuando hay varios nodos Mesh activos.
  • 🛠️ Gestión optimizada de múltiples nodos:
  • Únicamente el router principal gestiona el panel y los servicios globales.
  • 🛠 Se evitó el bloqueo durante los reinicios programados del enrutador Solo v3.3.3rc3:

Cuando el enrutador se reinicia (por ejemplo, en el reinicio programado a las 3 AM), topo_graph puede devolver temporalmente None. Ahora, la integración omite de forma segura las comprobaciones de compatibilidad en este estado, evitando AttributeError: el objeto 'NoneType' no tiene el atributo 'get'. Se han añadido registros más claros que indican cuándo se omite la comprobación de compatibilidad debido a un reinicio.


⚙️ Mejoras del backend

  • Renovación del sistema de registro:
  • Ahora, los manejadores se inicializan de forma anticipada y se calientan para evitar bloqueos durante la ejecución.
  • Gestión de registros de limpieza:
  • Los archivos ZIP exportados se eliminan automáticamente, dejando solo el archivo más reciente para su descarga.
  • 🔧 Depuración más clara:
  • Prefijos de registro diferenciados para facilitar el diagnóstico en múltiples enrutadores.
  • Mensajes más descriptivos en el panel durante las comprobaciones de versión.
  • 🔧 Preparado para la compatibilidad futura con actualizaciones dinámicas del panel.
  • Se ha mejorado el registro de eventos para indicar claramente cuándo se pospone la detección de compatibilidad debido a la indisponibilidad del enrutador (por ejemplo, un reinicio en curso).

🚫 Capacidades

  • Se ha mejorado el manejo de fallos intermitentes en las comprobaciones de compatibilidad, lo que reduce la probabilidad de que se marquen incorrectamente las funciones como no compatibles.

🆕 Modelo compatible

  • *(No se han añadido nuevos modelos en esta versión preliminar)*

🧹 Limpieza de código

  • Se ha modificado el verificador de compatibilidad para que utilice los estados de capacidad almacenados en caché cuando estén disponibles.
  • Se ha simplificado el servicio de exportación de registros con una limpieza y un manejo de errores más claros.

✅ Compatibilidad

  • ✅ Compatible con Home Assistant 2025.5.0 y versiones posteriores.
  • 🧩 Compatible con todas las versiones del panel a partir de la 1.3.0.

📘 Cómo actualizar

  1. Reemplace todos los archivos dentro de su carpeta custom_components/miwifi/ con el contenido de esta versión.
  2. Reiniciar Home Assistant.
  3. (Opcional) Utilice el servicio miwifi.download_logs para confirmar el nuevo comportamiento de exportación de registros.

ℹ️ Esta versión preliminar se centra en mejoras de estabilidad y reducción de falsos positivos en la detección de capacidades.

💖 Soporte y donaciones

Si esta integración te resulta útil y quieres apoyar su desarrollo continuo, puedes hacer una donación aquí:

Cada contribución me ayuda a dedicar más tiempo a desarrollar y mejorar MiWiFi. ¡Gracias! 🙌

📦 v3.3.2 – XiaoHack Edition

Fecha: 2025-07-15 12:02:09
Ver release original en GitHub

📝 Changelog — Integración MiWiFi

📦 Versión v3.3.2 – 2025-07-16


✨ Nuevas funciones

  • 🔍 Informe detallado de errores de conexión del router durante la configuración:

Ahora se muestran los motivos específicos del error (por ejemplo, tiempo de espera agotado, rechazo, error 500) directamente en la interfaz de usuario al agregar o editar el enrutador. Esto ayuda a diagnosticar los problemas de conexión con mayor claridad y evita mensajes vagos de "error desconocido".

🧪 Ejemplo:

❌ Error al conectar con el router: Timeout reading from 192.168.31.1
  • 📦 Nuevo servicio: __HTML_PLACEHOLDER_0__

Permite a los usuarios descargar todos los registros de MiWiFi como un archivo ZIP directamente desde el panel de integración o a través de los servicios de Home Assistant. Se genera automáticamente un enlace en el que se puede hacer clic para guardar o compartir fácilmente.

  • 🧹 Nuevo servicio: __HTML_PLACEHOLDER_0__

Elimina todos los archivos .log y los recrea instantáneamente sin necesidad de reiniciar la integración manualmente. Útil para borrar registros desde el frontend o mediante automatizaciones.

  • 💬 Notificaciones localizadas y centralizadas

Todas las notificaciones (dispositivo nuevo detectado, router no compatible, registros listos, contraseña generada, etc.) ahora se traducen dinámicamente según la configuración de idioma de Home Assistant.

  • 🧭 Clase unificada __HTML_PLACEHOLDER_0__

Ahora, todas las notificaciones y la gestión de traducciones se realizan a través de una única clase reutilizable. Esto mejora la facilidad de mantenimiento y garantiza la coherencia en todos los servicios.

  • 🌐 Se agregó soporte para la traducción al chino simplificado (zh-Hans)

✅ Correcciones y estabilidad

  • 🔁 Se redujeron los registros repetitivos al leer la versión del panel de la interfaz:

Se almacenó en caché la versión cargada (read_local_version) en la memoria para evitar saturar los registros con Versión del panel local cargada: .... Garantiza que este mensaje aparezca solo una vez por ciclo de actualización o en la primera instalación.

  • 🧹 Se evitaron registros repetidos de "Panel actualizado" durante la monitorización del panel:

Ahora solo se registra una vez, a menos que cambie la versión. Mantiene los registros de Home Assistant más limpios y fáciles de leer.

  • ✅ Se ha mejorado el comportamiento del formulario de configuración para proporcionar mensajes de error más claros cuando falla la conexión con el enrutador.
  • ✅ Ahora registra el código de error HTTP exacto (403, 404, 408, etc.) y el motivo (No se pudo obtener el token, La llamada de conexión falló, etc.) durante la validación de acceso inicial.

⚙️ Mejoras del backend

  • 🧠 La lógica interna ahora almacena y reutiliza la última versión del frontend verificada, lo que mejora la eficiencia y el rendimiento generales.
  • save_local_version() borra la caché de versiones interna para forzar una recarga cuando sea necesario.
  • 🛠 Se ha refactorizado async_verify_access() para que devuelva tanto el código HTTP como el motivo del error, lo que permite un mejor diagnóstico.
  • 🧾 Ahora los errores se registran en detalle y se traducen en mensajes claros para el usuario a través de router.error_with_reason.
  • 🧱 Refactorización completa de la lógica interna de persistent_notification utilizando la clase MiWiFiNotifier.
  • 🌍 Las traducciones dinámicas ahora se cargan desde el disco si no están ya almacenadas en la memoria caché.
  • 📚 Cobertura completa de teclas en los archivos de traducción: new_device, download_ready, unsupported_router, self_check, calc_passwd, suggest_unsupported.
  • 🧠 Se agregó registro de nivel de depuración en config_flow.py, helper.py y updater.py para diagnosticar fallas de conexión incluso antes de que se configure la integración.
  • 💡 El sistema de errores ahora genera claves de error como router.error_with_reason::reason_text para que el mensaje exacto aparezca en la interfaz de usuario.
  • 🧾 Los motivos de error como "No se pudo obtener el token" o "Error en la llamada de conexión" ahora se muestran claramente a los usuarios, lo que ayuda a distinguir entre direcciones IP no válidas, contraseñas incorrectas o enrutadores no compatibles.
  • 🧠 Se reemplazó la condición anterior basada en topo_graph.is_main con una detección de características adecuada a través de capabilities["portforward"].

Esto garantiza que las reglas NAT solo se obtengan cuando el enrutador las admita oficialmente.

  • 🧪 Se ha añadido una nueva comprobación de compatibilidad: portforward.

Esto verifica dinámicamente si el enrutador admite la API xqnetwork/portforward mediante el CompatibilityChecker.

  • 📊 El sensor MiWiFi NAT Rules ahora solo se activa en los routers que admiten explícitamente las funciones NAT, lo que reduce los errores y los falsos positivos en los nodos de malla o en los modelos no compatibles.
  • ✅ Se eliminó la dependencia innecesaria de la detección de la topología de la malla (topo_graph) para las funciones relacionadas con NAT.

✅ Compatibilidad

  • 🌐 Se agregó soporte para la traducción al chino simplificado (zh-Hans)
  • ✅ Compatible con Home Assistant 2025.5.0 y versiones posteriores.
  • 🧩 Compatible con todas las versiones del panel a partir de la 1.3.0.

📘 Cómo actualizar

  1. Reemplace todos los archivos dentro de su carpeta custom_components/miwifi/ con el contenido de esta versión.
  2. Reiniciar Home Assistant.
  3. Comprueba que el panel MiWiFi se carga correctamente y que los registros repetitivos han desaparecido de Herramientas para desarrolladores > Registros.

ℹ️ Esta versión mejora la claridad de los registros y el rendimiento del backend al eliminar los mensajes de estado repetidos de las comprobaciones de versión del panel.

💖 Soporte y donaciones

Si esta integración te resulta útil y quieres apoyar su desarrollo continuo, puedes hacer una donación aquí:

Cada contribución me ayuda a dedicar más tiempo a desarrollar y mejorar MiWiFi. ¡Gracias! 🙌

📦 v3.3.1 – XiaoHack Edition

Fecha: 2025-07-14 12:08:12
Ver release original en GitHub

📝 Changelog — Integración MiWiFi

📦 Versión v3.3.1 – 2025-07-14

✅ Correcciones y estabilidad

  • 🧵 Se evitó el bloqueo del bucle de eventos al cargar las traducciones:
  • Se reemplazaron las llamadas directas a load_json() con await hass.async_add_executor_job(...) al leer archivos de traducción desde el disco. #42
  • Esto soluciona la advertencia de Home Assistant:

_“Se detectó una llamada bloqueante a open(...) dentro del bucle de eventos...”_


⚙️ Mejoras

  • 🌐 Descarga automáticamente la última versión del panel de interfaz en la primera instalación:
  • Cuando el archivo de versión local (.storage/miwifi/miwifi_panel_version.json) no existe (instalación nueva), la integración ahora obtiene la última versión disponible del panel de GitHub usando version.json.
  • Esto reemplaza la lógica de reserva codificada DEFAULT_PANEL_VERSION.

✅ Compatibilidad

  • ✅ Compatible con Home Assistant 2025.6.0 y versiones posteriores.
  • 🔁 Totalmente compatible con versiones anteriores de paneles instalados previamente (versión 1.2.3 y superiores).

📘 Cómo actualizar

  1. Reemplace todos los archivos dentro de su carpeta custom_components/miwifi/ con el contenido de esta versión.
  2. Reiniciar Home Assistant.
  3. Comprueba que el panel MiWiFi se carga correctamente y que no aparecen advertencias de blocking call to open en los registros.

ℹ️ Esta versión mejora el comportamiento de la primera instalación y garantiza la compatibilidad a largo plazo con las próximas versiones de Home Assistant.

💖 Soporte y donaciones

Si esta integración te resulta útil y quieres apoyar su desarrollo continuo, puedes hacer una donación aquí:

Cada contribución me ayuda a dedicar más tiempo a desarrollar y mejorar MiWiFi. ¡Gracias! 🙌

📦 v3.3.0 – XiaoHack Edition

Fecha: 2025-07-12 13:17:52
Ver release original en GitHub

📦 Versión v3.3.0 – 2025-07-12

🚨 Aviso importante

Tras actualizar a la versión 3.3.0, es posible que reciba una notificación persistente por cada dispositivo conectado.
Esto es normal y solo ocurre una vez, ya que la nueva versión crea un almacén persistente de direcciones MAC conocidas.
Una vez que se complete este análisis inicial, las notificaciones futuras solo aparecerán para dispositivos realmente nuevos.

✅ Correcciones y estabilidad

  • 🧠 Se ha rediseñado el sistema de notificaciones para garantizar que las traducciones se carguen de forma fiable, incluso en la primera ejecución.
  • 🐞 Se corrigió un ImportError que ocurría al intentar usar build_nested_translations desde un helper inexistente.
  • 🔄 Lógica de carga de traducción unificada entre panel_update y device_tracker, lo que garantiza un comportamiento coherente en todos los componentes.

⚙️ Mejoras

  • 📢 Notificaciones persistentes localizadas para nuevos dispositivos:
  • Los nuevos dispositivos (MAC no vistos anteriormente) ahora activan notificaciones persistentes totalmente traducidas al lenguaje de Home Assistant.
  • Ejemplo (FR):

_"📶 Nuevo dispositivo conectado: Mon Téléphone\n💻 MAC: 12:34:56:78:9A:BC\n🌐 IP: 192.168.1.100\n📡 Conexión: Wi-Fi 2.4G"_

  • Traducciones incluidas para:
  • Tipos de conexión del dispositivo (LAN, Wi-Fi 2.4G, 5G, Invitado, Juegos 5G)
  • Mensajes y títulos de notificación
  • 🛡️ Servicio: __HTML_PLACEHOLDER_0__:
  • Ahora envía notificaciones localizadas persistentes cuando se bloquea o desbloquea el acceso a la WAN de un dispositivo.
  • Mensajes totalmente traducidos con marcadores de posición dinámicos (nombre del dispositivo, estado).
  • Ejemplo (ES): _"Dispositivo Juan’s PC ha sido BLOQUEADO automáticamente."_
  • 💾 Nuevo almacén de notificaciones persistentes basado en MAC:
  • Ahora se utiliza un archivo de almacenamiento persistente para recordar qué direcciones MAC ya han activado una notificación.
  • Esto evita las notificaciones duplicadas y permite que el sistema detecte dispositivos realmente nuevos.
  • 🌐 Notificaciones que tienen en cuenta el idioma:
  • Ahora, si no están en caché, las traducciones se cargan directamente desde el archivo translations/<lang>.json correcto.
  • Funciona de forma fiable con cualquier idioma compatible con Home Assistant (en, es, fr, de, etc.).

✅ Compatibilidad

  • Totalmente compatible con Home Assistant 2025.6.0 y versiones posteriores.
  • Probado en configuraciones multilingües utilizando español, alemán y francés.
  • Compatible con routers: AX3600, AX6, AX1800 y redes de malla mixta.

📘 Cómo actualizar

  1. Reemplace todos los archivos en su directorio custom_components/miwifi/ con esta versión.
  2. Asegúrese de tener actualizados los archivos translations/en.json, translations/es.json y, opcionalmente, fr.json y de.json.
  3. Reinicia completamente Home Assistant.
  4. Inicie una nueva conexión de dispositivo o utilice el servicio block_device para probar las notificaciones localizadas.

ℹ️ Esta versión ofrece notificaciones multilingües persistentes, un rastreador de dispositivos en tiempo real y un sistema de traducción estable, lo que hace que MiWiFi sea más inteligente y esté más atento al usuario que nunca.
Xiaohack Chatbot Asistente XiaoHack

Xiaohack V 3.3 | © Copyright 2024 | Users Online: 0 | Estado: Offline