A simple node to connect to Enedis Linky smart-meter to fetch your datas
Télécharger, extraire puis copier le repertoire Linky dans le dossier \node_modules\
concerné par votre éditeur NODE-RED.
Relancez et/ou actualisez l'onglet de votre explorateur.
Afin de pouvoir collecter vos données de consommation issues de votre fournisseur d'éléctricité, il convient de :
Suivez la procédure : "Création de mon compte".
Aprés avoir renseigné vos données personnelles, vous recevrez soit un lien pour activer votre compte immédiatement, soit un mot de passe par courrier...
Suivez le lien qui vous a été communiqué et saisissez vos identifiants et mot de passe dans le formulaire.
Comptez environ 3 à 4 semaines aprés l'installation de votre compteur Linky avant d'avoir vos données accessibles en ligne... :hushed:
Connectez-vous sur votre "Espace client".
Activez votre courbe de charge (l'accord pour la collecte de vos données de consommation électrique toutes les 1/2 heures) si vous le souhaitez.
Onglet "Consommation" ➜ "Gérer ma courbe de charge" ➜ "Activer ma courbe de charge"
Si la courbe de charge n'est pas activée (désactivable à tout moment), le module Linky ne pourra vous transmettre les demandes de données "Journalières", mais les autres demandes seront considérées.
Double-cliquez sur le node pour en ouvrir l'éditeur des propriétés...
Renseigner les champs correspondants à vos codes utilisés sur le site ENEDIS.
Username
➜ Adresse e-mail.
Password
➜ Mot de passe.
Pour assurer la confidentialité, les champs ci-dessus possédent la propriété NODE-RED
credentials
.
- Stockage de leur valeurs hors du fichier principal du "flow".
- Ne sont pas inclus en cas d'exportation des "flows" en dehors de l'éditeur.
En entrée, le module demande uniquement et simplement un message comprenant les dates de début et de fin du relevé de consommation que vous souhaitez obtenir en retour.
msg
en entréemsg {
"topic" : "linky",
"payload" : {
"debut": "JJ-MM-AAAA",
"fin": "JJ-MM-AAAA"
}
}
msg.topic
{string} (facultatif)
"linky"
permettant éventuellement de publier sur un topic
ou de tester la validité du message.msg.payload
{JSON}
msg.payload.debut
{date} ➜ Date de début du relevé demandé.msg.payload.fin
{date} ➜ Date de fin du relevé demandé.Formats {date} acceptés =
"JJ-MM-AAAA"
ou"JJ/MM/AAAA"
Aprés l'envoi de la requète sur le site ENEDIS, le module retourne le message d'entrée surchargé des données demandées.
msg
en sortiemsg {
"topic": "linky",
"payload": {
"..." : {"..."},
"linky": {"your_JSON_datas"}
}
}
msg.topic
{string}
topic
"linky"
msg.payload
{object}
msg.payload.linky
{JSON}
linky
ENEDIS propose 4 possibilités de consultation de vos données listées sur la page dédiée au "suivi de consommation".
Le module selectionnera la requête adaptée aux dates que vous aurez passées et de ce fait minimise les risques d'erreurs.
Exemples de requêtes
Date début | Date Fin | Requête | Remarques | Payload |
---|---|---|---|---|
01-01-2018 | 01-01-2018 | Par heure | Dates identiques | {"debut": "01-01-2018, "fin": "01-01-2018"} |
10-02-2018 | 11-02-2018 | Par jour | Durée = 1 jour | {"debut": "10-02-2018, "fin": "11-02-2018"} |
05-03-2018 | 04-04-2018 | Par Jour | Durée = 31 jours | {"debut": "05-03-2018, "fin": "04-04-2018"} |
05-03-2018 | 05-04-2018 | Par mois | Durée > 31 jours | {"debut": "05-03-2018, "fin": "05-03-2018"} |
10-10-2017 | 20-03-2018 | Par mois | D'octobre à mars | {"debut": "10-10-2018, "fin": "20-03-2018"} |
01-02-2017 | 28-02-2018 | Par mois | Durée 12 mois | {"debut": "01-02-2017, "fin": "28-02-2018"} |
Le fichier retourné par ENEDIS est au format {JSON}
et est ajouté au payload en sortie du module dans la propriété "linky"
.
msg.payload
// Fichier suivant requête "par jour"
// Données collectées toutes les 1/2h = 48 valeurs en retour
payload {
{
debut : "JJ/MM/AAAA",
fin : "JJ/MM/AAAA"
},
linky {
etat {
"valeur": "temine"
},
graphe {
"decalage": 0,
"puissanceSouscrite": 12
},
periode {
"dateFin": "JJ/MM/AAAA",
"dateDebut": "JJ/MM/AAAA"
},
data [
{"valeur": 9.999,"ordre": 1},
{"valeur": 9.999,"ordre": 2},
{"valeur": "...","ordre":'n'},
{"valeur": 9.999,"ordre": 48}
]
}
}
Le module assure le pass-trough des {msg}
entrant en les surchargeants des valeurs demandées.
Le site ENEDIS est une vraie catastrophe en termes de disponibilté et de service...
Logiciel libre sous licence MIT