Retry tplink setup later if device has an unexpected serial
If the DHCP reservation changed and there is now a different tplink device at
the saved IP address, retry setup later to avoid cross linking devices
* Use climate entity built in attrs for nest climate
* Update homeassistant/components/nest/climate.py
Co-authored-by: Shay Levy <levyshay1@gmail.com>
---------
Co-authored-by: Shay Levy <levyshay1@gmail.com>
I picked up working on this integration because I wanted to make sure the new Bluetooth stack had a good test case to work out issues and did not generate unexpected breaking changes.
Since I do not use switchbot in production, I usually cannot help solve problems beyond the Bluetooth stack that is visible to HA.
While I am still happy to do code reviews here, the Bluetooth stack has matured to the point where watching for issues here is no longer helpful to maintaining the stack as the signal to noise ratio is too high
* Add wait_for_next_keyframe option to stream images
Add STREAM_SNAPSHOT to CameraEntityFeature
Use wait_for_next_keyframe option for snapshots using stream
* Update stream test comments
* Add generic camera snapshot test
* Get stream still images directly in camera
Remove getting stream images from generic, nest, and ONVIF
Refactor camera preferences
Add use_stream_for_stills setting to camera
Update tests
* Only attempt to get stream image if integration supports stream
* Use property instead of entity registry setting
* Split out getting stream prerequisites from stream_source in nest
* Use cached_property for rtsp live stream trait
* Make rtsp live stream trait NestCamera attribute
* Update homeassistant/components/nest/camera.py
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* Change usage of async_timeout
* Change import formatting in generic/test_camera
* Simplify Nest camera property initialization
---------
Co-authored-by: Allen Porter <allen.porter@gmail.com>
* Update calendar handle state updates at start/end of active/upcoming event
* Use async_write_ha_state intercept state updates
Remove unrelated changes and whitespace.
* Revert unnecessary changes
* Move demo calendar to config entries to cleanup event timers
* Fix docs on calendars
* Move method inside from PR feedback
* Make arguments for async_pipeline_from_audio_stream keyword-only after hass
* Use a bytearray ring buffer
* Move generator outside
* Move stt stream generator outside
* Clean up execute
* Refactor VAD to use bytearray
* More tests
* Refactor chunk_samples to be more correct and robust
* Change AudioBuffer to use append instead of setitem
* Cleanup
---------
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>