update dovado version (#6081)
This commit is contained in:
parent
b857f838df
commit
62fe9f955e
2 changed files with 13 additions and 12 deletions
|
@ -16,12 +16,13 @@ from homeassistant.util import slugify
|
||||||
import homeassistant.helpers.config_validation as cv
|
import homeassistant.helpers.config_validation as cv
|
||||||
from homeassistant.const import (CONF_USERNAME, CONF_PASSWORD,
|
from homeassistant.const import (CONF_USERNAME, CONF_PASSWORD,
|
||||||
CONF_HOST, CONF_PORT,
|
CONF_HOST, CONF_PORT,
|
||||||
CONF_SENSORS, STATE_UNKNOWN)
|
CONF_SENSORS, STATE_UNKNOWN,
|
||||||
|
DEVICE_DEFAULT_NAME)
|
||||||
from homeassistant.components.sensor import (DOMAIN, PLATFORM_SCHEMA)
|
from homeassistant.components.sensor import (DOMAIN, PLATFORM_SCHEMA)
|
||||||
|
|
||||||
_LOGGER = logging.getLogger(__name__)
|
_LOGGER = logging.getLogger(__name__)
|
||||||
|
|
||||||
REQUIREMENTS = ['dovado==0.1.15']
|
REQUIREMENTS = ['dovado==0.4.0']
|
||||||
|
|
||||||
MIN_TIME_BETWEEN_UPDATES = timedelta(seconds=30)
|
MIN_TIME_BETWEEN_UPDATES = timedelta(seconds=30)
|
||||||
|
|
||||||
|
@ -101,21 +102,20 @@ class Dovado:
|
||||||
@property
|
@property
|
||||||
def name(self):
|
def name(self):
|
||||||
"""Name of the router."""
|
"""Name of the router."""
|
||||||
return self.state["product name"]
|
return self.state.get("product name", DEVICE_DEFAULT_NAME)
|
||||||
|
|
||||||
@Throttle(MIN_TIME_BETWEEN_UPDATES)
|
@Throttle(MIN_TIME_BETWEEN_UPDATES)
|
||||||
def update(self):
|
def update(self):
|
||||||
"""Update device state."""
|
"""Update device state."""
|
||||||
_LOGGER.info("Updating")
|
_LOGGER.info("Updating")
|
||||||
try:
|
try:
|
||||||
self.state = self._dovado.query_state()
|
self.state.update(self._dovado.state or {})
|
||||||
self.state.update(
|
self.state.update(
|
||||||
connected=self.state["modem status"] == "CONNECTED")
|
connected=self.state.get("modem status") == "CONNECTED")
|
||||||
_LOGGER.debug("Received: %s", self.state)
|
_LOGGER.debug("Received: %s", self.state)
|
||||||
return True
|
return True
|
||||||
except OSError as error:
|
except OSError as error:
|
||||||
_LOGGER.error("Could not contact the router: %s", error)
|
_LOGGER.warning("Could not contact the router: %s", error)
|
||||||
return False
|
|
||||||
|
|
||||||
|
|
||||||
class DovadoSensor(Entity):
|
class DovadoSensor(Entity):
|
||||||
|
@ -140,8 +140,10 @@ class DovadoSensor(Entity):
|
||||||
def state(self):
|
def state(self):
|
||||||
"""Return the sensor state."""
|
"""Return the sensor state."""
|
||||||
key = SENSORS[self._sensor][0]
|
key = SENSORS[self._sensor][0]
|
||||||
result = self._dovado.state[key]
|
result = self._dovado.state.get(key)
|
||||||
if self._sensor == SENSOR_NETWORK:
|
if not result:
|
||||||
|
return STATE_UNKNOWN
|
||||||
|
elif self._sensor == SENSOR_NETWORK:
|
||||||
match = re.search(r"\((.+)\)", result)
|
match = re.search(r"\((.+)\)", result)
|
||||||
return match.group(1) if match else STATE_UNKNOWN
|
return match.group(1) if match else STATE_UNKNOWN
|
||||||
elif self._sensor == SENSOR_SIGNAL:
|
elif self._sensor == SENSOR_SIGNAL:
|
||||||
|
@ -152,8 +154,7 @@ class DovadoSensor(Entity):
|
||||||
elif self._sensor == SENSOR_SMS_UNREAD:
|
elif self._sensor == SENSOR_SMS_UNREAD:
|
||||||
return int(result)
|
return int(result)
|
||||||
elif self._sensor in [SENSOR_UPLOAD, SENSOR_DOWNLOAD]:
|
elif self._sensor in [SENSOR_UPLOAD, SENSOR_DOWNLOAD]:
|
||||||
gib = pow(2, 30)
|
return round(float(result) / 1e6, 1)
|
||||||
return round(int(result) / gib, 1)
|
|
||||||
else:
|
else:
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
|
@ -112,7 +112,7 @@ dlipower==0.7.165
|
||||||
dnspython3==1.15.0
|
dnspython3==1.15.0
|
||||||
|
|
||||||
# homeassistant.components.sensor.dovado
|
# homeassistant.components.sensor.dovado
|
||||||
dovado==0.1.15
|
dovado==0.4.0
|
||||||
|
|
||||||
# homeassistant.components.sensor.dsmr
|
# homeassistant.components.sensor.dsmr
|
||||||
dsmr_parser==0.6
|
dsmr_parser==0.6
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue