All Projects → PhilBri → Node-Linky

PhilBri / Node-Linky

Licence: MIT license
A simple node to connect to Enedis Linky smart-meter to fetch your datas

Programming Languages

HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Node-Linky

building-data-genome-project-2
Whole building non-residential hourly energy meter data from the Great Energy Predictor III competition
Stars: ✭ 112 (+286.21%)
Mutual labels:  smart-meter, electricity-consumption
linky
🔌 Easily retrieve your Linky™ power consumption
Stars: ✭ 131 (+351.72%)
Mutual labels:  linky, enedis
linky-cli
⛔️ DEPRECATED - A CLI tool to retrieve your Linky power consumption
Stars: ✭ 19 (-34.48%)
Mutual labels:  linky, enedis
node-red-contrib-ui-time-scheduler
Easily power on/off any kind of device based on a schedule that you can easily create at the node-red-dashboard frontend.
Stars: ✭ 28 (-3.45%)
Mutual labels:  node-red
node-red-contrib-zeebe
Zeebe nodes for Node-RED
Stars: ✭ 23 (-20.69%)
Mutual labels:  node-red
node-red-contrib-smartnora
Node Red Google Home integration
Stars: ✭ 80 (+175.86%)
Mutual labels:  node-red
Node-RED-Tello-Control
Node-RED flows to control the Ryze Tello Drone
Stars: ✭ 121 (+317.24%)
Mutual labels:  node-red
node-red-contrib-mindconnect
Node-RED Agent for the MindConnect API (community driven project)
Stars: ✭ 43 (+48.28%)
Mutual labels:  node-red
HomeApp
A little smart home app for Philips Hue and other devices
Stars: ✭ 54 (+86.21%)
Mutual labels:  node-red
home-assistant-config
🏠 Home Assistant Configuration & Documentation for my smart home using Node-RED for automations. Press ⭐ for notification of updates.
Stars: ✭ 34 (+17.24%)
Mutual labels:  node-red
Fire-detection-using-Python
Fire detection without using sensor
Stars: ✭ 36 (+24.14%)
Mutual labels:  node-red
node-red-contrib-alexa-home
No description or website provided.
Stars: ✭ 31 (+6.9%)
Mutual labels:  node-red
awesome-nodered
A collection of interesting nodes and resources for Node-RED
Stars: ✭ 316 (+989.66%)
Mutual labels:  node-red
node-red-contrib-ewelink
NodeRED nodes for eWeLink smart devices
Stars: ✭ 40 (+37.93%)
Mutual labels:  node-red
open-energy-view
View resource consumption trends, history, analysis, and insights.
Stars: ✭ 32 (+10.34%)
Mutual labels:  electricity-consumption
air-quality
Air quality sensing and monitoring
Stars: ✭ 17 (-41.38%)
Mutual labels:  node-red
smart-email-support
Smart Email Support for Telecom Organisations - Provide automated customer support for emails
Stars: ✭ 19 (-34.48%)
Mutual labels:  node-red
Gemello
No description or website provided.
Stars: ✭ 18 (-37.93%)
Mutual labels:  smart-meter
node-red-contrib-fritzapi
Home automation node for Fritz!Box, Fritz!DECT and FRITZ!Powerline devices.
Stars: ✭ 15 (-48.28%)
Mutual labels:  node-red
Prometeo-Pyrrha
Former repository for Prometeo, winner of the Call for Code 2019 Global Challenge, open sourced as Pyrrha (see links within this repo). It measures toxin exposure in real time and analyzes trends over time.
Stars: ✭ 27 (-6.9%)
Mutual labels:  node-red

A simple node to connect to a ENEDIS (French electrical distribution network) account to fetch your own energy consumption provided by the Linky smart meter and use it as you wish...


Module (node) Node-Red permettant de récupérer sur le site ENEDIS vos données de consommation électrique collectées par le compteur Linky.


★ Installation

  1. Télécharger, extraire puis copier le repertoire Linky dans le dossier \node_modules\ concerné par votre éditeur NODE-RED.

  2. Relancez et/ou actualisez l'onglet de votre explorateur.


★ Compte ENEDIS

Afin de pouvoir collecter vos données de consommation issues de votre fournisseur d'éléctricité, il convient de :

Créer un compte

  • 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... 😯

Activer votre compte

  • 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.


★ Configuration du module

  • 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.

★ Fonctionnement

Inputs

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.

Format du message msg en entrée

msg {
    "topic" : "linky",
    "payload" : {
        "debut": "JJ-MM-AAAA",
        "fin": "JJ-MM-AAAA"
    }
}

msg.topic {string} (facultatif)

  • Valeur ➜ "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"

Outputs

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.

Format du message msg en sortie

msg {
    "topic": "linky",
    "payload": {
        "..." : {"..."},
        "linky": {"your_JSON_datas"}
    }
}

msg.topic {string}

  • Ajout systématique de la propriété topic
  • Valeur ➜ "linky"

msg.payload {object}

  • Conservation des données présentes en entrée.

msg.payload.linky {JSON}

  • Ajout de la propriété linky
  • Valeur ➜ Objet représentant les valeurs demandées.

★ Utilisation

ENEDIS propose 4 possibilités de consultation de vos données listées sur la page dédiée au "suivi de consommation".

  • Par heure
    • Toutes les 1/2h durant 24 heures et par jour calendaire.
  • Par jour
    • Entre 2 dates séparées de 1 à 31 jours maxi.
  • Par mois
    • Compris entre 2 et 12 mois.
  • Par an
    • Indisponible car moins d'un an d'installation.

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"}

★ Format de fichier

Le fichier retourné par ENEDIS est au format {JSON} et est ajouté au payload en sortie du module dans la propriété "linky".

  • Objet 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}
        ]
    }
}
  • Des exemples commentés sont disponibles ici

★ Compatibilité

Le module assure le pass-trough des {msg} entrant en les surchargeants des valeurs demandées.

  • Il peut donc s'intégrer facilement dans des frameworks comme SARAH V5

★ Restrictions

Le site ENEDIS est une vraie catastrophe en termes de disponibilté et de service...


★ License

Logiciel libre sous licence MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].