Intégration domotique Bornes de recharge (IRVE), gratuite et open source

Disponibilité en direct des bornes de recharge publiques autour de chez vous (open data IRVE).
La disponibilité en direct des bornes de recharge publiques autour de chez vous, en France, d'après les données ouvertes nationales IRVE (Infrastructures de Recharge pour Véhicules Électriques) : la base statique de data.gouv.fr (adresse, opérateur, puissance, prises) croisée avec la consolidation nationale des états en temps réel de transport.data.gouv.fr. Sans compte ni clé.
Intégration non officielle, sans lien avec les opérateurs de recharge, data.gouv.fr ni transport.data.gouv.fr. Développée sans voiture électrique sous la main : les données ont été vérifiées en direct le 22/10/2026, mais vos retours sont les bienvenus.
Ce que vous obtenez
- Un appareil par station que vous ajoutez : points de charge libres, points de charge, hors service, puissance maximale et âge de la donnée.
- Un widget « Bornes de recharge » : vos stations sur une ligne chacune, en vert quand un point est libre, en rouge quand tout est occupé ou hors service.
- Trois déclencheurs de scène : une borne se libère, station complète, station hors service.
- Une action de scène : trouver, parmi vos stations, la plus proche avec un point libre, avec une phrase prête à envoyer.
Prérequis
- Gladys Assistant 5.2.0 ou plus récent.
- Une maison localisée dans Gladys (Paramètres → Maisons, cliquez sur la carte), ou une position saisie dans la configuration.
- Un accès à Internet depuis Gladys. Aucun compte, aucune clé d'API.
Installation
- Dans Gladys, ouvrez Intégrations → Installer depuis GitHub.
- Collez l'adresse
https://github.com/guim31/gladys-irveet installez. - L'écran d'installation demande l'accès à la position de vos maisons : il sert uniquement à chercher les stations proches. La position ne quitte pas Gladys : seul le rectangle de recherche est envoyé à l'API de data.gouv.fr.
Configuration
Réglages
- Maison : le centre de la recherche. Vide : la première maison localisée.
- Autre position (facultatif) :
latitude, longitude, par exemple votre lieu de travail. Elle remplace la maison. - Rayon : 1, 2, 5, 10 ou 20 km autour de la position (5 km par défaut). Dans une zone très dense, le rayon est réduit automatiquement ; l'action « État » le signale.
- Puissance minimale et Type de prise : seuls les points de charge qui conviennent sont comptés (une station de quatre points dont deux en Combo CCS compte 2 points avec le filtre « Combo CCS »). Une station sans aucun point compatible n'est pas proposée.
- Autres stations : des identifiants de stations (
id_station_itinerance), séparés par des virgules, où qu'elles soient (20 au plus). L'action Chercher une station les donne. - Rafraîchissement : toutes les 5, 10 (par défaut) ou 15 minutes.
- Langue des noms et messages : français par défaut. Les noms des fonctionnalités sont figés à l'ajout de l'appareil.
Ajouter des stations
Enregistrez la configuration : les stations du cercle qui publient leur état en direct apparaissent dans l'onglet Découverte de l'intégration, les plus proches d'abord (30 au plus), ainsi que les stations listées. Ajoutez à Gladys celles que vous utilisez : ce sont vos stations suivies. Le widget, les déclencheurs et l'action de scène ne portent que sur elles.
Pour suivre une station loin de chez vous, lancez l'action Chercher une station avec un nom de
commune ou de rue, copiez l'identifiant (FR…) dans Autres stations, enregistrez : elle apparaît
dans Découverte.
Vérifier
L'action État affiche la position et le rayon utilisés, le nombre de stations trouvées et combien publient des données en direct, l'âge de la dernière lecture, la dernière erreur et le nombre de stations ajoutées.
Appareils
Chaque station ajoutée devient un appareil en lecture seule :
| Fonctionnalité | Valeur |
|---|---|
| Points de charge libres | points en service et libres |
| Points de charge | points de la station (qui conviennent aux filtres) |
| Hors service | points hors service |
| Puissance maximale | puissance du point le plus puissant, en kW |
| Âge de la donnée | minutes depuis l'état le plus récent publié par l'opérateur (7 j max.) |
Un point « occupé » ou « réservé » n'est ni libre ni hors service ; un point dont l'état est « inconnu », ou dont le dernier état a plus de 7 jours, n'est compté nulle part. Sans aucun point publié en direct, seuls « Points de charge » et « Puissance maximale » sont mis à jour.
Widget du tableau de bord
Le widget Bornes de recharge affiche une ligne par station suivie (10 au plus, ou celles choisies dans ses réglages) : « 2 / 4 libres » en vert, « tout est occupé » ou « hors service » en rouge, « 0 / 4 libre » en orange quand l'occupation de certains points est inconnue, et en gris « donnée périmée » (aucun état depuis 48 h), « pas de données en direct » ou « aucun point compatible ».
Déclencheurs de scène
Chaque déclencheur peut se limiter à certaines stations (vide : n'importe quelle station suivie) et fournit les variables nom de la station, adresse, points libres, points de charge, hors service, puissance maximale et distance (km).
- Une borne se libère : la station a plus de points libres qu'à la lecture précédente. Le champ Station avant permet de ne réagir que si elle était complète, ou au contraire si elle avait déjà un point libre.
- Station complète : tous les points en service sont désormais occupés.
- Station hors service : tous les points à l'état connu sont hors service.
Les déclencheurs ne comparent que deux lectures rapprochées : rien n'est déclenché au retour d'une coupure, ni pour une station dont la donnée est périmée.
Action de scène
Trouver la borne libre la plus proche : parmi vos stations suivies (toutes, ou celles choisies),
la plus proche de la position configurée qui a un point libre et une donnée récente. Résultats :
found (1 ou 0), sentence (par exemple « TOULOUSE - 9 Boulevard d'Arcole : 2 points de charge
libres sur 4, jusqu'à 22,1 kW, à 0,7 km. »), nom de la station, adresse, points libres, points de
charge, puissance maximale, distance en km. Utilisez « Continuer seulement si » avec
found = 1 avant d'envoyer la phrase.
Exemples de scènes
- Prévenir quand la borne de la rue se libère : déclencheur « Une borne se libère », station de votre rue, « Station avant : était complète » ; action « Envoyer un message » avec le nom de la station et le nombre de points libres.
- Où recharger avant de partir ? : déclencheur manuel ou alarme du matin ; action « Trouver la
borne libre la plus proche », puis « Continuer seulement si »
found= 1, puis envoyezsentencepar message ou faites-la dire par une enceinte. - Alerter si la station du bureau tombe en panne : déclencheur « Station hors service » sur la station du bureau ; action « Envoyer un message ».
Données et rafraîchissement
- Base statique : la consolidation nationale de data.gouv.fr (jeu « Base nationale des IRVE », mise à jour quotidienne), interrogée par l'API tabulaire de data.gouv.fr sur le rectangle qui entoure le cercle, ou par identifiants de stations : quelques centaines de lignes au lieu du fichier entier. Lue une fois par jour et à chaque changement de configuration.
- Données dynamiques : la consolidation nationale IRVE dynamique de transport.data.gouv.fr (bêta), reconstruite à chaque demande à partir des flux des opérateurs qui en publient. Environ 125 000 points de charge, 9 Mo (1,6 Mo compressé) : le fichier est lu ligne à ligne et seuls les points de vos stations sont gardés en mémoire. Lu à la cadence choisie (10 minutes par défaut, soit environ 230 Mo par jour).
- Couverture : beaucoup d'opérateurs ne publient encore aucun état en direct. Le 22/10/2026, à Toulouse, un peu plus de la moitié des points de charge publics en avaient un ; selon les villes, entre un quart et neuf sur dix. Les stations sans données en direct ne sont pas proposées.
- Âge : l'horodatage est celui de l'opérateur, en général le dernier changement d'état. Une station calme peut garder le même état des heures sans que la donnée soit fausse : au-delà de 48 h sans aucun changement, elle est marquée périmée ; un point resté sans nouvelle plus de 7 jours est ignoré.
- Licence : Licence Ouverte / Open Licence 2.0 (Etalab).
Dépannage
- Rien dans Découverte : lancez État. « Aucune position » : localisez la maison dans Gladys ou saisissez une position. « 0 avec données en direct » : les opérateurs de votre zone ne publient pas d'état en direct ; élargissez le rayon ou relâchez les filtres.
- Identifiants de stations inconnus dans État : vérifiez l'identifiant avec Chercher une station (la station a pu être renommée par l'opérateur).
- « Donnée périmée » : l'opérateur n'a rien publié depuis 48 h pour cette station.
- Erreur
tabular-api.data.gouv.frouproxy.transport.data.gouv.fr: le service est momentanément indisponible ; les dernières valeurs restent affichées et l'intégration réessaie au cycle suivant. - Les journaux détaillés s'obtiennent avec la variable
LOG_LEVEL=debug.
Limites
- Données open data, sans garantie : un point « libre » peut être pris le temps d'arriver, et certains opérateurs publient des états faux ou anciens.
- Uniquement les bornes publiques en France déclarées dans la base nationale IRVE.
- Pas de tarifs ni de réservation, et pas de commande : l'intégration ne fait que lire.
- Les noms des stations sont ceux des opérateurs, parfois en majuscules ou peu parlants.
- Le filtre de prise s'appuie sur la déclaration de l'opérateur ; l'état par prise n'est pas utilisé.
Crédits
- Données : Base nationale des IRVE (data.gouv.fr, Etalab) et consolidation IRVE dynamique (transport.data.gouv.fr), Licence Ouverte 2.0.
- Intégration écrite par guim31, sous licence Apache-2.0.
Paramètres de configuration
Voici les paramètres demandés par Bornes de recharge (IRVE) dans son écran de configuration dans Gladys.
| Paramètre | Type | Obligatoire | Description |
|---|---|---|---|
| Fonctionnement | section | Non | Les bornes publiques autour de votre maison (ou celles que vous listez) qui publient leur état en direct apparaissent dans l'onglet Découverte. Ajoutez à Gladys celles que vous utilisez. Sans compte ni clé. |
| Maison | select | Non | Centre de la recherche. Vide : la première maison localisée. |
| Autre position (facultatif) | string | Non | Latitude, longitude : remplace la maison (votre lieu de travail, par exemple). |
| Rayon | select | Non | |
| Puissance minimale | select | Non | Seuls les points de charge au moins aussi puissants sont comptés. |
| Type de prise | select | Non | |
| Autres stations (identifiants) | string | Non | Identifiants de stations, séparés par des virgules, où qu'elles soient : action « Chercher une station » ci-dessous. |
| Rafraîchissement | select | Non | |
| Langue des noms et messages | select | Non | Les noms des fonctionnalités sont figés à l'ajout de l'appareil. |
Comment installer Bornes de recharge (IRVE) dans Gladys
- Dans Gladys, ouvrez Intégrations : Bornes de recharge (IRVE) apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
- Cliquez sur Installer. Gladys télécharge l'image Docker (
ghcr.io/guim31/gladys-irve:1.0.0), la démarre dans un bac à sable isolé du cœur, et génère l'interface de l'intégration (appareils, découverte et configuration). - Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
- Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/guim31/gladys-irve.
Bornes de recharge (IRVE) nécessite Gladys >=5.2.0. Le catalogue dans Gladys se rafraîchit toutes les heures : une nouvelle version est donc disponible au plus tard une heure après sa sortie.
Vous n'utilisez pas encore Gladys ? C'est gratuit et open source : suivez le guide d'installation pour démarrer.
À propos des intégrations externes
Bornes de recharge (IRVE) est une intégration externe : une intégration communautaire empaquetée dans un conteneur Docker et publiée sur GitHub, que Gladys installe en un clic et exécute dans un bac à sable isolé de son cœur. Elle est publiée et maintenue par guim31, et non par l'équipe cœur de Gladys.
- Parcourir toutes les intégrations, natives et communautaires
- Créer et publier votre propre intégration externe
- Code source sur GitHub — source de cette documentation