oui sur le compteur lui-même mais ne les envoie qu'une fois par jour, et après redressement est disponible.tekkharibo a écrit :Merci de ta réponse.
C'est bete sachant qu'ils recup l'information toutes les 30 minutes.
Récupérer ses informations de consommation électriques via l'API ENEDIS
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
Imperihome & Domoticz: MyDomoAtHome !
eedomus+ - Domoticz - MySensors
zigbee zwave nrf24l rfx
eedomus+ - Domoticz - MySensors
zigbee zwave nrf24l rfx
-
tekkharibo
- Messages : 282
- Inscription : 28 déc. 2017, 09:51
- Localisation : Albi
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
D'accord merci
Projet de domotique low-cost : Mon installation MAJ 01/05/2020
Dans le doute reboot !
Si vous êtes pas loin d'Albi on peut se rencontrer pour partager
Dans le doute reboot !
Si vous êtes pas loin d'Albi on peut se rencontrer pour partager
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
comment est réglé ta timezone sur ton pi ? gmt+1 DST ?tekkharibo a écrit : Par contre, je viens de m’apercevoir qu'il y a un décalage entre les heures du scripts et les heures de domoticz.
Il y a une heure de diff entre les 2
[/img][/url]
Imperihome & Domoticz: MyDomoAtHome !
eedomus+ - Domoticz - MySensors
zigbee zwave nrf24l rfx
eedomus+ - Domoticz - MySensors
zigbee zwave nrf24l rfx
-
tekkharibo
- Messages : 282
- Inscription : 28 déc. 2017, 09:51
- Localisation : Albi
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
Très bonne question, je le vois comment ? Je sais que j'ai la même heure sur mon pi et mon tel
Envoyé de mon SM-G935F en utilisant Tapatalk
Envoyé de mon SM-G935F en utilisant Tapatalk
Projet de domotique low-cost : Mon installation MAJ 01/05/2020
Dans le doute reboot !
Si vous êtes pas loin d'Albi on peut se rencontrer pour partager
Dans le doute reboot !
Si vous êtes pas loin d'Albi on peut se rencontrer pour partager
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
tekkharibo a écrit :Très bonne question, je le vois comment ? Je sais que j'ai la même heure sur mon pi et mon tel
Envoyé de mon SM-G935F en utilisant Tapatalk
Code : Tout sélectionner
pi@domoticz:~ $ cat /etc/timezone
Europe/Paris
pi@domoticz:~ $ date
Fri 4 May 23:12:30 CEST 2018
-
tekkharibo
- Messages : 282
- Inscription : 28 déc. 2017, 09:51
- Localisation : Albi
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
Je suis bien en timezone Paris
Envoyé de mon SM-G935F en utilisant Tapatalk
Envoyé de mon SM-G935F en utilisant Tapatalk
Projet de domotique low-cost : Mon installation MAJ 01/05/2020
Dans le doute reboot !
Si vous êtes pas loin d'Albi on peut se rencontrer pour partager
Dans le doute reboot !
Si vous êtes pas loin d'Albi on peut se rencontrer pour partager
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
Bonsoir,
Après mise en place du script et récupération avec succès des données Enedis jusqu'au début de cette année, je suis resté un peu frustré de ne pas pouvoir récupérer celles des années précédentes.
La récupération des données est pourtant correcte, mais les fichier JSON ne précisent pas l'année.
Exemple à M - 5 (export_days_values.json) :
Une fois le script d'injection sql généré (req.sql) l'année fournie est incorrecte :
J'ai jeté un oeil dans le code source du projet.
Le souci vient a priori du JavaScript domoticz_linky.js car on initialise systématique l'année de travail à partir de la date du jour :
Et c'est cette année qui est utilisée par la suite pour écrire dans le fichier .sql :
Calcul de var_req_date dans function generateMonthDays() :
J'essaye de trouver une manière d'adapter ce calcul si l'on est sur l'année précédente ou pas.
Si vous avez des idées ...
Après mise en place du script et récupération avec succès des données Enedis jusqu'au début de cette année, je suis resté un peu frustré de ne pas pouvoir récupérer celles des années précédentes.
La récupération des données est pourtant correcte, mais les fichier JSON ne précisent pas l'année.
Exemple à M - 5 (export_days_values.json) :
Code : Tout sélectionner
[{"time": "10 Nov", "conso": 5.673}, {"time": "11 Nov", "conso": 3.12}, {"time": "12 Nov", "conso": 5.83}, {"time": "13 Nov", "conso": 9.755}, {"time": "14 Nov", "conso": 8.061}, {"time": "15 Nov", "conso": 10.253}, {"time": "16 Nov", "conso": 11.108}, {"time": "17 Nov", "conso": 9.122}, {"time": "18 Nov", "conso": 6.095}, {"time": "19 Nov", "conso": 6.061}, {"time": "20 Nov", "conso": 18.833}, {"time": "21 Nov", "conso": 8.77}, etc ...Code : Tout sélectionner
BEGIN TRANSACTION;
DELETE FROM 'Meter_Calendar' WHERE devicerowid=73 and date = '2018-11-10'; INSERT INTO 'Meter_Calendar' (DeviceRowID,Value,Counter,Date) VALUES (73, '5673', '549.838', '2018-11-10');
DELETE FROM 'Meter_Calendar' WHERE devicerowid=73 and date = '2018-11-11'; INSERT INTO 'Meter_Calendar' (DeviceRowID,Value,Counter,Date) VALUES (73, '3120', '555.511', '2018-11-11');
DELETE FROM 'Meter_Calendar' WHERE devicerowid=73 and date = '2018-11-12'; INSERT INTO 'Meter_Calendar' (DeviceRowID,Value,Counter,Date) VALUES (73, '5830', '558.631', '2018-11-12');
etc ..Le souci vient a priori du JavaScript domoticz_linky.js car on initialise systématique l'année de travail à partir de la date du jour :
Code : Tout sélectionner
var dateObj = new Date();
var q_year=dateObj.getUTCFullYear();Calcul de var_req_date dans function generateMonthDays() :
Code : Tout sélectionner
for (var i = 0; i < Object.keys(obj).length; ++i) {
var req_date=''+q_year+'-'+pad((mth.indexOf(obj[i]["time"].substr(3, 3))+1),2)+'-'+pad(obj[i]["time"].substr(0, 2),2);Si vous avez des idées ...
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
Bonsoir,
Je me suis remis sur la problématique de la récupération des données à N-1
J'ai trouvé une solution que je vous propose ici
L'idée est de générer des fichiers JSON qui contiennent l'année correspondantes aux données quotidiennes puis de réutiliser cette année lors de la création de la requête d'insertion dans la base Domoticz.
Soit 3 fichiers à modifier :
- linky_json.py et linky_month.py : modifier la procédure export_days_values(res) pour générer l'axe X avec l'année
devient
- domoticz_linky.js : modifier la fonction generateMonthDays afin de récupérer l'année exportée précédemment
devient
et j'en profite pour faire l'insertion en base directement par un INSERT OR REPLACE afin d'éviter une DELETE inutile :
Voilà, j'ai testé avec mes données depuis septembre de l'an dernier après avoir purgé ma table Meter_Calendar des anciennes données de mon Device.
Pas moyen de remonter plus loin, avant je n'avais pas de Linky
Je ne suis pas encore familiarisé avec Git donc je ne sais pas trop comment pousser cette modif dans le dépôt
Je me suis remis sur la problématique de la récupération des données à N-1
J'ai trouvé une solution que je vous propose ici
L'idée est de générer des fichiers JSON qui contiennent l'année correspondantes aux données quotidiennes puis de réutiliser cette année lors de la création de la requête d'insertion dans la base Domoticz.
Soit 3 fichiers à modifier :
- linky_json.py et linky_month.py : modifier la procédure export_days_values(res) pour générer l'axe X avec l'année
Code : Tout sélectionner
days_x_values = generate_x_axis(res,
'days', "%d %b", 1)Code : Tout sélectionner
days_x_values = generate_x_axis(res,
'days', "%d %b %Y", 1) Code : Tout sélectionner
var req_date=''+q_year+'-'+pad((mth.indexOf(obj[i]["time"].substr(3, 3))+1),2)+'-'+pad(obj[i]["time"].substr(0, 2),2);Code : Tout sélectionner
var req_date=''+obj[i]["time"].substr(7, 4)+'-'+pad((mth.indexOf(obj[i]["time"].substr(3, 3))+1),2)+'-'+pad(obj[i]["time"].substr(0, 2),2);Code : Tout sélectionner
console.log('INSERT OR REPLACE INTO \'Meter_Calendar\' (DeviceRowID,Value,Counter,Date) VALUES ('+devicerowid+', \''+lastVal+'\', \''+Math.round(cumul*1000)/1000+'\', \''+req_date+'\');'); Voilà, j'ai testé avec mes données depuis septembre de l'an dernier après avoir purgé ma table Meter_Calendar des anciennes données de mon Device.
Pas moyen de remonter plus loin, avant je n'avais pas de Linky
Je ne suis pas encore familiarisé avec Git donc je ne sais pas trop comment pousser cette modif dans le dépôt
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
Hop' je l'ai fait pour toi, mais on est bien d'accordo n n'a besoin que de ton dernier post ?pascal_69 a écrit :Bonsoir,
Je me suis remis sur la problématique de la récupération des données à N-1
J'ai trouvé une solution que je vous propose ici
...
Je ne suis pas encore familiarisé avec Git donc je ne sais pas trop comment pousser cette modif dans le dépôt
Imperihome & Domoticz: MyDomoAtHome !
eedomus+ - Domoticz - MySensors
zigbee zwave nrf24l rfx
eedomus+ - Domoticz - MySensors
zigbee zwave nrf24l rfx
Re: Récupérer ses informations de consommation électriques via l'API ENEDIS
on est d'accord !
merci à toi
merci à toi