From 4cc6eee1ac62fe4ca13d356a76efbfe694f95acb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ville=20Skytt=C3=A4?= Date: Wed, 14 Oct 2020 22:11:48 +0300 Subject: [PATCH] Mark Huawei LTE sensors with None value as unavailable (#41667) --- homeassistant/components/huawei_lte/binary_sensor.py | 9 ++++++--- homeassistant/components/huawei_lte/sensor.py | 5 ++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/homeassistant/components/huawei_lte/binary_sensor.py b/homeassistant/components/huawei_lte/binary_sensor.py index b053e801c95..9a5f148d138 100644 --- a/homeassistant/components/huawei_lte/binary_sensor.py +++ b/homeassistant/components/huawei_lte/binary_sensor.py @@ -81,11 +81,14 @@ class HuaweiLteBaseBinarySensor(HuaweiLteBaseEntity, BinarySensorEntity): try: value = self.router.data[self.key][self.item] except KeyError: + value = None _LOGGER.debug("%s[%s] not in data", self.key, self.item) + if value is None: + self._raw_state = value self._available = False - return - self._available = True - self._raw_state = str(value) + else: + self._raw_state = str(value) + self._available = True CONNECTION_STATE_ATTRIBUTES = { diff --git a/homeassistant/components/huawei_lte/sensor.py b/homeassistant/components/huawei_lte/sensor.py index 56bb6dbcdf9..3815ac831b5 100644 --- a/homeassistant/components/huawei_lte/sensor.py +++ b/homeassistant/components/huawei_lte/sensor.py @@ -434,12 +434,11 @@ class HuaweiLteSensor(HuaweiLteBaseEntity): value = self.router.data[self.key][self.item] except KeyError: _LOGGER.debug("%s[%s] not in data", self.key, self.item) - self._available = False - return - self._available = True + value = None formatter = self.meta.formatter if not callable(formatter): formatter = format_default self._state, self._unit = formatter(value) + self._available = value is not None