Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow friendly names in the history stats sensor configs. #7975

Closed
wants to merge 2 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
14 changes: 9 additions & 5 deletions homeassistant/components/sensor/history_stats.py
Expand Up @@ -13,9 +13,9 @@
import homeassistant.components.history as history
import homeassistant.helpers.config_validation as cv
import homeassistant.util.dt as dt_util
from homeassistant.components.sensor import PLATFORM_SCHEMA
from homeassistant.components.sensor import PLATFORM_SCHEMA, ENTITY_ID_FORMAT
from homeassistant.const import (
CONF_NAME, CONF_ENTITY_ID, CONF_STATE, CONF_TYPE,
CONF_NAME, CONF_ENTITY_ID, CONF_STATE, CONF_TYPE, CONF_FRIENDLY_NAME,
EVENT_HOMEASSISTANT_START)
from homeassistant.exceptions import TemplateError
from homeassistant.helpers.entity import Entity
Expand Down Expand Up @@ -69,6 +69,7 @@ def exactly_two_period_keys(conf):
vol.Optional(CONF_DURATION, default=None): cv.time_period,
vol.Optional(CONF_TYPE, default=CONF_TYPE_TIME): vol.In(CONF_TYPE_KEYS),
vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
vol.Optional(CONF_FRIENDLY_NAME): cv.string,
}), exactly_two_period_keys)


Expand All @@ -82,13 +83,15 @@ def setup_platform(hass, config, add_devices, discovery_info=None):
duration = config.get(CONF_DURATION)
sensor_type = config.get(CONF_TYPE)
name = config.get(CONF_NAME)
friendly_name = config.get(CONF_FRIENDLY_NAME)

for template in [start, end]:
if template is not None:
template.hass = hass

add_devices([HistoryStatsSensor(hass, entity_id, entity_state, start, end,
duration, sensor_type, name)])
duration, sensor_type, name,
friendly_name)])

return True

Expand All @@ -98,7 +101,7 @@ class HistoryStatsSensor(Entity):

def __init__(
self, hass, entity_id, entity_state, start, end, duration,
sensor_type, name):
sensor_type, name, friendly_name):
"""Initialize the HistoryStats sensor."""
self._hass = hass

Expand All @@ -108,7 +111,8 @@ def __init__(
self._start = start
self._end = end
self._type = sensor_type
self._name = name
self._name = friendly_name
self.entity_id = ENTITY_ID_FORMAT.format(name)
self._unit_of_measurement = UNITS[sensor_type]

self._period = (datetime.datetime.now(), datetime.datetime.now())
Expand Down