Integrare Home Assistant pentru monitorizarea completă a conturilor Hidroelectrica România. Suport complet pentru conturi de consum și conturi de prosumator, cu detectare automată și senzori dedicați. Datele sunt obținute prin platforma SEW (Smart Energy Water) și sunt actualizate periodic.
Date contract
- Afișează informații detaliate despre utilizator și cont.
- Atribute: nume, prenume, telefon, număr cont utilitate (UAN), cod loc de consum (NLC), tip client, adresă, localitate, serie contor activă.
Sold factură
- Starea curentă:
Da(sold de plată),Nu(achitat integral),Credit(credit prosumator). - Atribute: suma datorată sau creditul disponibil, data scadenței, detalii factură curentă.
Factură restantă
- Indică
DasauNudacă există facturi neplătite după data scadenței. - Atribute: suma restantă, numărul de zile de întârziere.
Index energie activă
- Indexul curent al contorului (registrul 1.8.0 — energie activă consumată).
- Sursă:
meter_read_history→previous_meter_read→meter_counter_series(fallback în cascadă). - Unitate de măsură: kWh.
Citire permisă (doar la non-prosumator)
- Afișează dacă fereastra de autocitire este activă și datele de început/sfârșit.
- La prosumator, acest senzor nu se creează (distribuitorul citește contorul automat).
Arhivă consum (anul cel mai recent)
- Consumul lunar din datele de utilizare (
GetUsageGeneration). - Atribute: consum pe fiecare lună disponibilă, total anual.
Arhivă index (anul cel mai recent)
- Istoricul citirilor de index din
GetMeterReadHistory. - La prosumator, filtrează automat doar registrul 1.8.0 (consum), excluzând producția.
- Atribute: fiecare citire cu data, indexul, tipul citirii (autocitire/distribuitor/estimare).
Arhivă plăți (anul cel mai recent)
- Plățile efective realizate de utilizator către companie (canale de tip
Incasari-*). - Atribute: fiecare plată cu luna, canalul de plată, suma; total plăți, sumă totală.
Acești senzori se creează automat când integrarea detectează registrul 1.8.0_P în istoricul de citiri.
Index energie produsă
- Indexul curent al producției (registrul 1.8.0_P — energie activă produsă).
- Unitate de măsură: kWh.
Arhivă index energie produsă (anul cel mai recent)
- Istoricul citirilor de index producție (doar registrul 1.8.0_P).
- Atribute: fiecare citire cu data, indexul, tipul citirii.
Arhivă plăți prosumator (anul cel mai recent)
- Compensațiile ANRE primite (canale de tip
Comp ANRE-*). - Atribute: fiecare compensație cu luna, canalul (furnizor/distribuitor), suma; total compensații, sumă totală.
Trimite index (doar la non-prosumator)
- Permite trimiterea autocitrii când fereastra de citire este activă.
- La prosumator, butonul nu se creează (distribuitorul citește contorul automat).
Sistem de licență — fără licență validă se afișează doar senzorul „Licență necesară".
| Endpoint | Date furnizate | Frecvență |
|---|---|---|
GetMultiMeter |
Detalii contor, tip client | La fiecare refresh |
GetBill |
Sold curent, scadență | La fiecare refresh |
GetWindowDatesENC / GetWindowDates |
Fereastră autocitire | La fiecare refresh |
GetPods |
POD, instalație | La fiecare refresh |
GetPreviousMeterRead |
Index curent (consum + producție) | La fiecare refresh |
GetUsageGeneration |
Consum lunar istoric | La fiecare al 4-lea refresh |
GetBillingHistoryList |
Istoric plăți | La fiecare al 4-lea refresh |
GetMeterCounterSeries |
Serii contor | La fiecare al 4-lea refresh |
GetMeterReadHistory |
Istoric citiri index | La fiecare al 4-lea refresh |
Coordonatorul folosește un mecanism de refresh în două faze pentru a reduce încărcarea API:
- Faza 1 (la fiecare refresh): date ușoare — contor, factură, fereastră citire, POD, index curent.
- Faza 2 (la fiecare al 4-lea refresh): date grele — consum istoric, plăți, serii contor, citiri index.
Primul refresh include întotdeauna ambele faze.
Detecția se face automat pe baza prezenței registrului 1.8.0_P în GetMeterReadHistory. Nu depinde de flag-uri precum IsAMI.
- Token partajat între toate conturile unui utilizator.
- Reautentificare automată la expirarea sesiunii (401).
- Token injectat din
config_flowla configurare sau dinconfig_entry.datala restart.
- Setări → Dispozitive și Servicii → Adaugă Integrare → caută Hidroelectrica România.
- Introdu datele contului Hidroelectrica (username + parolă).
- Selectează conturile (UAN-urile) pe care vrei să le monitorizezi.
- Specifică intervalul de actualizare (implicit: 3600 secunde, minim: 300, maxim: 86400).
Integrarea necesită o licență validă. După configurarea contului, mergi la Setări → Dispozitive și Servicii → Hidroelectrica România → Configurare și introdu cheia de licență în secțiunea Licență.
- Interval de actualizare (modificabil din opțiunile integrării fără a reconfigura).
- Licență (modificabilă din opțiunile integrării fără a reconfigura).
- Home Assistant versiunea 2025.11 sau mai recentă.
- HACS instalat (opțional, dar recomandat).
- Un cont activ pe platforma Hidroelectrica România (aplicația iHidro sau contul online).
- Licență validă — hubinteligent.org/donate?ref=hidroelectrica
- Adaugă depozitul personalizat în HACS.
- Caută integrarea Hidroelectrica România și instaleaz-o.
- Repornește Home Assistant și configurează integrarea.
- Descarcă sau clonează depozitul GitHub.
- Copiază folderul
custom_components/hidroelectricaîn directorulcustom_componentsal Home Assistant. - Repornește Home Assistant și configurează integrarea.
alias: Notificare Factură Restantă
description: Notificare dacă există facturi restante
trigger:
- platform: state
entity_id: sensor.hidroelectrica_XXXXXXXX_factura_restanta
to: "Da"
action:
- service: notify.mobile_app_telefon
data:
title: "Factură Restantă Detectată"
message: >-
Ai o factură restantă Hidroelectrica.
Verifică detaliile în Home Assistant.
mode: singletype: entities
title: Hidroelectrica România
entities:
- entity: sensor.hidroelectrica_XXXXXXXX_date_contract
name: Date Contract
- entity: sensor.hidroelectrica_XXXXXXXX_sold_factura
name: Sold Factură
- entity: sensor.hidroelectrica_XXXXXXXX_factura_restanta
name: Factură Restantă
- entity: sensor.hidroelectrica_XXXXXXXX_index_energie
name: Index Energie
- entity: sensor.hidroelectrica_XXXXXXXX_citire_permisa
name: Citire Permisătype: entities
title: Hidroelectrica România (Prosumator)
entities:
- entity: sensor.hidroelectrica_XXXXXXXX_date_contract
name: Date Contract
- entity: sensor.hidroelectrica_XXXXXXXX_sold_factura
name: Sold Factură
- entity: sensor.hidroelectrica_XXXXXXXX_index_energie
name: Index Consum
- entity: sensor.hidroelectrica_XXXXXXXX_index_energie_produsa
name: Index Producție
- entity: sensor.hidroelectrica_XXXXXXXX_arhiva_plati_2026
name: Plăți 2026
- entity: sensor.hidroelectrica_XXXXXXXX_arhiva_plati_prosumator_2026
name: Compensații ANRE 2026custom_components/hidroelectrica/
├── __init__.py # Setup/unload integrare (runtime_data, licență)
├── api.py # HidroelectricaApiClient — autentificare, GET
├── button.py # Butonul Trimite index (doar non-prosumator)
├── config_flow.py # ConfigFlow + OptionsFlow (autentificare, licență)
├── const.py # Constante, URL-uri API
├── coordinator.py # DataUpdateCoordinator — refresh în două faze
├── helpers.py # Funcții utilitare
├── license.py # Manager licență (server-side, Ed25519, HMAC-SHA256)
├── manifest.json # Metadata integrare
├── sensor.py # Senzori (date contract, sold, index, etc.)
├── strings.json # Traduceri implicite (engleză)
└── translations/
├── en.json # Traduceri engleză
└── ro.json # Traduceri române
Dacă ți-a plăcut această integrare și vrei să sprijini munca depusă, invită-mă la o cafea!
Contribuțiile sunt binevenite! Trimite un pull request sau raportează probleme aici.
Dacă îți place această integrare, oferă-i un ⭐ pe GitHub!