* Decouple more of ESPHome Bluetooth support
The goal is to be able to move more of this into an external library
* Decouple more of ESPHome Bluetooth support
The goal is to be able to move more of this into an external library
* Decouple more of ESPHome Bluetooth support
The goal is to be able to move more of this into an external library
* Decouple more of ESPHome Bluetooth support
The goal is to be able to move more of this into an external library
* Decouple more of ESPHome Bluetooth support
The goal is to be able to move more of this into an external library
* fix diag
* remove need for hass in the client
* refactor
* decouple more
* decouple more
* decouple more
* decouple more
* decouple more
* remove unreachable code
* remove unreachable code
* Add deduplicate script
* Fix forecast_solar incorrect key with space
* Fix utf-8
* Do not create references to other arbitrary other integrations
* Add commented code to only allow applying to referencing integrations
* Tweak
* Bug fix
* Add command line arg for limit reference
* never suggest to update common keys
* Output of script
* Apply suggestions from code review
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
---------
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
* Move ESPHomeManager into its own file
This is not a functional change. This is only a reorganization
ahead of some more test coverage being added so moving tests
around can be avoided later.
* relos
* fixes
* merge a portion of new cover since its small and allows us to remove the __init__ from .coveragerc
If the yaml file has invalid utf-8, the config flow would raise an
unhandled exception. Allow the encryption key to be entered manually
in this case instead of a hard failure
fixes#92772
* Handle incorrect or missing device name for ESPHome noise encryption
If we did not have the device name during setup we could never
get the key from the dashboard. The device will send us
its name if we try encryption which allows us to find the
right key from the dashboard.
This should help get users unstuck when they change the key
and cannot get the device back online after deleting and
trying to set it up again manually
* bump lib to get name
* tweak
* reduce number of connections
* less connections when we know we will fail
* coverage shows it works but it does not
* add more coverage
* fix test
* bump again
* Refactor ESPHome setup logic into a class
Avoids all the nonlocals and fixes the C901
* cleanup
* touch ups
* touch ups
* touch ups
* make easier to read
* stale
* Change to "finished speaking detection"
* Add select entity to ESPHome for finished speaking detection
* Fix entity name
* Use vad select in stt stream
---------
Co-authored-by: J. Nick Koston <nick@koston.org>