* Update device config for SETUP_RETRY and use CONF_HOST on startup
* Make entry state checks use a constant
Co-authored-by: J. Nick Koston <nick@koston.org>
* Update tests
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
* Add authentication flows to tplink integration to enable newer device protocol support
* Add websession passing to tplink integration discover methods
* Use SmartDevice.connect()
* Update to use DeviceConfig
* Use credential hashes
* Bump python-kasa to 0.6.0.dev0
* Fix tests and address review comments
* Add autodetection for L530, P110, and L900
This adds mac address prefixes for the devices I have.
The wildcards are left quite lax assuming different series may share the same prefix.
* Bump tplink to 0.6.0.dev1
* Add config flow tests
* Use short_mac if alias is None and try legacy connect on discovery timeout
* Add config_flow tests
* Add init tests
* Migrate to aiohttp
* add some more ouis
* final
* ip change fix
* add fixmes
* fix O(n) searching
* fix O(n) searching
* move code that cannot fail outside of try block
* fix missing reauth_successful string
* add doc strings, cleanups
* error message by password
* dry
* adjust discovery timeout
* integration discovery already formats mac
* tweaks
* cleanups
* cleanups
* Update post review and fix broken tests
* Fix TODOs and FIXMEs in test_config_flow
* Add pragma no cover
* bump, apply suggestions
* remove no cover
* use iden check
* Apply suggestions from code review
* Fix branched test and update integration title
* legacy typing
* Update homeassistant/components/tplink/__init__.py
* lint
* Remove more unused consts
* Update test docstrings
* Add sdb9696 to tplink codeowners
* Update docstring on test for invalid DeviceConfig
* Update test stored credentials test
---------
Co-authored-by: Teemu Rytilahti <tpr@iki.fi>
Co-authored-by: J. Nick Koston <nick@koston.org>
The valid_temperature_range property does a regex match over
every possible model. Avoid calling it more than once since
it will never change as its based on the model
* Use shorthand attrs for more tplink light attributes
supported_color_modes and features were having to be recalced every time
state was written
* preen
It can take longer than 5s to do the first update of the device
especially when the device is overloaded as seen in #103668
Wait 10 seconds for the discovery since when the power strips are loaded they cannot respond in time
* Update manifest.json with 2 new MACs for KP200
those MAC are missing from the list so there are not detected like the other K200 i have (like 68ff7b)
* run hassfest
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
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
* Add OUI to tplink diagnostics
The main reason discovery does not work for new devices is we
are missing the OUI. Since we redact the whole mac address in
the diagnostics, this makes it difficult to fix. We now include
the OUI in the diagnostics
* fix: use cached mac
* fix: tests
* 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>