Change STATE_UNKOWN to None (#20337)
* Change STATE_UNKOWN to None * Change STATE_UNKOWN to None * tests * tests * tests * tests * tests * style * fix comments * fix comments * update fan test
This commit is contained in:
parent
074fcd96ed
commit
1bd31e3459
64 changed files with 147 additions and 168 deletions
|
@ -9,7 +9,7 @@ import logging
|
|||
|
||||
from homeassistant.components.amcrest import DATA_AMCREST, SENSORS
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.const import CONF_NAME, CONF_SENSORS, STATE_UNKNOWN
|
||||
from homeassistant.const import CONF_NAME, CONF_SENSORS
|
||||
|
||||
DEPENDENCIES = ['amcrest']
|
||||
|
||||
|
@ -48,7 +48,7 @@ class AmcrestSensor(Entity):
|
|||
self._name = '{0}_{1}'.format(name,
|
||||
SENSORS.get(self._sensor_type)[0])
|
||||
self._icon = 'mdi:{}'.format(SENSORS.get(self._sensor_type)[2])
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
|
|
|
@ -13,7 +13,7 @@ import voluptuous as vol
|
|||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
CONF_UNIT_OF_MEASUREMENT, CONF_VALUE_TEMPLATE, CONF_RESOURCE,
|
||||
CONF_MONITORED_VARIABLES, CONF_NAME, STATE_UNKNOWN)
|
||||
CONF_MONITORED_VARIABLES, CONF_NAME)
|
||||
from homeassistant.exceptions import TemplateError
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.util import Throttle
|
||||
|
@ -116,7 +116,7 @@ class ArestSensor(Entity):
|
|||
self._name = '{} {}'.format(location.title(), name.title())
|
||||
self._variable = variable
|
||||
self._pin = pin
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._unit_of_measurement = unit_of_measurement
|
||||
self._renderer = renderer
|
||||
|
||||
|
@ -145,7 +145,7 @@ class ArestSensor(Entity):
|
|||
return values['error']
|
||||
|
||||
value = self._renderer(
|
||||
values.get('value', values.get(self._variable, STATE_UNKNOWN)))
|
||||
values.get('value', values.get(self._variable, None)))
|
||||
return value
|
||||
|
||||
def update(self):
|
||||
|
|
|
@ -15,7 +15,7 @@ import voluptuous as vol
|
|||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
ATTR_ATTRIBUTION, CONF_NAME, CONF_OFFSET, STATE_UNKNOWN)
|
||||
ATTR_ATTRIBUTION, CONF_NAME, CONF_OFFSET)
|
||||
from homeassistant.helpers.aiohttp_client import async_get_clientsession
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
@ -120,7 +120,7 @@ class ComedHourlyPricingSensor(Entity):
|
|||
float(data[0]['price']) + self.offset, 2)
|
||||
|
||||
else:
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
|
||||
except (asyncio.TimeoutError, aiohttp.ClientError) as err:
|
||||
_LOGGER.error("Could not get data from ComEd API: %s", err)
|
||||
|
|
|
@ -11,8 +11,7 @@ from homeassistant.components.comfoconnect import (
|
|||
ATTR_CURRENT_HUMIDITY, ATTR_OUTSIDE_TEMPERATURE,
|
||||
ATTR_OUTSIDE_HUMIDITY, ATTR_AIR_FLOW_SUPPLY,
|
||||
ATTR_AIR_FLOW_EXHAUST, SIGNAL_COMFOCONNECT_UPDATE_RECEIVED)
|
||||
from homeassistant.const import (
|
||||
CONF_RESOURCES, TEMP_CELSIUS, STATE_UNKNOWN)
|
||||
from homeassistant.const import CONF_RESOURCES, TEMP_CELSIUS
|
||||
from homeassistant.helpers.dispatcher import dispatcher_connect
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
|
@ -122,7 +121,7 @@ class ComfoConnectSensor(Entity):
|
|||
try:
|
||||
return self._ccb.data[self._sensor_id]
|
||||
except KeyError:
|
||||
return STATE_UNKNOWN
|
||||
return None
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
|
|
|
@ -9,7 +9,6 @@ from datetime import timedelta
|
|||
|
||||
import voluptuous as vol
|
||||
|
||||
from homeassistant.const import STATE_UNKNOWN
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
@ -73,7 +72,7 @@ class WanIpSensor(Entity):
|
|||
self.resolver = aiodns.DNSResolver(loop=self.hass.loop)
|
||||
self.resolver.nameservers = [resolver]
|
||||
self.querytype = 'AAAA' if ipv6 else 'A'
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
|
@ -97,4 +96,4 @@ class WanIpSensor(Entity):
|
|||
if response:
|
||||
self._state = response[0].host
|
||||
else:
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
|
|
|
@ -13,7 +13,7 @@ import voluptuous as vol
|
|||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
CONF_HOST, CONF_PORT, EVENT_HOMEASSISTANT_STOP, STATE_UNKNOWN)
|
||||
CONF_HOST, CONF_PORT, EVENT_HOMEASSISTANT_STOP)
|
||||
from homeassistant.core import CoreState
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
@ -270,7 +270,7 @@ class DSMREntity(Entity):
|
|||
if value is not None:
|
||||
return value
|
||||
|
||||
return STATE_UNKNOWN
|
||||
return None
|
||||
|
||||
@property
|
||||
def unit_of_measurement(self):
|
||||
|
@ -287,7 +287,7 @@ class DSMREntity(Entity):
|
|||
if value == '0001':
|
||||
return 'low'
|
||||
|
||||
return STATE_UNKNOWN
|
||||
return None
|
||||
|
||||
|
||||
class DerivativeDSMREntity(DSMREntity):
|
||||
|
@ -300,7 +300,7 @@ class DerivativeDSMREntity(DSMREntity):
|
|||
|
||||
_previous_reading = None
|
||||
_previous_timestamp = None
|
||||
_state = STATE_UNKNOWN
|
||||
_state = None
|
||||
|
||||
@property
|
||||
def state(self):
|
||||
|
|
|
@ -13,7 +13,7 @@ import voluptuous as vol
|
|||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
CONF_NAME, CONF_VALUE_TEMPLATE, STATE_UNKNOWN, CONF_UNIT_OF_MEASUREMENT)
|
||||
CONF_NAME, CONF_VALUE_TEMPLATE, CONF_UNIT_OF_MEASUREMENT)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
REQUIREMENTS = ['dweepy==0.3.0']
|
||||
|
@ -69,7 +69,7 @@ class DweetSensor(Entity):
|
|||
self.dweet = dweet
|
||||
self._name = name
|
||||
self._value_template = value_template
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._unit_of_measurement = unit_of_measurement
|
||||
|
||||
@property
|
||||
|
@ -92,11 +92,11 @@ class DweetSensor(Entity):
|
|||
self.dweet.update()
|
||||
|
||||
if self.dweet.data is None:
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
else:
|
||||
values = json.dumps(self.dweet.data[0]['content'])
|
||||
self._state = self._value_template.render_with_possible_json_value(
|
||||
values, STATE_UNKNOWN)
|
||||
values, None)
|
||||
|
||||
|
||||
class DweetData:
|
||||
|
|
|
@ -16,7 +16,7 @@ import voluptuous as vol
|
|||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
STATE_UNKNOWN, CONF_UNIT_OF_MEASUREMENT, CONF_NAME,
|
||||
CONF_UNIT_OF_MEASUREMENT, CONF_NAME,
|
||||
CONF_LATITUDE, CONF_LONGITUDE, CONF_RADIUS, CONF_URL)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
|
@ -89,7 +89,7 @@ class GeoRssServiceSensor(Entity):
|
|||
"""Initialize the sensor."""
|
||||
self._category = category
|
||||
self._service_name = service_name
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._state_attributes = None
|
||||
self._unit_of_measurement = unit_of_measurement
|
||||
from georss_client.generic_feed import GenericFeed
|
||||
|
|
|
@ -97,7 +97,7 @@ class GoogleWifiSensor(Entity):
|
|||
"""Initialize a Google Wifi sensor."""
|
||||
self._api = api
|
||||
self._name = name
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
|
||||
variable_info = MONITORED_CONDITIONS[variable]
|
||||
self._var_name = variable
|
||||
|
@ -135,7 +135,7 @@ class GoogleWifiSensor(Entity):
|
|||
if self.available:
|
||||
self._state = self._api.data[self._var_name]
|
||||
else:
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
|
||||
|
||||
class GoogleWifiAPI:
|
||||
|
|
|
@ -10,7 +10,7 @@ import voluptuous as vol
|
|||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
ATTR_LATITUDE, ATTR_LONGITUDE, STATE_UNKNOWN, CONF_HOST, CONF_PORT,
|
||||
ATTR_LATITUDE, ATTR_LONGITUDE, CONF_HOST, CONF_PORT,
|
||||
CONF_NAME)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
|
@ -93,7 +93,7 @@ class GpsdSensor(Entity):
|
|||
return "3D Fix"
|
||||
if self.agps_thread.data_stream.mode == 2:
|
||||
return "2D Fix"
|
||||
return STATE_UNKNOWN
|
||||
return None
|
||||
|
||||
@property
|
||||
def device_state_attributes(self):
|
||||
|
|
|
@ -9,8 +9,7 @@ import logging
|
|||
import voluptuous as vol
|
||||
|
||||
from homeassistant.const import (CONF_HOST, CONF_PORT, CONF_DEVICE,
|
||||
CONF_NAME, EVENT_HOMEASSISTANT_STOP,
|
||||
STATE_UNKNOWN)
|
||||
CONF_NAME, EVENT_HOMEASSISTANT_STOP)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
|
@ -105,7 +104,7 @@ class KWBSensor(Entity):
|
|||
"""Return the state of value."""
|
||||
if self._sensor.value is not None and self._sensor.available:
|
||||
return self._sensor.value
|
||||
return STATE_UNKNOWN
|
||||
return None
|
||||
|
||||
@property
|
||||
def unit_of_measurement(self):
|
||||
|
|
|
@ -11,7 +11,6 @@ import requests
|
|||
import voluptuous as vol
|
||||
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import STATE_UNKNOWN
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.util import Throttle
|
||||
|
@ -143,7 +142,7 @@ class AirSensor(Entity):
|
|||
if sites_status:
|
||||
self._state = max(set(sites_status), key=sites_status.count)
|
||||
else:
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
|
||||
|
||||
def parse_species(species_data):
|
||||
|
|
|
@ -70,20 +70,20 @@ async def async_setup_platform(hass, config, async_add_entities,
|
|||
|
||||
def calc_min(sensor_values):
|
||||
"""Calculate min value, honoring unknown states."""
|
||||
val = STATE_UNKNOWN
|
||||
val = None
|
||||
for sval in sensor_values:
|
||||
if sval != STATE_UNKNOWN:
|
||||
if val == STATE_UNKNOWN or val > sval:
|
||||
if val is None or val > sval:
|
||||
val = sval
|
||||
return val
|
||||
|
||||
|
||||
def calc_max(sensor_values):
|
||||
"""Calculate max value, honoring unknown states."""
|
||||
val = STATE_UNKNOWN
|
||||
val = None
|
||||
for sval in sensor_values:
|
||||
if sval != STATE_UNKNOWN:
|
||||
if val == STATE_UNKNOWN or val < sval:
|
||||
if val is None or val < sval:
|
||||
val = sval
|
||||
return val
|
||||
|
||||
|
@ -97,7 +97,7 @@ def calc_mean(sensor_values, round_digits):
|
|||
val += sval
|
||||
count += 1
|
||||
if count == 0:
|
||||
return STATE_UNKNOWN
|
||||
return None
|
||||
return round(val/count, round_digits)
|
||||
|
||||
|
||||
|
@ -119,7 +119,7 @@ class MinMaxSensor(Entity):
|
|||
if self._sensor_type == v)).capitalize()
|
||||
self._unit_of_measurement = None
|
||||
self._unit_of_measurement_mismatch = False
|
||||
self.min_value = self.max_value = self.mean = self.last = STATE_UNKNOWN
|
||||
self.min_value = self.max_value = self.mean = self.last = None
|
||||
self.count_sensors = len(self._entity_ids)
|
||||
self.states = {}
|
||||
|
||||
|
@ -164,7 +164,7 @@ class MinMaxSensor(Entity):
|
|||
def state(self):
|
||||
"""Return the state of the sensor."""
|
||||
if self._unit_of_measurement_mismatch:
|
||||
return STATE_UNKNOWN
|
||||
return None
|
||||
return getattr(self, next(
|
||||
k for k, v in SENSOR_TYPES.items() if self._sensor_type == v))
|
||||
|
||||
|
|
|
@ -14,8 +14,7 @@ import homeassistant.helpers.config_validation as cv
|
|||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
CONF_NAME, ATTR_ATTRIBUTION, STATE_UNKNOWN
|
||||
)
|
||||
CONF_NAME, ATTR_ATTRIBUTION)
|
||||
|
||||
REQUIREMENTS = ['PyMVGLive==1.1.4']
|
||||
|
||||
|
@ -87,7 +86,7 @@ class MVGLiveSensor(Entity):
|
|||
self._name = name
|
||||
self.data = MVGLiveData(station, destinations, directions,
|
||||
lines, products, timeoffset, number)
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._icon = ICONS['-']
|
||||
|
||||
@property
|
||||
|
|
|
@ -13,7 +13,7 @@ import voluptuous as vol
|
|||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
TEMP_CELSIUS, DEVICE_CLASS_HUMIDITY, DEVICE_CLASS_TEMPERATURE,
|
||||
DEVICE_CLASS_BATTERY, STATE_UNKNOWN)
|
||||
DEVICE_CLASS_BATTERY)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
|
||||
|
@ -161,7 +161,7 @@ class NetAtmoSensor(Entity):
|
|||
|
||||
if data is None:
|
||||
_LOGGER.warning("No data found for %s", self.module_name)
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
return
|
||||
|
||||
if self.type == 'temperature':
|
||||
|
|
|
@ -9,7 +9,7 @@ import logging
|
|||
import voluptuous as vol
|
||||
|
||||
from homeassistant.const import (
|
||||
CONF_NAME, STATE_UNKNOWN, CONF_UNIT_OF_MEASUREMENT, CONF_PAYLOAD)
|
||||
CONF_NAME, CONF_UNIT_OF_MEASUREMENT, CONF_PAYLOAD)
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.components import pilight
|
||||
|
@ -46,7 +46,7 @@ class PilightSensor(Entity):
|
|||
|
||||
def __init__(self, hass, name, variable, payload, unit_of_measurement):
|
||||
"""Initialize the sensor."""
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._hass = hass
|
||||
self._name = name
|
||||
self._variable = variable
|
||||
|
|
|
@ -18,7 +18,7 @@ from homeassistant.const import (
|
|||
CONF_METHOD, CONF_PASSWORD, CONF_PAYLOAD, CONF_RESOURCE,
|
||||
CONF_UNIT_OF_MEASUREMENT, CONF_USERNAME,
|
||||
CONF_VALUE_TEMPLATE, CONF_VERIFY_SSL, CONF_DEVICE_CLASS,
|
||||
HTTP_BASIC_AUTHENTICATION, HTTP_DIGEST_AUTHENTICATION, STATE_UNKNOWN)
|
||||
HTTP_BASIC_AUTHENTICATION, HTTP_DIGEST_AUTHENTICATION)
|
||||
from homeassistant.exceptions import PlatformNotReady
|
||||
from homeassistant.helpers.entity import Entity
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
|
@ -100,7 +100,7 @@ class RestSensor(Entity):
|
|||
self._hass = hass
|
||||
self.rest = rest
|
||||
self._name = name
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._unit_of_measurement = unit_of_measurement
|
||||
self._device_class = device_class
|
||||
self._value_template = value_template
|
||||
|
@ -159,11 +159,9 @@ class RestSensor(Entity):
|
|||
_LOGGER.debug("Erroneous JSON: %s", value)
|
||||
else:
|
||||
_LOGGER.warning("Empty reply found when expecting JSON data")
|
||||
if value is None:
|
||||
value = STATE_UNKNOWN
|
||||
elif self._value_template is not None:
|
||||
if value is not None and self._value_template is not None:
|
||||
value = self._value_template.render_with_possible_json_value(
|
||||
value, STATE_UNKNOWN)
|
||||
value, None)
|
||||
|
||||
self._state = value
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ from homeassistant.components.ring import (
|
|||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
CONF_ENTITY_NAMESPACE, CONF_MONITORED_CONDITIONS,
|
||||
STATE_UNKNOWN, ATTR_ATTRIBUTION)
|
||||
ATTR_ATTRIBUTION)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.helpers.icon import icon_for_battery_level
|
||||
|
||||
|
@ -98,7 +98,7 @@ class RingSensor(Entity):
|
|||
self._kind = SENSOR_TYPES.get(self._sensor_type)[4]
|
||||
self._name = "{0} {1}".format(
|
||||
self._data.name, SENSOR_TYPES.get(self._sensor_type)[0])
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._tz = str(hass.config.time_zone)
|
||||
self._unique_id = '{}-{}'.format(self._data.id, self._sensor_type)
|
||||
|
||||
|
@ -141,7 +141,7 @@ class RingSensor(Entity):
|
|||
@property
|
||||
def icon(self):
|
||||
"""Icon to use in the frontend, if any."""
|
||||
if self._sensor_type == 'battery' and self._state is not STATE_UNKNOWN:
|
||||
if self._sensor_type == 'battery' and self._state is not None:
|
||||
return icon_for_battery_level(battery_level=int(self._state),
|
||||
charging=False)
|
||||
return self._icon
|
||||
|
|
|
@ -12,7 +12,7 @@ from requests.auth import HTTPBasicAuth, HTTPDigestAuth
|
|||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.components.sensor.rest import RestData
|
||||
from homeassistant.const import (
|
||||
CONF_NAME, CONF_RESOURCE, CONF_UNIT_OF_MEASUREMENT, STATE_UNKNOWN,
|
||||
CONF_NAME, CONF_RESOURCE, CONF_UNIT_OF_MEASUREMENT,
|
||||
CONF_VALUE_TEMPLATE, CONF_VERIFY_SSL, CONF_USERNAME, CONF_HEADERS,
|
||||
CONF_PASSWORD, CONF_AUTHENTICATION, HTTP_BASIC_AUTHENTICATION,
|
||||
HTTP_DIGEST_AUTHENTICATION)
|
||||
|
@ -87,7 +87,7 @@ class ScrapeSensor(Entity):
|
|||
"""Initialize a web scrape sensor."""
|
||||
self.rest = rest
|
||||
self._name = name
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._select = select
|
||||
self._attr = attr
|
||||
self._value_template = value_template
|
||||
|
@ -129,6 +129,6 @@ class ScrapeSensor(Entity):
|
|||
|
||||
if self._value_template is not None:
|
||||
self._state = self._value_template.render_with_possible_json_value(
|
||||
value, STATE_UNKNOWN)
|
||||
value, None)
|
||||
else:
|
||||
self._state = value
|
||||
|
|
|
@ -13,8 +13,7 @@ import voluptuous as vol
|
|||
|
||||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (CONF_DEVICES, CONF_EMAIL, CONF_PASSWORD,
|
||||
STATE_UNKNOWN)
|
||||
from homeassistant.const import CONF_DEVICES, CONF_EMAIL, CONF_PASSWORD
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
|
||||
|
@ -78,7 +77,7 @@ class TankUtilitySensor(Entity):
|
|||
self._password = password
|
||||
self._token = token
|
||||
self._device = device
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._name = "Tank Utility " + self.device
|
||||
self._unit_of_measurement = SENSOR_UNIT_OF_MEASUREMENT
|
||||
self._attributes = {}
|
||||
|
|
|
@ -13,7 +13,7 @@ import homeassistant.helpers.config_validation as cv
|
|||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
ATTR_ATTRIBUTION, CONF_API_KEY, CONF_SCAN_INTERVAL,
|
||||
CONF_MONITORED_CONDITIONS, STATE_UNKNOWN)
|
||||
CONF_MONITORED_CONDITIONS)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
|
||||
REQUIREMENTS = ['TravisPy==0.3.5']
|
||||
|
@ -107,7 +107,7 @@ class TravisCISensor(Entity):
|
|||
self._repo_name = repo_name
|
||||
self._user = user
|
||||
self._branch = branch
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._name = "{0} {1}".format(self._repo_name,
|
||||
SENSOR_TYPES[self._sensor_type][0])
|
||||
|
||||
|
@ -132,7 +132,7 @@ class TravisCISensor(Entity):
|
|||
attrs = {}
|
||||
attrs[ATTR_ATTRIBUTION] = CONF_ATTRIBUTION
|
||||
|
||||
if self._build and self._state is not STATE_UNKNOWN:
|
||||
if self._build and self._state is not None:
|
||||
if self._user and self._sensor_type == 'state':
|
||||
attrs['Owner Name'] = self._user.name
|
||||
attrs['Owner Email'] = self._user.email
|
||||
|
|
|
@ -57,7 +57,7 @@ class XboxSensor(Entity):
|
|||
def __init__(self, hass, api, xuid):
|
||||
"""Initialize the sensor."""
|
||||
self._hass = hass
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._presence = {}
|
||||
self._xuid = xuid
|
||||
self._api = api
|
||||
|
@ -117,5 +117,5 @@ class XboxSensor(Entity):
|
|||
def update(self):
|
||||
"""Update state data from Xbox API."""
|
||||
presence = self._api.get_user_presence(self._xuid)
|
||||
self._state = presence.get('state', STATE_UNKNOWN)
|
||||
self._state = presence.get('state')
|
||||
self._presence = presence.get('devices', {})
|
||||
|
|
|
@ -12,7 +12,7 @@ import voluptuous as vol
|
|||
import homeassistant.helpers.config_validation as cv
|
||||
from homeassistant.components.sensor import PLATFORM_SCHEMA
|
||||
from homeassistant.const import (
|
||||
TEMP_CELSIUS, CONF_MONITORED_CONDITIONS, CONF_NAME, STATE_UNKNOWN,
|
||||
TEMP_CELSIUS, CONF_MONITORED_CONDITIONS, CONF_NAME,
|
||||
ATTR_ATTRIBUTION)
|
||||
from homeassistant.helpers.entity import Entity
|
||||
from homeassistant.util import Throttle
|
||||
|
@ -99,7 +99,7 @@ class YahooWeatherSensor(Entity):
|
|||
self._client = name
|
||||
self._name = SENSOR_TYPES[sensor_type][0]
|
||||
self._type = sensor_type
|
||||
self._state = STATE_UNKNOWN
|
||||
self._state = None
|
||||
self._unit = SENSOR_TYPES[sensor_type][1]
|
||||
self._data = weather_data
|
||||
self._forecast = forecast
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue