merci , je vais attendre alors en attendant j’utiliserais ewelink, pas envie de tout démonter pour flasher, mais c’est quand même dommage toutes ces apis qui changent sans arrêt, j’ai l’impression qu’on se dirigent tous vers du full ziegbee ?? patientons
Pour information, je viens de faire quelques tests avec leur module nodejs, et tout est en erreur aussi.
Il semblerait qu’ils aient activer l’authentification OAuth2, et qu’il soit nécessaire de faire comme pour GoogleHome ou Alexa pour se connecter à son compte (mire de login de ewelink, échange de code, utilisation de client ID/secret…) et, si c’est le cas, cette intégration ne serait disponible que depuis Gladys Plus (une fois les modifications nécessaires apportées).
Je continue mes investigations en suivant les informations trouvées ici :
Je ne comprends pas tout techniquement mais j’ai constaté une perte à la fois coté Gladys et coté IFTTT qui propose désormais le contrôle IFTTT/Ewelink via un upgrade du compte (€).
Je cherchais un service intermédiaire pour by-passer les actions mais en vain.
HomeAssistant semble faire partie des compatibilités donc leur principe de connexion a du devenir payant.
Merci pour le travail de recherche …
Une autre discussion qui annonce la fin de l’API v1 pour l’utilisation de l’API v2
Et voici la doc de l’API v2, avec le pricing à 2.000$ par an pour une entreprise.
Sinon le mode « personnel » est disponible, mais nécessite une configuration plus complexe de la part de l’utilisateur Gladys (créer une application sur https://dev.ewelink.cc/, attendre sa validation par les équipes eWelink, récupérer les client ID/secret OAuth2…).
A voir avec @pierre-gilles ce qu’on prévoit de faire :
- discuter avec eWelink pour voir s’ils font payer ce tarif à Gladys et intégrer l’OAuth2 dans Gladys Plus (comme pour Google ou Alexa)
- ouvrir le mode « personnel » avec un tutoriel pour bien configurer son compte
- on abandonne eWelink et on fait du DIY (DIY Sonoff pour une connexion locale), mais je ne pense pas que tous les appareils soient compatibles
Je ne sais pas combien de personnes utilisent Ewelink, mais 2000$ par an ça me parait compliqué pour l’instant même via Gladys Plus
Pour l’instant, je vois bien le 2. ou le 3.
Après, à voir aussi les plans d’Ewelink par rapport à Matter, est-ce qu’une intégration Matter pourrait pas résoudre ce souci si à terme les appareils Ewelink sont compatibles Matter ?
Je pense que c’est une bonne piste Matter !!!
Je peux regarder rapidement ça avec Google Home comme testeur.
@AlexTrovato Si tu veux du matos, dis moi je t’en paye
Du coup, le matériel Sonoff / eWelink que je possède n’est pas compatible Matter, mais j’ai posé la question d’une éventuelle mise à jour du firmware Sonoff pour les vieux devices afin de les rendre compatibles Matter.
J’ai cru trouver des simulateur des devices Matter, histoire de pouvoir faire quelques tests, et il me semble que la lib nodejs de Matter n’est pas complète, donc je vais commencer par le plus simple, intégrer un device on/off, et on fera évoluer le service par itération.
Ok ça marche après c’est toujours satisfaisant de voir que ça marche en réel, donc si jamais tu veux genre une prise connectée matter, fais moi signe !
La réponse de Sonoff :
Dear Alexandre Trovato,
Thanks for your email.
Since we have the matter device (MINIR4M), we do not have a plan to upgrade the firmware of old devices to make them Matter-compatible.
Regards,
Taylor in SONOFF
En attendant, Tasmota semble compatible :
Mais nodejs est assez pauvre en librairie pour le moment…
Dommage !
Par rapport à Matter ? On a 2 options pour ça:
- Soit on fait un service « natif » dans Gladys avec une lib Node.js Matter (mais du coup, à voir si leur lib officielle est utilisable ou pas encore)
- Soit on lance un container comme on fait avec Zigbee2mqtt, et le container Matter de Home Assistant est open-source et a une API Websocket, on pourrait s’intégrer avec. Après, on devient très dépendant de leurs changements, et vu que c’est pas forcément un container fait pour être utilisé pour d’autres projets, l’API peut changer…
Si tu veux te lancer sur le sujet Matter, on peut en parler sur un sujet spécifique si tu veux
Je vais commencer par maintenir le service eWelink avec l’API personnelle et la génération de client ID/secret par utilisateur, avec la doc qui va bien ; ça laissera le temps à la lib Matter d’avancer un peu.
Bonjour, quelques nouvelles sur ce point.
J’ai bien avancé sur les modifications, j’arrive maintenant de nouveau à manipuler les devices.
Je dois encore faire quelques validations mais je suis confiant pour que ça arrive très prochainement pour une phase de test.
Il manque principalement la documentation qui devient très importante, car il y a quelques actions à faire côté ewelink pour intégrer Gladys.
Dans une seconde phase, je verrai pour :
- utiliser les devices via le réseau local afin d’éviter trop d’appels à l’API (car la nouvelle API est limitée en nombre d’appels)
- tester les websockets avec ewelink afin d’éviter le polling et donc limiter les appels à l’API (pour les devices qui ne sont pas sur le réseau local)
- ajouter la compatibilité avec d’autres devices
A très bientôt
PS : pour les intéressés, préparez une instance Gladys de test, je vous donnerez l’image docker et la doc rapidement
Cool, ça m’intéresse.
Merci @AlexTrovato
Dans Notion, il y a déjà une page que tu pourra modifier.
Euh j’ai du louper un épisode pour ça. Je peux trouver des info sur le forum j’imagine.
Tu as les infos ici.
Re
la documentation ici, il faut attendre ~48 heures avant le compte eWeLink soit actif :
et l’image docker de test :
atrovato/gladys:ewelink
Merci à tous.
Bonjour,
du coup, j’ai avancé avec la partie WebSocket (pour faire ce qui est conseillé dans la documentation officielle), c’est toujours le même tag d’image atrovato/gladys:ewelink
(dispo d’ici 2h) et la même doc.
En attendant que quelqu’un d’autre que moi teste la nouvelle version du service, je fourni la PR.
Et la documentation :
Il y aura d’autres modifications / améliorations qui suivent, mais elles pourront venir dans d’autres PR, car cela n’impacte pas la mise en place de la v2 de l’API.