* Removal of extraneous parenthesis
* Process review suggestions
* Apply suggestions from code review
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
* Store device_registry entry id in HueEvent
so it can be retrieved with that key when using device triggers
* Add device_trigger for hue_event from hue remotes
* supporting Hue dimmer switch & Hue Tap
* State mapping and strings are copied from deCONZ
* refactor mock_bridge for hue tests
and also share `setup_bridge_for_sensors`
for test_sensor_base and test_device_trigger.
* Add tests for device triggers with hue remotes
* Remove some triggers
* Add remote platform to hue integration
supporting ZGPSwitch, ZLLSwitch and ZLLRotary switches.
* Ported from custom component Hue-remotes-HASS from @robmarkcole
* Add options flow for hue, to toggle handling of sensors and remotes
* Sensors are enabled by default, and remotes are disabled,
to not generate any breaking change for existent users.
Also, when linking a new bridge these defaults are used,
so unless going explicitly to the Options menu,
the old behavior is preserved.
* SensorManager stores the enabled platforms and ignores everything else.
* Bridge is created with flags for `add_sensors` and `add_remotes`,
and uses them to forward entry setup to only the enabled platforms.
* Update listener removes disabled kinds of devices when options are changed,
so device list is in sync with options, and disabled kinds disappear from HA,
leaving the enable/disable entity option for individual devices.
* Fix hue bridge mock with new parameters
* Revert changes in hue bridge mock
* Remove OptionsFlow and platform flags
* Extract `GenericHueDevice` from `GenericHueSensor`
to use it as base class for all hue devices, including those without any entity,
like remotes without battery.
* Add `HueBattery` sensor for battery powered remotes
and generate entities for TYPE_ZLL_ROTARY and TYPE_ZLL_SWITCH remotes.
* Remove remote platform
* Add HueEvent class to fire events for button presses
* Use `sensor.lastupdated` string to control state changes
* Event data includes:
- "id", as pretty name of the remote
- "unique_id" of the remote device
- "event", with the raw code of the pressed button
('buttonevent' or 'rotaryevent' property)
- "last_updated", with the bridge timestamp for the button press
* Register ZGP_SWITCH, ZLL_SWITCH, ZLL_ROTARY remotes
* fix removal
* Exclude W0611
* Extract GenericHueDevice to its own module
and solve import tree, also fixing lint in CI
* Store registered events to do not repeat device reg
* Minor cleaning
* Add tests for hue_event and battery entities for hue remotes
* Computes the features of a hue group as the union of the features of the bulbs in the group
* Moved create item to a function
* Added test for hue group features
* Refactor Hue Lights to use DataCoordinator
* Redo how Hue updates data
* Address comments
* Inherit from Entity and remove pylint disable
* Add tests for debounce
* Update Hue existing config entry with discovery data
* Updated method documentation comments
* Update implementation to match latest dev
* Use named argument for clarity
* Include all SSDP data in discovery info
* Use UPnP device description as discovery info, inject some SSDP attrs
* Clean up attribute names
* Adapt existing SSDP flows to changed attribute names
* Prefix all SSDP UPnP attribute name constants with ATTR_UPNP, tweak a bit
* Add unique ID to config entries
* Unload existing entries with same unique ID if flow with unique ID is
finished
* Remove unused exception
* Fix typing
* silence pylint
* Fix tests
* Add unique ID to Hue
* Address typing comment
* Tweaks to comments
* lint
* Migrate deCONZ to use new SSDP discovery
Add new discovery info manufacturer URL to be able to separate Hue and deCONZ bridges
* Mark deCONZ as migrated in Discovery component
* Fix tests
* Fix Hue discovery ignore deCONZ bridge
* Less snake more badger
* Mushroom
* Fix indentation
* Config flow ignore manufacturer url that is not philips
* Add basic support for native Hue sensors
* Update coveragerc
* Simplify attributes
* Remove config option
* Refactor and document device-ness and update mechanism
* Entity docstrings
* Remove lingering config for sensors
* Whitespace
* Remove redundant entity ID generation and hass assignment.
* More meaningful variable name.
* Add new 'not-darkness' pseudo-sensor.
* Refactor sensors into separate binary, non-binary, and shared modules.
* formatting
* make linter happy.
* Refactor again, fix update mechanism, and address comments.
* Remove unnecessary assignment
* Small fixes.
* docstring
* Another refactor: only call API once and make testing easier
* Tests & test fixes
* Flake & lint
* Use gather and dispatcher
* Remove unnecessary whitespace change.
* Move component related stuff out of the shared module
* Remove unused remnant of failed approach.
* Increase test coverage
* Don't get too upset if we're already trying to update an entity before it has finished adding
* relative imports
* Add a prompt if bridge update is available.
* Change logger warning for light update
The self.light.swupdatestate only checks for updates of that specific light, it does not check for updates of the bridge.
Theirfore the warning message schould be updated.
* add space
* fix tests
* rename to swupdate2_bridge_state
* update aiohue to v1.9.1
* update aiohue to v1.9.1
* update aiohue to v1.9.1