Add statistics for emoncms power and energy feeds ()

pull/55177/head
Luke Waite 2021-08-25 04:02:53 -04:00 committed by GitHub
parent 703c8f56f3
commit ab6be2890a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 15 additions and 1 deletions
homeassistant/components/emoncms

View File

@ -5,7 +5,12 @@ import logging
import requests
import voluptuous as vol
from homeassistant.components.sensor import PLATFORM_SCHEMA, SensorEntity
from homeassistant.components.sensor import (
PLATFORM_SCHEMA,
STATE_CLASS_MEASUREMENT,
STATE_CLASS_TOTAL_INCREASING,
SensorEntity,
)
from homeassistant.const import (
CONF_API_KEY,
CONF_ID,
@ -13,6 +18,8 @@ from homeassistant.const import (
CONF_UNIT_OF_MEASUREMENT,
CONF_URL,
CONF_VALUE_TEMPLATE,
DEVICE_CLASS_ENERGY,
DEVICE_CLASS_POWER,
HTTP_OK,
POWER_WATT,
STATE_UNKNOWN,
@ -149,6 +156,13 @@ class EmonCmsSensor(SensorEntity):
self._sensorid = sensorid
self._elem = elem
if unit_of_measurement == "kWh":
self._attr_device_class = DEVICE_CLASS_ENERGY
self._attr_state_class = STATE_CLASS_TOTAL_INCREASING
elif unit_of_measurement == "W":
self._attr_device_class = DEVICE_CLASS_POWER
self._attr_state_class = STATE_CLASS_MEASUREMENT
if self._value_template is not None:
self._state = self._value_template.render_with_possible_json_value(
elem["value"], STATE_UNKNOWN