Black
This commit is contained in:
parent
da05dfe708
commit
4de97abc3a
2676 changed files with 163166 additions and 140084 deletions
|
@ -5,18 +5,16 @@ from pyessent import PyEssent
|
|||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
CONF_PASSWORD, CONF_USERNAME, ENERGY_KILO_WATT_HOUR)
|
||||
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME, ENERGY_KILO_WATT_HOUR
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.util import Throttle
|
||||
|
||||
SCAN_INTERVAL = timedelta(hours=1)
|
||||
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend({
|
||||
vol.Required(CONF_USERNAME): cv.string,
|
||||
vol.Required(CONF_PASSWORD): cv.string
|
||||
})
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||
{vol.Required(CONF_USERNAME): cv.string, vol.Required(CONF_PASSWORD): cv.string}
|
||||
)
|
||||
|
||||
|
||||
def setup_platform(hass, config, add_devices, discovery_info=None):
|
||||
|
@ -28,26 +26,31 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
|
|||
meters = []
|
||||
for meter in essent.retrieve_meters():
|
||||
data = essent.retrieve_meter_data(meter)
|
||||
for tariff in data['values']['LVR'].keys():
|
||||
meters.append(EssentMeter(
|
||||
essent,
|
||||
meter,
|
||||
data['type'],
|
||||
tariff,
|
||||
data['values']['LVR'][tariff]['unit']))
|
||||
for tariff in data["values"]["LVR"].keys():
|
||||
meters.append(
|
||||
EssentMeter(
|
||||
essent,
|
||||
meter,
|
||||
data["type"],
|
||||
tariff,
|
||||
data["values"]["LVR"][tariff]["unit"],
|
||||
)
|
||||
)
|
||||
|
||||
if not meters:
|
||||
hass.components.persistent_notification.create(
|
||||
'Couldn\'t find any meter readings. '
|
||||
'Please ensure Verbruiks Manager is enabled in Mijn Essent '
|
||||
'and at least one reading has been logged to Meterstanden.',
|
||||
title='Essent', notification_id='essent_notification')
|
||||
"Couldn't find any meter readings. "
|
||||
"Please ensure Verbruiks Manager is enabled in Mijn Essent "
|
||||
"and at least one reading has been logged to Meterstanden.",
|
||||
title="Essent",
|
||||
notification_id="essent_notification",
|
||||
)
|
||||
return
|
||||
|
||||
add_devices(meters, True)
|
||||
|
||||
|
||||
class EssentBase():
|
||||
class EssentBase:
|
||||
"""Essent Base."""
|
||||
|
||||
def __init__(self, username, password):
|
||||
|
@ -72,8 +75,7 @@ class EssentBase():
|
|||
essent = PyEssent(self._username, self._password)
|
||||
eans = essent.get_EANs()
|
||||
for possible_meter in eans:
|
||||
meter_data = essent.read_meter(
|
||||
possible_meter, only_last_meter_reading=True)
|
||||
meter_data = essent.read_meter(possible_meter, only_last_meter_reading=True)
|
||||
if meter_data:
|
||||
self._meter_data[possible_meter] = meter_data
|
||||
|
||||
|
@ -103,7 +105,7 @@ class EssentMeter(Entity):
|
|||
@property
|
||||
def unit_of_measurement(self):
|
||||
"""Return the unit of measurement."""
|
||||
if self._unit.lower() == 'kwh':
|
||||
if self._unit.lower() == "kwh":
|
||||
return ENERGY_KILO_WATT_HOUR
|
||||
|
||||
return self._unit
|
||||
|
@ -118,4 +120,5 @@ class EssentMeter(Entity):
|
|||
|
||||
# Set our value
|
||||
self._state = next(
|
||||
iter(data['values']['LVR'][self._tariff]['records'].values()))
|
||||
iter(data["values"]["LVR"][self._tariff]["records"].values())
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue