Device Registry (#15980)
* First draft * Generate device id * No obscure registry * Dont store config_entry_id in device * Storage * Small mistake on rebase * Do storage more like entity registry * Improve device identification * Add tests * Remove deconz device support from PR * Fix hound comments, voff! * Fix comments and clean up * Fix proper indentation * Fix pydoc issues * Fix mochad component to not use self.device * Fix mochad light platform to not use self.device * Fix TankUtilitySensor to not use self.device * Fix Soundtouch to not use self.device * Fix Plex to not use self.device * Fix Emby to not use self.device * Fix Heatmiser to not use self.device * Fix Wemo lights to not use self.device * Fix Lifx to not use self.device * Fix Radiotherm to not use self.device * Fix Juicenet to not use self.device * Fix Qwikswitch to not use self.device * Fix Xiaomi miio to not use self.device * Fix Nest to not use self.device * Fix Tellduslive to not use self.device * Fix Knx to not use self.device * Clean up a small mistake in soundtouch * Fix comment from Ballob * Fix bad indentation * Fix indentatin * Lint * Remove unused variable * Lint
This commit is contained in:
parent
7e7f9bc6ac
commit
0009be595c
40 changed files with 538 additions and 331 deletions
|
@ -54,8 +54,8 @@ class MochadLight(Light):
|
|||
self._name = dev.get(CONF_NAME,
|
||||
'x10_light_dev_{}'.format(self._address))
|
||||
self._comm_type = dev.get(mochad.CONF_COMM_TYPE, 'pl')
|
||||
self.device = device.Device(ctrl, self._address,
|
||||
comm_type=self._comm_type)
|
||||
self.light = device.Device(ctrl, self._address,
|
||||
comm_type=self._comm_type)
|
||||
self._brightness = 0
|
||||
self._state = self._get_device_status()
|
||||
self._brightness_levels = dev.get(CONF_BRIGHTNESS_LEVELS) - 1
|
||||
|
@ -68,7 +68,7 @@ class MochadLight(Light):
|
|||
def _get_device_status(self):
|
||||
"""Get the status of the light from mochad."""
|
||||
with mochad.REQ_LOCK:
|
||||
status = self.device.get_status().rstrip()
|
||||
status = self.light.get_status().rstrip()
|
||||
return status == 'on'
|
||||
|
||||
@property
|
||||
|
@ -98,12 +98,12 @@ class MochadLight(Light):
|
|||
if self._brightness > brightness:
|
||||
bdelta = self._brightness - brightness
|
||||
mochad_brightness = self._calculate_brightness_value(bdelta)
|
||||
self.device.send_cmd("dim {}".format(mochad_brightness))
|
||||
self.light.send_cmd("dim {}".format(mochad_brightness))
|
||||
self._controller.read_data()
|
||||
elif self._brightness < brightness:
|
||||
bdelta = brightness - self._brightness
|
||||
mochad_brightness = self._calculate_brightness_value(bdelta)
|
||||
self.device.send_cmd("bright {}".format(mochad_brightness))
|
||||
self.light.send_cmd("bright {}".format(mochad_brightness))
|
||||
self._controller.read_data()
|
||||
|
||||
def turn_on(self, **kwargs):
|
||||
|
@ -112,10 +112,10 @@ class MochadLight(Light):
|
|||
with mochad.REQ_LOCK:
|
||||
if self._brightness_levels > 32:
|
||||
out_brightness = self._calculate_brightness_value(brightness)
|
||||
self.device.send_cmd('xdim {}'.format(out_brightness))
|
||||
self.light.send_cmd('xdim {}'.format(out_brightness))
|
||||
self._controller.read_data()
|
||||
else:
|
||||
self.device.send_cmd("on")
|
||||
self.light.send_cmd("on")
|
||||
self._controller.read_data()
|
||||
# There is no persistence for X10 modules so a fresh on command
|
||||
# will be full brightness
|
||||
|
@ -128,7 +128,7 @@ class MochadLight(Light):
|
|||
def turn_off(self, **kwargs):
|
||||
"""Send the command to turn the light on."""
|
||||
with mochad.REQ_LOCK:
|
||||
self.device.send_cmd('off')
|
||||
self.light.send_cmd('off')
|
||||
self._controller.read_data()
|
||||
# There is no persistence for X10 modules so we need to prepare
|
||||
# to track a fresh on command will full brightness
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue