Récupération de la conso d'eau L'eau du Dunkerquois

Bonjour à tous,

J’ai manifestement fait une confusion entre les plugins veolia_eau et teleo.

Initialement, j’ai fait une demande ICI pour voir s’il était possible d’ajouter mon fournisseur d’eau.

Ce matin, j’ai téléchargé le plugin veolia_eau dans sa version beta et j’ai constaté que mon fournisseur a été ajouté.

Je ne sais pas à qui je le dois mais je le remercie pour ce travail. J’ai peut-être loupé quelque chose quelque part…

Cependant, je ne parviens pas à récupérer les données. Voici le log en DEBUG :

[2023-03-30 12:15:02][DEBUG] : heure de relève: 12
[2023-03-30 12:15:02][DEBUG] : ### GET CSRF TOKEN ON https://www.eaux-dunkerque.fr/mon-compte-en-ligne/je-me-connecte ###
[2023-03-30 12:15:03][DEBUG] : cURL response : %3C%21doctype+html%3E%0A%3Chtml+lang%3D%22fr%22%3E%0A%3Chead%3E%0A++++++++++++TROP LONG
[2023-03-30 12:15:03][DEBUG] : cURL errno : 0
[2023-03-30 12:15:03][DEBUG] : Extracting token
[2023-03-30 12:15:03][DEBUG] : Token: Sxxxxxxxxxb-Lxxxxxxxxxxxxxxxxxxxxxxxxxxxxxq
[2023-03-30 12:15:03][DEBUG] : ### LOGIN ON https://www.eaux-dunkerque.fr/mon-compte-en-ligne/je-me-connecte ###
[2023-03-30 12:15:06][DEBUG] : cURL response : %3C%21doctype+html%3E%0A%3Chtml+lang%3D%22fr%22%3E%0A%3Chead%3E%0A++++++++++++TROP LONG
[2023-03-30 12:15:06][DEBUG] : cURL errno : 0
[2023-03-30 12:15:06][DEBUG] : ### GO TO CONSOMMATION PAGE ###
[2023-03-30 12:15:08][DEBUG] : cURL response : %3C%21doctype+html%3E%0A%3Chtml+lang%3D%22fr%22%3E%0A%3Chead%3E%0A++++++++++++TROP LONG
[2023-03-30 12:15:08][DEBUG] : cURL errno : 0
[2023-03-30 12:15:08][DEBUG] : downloadToken : 
[2023-03-30 12:15:08][DEBUG] : url csv : https://www.eaux-dunkerque.fr/mon-compte-en-ligne/exporter-consommation/day//2023/03
[2023-03-30 12:15:08][DEBUG] : ### GET DATAFILE CSV ###
[2023-03-30 12:15:08][DEBUG] : ### Create File /tmp/veolia_releve_6425612c8346f.xls
[2023-03-30 12:15:08][DEBUG] : ### Curl call https://www.eaux-dunkerque.fr/mon-compte-en-ligne/exporter-consommation/day//2023/03
[2023-03-30 12:15:09][DEBUG] : response : 1
[2023-03-30 12:15:09][DEBUG] : error : 
[2023-03-30 12:15:09][DEBUG] : response length : 1
[2023-03-30 12:15:09][DEBUG] : cURL errno : 0
[2023-03-30 12:15:09][DEBUG] : alert: 
[2023-03-30 12:15:09][DEBUG] : ### TRAITE CONSO XLS 13 ###
[2023-03-30 12:15:09][DEBUG] : 0 data lines
[2023-03-30 12:15:09][ERROR] : Aucune donnée, merci de vérifier que vos identifiants sont corrects et que vous avez accès au télérelevé de : L'eau du Dunkerquois (https://www.eaux-dunkerque.fr).
[2023-03-30 12:15:09][DEBUG] : done... 


N’hésitez pas à me demander d’autres précisions. Merci d’avance.

Bonjour à tous,

Je pense avoir trouvé d’où vient l’erreur mais mes connaissances sont trop minces pour je puisse la corriger.

Si on regarde le log ci-dessus, on trouve ces deux lignes qui se suivent :

Il devrait y avoir quelque chose à la suite de :
downloadToken :
Et ce quelque chose devrait s’insérer dans la deuxième ligne entre :
/day/ et /2023/03

Ce problème vient peut-être du fait que dans la configuration de l’équipement il faut indiquer l’identifiant du compteur. Le mien est constitué de caractères alpha-numériques alors que le plugin n’accepte que les chiffres.

Je dirais donc que la cause du problème se trouve dans le fichier /plugins/veolia_eau/core/class/veolia_eau_process.class.php qu’on peut trouver ICI.

