Closed JohanSweck closed 1 year ago
pour résumer, je fais:
=> ca fonctionne correctement.
Le lendemain, je fais un linky daily et là, les tokens ne sont plus valides.
C'est bizarre... Tu aurais un screenshot ou un dump du moment où les tokens ne sont plus valides?
Tu utilises quelle version du package? (linky --version
)
J'utilise la version 1.3.0. Tu peux me dire ou sont stockés les token que je vérifie quand ils sont mis à jour? Y a pas d'autres commandes que auth et daily sur ton script pour avoir plus d'infos?
Du coup j'ai fait mon propre script et je raffraichis les token toutes les heures. Ca semble marcher correctement.
Bon c'est bizarre j'ai eu le même problème, il faut que je regarde pourquoi le renouvellement échoue si il est fait 1 jour plus tard... A tout les coups c'est encore le serveur Enedis qui déconne.
Dans la 1.1.0
, les tokens n'étaient pas supprimés en cas d'erreur, mais j'ai du changer ce comportement à cause d'idiots qui lançaient des refresh toutes les minutes pendant des mois alors que leurs tokens étaient expirés...
Tu peux me dire ou sont stockés les token que je vérifie quand ils sont mis à jour?
Sous linux, ce devrait être dans ~/.config/linky-nodejs/config.json
.
Je crois que le token a une durée de 3:30 max (tu le vois dans la réponse json). Moi je le renouvelle toutes les heures.
Bon en fait j'arrive pas à reproduire, mes tokens sont correctement renouvelés...
Est-ce que tu pourrais installer la version 1.1.0
(npm i -g linky@1.1.0
), reproduire l'erreur de renouvellement, et m'envoyer le log d'erreur? ça m'aiderait beaucoup à comprendre le problème
Merci
Bonjour, J'ai l'impression d'avoir le même problème et je n'ai pas trouvé d'autre moyen que de récupérer des nouveaux token sur conso.vercel.app. J'ai la version 1.1.0 mais je ne sais pas où trouver les logs.
Du coup j'ai fait mon propre script et je raffraichis les token toutes les heures. Ca semble marcher correctement.
Salut @JohanSweck Tu pourrais stp partager ton script ? J'imagine que tu le fais tourner dans un crontab toutes les heures, c'est bien ça ?
Même souci après plusieurs jours ça marche plus :(
Dans la veine des trucs Enedis qui marchent pas : le site me redemande de valider les CGU à chaque connexion…
désolé pour le délais. Mon script est ici: https://github.com/JohanSweck/linky
Bonjour à tous,
Pour moi impossible d'obtenir mes tokens, je reçois bien un mail m'informant que je partage mes données mais je n'obtiens aucun token
Qui peut me donnée un coup de main?
Merci d'avance
@JocelynPa déjà une issue ouverte (#36), on attend que Enedis répare
J'ai du mal à comprendre ce qui se passe. Linky cli est lancé par node-red. pendant plusieurs jours tout fonctionne et après j'ai l'authentification qui n'est plus valide comme si les jetons n'étaient pas renouvelés. Node-red est éteint la nuit mais ça n'a pas l'air de poser problème. Pouvez vous me confirmer que le renouvellement se fait automatiquement sans lancer de commande particuliere? Quelle est la durée des Access et refresh token? Est ce que le refresh token est bien actualisé a chaque réception d'un nouveau Access token?... => Après analyse,il y avait deux problèmes qui m'a induit en erreur:
Les access token durent quelques heures, mais c'est normal, c'est à ça que servent les refresh tokens, qui sont censés durer plusieurs semaines (en théorie).
Ton Node-red fait tourner Linky CLI une fois par jour c'est bien ça ? Si oui, tu devrais voir tes token changer à chaque fois dans .config/linky-nodejs/config.json
.
Pour débugger efficacement et enfin résoudre ce problème embêtant, il faudrait que tous les jours tu fasses une sauvegarde de ton fichier de tokens avant et après exécution du script, en plus des logs d'exécution.
Tu laisses tourner ton script quotidiennement, et si un jour ça plante on pourra comprendre ce qui se passe !
J'ai fait le choix d'utiliser le module Node.js que je fais tourner dans un docker. J'ai l'impression d'avoir le même problème, les tokens ne se renouvellent pas et sont valables seulement quelques heures. Je souhaite lancer toutes les 24h un session.getDailyConsumption et un session.getLoadCurve. Dois-je faire un new linky.Session() à chaque fois ? Toutes les 3h?
Dois-je faire un new linky.Session() à chaque fois ? Toutes les 3h?
Oui, je vois pas comment tu pourrais lancer un session.getDailyConsumption
si tu crées pas ta variable session
d'abord... Mais pas besoin de le faire toutes les 3h, une fois par jour ça suffit !
J'ai l'impression d'avoir le même problème, les tokens ne se renouvellent pas
T'es sûr que les tokens se renouvellent pas ? Où est-ce que tu oublies de stocker les nouveaux tokens quand ils sont renouvelés ? En gros tous les jours tu vas devoir faire un new linky.Session()
avec les nouveaux tokens que tu as reçu la veille
Merci pour tes réponses.
J'utilise node-cron donc ma variable session
est toujours présente. Et j'ai tenté de la renouveler qu'une seule fois par jour, cela ne fonctionne pas.
Mon code est ici : https://github.com/iamnague/linkyftech/blob/main/server.js
Où sont stockés les tokens avec le module node.js ?
Non mais là à chaque fois que tu lances FetchEnedis()
tu recréés une session avec les mêmes tokens que la fois d'avant, donc c'est pas bon du tout.
Quand les tokens sont renouvelés tu fais juste un console.log
et tu ne les enregistres pas !
Bref je t'invite à relire un peu la documentation et à créer une autre issue si tu galères mais là ça n'a rien à voir avec le problème initial et ça spam un peu tous ceux qui ont commenté plus haut 😬
Bonne journée et bon courage
Merci @bokub d'avoir pris le temps de me répondre. J'ai bien conscience de ne pas enregistrer les tokens en sortie de mon programme mais pour moi, les variables accessToken
et refreshToken
sont initialisées en globale et non à chaque lancement de FetchEnedis()
. Je verrai pour les sauvegarder une fois que j'arriverai à les renouveler.
Mon principal problème est plutôt que onTokenRefresh
n'est jamais appelé, c'est pour cela que je me suis permis de poster ici. Je peux créer un autre issue pour cela afin de ne pas polluer.
Oui je veux bien que tu crées une autre issue spécifique à ton problème alors, merci :+1:
Bonjour, Même problème sur le rafraîchissement du token. Je suis sous Mac, j'utilise ./linky-macos version 1.7.0. Je génère les token puis j'utilise ./linky-macos sans souci. Au bout d'un certain temps (quelques heures) l'utilitaire répond : "Impossible de rafraichir vos tokens...". Si je tente plusieurs fois, l'utilitaire répond "Vos tokens sont invalides et ont été supprimés Relancez 'linky auth' pour vous connecter". Je n'arrive pas bien à comprendre pour quelle raison. Merci.
Bonjour à tous,
Il n'y a plus de notion de renouvellement de token depuis la version 2 du module, je ferme donc cette issue qui est désormais obsolète
Bonjour,
Contrairement à ce qui est écris dans le readme file, les tokens ne semblent pas renouvelés automatiquement sur mon RPI. Du coup je suis obligé de me fournir à chaque fois de nouveaux token sur la page https://conso.vercel.app/
J'ai manqué une étape?
Merci.