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