Service Netatmo

Salut @_Will_71,
J’ai une image docker si tu veux tester : terdious/gladys:netatmo-prod-last-armV7.
Tous les retours sont les bienvenus !!^^

Non pas de carillon ^^ j’ai la particularité d’avoir 2 barrières, une avec la sonnette Netatmo raccordée a rien, ca sonne sur le téléphone et j’ouvre avec Gladys via un arduino. L’autre est sûr un Bticino class 300 EOS installé d’il y a 2h :sweat_smile:

Ok merci :+1:
Je vais testé ca rapidement et je te tiens au courant.
J’ai un environnement de dev ( pour l’instant je m’instruit car je ne fait pas encore de javascript) alors je vais aussi cloner ton repo git pour voir un peu l’intégration

1 « J'aime »

C’est pas forcément la plus simple pour commencer :sweat_smile:

1 « J'aime »

En effet, @VonOx a raison, pour le repo et le détail du code, c’est le chantier. Tout fonctionne certes, mais ça modifie plein de choses dans Gladys qui ne seront pas implémenter, tout du moins pas d’un coup et/ou pas de cette façon. Le but pour pouvoir sortir l’intégration étant de reprendre une PR propre et d’importer le service au fur et à mesure. Du coup pour débuter, ce n’est peut-être pas le plus pratique et le plus parlant ^^

Oui je pense bien que c’est pas une chose facile.

Après j’aime bien regarder comment ça fonctionne et pourquoi pas un jour mettre les mains dedans et faire du code dans Gladys…

Après je fais déjà du code (mais pas en javascript) toute la journée à mon travail alors je comprends assez vite et c’est toujours plus simple (enfin presque) quand il y a quelque chose de concret

2 « J'aime »

Dans ce cas, n’hésite pas si tu as des demandes d’explication !! Pour ma part je développais seulement en automatisme auparavant. Après pour un besoin pro, je suis partis dans le VB pour Excel en autodidactie. Puis je me suis lancé dans le C pour développer les arduinos et quelques modifs sous Gladys V3 pour Netatmo justement et enfin sur Gladys V4 grâce à la grande aide de @damalgos et @VonOx notamment ainsi que les autres devs bien sûr.

Du coup désolé d’avance car je pense très sincèrement que je code sale … notamment côté front où le principal pour moi pour le moment est que ça fonctionne donc tout ce qui ne peut pas être que du copier/coller avec modifs légère, bah ça pique les yeux ^^

1 « J'aime »

Ok merci,:+1: pas de souci pour le code “sale”…
Pour l’instant je vais deja tester le fonctionnement et je verrais le code après…

1 « J'aime »

Voila @Terdious, j’ai lancé le service Netatmo et Gladys est connectée à NetAtmo :smiley:

image

Y’a déjà eu du boulot de fait! :clap:

3 « J'aime »

Il aurais pu faire le taff avant que je vende tout mon appareillage.
Maintenant je suis tout électrique.

Bon boulot pour l’hiver prochain. :clap:

1 « J'aime »

@Terdious, par contre j’ai des erreurs 403.

Salut @_Will_71,