Seulement voilà, c’est ici que s’arrêtent mes maigres compétences. J’ai laissé un message sur Github il y a quelques jours mais pour l’instant je n’ai reçu aucun écho.

Un peu d’aide me serait utile ou alors si par chance j’avais un voisin dont le plugin est fonctionnel…

Merci d’avance.

A priori le problème ne vient pas de là parce que j’ai modifié le fichier /plugins/veolia_eau/desktop/php/veolia_eau.php à ligne 156 où j’ai remplacé input type=''number" par input type=« text »

<input type="number" class="eqLogicAttr configuration form-control" data-l1key="configuration" data-l2key="idAbt" placeholder="0, 1, 2... si plusieurs compteurs rattaché au contrat"/>
<input type="text" class="eqLogicAttr configuration form-control" data-l1key="configuration" data-l2key="idAbt" placeholder="0, 1, 2... si plusieurs compteurs rattaché au contrat"/>

Du coup je peux indiquer l’identifiant de mon compteur avec des caractères alpha-numériques.

Cela dit, rien ne change. Les données ne remontent toujours pas dans Jeedom car je suis toujours coincé avec le token.

Bonjour à tous,

Je suis toujours à la recherche d’une solution pour le plugin veolia_eau.
Entretemps, j’ai découvert que l’ID du compteur à indiquer n’est pas celui qui est indiqué sur le compteur ou sur les factures.
Si mes infos sont exactes l’ID du compteur figure dans le code source de la page sur laquelle on peut visualiser notre consommation.

Cette fois il n’y a plus que des chiffres. J’ai donc remis le fichier /plugins/veolia_eau/desktop/php/veolia_eau.php dans son état d’origine et j’ai rentré cet ID dans la configuration du plugin.
Pour autant, rien n’est résolu car les infos ne remontent toujours pas dans Jeedom.
Avant d’abandonner l’affaire, est-ce que quelqu’un pourrait me dire si ce plugin fonctionne encore avec les distributeurs du groupe Suez « Tout sur mon eau » ?

Bonjour,
J’ai le même problème. Je ne sais pas comment le résoudre.
Merci d’essayer.
Si quelqu’un arrive a se connecter avec l’eau de Dunkerque :innocent::innocent:

1 « J'aime »

Bonjour,
Désolé que tu connaisses les mêmes problèmes mais au moins je me sens moins seul :two_men_holding_hands:.
Il serait intéressant de savoir si tous les abonnés du groupe Suez sont impactés ou si c’est juste une spécificité de « L’Eau de Dunkerque ».
Quoi qu’il en soit, si j’interprète correctement le code source de la page qui nous intéresse, il semblerait que le site ait été mis à jour le 27.03.2023 :

<!-- Version info: v5.4.2 -->
<!-- Build date: 20230327 -->

La dernière version beta du plugin date du 2023-02-27 01:14:04. Donc, sans mise à jour du plugin, j’ai bien peur que ce soit sans espoir.
Bon week-end.

@Laurent92

Bonjour,
Il semblerait que Suez ait encore modifié son site toutsurmoneau. De ce fait, à nouveau, les données ne remontent plus dans Jeedom.
Comme tu avais trouvé la solution lors de la précédente modification du site, si tu passes par ici, je me disais que tu pourrais peut-être nous aider à résoudre ce problème.
Merci d’avance et bon week-end.

1 « J'aime »

Bonjour Goulouche,

Pour l’instant, le plugin fonctionne toujours avec le site toutsurmoneau de Suez.

A mon avis, le problème vient de On’Connect qui ne présente pas l’historique des consommations de la même manière que le site toutsurmoneau.

Avec le service On’Connect, les urls et/ou pages historique du site sont peut être différentes. Pour tenter de trouver la cause, il faudrait récupérer l’url permettant d’accéder à la page historique et celle permettant d’exporter le fichier XLS.
Si les écarts ne sont pas trop importants, il est peut-être possible d’adapter le plugin pour récupérer le fichier xls, et ensuite traiter son contenu.
J’ai tenté de me connecter sur le site Eaux Dunkerque avec mon compte mais je suis redirigé automatiquement sur le site toutsurmoneau (normal). Je n’ai pas le moyen de naviguer sur le site pour vérifier les urls et le contenu des pages.

Désolé de ne pas pouvoir t’aider plus que ça…

Laurent.

Bonjour Laurent,

Ne sois pas désolé. Je suis déjà très heureux que tu m’aies répondu. Grâce à tes infos, j’ai essayé de progresser mais sans succès jusqu’à présent.

L’url de la page Historique de mes consommations est celle-ci :

https://www.eaux-dunkerque.fr/mon-compte-en-ligne/mon-coach-conso

Par contre, je n’ai pas trouvé l’url du lien de téléchargement des données de consommation. J’ai cherché dans le code source de la page ci-dessus mais comme je ne connais rien en codage…

Bref ! Au niveau du plugin, j’ai modifié la ligne 444 du fichier veolia_eau_process.class.php

$url_consommation = 'https://'.$url_site.'/mon-compte-en-ligne/historique-de-consommation';

en essayant ça :

$url_consommation = 'https://'.$url_site.'/mon-compte-en-ligne/mon-coach-conso';

Avec le log suivant impossible mettre en texte formaté parce qu’il y a trop de caractères :
Log-1_veolia_eau.txt (124,5 Ko)

puis ça :

$url_consommation = 'https://'.$url_site.'/mon-compte-en-ligne/exporter-consommation';

Avec ce log impossible à formater également :
Log-2_veolia_eau.txt (56,7 Ko)

Ça n’a rien donné. Il y a toujours des erreurs et le token ne remonte toujours car, si j’ai bien compris, je devrais avoir ça :

[2023-04-09 04:35:13][DEBUG] : downloadToken : ID COMPTEUR
[2023-04-09 04:35:13][DEBUG] : url csv : https://www.eaux-dunkerque.fr/mon-compte-en-ligne/exporter-consommation/day/ID COMPTEUR/2023/04

Pour finir, si tu as un peu de temps, voici le code source de la page Historique de mes consommations.
Historiqque (Code Source).txt (62,0 Ko)

Bon week-end Pascal.

Bonjour Goulouche,

Effectivement le code source de ton historique ne contient pas les entrées utilisées par le plugin pour récupérer le download token.
Par contre il y a bien des références à l’url d’export des données au format XLS, ainsi qu’au download token (l’id compteur que tu avais trouvé) comme sur ma page d’historique.
Un point étonnant sur ta page, le download token est 1234567890. Je crains que cet id soit un id par défaut, probablement inutile pour le service On’connect.

Un test à faire si tu ne l’as pas déjà fait, tu te connectes avec ton compte sur le site www.eaux-dunkerque.fr et à l’affichage du tableau de bord, tu remplaces l’url de ton navigateur par l’url suivante :

https://www.eaux-dunkerque.fr/mon-compte-en-ligne/exporter-consommation/day/1234567890/2023/04

Si cela fonctionne comme avec mon compte sur Toutsurmoneau, tu devrais obtenir le fichier XLS avec tes consommations d’avril.

Laurent.

Bonjour Laurent,

Merci encore de ton attention. Concernant l’ID de mon compteur, j’aurais effectivement dû préciser que j’ai volontairement tronquer le numéro pour ne pas qu’il se balade en pleine nature. Je vais essayer ce que tu me suggère et je te tiens au courant.

@Laurent92

Je viens de faire l’essai depuis mon tableau de bord avec cet url :

https://www.eaux-dunkerque.fr/mon-compte-en-ligne/exporter-consommation/day/ID_COMPTEUR/2023/04

et j’arrive effectivement directement sur le fichier de téléchargement :

Capture d’écran 2023-04-11 141734

Ce qui m’intéresserait, c’est de rapatrier ces données directement dans Jeedom.

Bonjour,

Oui bien sur, j’aurais pu me douter que tu n’avais pas mis le vrai download token.
Si le fichier récupéré n’est pas vide et correspond au format traité par le plugin (conso en m3) comme ci-dessous :

Capture d’écran 2023-04-11 à 19.41.43

ce n’est pas propre mais je tenterais de forcer la variable downloadToken en attendant une adaptation pérenne du plugin par les développeurs.

Dans le fichier veolia_eau_process.class.php, entre les 2 lignes suivantes (ligne 603 normalement),

$downloadToken = substr($monthlyReportUrl, strrpos($monthlyReportUrl, '/') + 1);
log::add('veolia_eau', 'debug', 'downloadToken : '.$downloadToken);

Tu ajoutes la ligne :

$downloadToken = 'id-compteur';

J’espère que cette modif va te permettre de récupérer tes consos dans Jeedom.

Bonjour Laurent,
Merci pour ta solution qui fonctionne parfaitement. Certes, comme tu l’indiques, ce n’est pas très propre mais c’est ce que je cherchais à faire à minima.
Bonne journée.

Bonjour, super boulot😀, j’essai cela demain soir,
Merci d’avance

Bonjour, cela marche pour moi aussi, effectivement pas très propre mais cela fonctionne,

Merci!

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.