Verisure: Added option to set installation giid (#10504)

* Added option to set installation giid

* Changed where giid config var is being checked

* Style fix

* Fix style
This commit is contained in:
Andreas Björshammar 2017-11-14 15:53:26 +01:00 committed by Pascal Vizeli
parent e947e6a143
commit 061253fded

View file

@ -27,6 +27,7 @@ ATTR_DEVICE_SERIAL = 'device_serial'
CONF_ALARM = 'alarm'
CONF_CODE_DIGITS = 'code_digits'
CONF_DOOR_WINDOW = 'door_window'
CONF_GIID = 'giid'
CONF_HYDROMETERS = 'hygrometers'
CONF_LOCKS = 'locks'
CONF_MOUSE = 'mouse'
@ -47,6 +48,7 @@ CONFIG_SCHEMA = vol.Schema({
vol.Optional(CONF_ALARM, default=True): cv.boolean,
vol.Optional(CONF_CODE_DIGITS, default=4): cv.positive_int,
vol.Optional(CONF_DOOR_WINDOW, default=True): cv.boolean,
vol.Optional(CONF_GIID): cv.string,
vol.Optional(CONF_HYDROMETERS, default=True): cv.boolean,
vol.Optional(CONF_LOCKS, default=True): cv.boolean,
vol.Optional(CONF_MOUSE, default=True): cv.boolean,
@ -110,6 +112,8 @@ class VerisureHub(object):
domain_config[CONF_USERNAME],
domain_config[CONF_PASSWORD])
self.giid = domain_config.get(CONF_GIID)
import jsonpath
self.jsonpath = jsonpath.jsonpath
@ -120,6 +124,8 @@ class VerisureHub(object):
except self._verisure.Error as ex:
_LOGGER.error('Could not log in to verisure, %s', ex)
return False
if self.giid:
return self.set_giid()
return True
def logout(self):
@ -131,6 +137,15 @@ class VerisureHub(object):
return False
return True
def set_giid(self):
"""Set installation GIID."""
try:
self.session.set_giid(self.giid)
except self._verisure.Error as ex:
_LOGGER.error('Could not set installation GIID, %s', ex)
return False
return True
@Throttle(timedelta(seconds=60))
def update_overview(self):
"""Update the overview."""