Alors oui, c’est “normal” pour le moment. Netatmo est décomposé en 4 familles (5 maintenat avec le matos Legrand With Netatmo) :

  • Home + Security (Caméras intérieur - extérieur / détecteur ouverture / détecteur fumée / détecteur monoxyde / sirène / sonnette / portier Bticino,
  • Energy (Vanne / thermostat / relais)
  • Weather (Station météo / pluviomètre / anémomètre/ module intérieur)
  • Aircare (Home Coach Healthy = Qualité de l’air intérieur.

Comme j’avais tout le matos ou presque a dispo, on l’a développé pour qu’il aille tout rechercher. Mais je suis en cours de dev d’une page de parametre supplementaire pour pouvoir sélectionner le(s) “service(s)” auxquels tu souhaites souscrire. Ce sera sur cette page. Ca ne devrait pas tarder…^^

2 « J'aime »

Ok .:+1:
Je pense que tu vas prévoir aussi plus tard, de pouvoir contrôler par exemple le thermostat?

En effet. Mais cela fait partie d’une réflexion sur le fonctionnement du chauffage dans Gladys qui doit être menée au global avant tout et qui n’a malheureusement pas encore déterminé. Toutefois en attendant pour pouvoir fonctionner à côté de gladys-prod, je compte dev un truc de mon côté pour mon gladys-netatmo que je partagerais bien évidemment. Pour info je fais tourner celle-ci sur un second rpi4 avec 2 autres gladys qui tournent (1 pour le pro et 1 en tant que “pod”).

Ce que j’ai prévu c’est :

  • Je récupère déjà tout les plannings actuellement qui sont stockés dans les paramètres du device. Il ne me reste plus qu’à les afficher,
  • Développer la commande de sélection de planning,
  • Développer la commande des setpoints des vannes et thermostats,
  • Récupérer et pouvoir définir le temps de mise en marche manuelle,
  • Développer la commande des sirènes et lumières des caméras extérieurs.
1 « J'aime »

Ok t’as pas mal bossé déjà :clap:

Pour ma part pour l’instant je ne lancerais pas en permanence un gladys de dev avec le service NetAtmo car j’ai toujours mon chauffage sur un deuxième RPI sous domoticz. J’ai peur que cela envoi trop de requête a Netatmo. Je me rappel plus du nom re de requête max.

Je suis passé sur Gladys il y a peu et je ne voulais pas cassé mon chauffage fonctionnel tant que je pourrais encore en avoir besoin. Je verrais cet été pendant mes congés pour faire le changement.

Sur ce RPI j’ai fait un script en python pour récupérer les infos NetAtmo de mon thermostat et piloté tout mon chauffage (poêle granulés + radiateur électrique) Du coup j’avais aussi inclus d’envoyer ces données en MQTT quand je suis passé sur Gladys.

Pour moi ce qu’il me manque pour me faire une solution de chauffage dans Gladys c’est uniquement un device thermostat.
Dans ma gestion actuelle, j’ai mis un thermostat virtuel (fake device) pour gerer le chauffage pièce par pièce + le thermostat NetAtmo en principal.
Après je pense que je pourrais me débrouiller pour gérer tout mon chauffage (soit par scène ou script en dehors de Gladys).

1 « J'aime »

Salut @_Will_71,

Pour info, je viens de push une maj mise à jour en v4.8.4 et qui intègre ta remarque :

Tu as maintenant accès sur la page « Paramètres » à la sélection des API que tu souhaites :


Comme tu n’as que le chauffage et le thermostat de ce que je comprend, tu n’auras juste qu’à sélectionner « Netatmo Energie ».

Alors si ça peut te rassurer il n’y a aucun risque de ce côté avec Gladys car de base on a réglé les requêtes sur 2 minutes pour la partie Energie. Ca représente 2 requêtes toutes les 2 minutes. De plus sur la page Paramètres des équipements et fonctionnalités, tu peux augmenter le temps entre 2 rafraichissements :


Pour ma part, j’utilise les 4 API via 2 instances (la prod et la dev en même temps) avec :

  • API Home + Security toutes les 30s = 2 requêtes/min * 2 instances = 4 requêtes/min,
  • API Energie toutes les 2min en dev et toutes les 1min en prod = 22 requêtes/2min + 22 requêtes/min = 6 requêtes/min,
  • API Weather toutes les 5min = 1 requête/5min * 2 instances = 0,4 requête/min,
  • API Aircare toutes les 2min = 1 requête/2min * 2 instances = 1 requête/min,
  • Total = 11,4 requêtes/min
    La limite est de 50 requêtes toutes les 10s, c’est large ^^

Pour le coup, si tu souhaites avoir les infos via Gladys tu le peux même si en effet moi ça m’est vraiment utile car c’est le seul moyen de piloter mon chauffage (2 plug de vannes et impossible via Netatmo de contrôler un plug depuis un autre - c’est ouf ^^) et d’avoir les caméras pour le coup.

Oui en effet ce sera tout à fait possible via les scènes une fois les commandes parues

1 « J'aime »

Vues Découvertes des devices :

Quelques vues du Dashboard (Encore des chose à voir avec les sirènes, les commandes et les infos de dernières maj ^^)



2 « J'aime »

Cool je ferais un essai.

Ca va en effet on est large niveau requête. Je peux laisser gladys prod et dev tourner en même temps + mon ancien système.

Beau boulot👏

2 « J'aime »

Yes, n’oublie juste pas de modifier le nom de la DB et le port dans la commande Docker (tu es peut-être déjà bien avertis sur ce point, mais dans le doute ^^)
Les commandes que je passe :

docker pull terdious/gladys:netatmo-prod-030522
docker stop gladys-netatmo
docker rm gladys-netatmo

docker run -d \
--log-opt max-size=10m \
--restart=always \
--privileged \
--network=host \
--name gladys-netatmo \
-e NODE_ENV=production \
-e SERVER_PORT=82 \
-e TZ=Europe/Paris \
-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production-netatmo.db \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/gladysassistant:/var/lib/gladysassistant \
-v /dev:/dev \
terdious/gladys:netatmo-prod-030522

Et pour info, comme je l’utilise en prod avec un Gladys Plus supplémentaire, je la mettrai à jour à chaque nouvelle version de Gladys master. La date changera sur l’image docker pour être sûr de ne rien casser en cas de mauvaise future maj de ma part !!