Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 12 additions & 15 deletions homeassistant/components/broadlink/light.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,7 @@
ATTR_COLOR_MODE,
ATTR_COLOR_TEMP,
ATTR_HS_COLOR,
COLOR_MODE_BRIGHTNESS,
COLOR_MODE_COLOR_TEMP,
COLOR_MODE_HS,
COLOR_MODE_UNKNOWN,
ColorMode,
LightEntity,
)
from homeassistant.config_entries import ConfigEntry
Expand Down Expand Up @@ -56,11 +53,11 @@ def __init__(self, device):
data = self._coordinator.data

if {"hue", "saturation"}.issubset(data):
self._attr_supported_color_modes.add(COLOR_MODE_HS)
self._attr_supported_color_modes.add(ColorMode.HS)
if "colortemp" in data:
self._attr_supported_color_modes.add(COLOR_MODE_COLOR_TEMP)
self._attr_supported_color_modes.add(ColorMode.COLOR_TEMP)
if not self.supported_color_modes:
self._attr_supported_color_modes = {COLOR_MODE_BRIGHTNESS}
self._attr_supported_color_modes = {ColorMode.BRIGHTNESS}

self._update_state(data)

Expand All @@ -72,8 +69,8 @@ def _update_state(self, data):
if "brightness" in data:
self._attr_brightness = round(data["brightness"] * 2.55)

if self.supported_color_modes == {COLOR_MODE_BRIGHTNESS}:
self._attr_color_mode = COLOR_MODE_BRIGHTNESS
if self.supported_color_modes == {ColorMode.BRIGHTNESS}:
self._attr_color_mode = ColorMode.BRIGHTNESS
return

if {"hue", "saturation"}.issubset(data):
Expand All @@ -84,12 +81,12 @@ def _update_state(self, data):

if "bulb_colormode" in data:
if data["bulb_colormode"] == BROADLINK_COLOR_MODE_RGB:
self._attr_color_mode = COLOR_MODE_HS
self._attr_color_mode = ColorMode.HS
elif data["bulb_colormode"] == BROADLINK_COLOR_MODE_WHITE:
self._attr_color_mode = COLOR_MODE_COLOR_TEMP
self._attr_color_mode = ColorMode.COLOR_TEMP
else:
# Scenes are not yet supported.
self._attr_color_mode = COLOR_MODE_UNKNOWN
self._attr_color_mode = ColorMode.UNKNOWN
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Didn't know that one existed


async def async_turn_on(self, **kwargs):
"""Turn on the light."""
Expand All @@ -99,7 +96,7 @@ async def async_turn_on(self, **kwargs):
brightness = kwargs[ATTR_BRIGHTNESS]
state["brightness"] = round(brightness / 2.55)

if self.supported_color_modes == {COLOR_MODE_BRIGHTNESS}:
if self.supported_color_modes == {ColorMode.BRIGHTNESS}:
state["bulb_colormode"] = BROADLINK_COLOR_MODE_WHITE

elif ATTR_HS_COLOR in kwargs:
Expand All @@ -115,9 +112,9 @@ async def async_turn_on(self, **kwargs):

elif ATTR_COLOR_MODE in kwargs:
color_mode = kwargs[ATTR_COLOR_MODE]
if color_mode == COLOR_MODE_HS:
if color_mode == ColorMode.HS:
state["bulb_colormode"] = BROADLINK_COLOR_MODE_RGB
elif color_mode == COLOR_MODE_COLOR_TEMP:
elif color_mode == ColorMode.COLOR_TEMP:
state["bulb_colormode"] = BROADLINK_COLOR_MODE_WHITE
else:
# Scenes are not yet supported.
Expand Down