Aller au contenu principal

Intégration domotique Ambient Weather, gratuite et open source

Intégration Ambient Weather pour Gladys Assistant

Connecteur non officiel : vos stations Ambient Weather et les stations publiques proches.

Connecteur non officiel, sans lien avec Ambient Weather. Il amène dans Gladys les capteurs de vos stations Ambient Weather, lus par l'API officielle d'Ambient Weather (REST et temps réel). En option, il propose aussi les stations publiques de l'Ambient Weather Network autour de vos maisons, sans aucun compte.

Ce que vous obtenez​

Appareil dans GladysCapteurs
Station (extérieur)température, humidité, pression relative et absolue, vitesse du vent, rafale, rafale maximale du jour, direction du vent (et leurs moyennes sur 10 minutes), intensité de pluie, pluie de l'épisode / du jour / sur 24 h / de la semaine / du mois / de l'année / totale, indice UV, rayonnement solaire, pile faible du capteur extérieur et du pluviomètre
Station – indoortempérature et humidité intérieures, pile faible de la console
Station – sensor 1…10température et humidité de chaque capteur supplémentaire, pile faible
Station – soil 1…10humidité et température du sol de chaque sonde de sol, pile faible
Station publiquela météo extérieure d'une station publique proche (ni pile, ni valeur intérieure)

Une station ne reçoit que les capteurs qu'elle transmet : rien n'est créé pour un capteur que vous n'avez pas. Chaque groupe est un appareil à part : la console intérieure et le capteur extérieur peuvent aller dans des pièces différentes. Le rayonnement solaire est affiché en lux (W/m² ÷ 0,0079, l'approximation habituelle de la lumière du jour) : Gladys n'a pas d'unité W/m². Les noms des appareils et des capteurs sont en anglais ; renommez-les à la création si vous le souhaitez.

Installation​

  1. Sur ambientweather.net, ouvrez Account → API Keys et créez :
    • une clé d'API (« API Key », la clé de votre compte),
    • une clé d'application (« Application Key », la clé développeur ; une courte description comme « Gladys » suffit).
  2. Installez l'intégration depuis le catalogue de Gladys (Gladys 5.1 ou plus récent) et acceptez l'accès à la position de vos maisons (utilisée uniquement pour les stations publiques, et seulement si vous les activez).
  3. Dans l'écran Configuration, collez les deux clés et enregistrez.
  4. Cliquez sur Tester Ambient Weather : le message liste vos stations et leur dernière mesure.
  5. Ouvrez l'onglet Découverte et ajoutez les appareils voulus. Leurs valeurs arrivent dès leur création.

Uniquement les stations publiques ? Laissez les deux clés vides et activez Stations publiques à proximité.

Configuration​

  • Clé d'API, clé d'application : toutes deux nécessaires pour les stations de votre compte. Elles sont stockées comme secrets et jamais écrites dans les journaux.
  • Unités (métrique par défaut) : seules les températures changent, °C (métrique) ou °F (impérial). Le vent est toujours en km/h, les cumuls de pluie en mm, l'intensité en mm/h, la pluie des dernières 24 heures en mm par jour et la pression en hPa : Gladys n'accepte ni les mph pour ses capteurs de vent ni les pouces pour ses capteurs de pluie (et n'a pas d'inHg), l'impérial se limite donc aux °F. Un appareil garde l'unité de sa création : après un changement, ses valeurs restent envoyées dans cette unité ; supprimez-le et recréez-le pour la changer.
  • Intervalle de lecture du compte (5 minutes par défaut, de 1 à 60) : une requête à l'API à chaque fois.
  • Mises à jour en temps réel (activées par défaut) : une connexion à l'API temps réel d'Ambient Weather, pour que chaque nouvelle mesure arrive dès que la station l'envoie, entre deux lectures.
  • Stations publiques à proximité (désactivées par défaut), rayon de recherche (10 km), stations publiques proposées par maison (3) et leur intervalle de lecture (10 minutes, 5 au minimum).

