* Partially revert #70458 and allow duplicate LIFX discoveries
Signed-off-by: Avi Miller <me@dje.li>
* Only process one discovery at a time
* Revert all LIFX duplicate/inflight discovery checks
Also remember LIFX Switches and do as little processing for them
as possible.
Signed-off-by: Avi Miller <me@dje.li>
* Bump aiolifx version to support the latest LIFX devices
LIFX added 22 new product definitions to their public product
list at the end of January and those new products are defined in
aiolifx v0.8.1, so bump the dependency version.
Also switched to testing for relays instead of maintaining a
seperate list of switch product IDs.
Fixes#72894.
Signed-off-by: Avi Miller <me@dje.li>
* Refactor LIFX discovery to better handle duplicate responses
Signed-off-by: Avi Miller <me@dje.li>
* Update clear_inflight_discovery with review suggestion
Signed-off-by: Avi Miller <me@dje.li>
* Move the existing entity check to before the asyncio lock
Signed-off-by: Avi Miller <me@dje.li>
* Bail out of discovery early and if an entity was created
Also ensure that the entity always has a unique ID even if the bulb was
not successfully discovered.
Signed-off-by: Avi Miller <me@dje.li>
Co-authored-by: J. Nick Koston <nick@koston.org>
Bump aiolifx version to support the latest LIFX devices
LIFX added 22 new product definitions to their public product
list at the end of January and those new products are defined in
aiolifx v0.8.1, so bump the dependency version.
Also switched to testing for relays instead of maintaining a
seperate list of switch product IDs.
Fixes#72894.
Signed-off-by: Avi Miller <me@dje.li>
* Migrate lifx light to color_mode
* Update LIFXColor to support both hs and color_temp
* Apply suggestions from code review
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
* Update light.py
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
* Narrow down the list of LIFX models for HomeKit discovery
This allows the LIFX Switch to be integrated using the HomeKit
Controller component. I also adjusted the zeroconf test so that
the partial match still matches the lifx integration.
Signed-off-by: Avi Miller <me@dje.li>
* Update tests/components/zeroconf/test_init.py
Co-authored-by: J. Nick Koston <nick@koston.org>
This allows the LIFX Switch to be discovered by the HomeKit Controller
integration instead of being captured by the LIFX integration which
doesn't support switches.
Signed-off-by: Avi Miller <me@dje.li>
* Ensure service calls are typed [k-n]
* Ensure service calls are typed in mazda
* Adjust mazda
* Add mazda comment
Co-authored-by: epenet <epenet@users.noreply.github.com>