Updated sensor to work with new version of hass
This commit is contained in:
@@ -1,13 +1,10 @@
|
||||
"""Platform for sensor integration."""
|
||||
import aiohttp
|
||||
import async_timeout
|
||||
import asyncio
|
||||
import json
|
||||
import logging
|
||||
import voluptuous as vol
|
||||
|
||||
from datetime import timedelta
|
||||
from random import randrange
|
||||
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
|
||||
@@ -20,16 +17,14 @@ from homeassistant.const import (
|
||||
ATTR_LONGITUDE,
|
||||
CONF_MONITORED_CONDITIONS,
|
||||
DEVICE_CLASS_HUMIDITY,
|
||||
DEVICE_CLASS_PRESSURE,
|
||||
DEVICE_CLASS_TEMPERATURE,
|
||||
TEMP_CELSIUS,
|
||||
HTTP_BAD_REQUEST,
|
||||
UNIT_PERCENTAGE,
|
||||
PERCENTAGE,
|
||||
)
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator, UpdateFailed
|
||||
from homeassistant.helpers.event import async_call_later, async_track_utc_time_change
|
||||
from homeassistant.helpers.update_coordinator import DataUpdateCoordinator
|
||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||
|
||||
_LOGGER = logging.getLogger(__name__)
|
||||
@@ -39,7 +34,7 @@ CONF_STATION = "station"
|
||||
SENSOR_TYPES = {
|
||||
"temperature": ["Temperature", TEMP_CELSIUS, DEVICE_CLASS_TEMPERATURE],
|
||||
"precipitation": ["Precipitation", "mm", None],
|
||||
"humidity": ["Humidity", UNIT_PERCENTAGE, DEVICE_CLASS_HUMIDITY],
|
||||
"humidity": ["Humidity", PERCENTAGE, DEVICE_CLASS_HUMIDITY],
|
||||
}
|
||||
|
||||
PLATFORM_SCHEMA = PLATFORM_SCHEMA.extend(
|
||||
@@ -66,7 +61,6 @@ CONFIG_CONDITIONS = {
|
||||
|
||||
async def async_setup_platform(hass, config, add_entities, discovery_info=None):
|
||||
"""Set up the sensor platform."""
|
||||
|
||||
async def async_update_data():
|
||||
data = {}
|
||||
_LOGGER.info("Update MeteoSwiss data.")
|
||||
@@ -102,7 +96,7 @@ async def async_setup_platform(hass, config, add_entities, discovery_info=None):
|
||||
_LOGGER,
|
||||
name="MeteoSwissData",
|
||||
update_method=async_update_data,
|
||||
update_interval=timedelta(minutes=9),
|
||||
update_interval=timedelta(minutes=10),
|
||||
)
|
||||
await coordinator.async_refresh()
|
||||
station = config.get(CONF_STATION)
|
||||
@@ -145,6 +139,7 @@ class MeteoSwissSensor(Entity):
|
||||
|
||||
@property
|
||||
def device_state_attributes(self):
|
||||
"""Return device attributes."""
|
||||
attributes = {
|
||||
ATTR_ATTRIBUTION: "Data provided by MeteoSwiss via data.geo.admin.ch.",
|
||||
ATTR_TIME: self._coordinator.data[self._station][self._monitored_condition][
|
||||
|
||||
Reference in New Issue
Block a user