* Add additional tests for Matter update entity
Extend test coverage for Matter update entity. This includes tests for
error handling and state store/restore.
* Improve test descriptions
* Add restore test only (using mock_restore_cache_with_extra_data)
* Fix test_update_state_save_and_restore test
* Use homeassistant constants
* Use update component constants
* Use freezer to skip time for device update check
We check device updates every 12h currently. Use the freezer to skip
time.
Still add a test which uses the service call to make sure this works
too.
* Add Matter update entities for devices with OTA requestor
Matter devices which support the OTA requestor cluster can receive
updates from a OTA provider. The Home Assistant Python Matter Server
implements such an OTA provider now.
Add update entities for devices which support the OTA requestor cluster
and check for available updates. Allow the user to update the firmware.
The update progress will be read directly from the devices' OTA
requestor cluster.
* Update homeassistant/components/matter/update.py
Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
* Bump python-matter-server to 6.3.0
This includes models and commands required for device firmware updates.
* Fix tests by including the new bluetooth_enabled field
* Add update entity tests
* Fix update entity test
* Update entity picture docstring
* Add note about reasons for progress state change update
* Enable polling for update entities by default
Matter entities don't enable polling any longer. Enable polling for
update entities by default.
* Add comment about why Update entities are polled
---------
Co-authored-by: TheJulianJES <TheJulianJES@users.noreply.github.com>
* Add support for ModeSelect Cluster
* Update discovery.py
* Add files via upload
* refactor part 1
* Update discovery.py
* add remaining mode discovery schemas
* add test
* type alias
---------
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
* Improve Matter Server version incompatibility handling
Improve the handling of Matter Server version. Noteably fix the issues
raised (add strings for the issue) and split the version check into
two cases: One if the server is too old and one if the server is too
new.
* Bump Python Matter Server library to 6.2.0b1
* Address review feedback
Co-authored-by: Stefan Agner <stefan@agner.ch>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>
* Add matter during onboarding
* test_zeroconf_not_onboarded_running
* test_zeroconf_not_onboarded_installed
* test_zeroconf_not_onboarded_not_installed
* test_zeroconf_discovery_not_onboarded_not_supervisor
* Clean up
* Add udp address
* Test zeroconf udp info too
* test_addon_installed_failures_zeroconf
* test_addon_running_failures_zeroconf
* test_addon_not_installed_failures_zeroconf
* Clean up stale changes
* Set unique id for discovery step
* Fix tests for background flow
* Fix flow running in background
* Test already discovered zeroconf
* Mock unload entry
* bump python-matter-server to version 5.3.0
* Add all node related websocket services
* remove open_commissioning_window service
as it wasnt working anyways
* use device id instead of node id
* tests
* add decorator to get node
* add some tests for invalid device id
* add test for unknown node
* add explicit exception
* adjust test
* move exceptions
* remove the additional config entry check for now
to be picked up in follow up pR
* Matter sensors for air quality measurements
Add sensors for CO2, PM1, PM2.5, PM10 and TVOC
* Add initial tests for matter air quality sensor
* Remove VOC data as requires unit extraction from cluster
* Fix matter light color modes
* Make onoff light fixture only onoff
* Make dimmable light only a dimmable light
* Make color temp light fixture only a color temp light