* Add typing to deCONZ Alarm Control Panel and Binary Sensor platforms
* Address review comments
* Don't use asserts, use # type: ignore[no-any-return]
* Improve lazy typing of dict
* Don't enable any variants of the daylight sensor entities by default
* Use isinstance rather than doing ZHATYPE compare
* Accidentally removed an import
Mostly snake case conversions and typing
But also a change in retry mechanism
Added a more complete set_* call to most types to remove the direct relation to rest API of deCONZ
* Collection of changing entity properties to class attributes
* Apply suggestions from code review
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
* Improve control of covers
* Log backtrace if available
* Do not create entity for controller tool
Binary sensor should use state rather than is_tripped
Add some more tests to lights and sensors
* Bump dependency to v74
* Fix Balloobs comments
* Store all entities in dict
* Use stored unique id to select if to create entity or not
* Remove unnecessary init
* Change so same physical sensor doesnt try to create multiple battery sensors
Change so groups get created properly
* Add controls in tests that entities are logged correctly
* Rename BinarySensorDevice to BinarySensorEntity
* Tweak
* Move deprecation warning to __new__, add test
* Move deprecation warning back to __init__
* Move deprecation warning to __init_subclass
When battery sensors gets created before other platforms loading deconz sensors gets created first the other platform would not create entities related to those battery sensors
* First draft
* Support enabling disabled entities
* Clean up
* Move import
* Local entity enabled replaced during rebase
* Add option flow test
* Mark options properties with option
* Improved sensors
* Lib update signalling
* Replace reason with changed
* Move imports to top of file
* Add support for secondary temperature reported by some Xiaomi devices
* Bump dependency to v59
* Store gateways inside a dict in deconz domain
* Make reachable events gateway specific
* Gateway shall always exist
* Adapt new device signalling to support multiple gateways
* Services follow gateway master
* Working on unload entry
* Make unload and master handover work
Improve tests for init
* Fix config flow
* Fix linting
* Clean up init tests
* Clean up hassio discovery to fit with the rest
* Store gateways inside a dict in deconz domain
* Make reachable events gateway specific
* Gateway shall always exist
* Adapt new device signalling to support multiple gateways
* Services follow gateway master
* Working on unload entry
* Make unload and master handover work
Improve tests for init
* Fix config flow
* Fix linting
* Clean up init tests
* Clean up hassio discovery to fit with the rest
* Add support for services to specify bridgeid