À quelle fréquence Ambient Weather est appelé​

  • L'API autorise 1 requête par seconde par clé d'API (et 3 par seconde par clé d'application), et répond « 429 » au-delà. L'intégration n'envoie jamais deux requêtes à moins de 1,1 s d'intervalle, quelle qu'en soit l'origine (lecture périodique, onglet Découverte, bouton de test).
  • Le compte : une requête à chaque « intervalle de lecture du compte », plus une au démarrage et à chaque test. Clés refusées : un essai toutes les 30 minutes jusqu'à ce que vous changiez la configuration. Un « 429 » : la lecture suivante attend le délai demandé par Ambient (Retry-After), une minute sinon.
  • Le temps réel : une connexion, gardée ouverte, rétablie après 5 s environ, puis 10 s, 20 s… jusqu'à 5 minutes (±20 % au hasard) ; le délai revient à 5 s une fois qu'un lien a tenu une minute. Une poignée de main doit aboutir en 30 s ; après trois échecs, l'autre version du protocole (Engine.IO v3 ou v4) est essayée.
  • Les stations publiques : une requête par maison localisée à chaque « intervalle de lecture » (100 stations au plus), plus une par station publique créée que la recherche n'a pas renvoyée, une à la fois.

Seules les valeurs qui changent sont envoyées à Gladys (plus chaque valeur inchangée toutes les 30 minutes), et jamais plus de 250 par minute (le reste suit une minute plus tard), sous les 300 états par minute qu'accepte Gladys. Une mesure de plus d'une heure (station hors ligne) n'est pas envoyée.

Stations publiques​

Les stations publiques sont celles que leurs propriétaires ont choisi de partager sur la carte de l'Ambient Weather Network. Elles sont cherchées dans un carré autour de chaque maison localisée (Paramètres → Maisons), puis filtrées : dans le rayon, en extérieur, une mesure de moins d'une heure, une température, aucune de vos propres stations. Les plus proches sont proposées dans l'onglet Découverte ; celles que vous créez gardent leurs valeurs, lues par leur adresse quand la recherche ne les renvoie plus.

Le service de la carte publique n'est pas une API documentée : Ambient Weather peut le modifier sans préavis. C'est celui qu'utilise la carte d'ambientweather.net, et celui que lisent aioambient et l'intégration « Ambient Weather Network » de Home Assistant.

Dépannage​

  • « Ambient Weather a refusé les clés » : vérifiez les deux clés sur la page API Keys (une clé d'application n'est pas une clé d'API).
  • « Ambient Weather demande de ralentir (429) » : un autre outil utilise la même clé d'API au même moment ; la lecture suivante réessaie d'elle-même.
  • Un appareil n'a pas de valeur : la station n'a rien envoyé depuis plus d'une heure, ou l'API ne transmet pas ce capteur.
  • Aucune station publique : la maison doit avoir une position dans Gladys, et le réseau est clairsemé hors d'Amérique du Nord : essayez un rayon plus grand.
  • Journaux : le niveau se règle avec la variable LOG_LEVEL.

Vie privée​

Stations publiques désactivées (par défaut), aucune position ne quitte Gladys. Activées, les coordonnées de chaque maison, arrondies à 2 décimales (1 km environ), sont envoyées à Ambient Weather comme zone de recherche. Les clés ne partent que vers Ambient Weather, en HTTPS.

Crédits​

Construit d'après la documentation officielle de l'API Ambient Weather et aioambient (MIT, Aaron Bach), le client Python qu'utilise Home Assistant : points d'accès, noms des champs, limites de débit, protocole temps réel, stations publiques. Ambient Weather est une marque de son propriétaire ; ce connecteur est gratuit et non officiel.

Paramètres de configuration​

Voici les paramètres demandés par Ambient Weather dans son écran de configuration dans Gladys.

ParamètreTypeObligatoireDescription
Ambient Weather dans GladyssectionNonConnecteur non officiel, sans lien avec Ambient Weather. Il amène dans Gladys les capteurs de vos stations Ambient Weather (température, humidité, pression, vent et rafales, intensité et cumuls de pluie, UV, rayonnement solaire, capteurs intérieurs et supplémentaires, sondes de sol, piles faibles), lus par l'API officielle toutes les quelques minutes et poussés en temps réel entre-temps. Créez les deux clés sur ambientweather.net (Account → API Keys) : une clé d'API et une clé d'application. En option, il propose aussi les stations publiques de l'Ambient Weather Network autour de vos maisons, sans aucun compte.
Clé d'APIsecretNonLa clé de votre compte (Account → API Keys → Create API Key). Laissez vide pour n'utiliser que les stations publiques.
Clé d'applicationsecretNonLa clé développeur de la même page (Create Application Key, une courte description suffit).
UnitésselectNonSeules les températures changent : °C (métrique) ou °F (impérial). Le vent est toujours en km/h, la pluie en mm (mm/h pour l'intensité, mm par jour pour les dernières 24 heures) et la pression en hPa, les unités dont dispose Gladys. Un appareil garde l'unité de sa création.
Intervalle de lecture du compte (minutes)numberNonFréquence de lecture des stations du compte par l'API (une requête à chaque fois). Les envois en temps réel arrivent entre-temps.
Mises à jour en temps réelbooleanNonGarde une connexion à l'API temps réel d'Ambient Weather : chaque nouvelle mesure de vos stations arrive dès son envoi.
Stations publiques (Ambient Weather Network)sectionNonPropose dans l'onglet Découverte les stations publiques les plus proches de chaque maison localisée de Gladys, valeurs extérieures uniquement. Les coordonnées des maisons, arrondies à 1 km environ, sont envoyées à Ambient Weather pour les trouver. Le service de la carte publique n'est pas une API documentée : il peut changer sans préavis.
Stations publiques à proximitébooleanNon
Rayon de recherche (km)numberNon
Stations publiques proposées par maisonnumberNon
Intervalle de lecture des stations publiques (minutes)numberNon

Comment installer Ambient Weather dans Gladys​

  1. Dans Gladys, ouvrez Intégrations : Ambient Weather apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
  2. Cliquez sur Installer. Gladys télécharge l'image Docker (ghcr.io/lm1lc3n7/gladys-ambient-weather:0.1.1), 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).
  3. Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
  4. Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/LM1LC3N7/gladys-ambient-weather.

Ambient Weather nécessite Gladys >=5.1.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​

Ambient Weather 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 LM1LC3N7, et non par l'équipe cœur de Gladys.

Inscrivez-vous à la newsletter Gladys Assistant

Quelques emails par mois sur les nouveautés et l'actualité du projet. Envoyés par Pierre-Gilles Leymarie, le fondateur du projet. Désinscription possible à tout moment 🙂