Add state_class to relevant sensors in Danfoss Air (#54847)

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
This commit is contained in:
Jonas Pedersen 2021-08-22 19:59:59 +02:00 committed by GitHub
parent da20552cd8
commit 2d34ebc506
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -3,7 +3,7 @@ import logging
from pydanfossair.commands import ReadCommand
from homeassistant.components.sensor import SensorEntity
from homeassistant.components.sensor import STATE_CLASS_MEASUREMENT, SensorEntity
from homeassistant.const import (
DEVICE_CLASS_BATTERY,
DEVICE_CLASS_HUMIDITY,
@ -27,52 +27,73 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
TEMP_CELSIUS,
ReadCommand.exhaustTemperature,
DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT,
],
[
"Danfoss Air Outdoor Temperature",
TEMP_CELSIUS,
ReadCommand.outdoorTemperature,
DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT,
],
[
"Danfoss Air Supply Temperature",
TEMP_CELSIUS,
ReadCommand.supplyTemperature,
DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT,
],
[
"Danfoss Air Extract Temperature",
TEMP_CELSIUS,
ReadCommand.extractTemperature,
DEVICE_CLASS_TEMPERATURE,
STATE_CLASS_MEASUREMENT,
],
[
"Danfoss Air Remaining Filter",
PERCENTAGE,
ReadCommand.filterPercent,
None,
None,
],
[
"Danfoss Air Humidity",
PERCENTAGE,
ReadCommand.humidity,
DEVICE_CLASS_HUMIDITY,
STATE_CLASS_MEASUREMENT,
],
["Danfoss Air Fan Step", PERCENTAGE, ReadCommand.fan_step, None, None],
[
"Danfoss Air Exhaust Fan Speed",
"RPM",
ReadCommand.exhaust_fan_speed,
None,
None,
],
[
"Danfoss Air Supply Fan Speed",
"RPM",
ReadCommand.supply_fan_speed,
None,
None,
],
["Danfoss Air Fan Step", PERCENTAGE, ReadCommand.fan_step, None],
["Danfoss Air Exhaust Fan Speed", "RPM", ReadCommand.exhaust_fan_speed, None],
["Danfoss Air Supply Fan Speed", "RPM", ReadCommand.supply_fan_speed, None],
[
"Danfoss Air Dial Battery",
PERCENTAGE,
ReadCommand.battery_percent,
DEVICE_CLASS_BATTERY,
None,
],
]
dev = []
for sensor in sensors:
dev.append(DanfossAir(data, sensor[0], sensor[1], sensor[2], sensor[3]))
dev.append(
DanfossAir(data, sensor[0], sensor[1], sensor[2], sensor[3], sensor[4])
)
add_entities(dev, True)
@ -80,7 +101,7 @@ def setup_platform(hass, config, add_entities, discovery_info=None):
class DanfossAir(SensorEntity):
"""Representation of a Sensor."""
def __init__(self, data, name, sensor_unit, sensor_type, device_class):
def __init__(self, data, name, sensor_unit, sensor_type, device_class, state_class):
"""Initialize the sensor."""
self._data = data
self._name = name
@ -88,6 +109,7 @@ class DanfossAir(SensorEntity):
self._type = sensor_type
self._unit = sensor_unit
self._device_class = device_class
self._attr_state_class = state_class
@property
def name(self):