Rebonjour je m'excuse pour relancer cette discussion, je pense que la détection d'écoulement continu / fuite pourrait servir à beaucoup de gens pour diagnostiquer leur installation et avoir une remonté d'alarme précoce
J'ai mis l'intégration en mode débug pour voir ce que sort l'échange SOAP.
Les trames XLM sont à géométries variable selon que le champ écoulement soit présent ou pas. Des fois on trouve le champ écoulement à 0 mais je pense que c'est quand la fuite est < 1 Litre, si c'est zero franc c'est absent
Je suis assez nul en python, j'ai compris a peu près la création des tuples dans l'historique daily vs monthly. Pour en pas trop casser de trucs, j'ai créé dans le module d'échange de donnée (veolia client => remonte vers sensor HA) deux autres dict DAILY_LEAK et MONTHLY_LEAK. Comme le champ / clef ecoulement n'est pas toujours présent, j'ai fait au mieux pour tester son existence, à défaut mettre un 0 explicite = pas de fuite
C'est probablement pas propre, avec mes excuses. Le zip du code modifié en PJ pour review et éventuelle intégration dans la version d'après. En espérant que ca puisse servir à d'autres. Pas de pull request, mon code est probablement pas assez bon pour cela et nécessite un expert pour le mettre d'équerre. J'ai supprimé ma modif de la fonction qui retourne le sensor class (consommation journalière et mensuelle) pour ne laisser que l'index dans le menu énergie, sur votre conseil.
Rebonjour je m'excuse pour relancer cette discussion, je pense que la détection d'écoulement continu / fuite pourrait servir à beaucoup de gens pour diagnostiquer leur installation et avoir une remonté d'alarme précoce
J'ai mis l'intégration en mode débug pour voir ce que sort l'échange SOAP. Les trames XLM sont à géométries variable selon que le champ écoulement soit présent ou pas. Des fois on trouve le champ écoulement à 0 mais je pense que c'est quand la fuite est < 1 Litre, si c'est zero franc c'est absent
Exemple avec écoulement
{'codeRetour': '00', 'consommation': '318', 'dateReleve': '2023-11-10T00:00:00+01:00', 'ecoulement': '72', 'fiabiliteIndex': 'M', 'index': '749398'}, {'codeRetour': '00', 'consommation': '360', 'dateReleve': '2023-11-11T00:00:00+01:00', 'ecoulement': '72', 'fiabiliteIndex': 'M', 'index': '749716'}, {'codeRetour': '00', 'consommation': '528', 'dateReleve': '2023-11-12T00:00:00+01:00', 'ecoulement': '0', 'fiabiliteIndex': 'M', 'index': '750076'}, {'codeRetour': '00', 'consommation': '319', 'dateReleve': '2023-11-13T00:00:00+01:00', 'ecoulement': '0', 'fiabiliteIndex': 'M', 'index': '750604'},
exemple sans écoulement détecté
{'codeRetour': '00', 'consommation': '250', 'dateReleve': '2024-01-12T00:00:00+01:00', 'fiabiliteIndex': 'M', 'index': '775647'}, {'codeRetour': '00', 'consommation': '207', 'dateReleve': '2024-01-13T00:00:00+01:00', 'fiabiliteIndex': 'M', 'index': '775897'},
en mensuel
{'annee': '2023', 'codeRetour': '00', 'consommation': '8797', 'ecoulement': '144', 'fiabiliteConso': 'M', 'index': '737820', 'mois': '10'},
Je suis assez nul en python, j'ai compris a peu près la création des tuples dans l'historique daily vs monthly. Pour en pas trop casser de trucs, j'ai créé dans le module d'échange de donnée (veolia client => remonte vers sensor HA) deux autres dict DAILY_LEAK et MONTHLY_LEAK. Comme le champ / clef ecoulement n'est pas toujours présent, j'ai fait au mieux pour tester son existence, à défaut mettre un 0 explicite = pas de fuite
C'est probablement pas propre, avec mes excuses. Le zip du code modifié en PJ pour review et éventuelle intégration dans la version d'après. En espérant que ca puisse servir à d'autres. Pas de pull request, mon code est probablement pas assez bon pour cela et nécessite un expert pour le mettre d'équerre. J'ai supprimé ma modif de la fonction qui retourne le sensor class (consommation journalière et mensuelle) pour ne laisser que l'index dans le menu énergie, sur votre conseil.
veolia-mod-ecoulement-continu.zip