update dovado version (#6081)

This commit is contained in:
Erik Eriksson 2017-02-18 08:15:32 +01:00 committed by Pascal Vizeli
parent b857f838df
commit 62fe9f955e
2 changed files with 13 additions and 12 deletions

View file

@ -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

View file

@ -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