Some tries to fix the unknown error

This commit is contained in:
dotKrad
2020-06-09 22:34:53 +00:00
parent 387cbb0309
commit a40ca5b37f

View File

@@ -6,7 +6,7 @@ import asyncio
from homeassistant.helpers.entity import Entity from homeassistant.helpers.entity import Entity
from homeassistant import util from homeassistant import util
from homeassistant.const import CONF_NAME, EVENT_CORE_CONFIG_UPDATE from homeassistant.const import CONF_NAME, EVENT_CORE_CONFIG_UPDATE, STATE_UNKNOWN
from .const import DOMAIN, ICON, LOGIN_RESULT_OK from .const import DOMAIN, ICON, LOGIN_RESULT_OK
MIN_TIME_BETWEEN_SCANS = timedelta(minutes=30) MIN_TIME_BETWEEN_SCANS = timedelta(minutes=30)
@@ -43,7 +43,7 @@ class FplSensor(Entity):
self._config = config self._config = config
self.username = config.get(const.CONF_USERNAME) self.username = config.get(const.CONF_USERNAME)
self.password = config.get(const.CONF_PASSWORD) self.password = config.get(const.CONF_PASSWORD)
self._state = 0 self._state = const.STATE_UNKNOWN
self.loop = hass.loop self.loop = hass.loop
self._account = account self._account = account
@@ -63,7 +63,7 @@ class FplSensor(Entity):
@property @property
def state(self): def state(self):
return self._data["bill_to_date"] return self._state #
@property @property
def unit_of_measurement(self): def unit_of_measurement(self):
@@ -79,12 +79,14 @@ class FplSensor(Entity):
@util.Throttle(MIN_TIME_BETWEEN_SCANS, MIN_TIME_BETWEEN_UPDATES) @util.Throttle(MIN_TIME_BETWEEN_SCANS, MIN_TIME_BETWEEN_UPDATES)
async def async_update(self): async def async_update(self):
self._state = const.STATE_UNKNOWN
self._data = None
session = aiohttp.ClientSession() session = aiohttp.ClientSession()
try: try:
api = FplApi(self.username, self.password, self.loop, session) api = FplApi(self.username, self.password, self.loop, session)
await api.login() await api.login()
self._data = await api.async_get_data(self._account) self._data = await api.async_get_data(self._account)
self._state = self._data["bill_to_date"]
except Exception: # pylint: disable=broad-except except Exception: # pylint: disable=broad-except
pass pass