Skip to content

feat: migrate to config flow with device registry and brand icon#22

Open
38decibel wants to merge 11 commits intodevmel:masterfrom
38decibel:master
Open

feat: migrate to config flow with device registry and brand icon#22
38decibel wants to merge 11 commits intodevmel:masterfrom
38decibel:master

Conversation

@38decibel
Copy link

@38decibel 38decibel commented Mar 14, 2026

Description

Migration complète de l'intégration vers le standard moderne de Home Assistant.

Changements

Migration config flow

  • Passage de discovery.load_platform vers un vrai config flow avec interface UI
  • Chaque device AirSend apparaît désormais comme un vrai appareil dans Paramètres → Appareils et services
  • Lecture de airsend.yaml avec résolution des tags !secret
  • Test de connexion à l'addon lors de la configuration et reconfiguration

Améliorations techniques

  • Remplacement de requests par aiohttp — appels HTTP non-bloquants
  • Gestion propre des erreurs réseau : les entités passent en unavailable si l'addon ne répond plus
  • DataUpdateCoordinator centralisé par device dans coordinator.py
  • Correction du bug unique_id (l'ancien code séparait chaque caractère du nom)
  • binary_sensor.py séparé de sensor.py
  • device_info ajouté sur toutes les entités
  • raise Exception remplacé par return False dans device.py (évitait un crash websocket HA)

Internationalisation

  • Ajout de translations/fr.json et translations/en.json
  • strings.json synchronisé avec en.json

Icône

  • Ajout du dossier brand/ avec icon.png (256x256)

Version

  • manifest.json passé en version 4.0, config_flow: true, iot_class: local_push

- Migrate all platforms to async_setup_entry (config flow)
- Each device now appears as a real HA device in the device registry
- Add device_info to all entities (cover, switch, button, sensor, binary_sensor)
- Add config_flow.py with airsend.yaml + !secret resolution
- Add strings.json for UI labels
- Fix unique_id bug (was splitting each character of the name)
- Split binary_sensor.py from sensor.py
- Bump version to 4.0
raise Exception remplacé par return False
Added instructions for configuring AirSend in Home Assistant.
Clarified instructions for editing the airsend.yaml file.
Corrections de bugs
500 avec wait: true non fatal

Nouveau type
light.py — lumière dimmable (type 4100)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant