Compare commits

..

2720 Commits

Author SHA1 Message Date
Paulus Schoutsen f44f1f0c4a Merge pull request #65606 from home-assistant/rc 2022-02-03 16:57:24 -08:00
Shay Levy b450a41d7b Fix Shelly Plus i4 KeyError (#65604) 2022-02-03 16:19:57 -08:00
J. Nick Koston 88c3ab1113 Fix lutron_caseta button events including area name in device name (#65601) 2022-02-03 16:05:20 -08:00
Paulus Schoutsen f1c8fc241a Merge pull request #65598 from home-assistant/rc 2022-02-03 16:04:08 -08:00
Paulus Schoutsen e5b9d5baa3 Bumped version to 2022.2.1 2022-02-03 15:06:46 -08:00
jjlawren 3c43089cc2 Log traceback in debug for Sonos unsubscribe errors (#65596) 2022-02-03 15:06:38 -08:00
Franck Nijhof c8827e00b3 Update pvo to 0.2.1 (#65584) 2022-02-03 15:06:37 -08:00
Michael 3a1a12b13e Extend diagnostics data in Fritz!Tools (#65573) 2022-02-03 15:06:37 -08:00
Bram Kragten 2928935838 Update frontend to 20220203.0 (#65572) 2022-02-03 15:06:36 -08:00
Franck Nijhof b9a37e2c3e Guard against empty Tuya data types (#65571) 2022-02-03 15:06:35 -08:00
G Johansson 92f4f99d41 Add back resolvers config flow dnsip (#65570) 2022-02-03 15:06:34 -08:00
Franck Nijhof e32a54eecc Add missing Tuya vacuum states (#65567) 2022-02-03 15:06:34 -08:00
Michael 2bb65ecf38 Fix data update when guest client disappears in Fritz!Tools (#65564)
Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>
2022-02-03 15:06:33 -08:00
J. Nick Koston afbc55b181 Do not update unifiprotect host from discovery if its not an ip (#65548) 2022-02-03 15:06:32 -08:00
Jan Bouwhuis 931c27f452 Return current state if template throws (#65534) 2022-02-03 15:06:31 -08:00
Franck Nijhof 689133976a Fix missing windspeed in Tuya climate (#65511) 2022-02-03 15:06:31 -08:00
Eduard van Valkenburg faa8ac692e Fix SIA availability (#65509) 2022-02-03 15:06:30 -08:00
Aaron Bach ec0b0e41a1 Bump pytile to 2022.02.0 (#65482) 2022-02-03 15:06:29 -08:00
Aaron Bach 6550d04313 Allow Flu Near You to re-attempt startup on error (#65481) 2022-02-03 15:06:28 -08:00
jjlawren 8d33964e4d Fix vanished checks on old Sonos firmware (#65477) 2022-02-03 15:06:27 -08:00
Aaron Bach d195e8a1b4 Catch correct error during OpenUV startup (#65459) 2022-02-03 15:06:26 -08:00
Aaron Bach a8b29c4be9 Fix unknown alarm websocket event error for restored SimpliSafe connections (#65457) 2022-02-03 15:06:26 -08:00
mk-maddin f7ec373aab Fix script / automation repeat with count 0 fails (#65448)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-03 15:06:24 -08:00
Colin Robbins 1ae2bfcc89 Fix Shodan sensor (#65443) 2022-02-03 15:06:24 -08:00
Maciej Bieniek 1155d229f3 Get wind speed unit from AccuWeather data (#65425) 2022-02-03 15:06:23 -08:00
Franck Nijhof 2f638a6b5e Merge pull request #65442 from home-assistant/rc 2022-02-02 19:44:34 +01:00
Franck Nijhof 580573fcb3 Bumped version to 2022.2.0 2022-02-02 18:12:26 +01:00
Bram Kragten 8851af7dba Update frontend to 20220202.0 (#65432) 2022-02-02 18:11:28 +01:00
Erik Montnemery ec2e450442 Stringify MQTT payload in mqtt/debug/info WS response (#65429) 2022-02-02 18:11:24 +01:00
Maikel Punie dacf5957d2 Bump velbus-aio to 2022.2.1 (#65422) 2022-02-02 18:11:20 +01:00
Erik Montnemery 5190282b4d Don't warn on time.sleep injected by the debugger (#65420) 2022-02-02 18:11:16 +01:00
Josh Shoemaker 51c6cac74d Bump aladdin_connect to 0.4 to fix integration for some users due to API changes (#65407) 2022-02-02 18:11:11 +01:00
J. Nick Koston 1809489421 Ensure unifiprotect discovery can be ignored (#65406) 2022-02-02 18:11:07 +01:00
J. Nick Koston 690764ec84 Bump lutron_caseta to 0.13.1 to fix setup when no button devices are present (#65400) 2022-02-02 18:11:03 +01:00
jjlawren 2b0e828736 Fix Sonos diagnostics with offline device (#65393)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-02 18:10:59 +01:00
Pierre Ståhl 91023cf132 Sort Apple TV app list by name (#65386) 2022-02-02 18:10:54 +01:00
Pierre Ståhl fcd14e2830 Fix disconnect bug in Apple TV integration (#65385) 2022-02-02 18:10:49 +01:00
jjlawren 40a174cc70 Detect battery-operated Sonos devices going offline (#65382) 2022-02-02 18:10:44 +01:00
J. Nick Koston 95d4be375c Handle brightness being None for senseme (#65372) 2022-02-02 18:10:40 +01:00
Jan Bouwhuis 37f9c833c0 Fix MQTT expire_after effects after reloading (#65359)
* Cleanup sensor expire triggers after reload

* fix test binary_sensor

* Also trigger cleanup parent classes

* Restore an expiring state after a reload

* correct discovery_update

* restore expiring state with remaining time

* Update homeassistant/components/mqtt/binary_sensor.py

description

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Log remaining time

* Move check

* check and tests reload

* remove self.async_write_ha_state()

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-02 18:10:36 +01:00
Erik Montnemery b902c59504 Report unmet dependencies for failing config flows (#65061)
* Report unmet dependencies for failing config flows

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/setup.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Modify error message

* Add test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-02 18:10:30 +01:00
Paulus Schoutsen ba237fd383 Bumped version to 2022.2.0b6 2022-02-01 10:00:39 -08:00
Paulus Schoutsen b687f68d53 Bump frontend to 20220201.0 (#65380) 2022-02-01 10:00:36 -08:00
Robert Svensson f3c39d8dca Redact host address in UniFi diagnostics (#65379) 2022-02-01 09:59:25 -08:00
Michael 19fff6489b Fix wan_access switch for disconnected devices in Fritz!Tools (#65378) 2022-02-01 09:59:24 -08:00
Bram Kragten 4f8752b351 Allow removing keys from automation (#65374) 2022-02-01 09:59:23 -08:00
G Johansson 03bd3f5001 Fix options for dnsip (#65369) 2022-02-01 09:59:22 -08:00
Erik Montnemery 055382c84c Improve CastProtocol (#65357)
* Improve CastProtocol

* Tweak
2022-02-01 09:59:21 -08:00
Paulus Schoutsen 68651be2cc Simplify unifi cleanup logic (#65345) 2022-02-01 09:59:21 -08:00
schreyack 09c2c129b9 Fix honeywell hold mode (#65327)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-01 09:59:20 -08:00
ZuluWhiskey 7fe1b85495 Fix MotionEye config flow (#64360)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-01 09:59:19 -08:00
Paulus Schoutsen 5082582769 Bumped version to 2022.2.0b5 2022-01-31 17:12:40 -08:00
Paulus Schoutsen b7c7571a39 I zone, you zone, we zoning (#65344) 2022-01-31 17:12:26 -08:00
Simone Chemelli 63a90b7226 Add diagnostics for SamsungTV (#65342) 2022-01-31 17:12:25 -08:00
J. Nick Koston 5735762af2 Bump zeroconf to 0.38.3 (#65341) 2022-01-31 17:12:25 -08:00
Paulus Schoutsen 90127d04fa Bump aiohue to 4.0.1 (#65340) 2022-01-31 17:12:24 -08:00
Paulus Schoutsen 114da0bd4f Bump version tag on async_timeout warning (#65339) 2022-01-31 17:12:23 -08:00
J. Nick Koston 5c3d4cb9a5 Prevent unifiprotect from being rediscovered on UDM-PROs (#65335) 2022-01-31 17:12:23 -08:00
Simone Chemelli 3f8d2f3102 Add diagnostics support to Fritz (#65334)
* Add diagnostics support to Fritz

* Temporary remove tests

* coveragerc
2022-01-31 17:12:22 -08:00
J. Nick Koston eea9e26ef5 Fix guardian being rediscovered via dhcp (#65332) 2022-01-31 17:12:21 -08:00
Michael 649b4ce329 Improve debugging and error handling in Fritz!Tools (#65324) 2022-01-31 17:12:21 -08:00
Simone Chemelli 1facd0edd4 Fritz tests cleanup (#65054) 2022-01-31 17:12:20 -08:00
Paulus Schoutsen 1fbd624a24 Alexa to handle brightness and catch exceptions (#65322) 2022-01-31 17:10:25 -08:00
Pascal Winters 0a000babc9 Bump pyps4-2ndscreen to 1.3.1 (#65320) 2022-01-31 17:10:25 -08:00
Franck Nijhof 74632d26fa Ensure PVOutput connection error is logged (#65319) 2022-01-31 17:10:24 -08:00
Franck Nijhof 87b20c6abe Update tailscale to 0.2.0 (#65318) 2022-01-31 17:10:23 -08:00
Franck Nijhof ea511357b6 Add diagnostics support to WLED (#65317) 2022-01-31 17:10:23 -08:00
Jeff Irion 00b2c85e98 Bump androidtv to 0.0.61 (#65315) 2022-01-31 17:10:22 -08:00
J. Nick Koston 961cf15e6e Improve reliability of august setup with recent api changes (#65314) 2022-01-31 17:10:21 -08:00
Franck Nijhof 7117395489 Fix missing expiration data in Whois information (#65313) 2022-01-31 17:10:21 -08:00
Franck Nijhof 5dc92bb2ce Update wled to 0.13.0 (#65312) 2022-01-31 17:10:19 -08:00
Franck Nijhof 0519b29501 Update adguard to 0.5.1 (#65305) 2022-01-31 17:10:19 -08:00
Duco Sebel 4f8e19ed4a Add HomeWizard diagnostics (#65297)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-31 17:10:18 -08:00
Duco Sebel fd7f66fbdc Fix HomeWizard unclosed clientsession error when closing Home Assistant (#65296) 2022-01-31 17:10:17 -08:00
Mick Vleeshouwer 9294319048 Bump pyoverkiz to 1.3.2 (#65293) 2022-01-31 17:09:29 -08:00
starkillerOG c1019394ed Bump pynetgear to 0.9.1 (#65290) 2022-01-31 17:06:23 -08:00
Erik Montnemery 0885d48186 Correct cast media browse filter for audio groups (#65288) 2022-01-31 17:06:22 -08:00
Tobias Sauerwein 13ad1cc56c Bump pyatmo to v.6.2.4 (#65285)
* Bump pyatmo to v6.2.3

Signed-off-by: cgtobi <cgtobi@gmail.com>

* Bump pyatmo to v6.2.4

Signed-off-by: cgtobi <cgtobi@gmail.com>
2022-01-31 17:06:21 -08:00
J. Nick Koston c5d68f8669 Increase august timeout and make failure to sync at startup non-fatal (#65281) 2022-01-31 17:06:21 -08:00
fOmey 2757976a5a Tuya fan percentage fix (#65225) 2022-01-31 17:06:20 -08:00
Erik Montnemery 73750d8a25 Add cast platform for extending Google Cast media_player (#65149)
* Add cast platform for extending Google Cast media_player

* Update tests

* Refactor according to review comments

* Add test for playing using a cast platform

* Apply suggestions from code review

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>

* Pass cast type instead of a filter function when browsing

* Raise on invalid cast platform

* Test media browsing

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2022-01-31 17:06:19 -08:00
jjlawren 2eef05eb84 Send notification to alert of Sonos networking issues (#65084)
* Send notification to alert of Sonos networking issues

* Add links to documentation
2022-01-31 17:06:19 -08:00
Brett Adams 3446c95cd3 Add diagnostics to Advantage Air (#65006)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-31 17:06:18 -08:00
Teemu R cdcbb87d97 Bump python-kasa to 0.4.1 for tplink integration (#64123)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-31 17:06:17 -08:00
Paulus Schoutsen ef143b5eb2 Bumped version to 2022.2.0b4 2022-01-30 20:28:42 -08:00
Matthias Alphart 5d7aefa0b4 Update xknx to 0.19.1 (#65275) 2022-01-30 20:28:34 -08:00
Brynley McDonald 6b6bd381fd Fix flick_electric auth failures (#65274) 2022-01-30 20:28:34 -08:00
Shay Levy 252f5f6b35 Bump aiowebostv to 0.1.2 (#65267) 2022-01-30 20:28:33 -08:00
J. Nick Koston 8bdee9cb1c Simplify whois value_fn (#65265) 2022-01-30 20:28:32 -08:00
J. Nick Koston 7e350b8347 Handle missing attrs in whois results (#65254)
* Handle missing attrs in whois results

- Some attrs are not set depending on where the
  domain is registered

- Fixes #65164

* Set to unknown instead of do not create

* no multi-line lambda
2022-01-30 20:28:32 -08:00
J. Nick Koston ac8a1248f9 Fix debugpy blocking the event loop at startup (#65252) 2022-01-30 20:28:31 -08:00
J. Nick Koston ffe262abce Fix flux_led not generating unique ids when discovery fails (#65250) 2022-01-30 20:28:30 -08:00
J. Nick Koston 5174e68b16 Fix powerwall login retry when hitting rate limit (#65245) 2022-01-30 20:28:30 -08:00
Shay Levy 6e4c281e15 Fix webostv live TV source missing when configuring sources (#65243) 2022-01-30 20:28:29 -08:00
Joakim Sørensen 8e71e2e8ee Use .json.txt for diagnostics download filetype (#65236) 2022-01-30 20:28:28 -08:00
J. Nick Koston 26905115c8 Increase the timeout for flux_led directed discovery (#65222) 2022-01-30 20:28:28 -08:00
J. Nick Koston eca3514f9e Fix senseme fan lights (#65217) 2022-01-30 20:28:27 -08:00
jjlawren 305ffc4ab6 Add activity statistics to Sonos diagnostics (#65214) 2022-01-30 20:28:26 -08:00
Robert Svensson 508fd0cb2a Add logic to avoid creating the same scene multiple times (#65207) 2022-01-30 20:28:25 -08:00
Shay Levy 5368fb6d54 Fix webostv configure sources when selected source is missing (#65195)
* Fix webostv configure sources when selected source is missing

* Add comment for filtering duplicates
2022-01-30 20:28:25 -08:00
Michael d6527953c3 Fix "internet access" switch for Fritz connected device without known IP address (#65190)
* fix get wan access

* small improvement
- default wan_access to None
- test if dev_info.ip_address is not empty
2022-01-30 20:28:24 -08:00
Robert Svensson 14c969ef6d Better manage of nested lists (#65176) 2022-01-30 20:28:23 -08:00
Aaron Bach f6f25fa4ff Add diagnostics to SimpliSafe (#65171)
* Add diagnostics to SimpliSafe

* Bump

* Cleanup
2022-01-30 20:28:23 -08:00
Aaron Bach dcf6e61d4f Ensure diagnostics redaction can handle lists of lists (#65170)
* Ensure diagnostics redaction can handle lists of lists

* Code review

* Update homeassistant/components/diagnostics/util.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Code review

* Typing

* Revert "Typing"

This reverts commit 8a57f772caa5180b609175591d81dfc473769f70.

* New typing attempt

* Revert "New typing attempt"

This reverts commit e26e4aae69f62325fdd6af4d80c8fd1f74846e54.

* Fix typing

* Fix typing again

* Add tests

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-30 20:28:22 -08:00
Aaron Bach 2041d4c118 Clean up SimpliSafe config flow tests (#65167)
* Clean up SimpliSafe config flow tests

* Cleanup
2022-01-30 20:28:21 -08:00
starkillerOG b40bcecac0 Aqara restore door sensor state on start (#65128)
* restore door sensor state on start

* fix import

* fix issues

* also fix Natgas, WaterLeak and Smoke sensors

* remove unnesesary async_schedule_update_ha_state
2022-01-30 20:28:21 -08:00
Erik Montnemery 2ed20df906 Minor refactoring of cast media_player (#65125) 2022-01-30 20:28:20 -08:00
Marvin Wichmann 1a6964448c Fix KNX Expose for strings longer than 14 bytes (#63026)
* Fix KNX Expose for too long strings

* Fix tests

* Catch exception and avoid error during config entry setup for exposures

* Properly catch exceptions in knx expose

* Fix pylint

* Fix CI

* Add test for conversion error
2022-01-30 20:28:19 -08:00
Marvin Wichmann 3dde12f887 Add tests for KNX diagnostic and expose (#64938)
* Add test for KNX diagnostic

* Add test for KNX expose

* Apply review suggestions
2022-01-30 20:27:37 -08:00
Paulus Schoutsen cd6c182c07 Bumped version to 2022.2.0b3 2022-01-28 21:53:21 -08:00
J. Nick Koston f8e0c41e91 Fix uncaught exception during isy994 dhcp discovery with ignored entry (#65165) 2022-01-28 21:53:12 -08:00
J. Nick Koston 5f56107116 Add additional blink OUIs to DHCP discovery (#65162) 2022-01-28 21:53:11 -08:00
J. Nick Koston fb3c99a891 Add additional roomba OUIs to DHCP discovery (#65161) 2022-01-28 21:53:11 -08:00
J. Nick Koston ca505b79b5 Add dhcp discovery to oncue (#65160) 2022-01-28 21:53:10 -08:00
J. Nick Koston c74a8bf65a Add OUI for KL430 tplink light strip to discovery (#65159) 2022-01-28 21:53:09 -08:00
Franck Nijhof 406801ef73 Fix setting speed of Tuya fan (#65155) 2022-01-28 21:53:09 -08:00
Marc Mueller 2bfedcbdc5 Move remaining keys to setup.cfg (#65154)
* Move metadata keys

* Move options

* Delete setup.py

* Remove unused constants
* Remove deprecated test_suite key

* Improve metadata

* Only include homeassistant*, not script*
* Add long_desc_content_type
* Remove license file (auto-included by setuptools + wheels)

* Add setup.py

Pip 21.2 doesn't support editable installs without it.
2022-01-28 21:53:08 -08:00
Simone Chemelli 84f817eb25 Fix status for Fritz device tracker (#65152) 2022-01-28 21:53:07 -08:00
Simone Chemelli 4ead2f2f7e Fix excepton for SamsungTV getting device info (#65151) 2022-01-28 21:53:07 -08:00
Marc Mueller 421f9716a7 Use isolated build environments (#65145) 2022-01-28 21:53:06 -08:00
Allen Porter 25e6d8858c Update nest diagnostics (#65141) 2022-01-28 21:53:05 -08:00
Marc Mueller 3829a81d15 Move project_urls to setup.cfg (#65129) 2022-01-28 21:53:05 -08:00
Marc Mueller 9318843867 Move version metadata key to setup.cfg (#65091)
* Move version to setup.cfg
* Move python_requires to setup.cfg
* Add script to validate project metadata
* Add dedicated pre-commit hook
2022-01-28 21:53:04 -08:00
Marc Mueller 4eb787b619 Move install_requires to setup.cfg (#65095) 2022-01-28 21:52:33 -08:00
Paulus Schoutsen 8e38b7624e Bumped version to 2022.2.0b2 2022-01-28 09:37:50 -08:00
Allen Porter fdb52df7b7 Add diagnostics for rtsp_to_webrtc (#65138) 2022-01-28 09:37:32 -08:00
Allen Porter 6c3e8b06ea Bump google-nest-sdm to 1.6.0 (diagnostics) (#65135) 2022-01-28 09:37:31 -08:00
Nenad Bogojevic 6ba52b1c86 Use new withings oauth2 refresh token endpoint (#65134) 2022-01-28 09:37:30 -08:00
epenet 1e60958fc4 Add diagnostics support to onewire (#65131)
* Add diagnostics support to onewire

* Add tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-28 09:37:30 -08:00
Simone Chemelli 0f9e65e687 Handle FritzInternalError exception for Fritz (#65124) 2022-01-28 09:37:29 -08:00
starkillerOG d382e24e5b Goodwe - fix value errors (#65121) 2022-01-28 09:37:28 -08:00
Erik Montnemery 82acaa380c Fix cast support for browsing local media source (#65115) 2022-01-28 09:37:27 -08:00
Hans Oischinger 0a00177a8f Handle vicare I/O in executor (#65105)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-28 09:37:27 -08:00
J. Nick Koston 34cf82b017 Downgrade homekit linked humidity sensor error to debug (#65098)
Fixes #65015
2022-01-28 09:37:26 -08:00
Shay Levy 44403dab62 Fix Shelly 1/1PM external temperature sensor unavailable (#65096) 2022-01-28 09:37:25 -08:00
Paulus Schoutsen 909b0fb689 Add support for proxy-selected intent (#65094) 2022-01-28 09:37:25 -08:00
Robert Svensson 3f763ddc9a Reconnect client service tried to connect even if device didn't exist (#65082) 2022-01-28 09:37:24 -08:00
G Johansson 837d49f67b Fix Yale optionsflow (#65072) 2022-01-28 09:37:23 -08:00
Jc2k 735edd83fc Support unpairing homekit accessories from homekit_controller (#65065) 2022-01-28 09:37:22 -08:00
Klaas Schoute 7415513352 Add diagnostics support to P1 Monitor (#65060)
* Add diagnostics to P1 Monitor

* Add test for diagnostics
2022-01-28 09:37:22 -08:00
Shay Levy 6f20a75583 Fix Shelly detached switches automation triggers (#65059) 2022-01-28 09:37:21 -08:00
Jc2k 05d7fef9f0 Better names for energy related homekit_controller sensors (#65055) 2022-01-28 09:37:20 -08:00
Thibaut 2ff8f10b9f Check explicitly for None value in Overkiz integration (#65045) 2022-01-28 09:37:19 -08:00
Paulus Schoutsen 0604185854 Bumped version to 2022.2.0b1 2022-01-27 11:24:06 -08:00
epenet ff445b69f4 Update Renault to 0.1.7 (#65076)
* Update Renault to 0.1.7

* Adjust tests accordingly

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-27 11:23:38 -08:00
Paulus Schoutsen 7e2d04ca77 Bump frontend to 20220127.0 (#65075) 2022-01-27 11:23:37 -08:00
jjlawren 07d2627dc5 Guard browsing Spotify if setup failed (#65074)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-27 11:23:37 -08:00
Hans Oischinger 1968ddb3fd Update PyVicare to 2.16.1 (#65073) 2022-01-27 11:23:36 -08:00
Marc Mueller 5a90f106d1 Remove backports.zoneinfo dependency (#65069) 2022-01-27 11:23:35 -08:00
Martin Hjelmare 8afb0aa44a Fix notify leaving zone blueprint (#65056) 2022-01-27 11:23:34 -08:00
Simon Hansen 6f8b0a01b4 Fix typo in entity name for launchlibrary (#65048) 2022-01-27 11:23:34 -08:00
Duco Sebel 035b589fca Add flow_title for HomeWizard Energy (#65047) 2022-01-27 11:23:33 -08:00
Erik Montnemery 3e94d39c64 Unset Alexa authorized flag in additional case (#65044) 2022-01-27 11:23:32 -08:00
Erik Montnemery a768de51c0 Correct zone state (#65040)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-27 11:23:32 -08:00
Shay Levy 25ffda7cd4 Fix Shelly battery powered devices unavailable (#65031) 2022-01-27 11:23:31 -08:00
Chris Talkington 290a0df2be Update rokuecp to 0.12.0 (#65030) 2022-01-27 11:23:30 -08:00
Paulus Schoutsen 662ec1377a Catch connection reset error (#65027) 2022-01-27 11:23:30 -08:00
Brandon Rothweiler 057f1a701f Bump pymazda to 0.3.2 (#65025) 2022-01-27 11:23:29 -08:00
Joakim Sørensen 03e369dc86 Set ping data to None instead of False (#65013) 2022-01-27 11:23:28 -08:00
J. Nick Koston c831270262 Bump flux_led to fix push updates on newer devices (#65011) 2022-01-27 11:23:27 -08:00
Franck Nijhof 9eb18564b7 Handle Tuya sendings strings instead of numeric values (#65009) 2022-01-27 11:23:27 -08:00
Jesse Hills a7d83993be Add diagnostics download to ESPHome (#65008) 2022-01-27 11:23:26 -08:00
Arjan van Balken 25ea728f21 Update Arris TG2492LG dependency to 1.2.1 (#64999) 2022-01-27 11:23:26 -08:00
Jan Bouwhuis 63048a67e0 Fix MQTT climate action null warnings (#64658) 2022-01-27 11:23:25 -08:00
Franck Nijhof 8d9bb73d22 Bumped version to 2022.2.0b0 2022-01-26 20:10:35 +01:00
Erik Montnemery 67838518ab Abort owntracks config flow when not connected to home assistant cloud (#64968) 2022-01-26 11:07:34 -08:00
Erik Montnemery 664be84121 Abort plaato flows when not connected to home assistant cloud (#64969) 2022-01-26 11:07:26 -08:00
Erik Montnemery 5071b3b959 Abort rachio config entry setup when not connected to cloud (#64975) 2022-01-26 11:07:10 -08:00
Erik Montnemery d4497e4b68 Make toon fall back to webhooks if cloud is not available (#64981) 2022-01-26 11:06:47 -08:00
Paulus Schoutsen 8b3e923f4b Fix Plex media class in Cast media browser (#64995) 2022-01-26 11:00:31 -08:00
Erik Montnemery 94288886c3 Abort webhook flow when not connected to home assistant cloud (#64963) 2022-01-26 10:57:45 -08:00
Paulus Schoutsen 2c0c01498f Fix media classes (#64993) 2022-01-26 10:51:25 -08:00
jjlawren 1e34cc62ba Support Plex in Cast media browser (#64994) 2022-01-26 10:51:08 -08:00
jjlawren e17f1ea577 Support Plex in Sonos media browser (#64951)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-26 10:40:47 -08:00
Bram Kragten e5b0031103 Update frontend to 20220126.0 (#64990) 2022-01-26 10:30:36 -08:00
Paulus Schoutsen b2de177104 Fix circles in person integration (#64991) 2022-01-26 10:25:13 -08:00
Erik Montnemery 07563f4fd2 Disable google_assistant local SDK if SSL is enabled (#64983) 2022-01-26 18:55:30 +01:00
Shay Levy 189418a4dd Fix Shelly HT invalid value on sensor error (#64982) 2022-01-26 19:33:37 +02:00
Joakim Sørensen f23277a187 Only log exception in GitHub when something unexpected raised (#64974) 2022-01-26 18:11:40 +01:00
Paulus Schoutsen d14fbf40c8 Store new spotify client in hass.data (#64984) 2022-01-26 09:00:59 -08:00
Erik Montnemery 9ff49e9c3a Change zone's state to be number of person entities in the zone (#64910)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-26 09:00:43 -08:00
Mick Vleeshouwer ccf018a5fc Fix battery sensor in Overkiz integration (#64980) 2022-01-26 10:31:17 -06:00
Mick Vleeshouwer 930db54a27 Bump pyoverkiz to 1.3.1 (to fix bugs) (#64979) 2022-01-26 10:30:55 -06:00
Simone Chemelli 3f12ce06af Add detailed status for UptimeRobot (#64879)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-26 16:48:15 +01:00
Joakim Sørensen eb5c6076af Check for empty release array (#64973) 2022-01-26 16:31:21 +01:00
Jeef 2b101dd5c2 Add IntelliFire sensors (#64600)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-26 16:16:25 +01:00
Christopher Bailey e203efa8b1 Fix custom message for UniFi Protect doorbell select (#64971) 2022-01-26 05:14:40 -10:00
Aaron Bach e9a71231c2 Add diagnostics to WattTime (#64887) 2022-01-26 15:48:38 +01:00
Erik Montnemery f92e8ab931 Drop owntracks import flow (#64967) 2022-01-26 15:47:37 +01:00
Erik Montnemery 9079734348 Correct netatmo startup (#64970) 2022-01-26 15:46:08 +01:00
Simon Hansen 37225c36fc Add starship event sensor (#64965) 2022-01-26 15:37:15 +01:00
epenet dfdbeba7be Use entity_description in shelly block sensors (#64897)
* Use entity_description in shelly block sensors

* Re-order binary sensor

* Add async_added_to_hass for BlockSleepingBinarySensor

* Undo None

* Build description when restoring block attribute entities

* Move async_added_to_hass back to base class

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-26 16:07:15 +02:00
dougiteixeira 982580b95a Complementing the Tuya Fan (fs) category (#64947)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-26 13:03:05 +01:00
Simon Hansen 4e808133f2 Add next starship launch sensor to launch_library (#64929)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-26 12:31:03 +01:00
Franck Nijhof bcd7390488 Fix use of implicit re-export in env canada (#64964) 2022-01-26 12:22:53 +01:00
dougiteixeira bbf64483e7 Fix send command in vacuum Tuya (#64949) 2022-01-26 11:34:18 +01:00
Franck Nijhof d49b821565 Set entity category on Tuya backlights (#64962) 2022-01-26 11:20:31 +01:00
Franck Nijhof 92ca76a167 Add backlight controls for Tuya curtain switches (#64961) 2022-01-26 11:13:38 +01:00
Erik Montnemery 18ea43b927 Prevent race when loading cloud config (#64901)
* Prevent race when loading cloud config

* Tweak
2022-01-26 10:59:36 +01:00
tokenize47 2f30fdb9b8 Add solax config flow (#56620) 2022-01-26 10:58:06 +01:00
Marc Mueller 5e633498d2 Enable no_implicit_reexport for core files [mypy] (#63820) 2022-01-26 10:55:06 +01:00
Tathar 16e5d7abe1 Add unique_id to modbus entities (#64634)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-26 10:37:15 +01:00
Simone Chemelli 4f8831f8f6 Cleanup tests for AWS (#64943) 2022-01-26 10:34:33 +01:00
Franck Nijhof d56ab16556 Update home-assistant/wheels to 2021.01.2 (#64958) 2022-01-26 10:08:59 +01:00
Joakim Sørensen 3dbad2a44e Limit GitHub API calls during setup (#64956) 2022-01-26 09:58:04 +01:00
Paulus Schoutsen 07c239643a Some media source things (#64954)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-26 09:49:33 +01:00
dougiteixeira 0a223f2f62 Change the name of the vacuum switch voice (#64948) 2022-01-26 09:46:34 +01:00
Paulus Schoutsen 9cbdd36082 Expose if HTTP is configured for SSL (#64940) 2022-01-26 09:34:48 +01:00
Aaron Bach 149cd8e319 Add diagnostics to Ridwell (#64863) 2022-01-25 20:23:45 -10:00
Aaron Bach 2471ddaec6 Add diagnostics to Tile (#64875) 2022-01-25 20:20:11 -10:00
Marvin Wichmann 072f7d5611 Add support for TCP tunneling connections to KNX (#64928) 2022-01-26 06:36:07 +01:00
jjlawren cdad1a9f27 Use local Sonos API for Plex music playback (#63357) 2022-01-25 21:10:11 -08:00
Glenn Waters cf7148c3f8 Decouple initial refreshes in setup for Environment Canada (#64946) 2022-01-25 21:03:18 -08:00
Mick Vleeshouwer 22463fd296 Add 'compile translations' task to VSCode tasks (#64933) 2022-01-25 20:55:02 -08:00
Paulus Schoutsen 24546dfdf9 Catch all exceptions on import component/platform (#64930) 2022-01-25 20:39:32 -08:00
J. Nick Koston a24f79434f Add state classes to august sensors (#64931) 2022-01-25 20:37:52 -08:00
J. Nick Koston a6b26dbec4 Add state class to nexia sensors (#64932) 2022-01-25 20:37:39 -08:00
J. Nick Koston 09982afd2e Add state class to emonitor sensors (#64934) 2022-01-25 20:36:53 -08:00
J. Nick Koston 50cc5e10b9 Small cleanups to gogogate2 (#64935) 2022-01-25 20:36:37 -08:00
J. Nick Koston 5cc5813bd6 Add state class to hunterdouglas_powerview (#64936) 2022-01-25 20:36:22 -08:00
J. Nick Koston 8593d07883 Add state class to powerwall charge sensor (#64939) 2022-01-25 20:36:04 -08:00
J. Nick Koston 87d1478ca4 Add state class to screenlogic sensors (#64941) 2022-01-25 20:35:44 -08:00
jjlawren cb571d86be Add per-device diagnostics to Sonos (#64912) 2022-01-25 17:35:04 -10:00
ufodone 10efeb2935 Create zone bypass switches for DSC panels (#63200)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-25 17:21:58 -10:00
GitHub Action 3c1d1bd060 [ci skip] Translation update 2022-01-26 00:15:14 +00:00
Franck Nijhof 2dc3ced644 Add WLED hw version to device info (#64924) 2022-01-26 01:07:52 +02:00
Mick Vleeshouwer 5bd96a35f9 Add reauth flow to Overkiz integration (#64622) 2022-01-25 13:00:58 -10:00
Mick Vleeshouwer 7e5043432f Bump pyoverkiz to 1.3.0 in Overkiz integration (fixes auth issues) (#64937) 2022-01-25 12:36:50 -10:00
jjlawren 34d0f2ffd7 Add "Recommended" and radio station support to Plex media browser (#64057) 2022-01-25 13:02:23 -08:00
Paulus Schoutsen a371f8f788 Allow browsing the Spotify media player in Sonos (#64921) 2022-01-25 12:43:43 -08:00
Simon Hansen f32d9952c8 Bump pylaunches to 1.3.0 (#64923) 2022-01-25 21:24:26 +01:00
Franck Nijhof 2e1ac711fb Add Elgato hw version to device info (#64922) 2022-01-25 20:29:18 +01:00
David F. Mulcahey 43c4611285 Bump ZHA quirks to 0.0.66 (#64915) 2022-01-25 13:32:46 -05:00
Allen Porter 2ba8f0f4cb Bump home-assistant/wheels to 2021.01 to pick up grpc changes (#64917) 2022-01-25 19:32:03 +01:00
J. Nick Koston e28b5aee77 Add dhcp discovery to senseme (#64894) 2022-01-25 19:07:17 +01:00
Etienne G dfb7ab5c30 Add zeroconf to overkiz integration (#64907)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-25 07:50:40 -10:00
Franck Nijhof 02d81374f8 Add full test coverage to Whois (#64899) 2022-01-25 18:33:53 +01:00
Christopher Bailey 7bc2419054 Add lock support for unifiprotect Doorlock (#64882)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-25 07:31:17 -10:00
Shay Levy 1d72f5b54e Bump rflink to 0.0.62 (#64911) 2022-01-25 07:29:07 -10:00
epenet 367521e369 Adjust pylint plugin to enforce device_tracker type hints (#64903)
* Adjust pylint plugin to enforce device_tracker type hints

* Use a constant for the type hint matchers

* Add tests

* Add x_of_y match

* Adjust bluetooth_tracker

* Adjust mysensors

* Adjust tile

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-25 18:21:59 +01:00
Erik Montnemery 037621b796 Update _TrackStateChangeFiltered entity listener with new entities (#64909) 2022-01-25 18:19:12 +01:00
Robert Svensson 55d3de3411 Add binary sensor for smoke alarm test state (#64873) 2022-01-25 17:46:31 +01:00
alim4r 3e0e9e54bf Fix duplicate metrics in prometheus (#61355)
* Fix duplicate metrics in prometheus

* Fix duplicate prometheus metrics for entities with multiple labelsets
- Move friendly_name detection to state_changed event
- Add additional test case

* Add review suggestions for prometheus friendly name update

* Remove commented out code in prometheus

* Update prometheus tests for deleted metrics

* Add review suggestions for prometheus
- Remove unnecessary firendly_name check in handle_entity_registry_updated
- Add assert in test
2022-01-25 08:05:52 -08:00
Tom Brien 51a04585e7 Add diagnostics for Coinbase (#64900)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-25 15:58:35 +01:00
Joakim Sørensen 1093a2b808 Add diagnostics to UptimeRobot (#64905) 2022-01-25 14:49:27 +01:00
epenet 076bc976ee Use entity_description in shelly rpc sensors (#64895)
* Use entity_description in shelly rpc sensors

* Enable None for binary sensor

* Adjust use_polling_wrapper

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-25 15:48:51 +02:00
epenet da316e1547 Use shorthand attributes in shelly light (#64831)
* Use shorthand attributes in shelly light

* Adjust mypy

* Revert temperature conversions

* Adjust initialisation

* Invert min/max for mired

* Make _attr_supported_color_modes an instance attribute

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-25 15:48:07 +02:00
Joakim Sørensen cda2c73f2f Use Integration properties for custom integration listing in diagnostics (#64908) 2022-01-25 14:47:27 +01:00
Joakim Sørensen cadf0ef60b Ignore draft releases for GitHub sensor (#64906) 2022-01-25 14:10:12 +01:00
Per Öberg 81000db713 Add support for DS2760 1-Wire TypeK Thermocouple (#63222)
* Add support for DS2760 1-Wire TypeK Thermocouple

* Add test mockup sensor for DS2760 to tests

* Add support for changing of thermocouple type through override_key

* Fix broken test for DS2760 Thermocouple

* Remove unnecessary test-attribute for DS2760 Thermocouple

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-25 13:53:37 +01:00
Erik Montnemery 7b8bbc37df Include entity_id in Alexa state report error log (#64898) 2022-01-25 11:11:06 +01:00
Franck Nijhof 79928fadfe Merge branch 'master' into dev 2022-01-25 11:04:08 +01:00
Simone Chemelli d9e6ce00e0 Fix extra data for AWS sns service (#64771)
* Fix extra data for ANS sns service

* Add test

* apply review comments
2022-01-25 10:46:04 +01:00
Franck Nijhof c202b24cae Update pylint to 2.12.2 (#64896) 2022-01-25 10:20:20 +01:00
jjlawren ec88897d04 Add event statistics to Sonos diagnostics (#64845) 2022-01-24 22:52:40 -10:00
Michael 5d7d652237 Replace Synology DSM services with buttons (#57352) 2022-01-24 22:51:55 -10:00
Aaron Bach 19b7454161 Clean up WattTime config flow tests (#64885) 2022-01-25 08:58:20 +01:00
Franck Nijhof ac7450bfda Refactor Tuya Fans (#64765) 2022-01-25 08:53:55 +01:00
Franck Nijhof ed924325e3 Add init tests for Whois (#64862) 2022-01-25 08:53:34 +01:00
Allen Porter ea022e32b4 Bump rtsp-to-webrtc to 0.5.0 (diagnostics support) (#64889) 2022-01-25 08:43:00 +01:00
Arto Jantunen 0ccb535f0a Add binary sensor for Vallox post heater (#59762) 2022-01-25 08:32:31 +01:00
dougiteixeira 3af3d9414d Changing the Return to home in Tuya vacuum (#64810)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-25 08:29:13 +01:00
J. Nick Koston 44946f662e Bump aiodiscover to 1.4.7 to fix finding the gateway on MacOS (#64893) 2022-01-25 08:27:40 +01:00
Maciej Bieniek 4a4b0d9418 Fix Shelly climate entity state (#64756)
* Fix For loops in _handle_coordinator_update()

* Change logic

* Suggested change

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>

* Move log

Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>
2022-01-25 08:27:30 +01:00
Robert Svensson 046f0a706f Add outlets to UniFi switch platform (#64859)
* Add outlets to UniFi switch platform

* Outlet shouldn't have entity category set
2022-01-25 07:49:02 +01:00
Aaron Bach f5e51ad5f6 Remove unused fixture in RainMachine config flow test (#64881) 2022-01-24 18:39:18 -07:00
jjlawren d9b81bb04d Adds enabled entity_ids associated with each speaker (#64876) 2022-01-24 16:29:29 -08:00
Paulus Schoutsen e6111ac277 Bump frontend to 20220124.0 (#64878) 2022-01-24 16:28:46 -08:00
Christopher Bailey 6cb9f0df2a Add basic Doorlock support for UniFi protect (#64877) 2022-01-24 14:22:52 -10:00
GitHub Action 2aaca346bd [ci skip] Translation update 2022-01-25 00:14:30 +00:00
Christopher Bailey 34802b127f Bump version pyunifiprotect to 3.2.0 (#64874) 2022-01-25 00:00:10 +01:00
jjlawren ec66936352 Bump plexapi to 4.9.1 (#64872) 2022-01-24 23:50:15 +01:00
Erik Montnemery e9a9b119c4 Teach TemplateEntity unique_id (#64837) 2022-01-24 23:16:31 +01:00
Aaron Bach 4f7dd821a5 Clean up Ridwell config flow tests (#64858) 2022-01-24 23:12:18 +01:00
Aaron Bach c3ecf426d0 Clean up Tile config flow tests (#64866) 2022-01-24 23:06:44 +01:00
J. Nick Koston 0ca38c0928 Avoid creating bond stop action button when there are no other buttons (#64869) 2022-01-24 23:03:52 +01:00
Joakim Sørensen 70b24b7843 Add diagnostics to Launch Library (#64871) 2022-01-24 22:59:29 +01:00
Erik Montnemery 2caad1a474 Add support for converting to and from mmHg (#64844) 2022-01-24 22:57:56 +01:00
epenet f662e8669e Address late review in entity registry (#64851)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 22:42:38 +01:00
Sean Vig 6af7425051 Create tasks to load Amcrest platforms (#64848)
* Create tasks to load Amcrest platforms

* Move closure definition out of for loop
2022-01-24 22:34:18 +01:00
Shay Levy 6d5c2bb34b Bump aioshelly to 1.0.8 (#64864)
* Bump aioshelly to 1.0.8

* Update DEPENDENCY_CONFLICTS
2022-01-24 23:26:38 +02:00
Franck Nijhof 2f25aafb84 Add additional sensors to Whois (#64854) 2022-01-24 19:40:36 +01:00
Joakim Sørensen 32f8695187 Add whois diagnostics to coveragerc (#64857) 2022-01-24 19:39:45 +01:00
Franck Nijhof 1a3494c9f5 Add diagnostics support to Whois (#64855) 2022-01-24 19:29:52 +01:00
Mick Vleeshouwer d6c547e9a3 Add cover platform to Overkiz integration (#64564) 2022-01-24 07:58:52 -10:00
epenet 78e92d1662 Adjust pylint plugin to enforce platform type hints (#64836)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 18:51:06 +01:00
Franck Nijhof d15d081646 Add data update coordinator to Whois (#64846)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2022-01-24 18:50:07 +01:00
Joakim Sørensen b07f4ba398 Cleanup GitHub sensor classes and descriptions (#64853) 2022-01-24 18:47:21 +01:00
Jc2k 24ee4256b9 Add additional energy sensors to Eve Energy (#64826) 2022-01-24 07:46:45 -10:00
epenet c8a63d4ffc Use entity_description in shelly rest sensors (#64843)
* Use entity_description in shelly rest sensors

* Use _attr_device_info

* Adjust _attr_unique_id and _attr_device_info

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 19:43:43 +02:00
J. Nick Koston d1d33f0dc5 Fix bond buttons where an argument is required (#64781) 2022-01-24 07:41:23 -10:00
Mick Vleeshouwer 654bd7dd1f Improve tests for Overkiz config flow (#64624) 2022-01-24 18:23:16 +01:00
Chris Talkington 3e29fe5a67 Allow roku to browse and play local media (#64799) 2022-01-24 08:34:09 -08:00
Erik Montnemery 8ea2f865ed Clarify cloud docstring (#64841) 2022-01-24 17:06:08 +01:00
Aaron Bach 3a978fc244 Clean up post-merge review comments (#64842)
* Clean up post-merge diagnostics PRs

* Trigger Build

* Linting
2022-01-24 08:46:22 -07:00
Erik Montnemery 5622e45980 Render icon and picture templates at setup (#64838) 2022-01-24 16:40:50 +01:00
rikroe 2e25213101 Add GPS direction to BMW ConnectedDrive device_tracker (#63744)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-01-24 16:26:03 +01:00
Aaron Bach 620991fef8 Add diagnostics to ReCollect Waste (#64814) 2022-01-24 08:18:22 -07:00
Aaron Bach 224d0d80b2 Add diagnostics to Flu Near You (#64597) 2022-01-24 08:16:26 -07:00
Aaron Bach b54722952c Add diagnostics to Notion (#64713) 2022-01-24 08:15:45 -07:00
Aaron Bach 5b8f6d1b9a Clean up ReCollect Waste config flow tests (#64813)
* Clean up ReCollect Waste config flow tests

* Use fixture
2022-01-24 15:51:30 +01:00
Erik Montnemery 321f54494e Teach TemplateEntity entity name (#62175)
* Teach TemplateEntity entity name

* Remove default name from number and select config schemas

* Re-add default name to number and select config schemas

* Set name to None if name template fails to render

* Update template button
2022-01-24 15:44:05 +01:00
Franck Nijhof 7b93226c6c Add entity description support to WHOIS integration (#64619) 2022-01-24 15:41:35 +01:00
Ryan Steckler b541e91885 Fix units not being pulled from source sensor (#63639) 2022-01-24 15:15:34 +01:00
Robert Svensson a15bdbbc4a UniFi events aren't reliable for device tracker usage, use last_seen instead (#64147) 2022-01-24 15:11:33 +01:00
Eric Severance 5f2fd1b0e6 Add a reboot button for ONVIF devices (#61522) 2022-01-24 15:07:06 +01:00
jjlawren a046cef734 Bump soco to 0.26.0 (#64819) 2022-01-24 14:54:27 +01:00
Nico Hirsch 13cfb92d06 Add Home Connect CookProcessor (Bosch Cookit) (#62445) 2022-01-24 14:44:20 +01:00
dougiteixeira c66b25229c Fix error in Tuya diagnostics (#64808)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-24 14:38:45 +01:00
Joakim Sørensen 7c1eabadfa Add diagnostics to Nanoleaf (#64835) 2022-01-24 14:15:05 +01:00
Fredrik Erlandsson f23af3455e Point updates (#64748)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-24 13:57:29 +01:00
Paulus Schoutsen 73fd19d4e2 Only show music files for Cast Audio in media browser (#64683) 2022-01-24 13:54:09 +01:00
Robert Svensson 597fca9072 Make UniFi bandwidth sensors be about current transfer rather than total transfer (#64701) 2022-01-24 13:50:54 +01:00
epenet 11fa86cc83 Add pylint plugin to enforce type hints (#64313)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 13:38:56 +01:00
epenet 3a09090a4b Drop use of deprecated ENTITY_CATEGORIES (#64607)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 13:36:42 +01:00
Shay Levy 6ed60d2b32 Clean up webostv tests (#64833) 2022-01-24 13:36:07 +01:00
J. Nick Koston 7112c5b52a Use zeroconf for scanning in apple_tv (#64528) 2022-01-24 13:07:22 +01:00
Josh Soref d47a25856b spelling: components/ezviz (#64247)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-24 13:03:29 +01:00
Simone Chemelli 7884de3a31 Fix import for new AWS aiobotocore lib (#64769)
* Fix import for new AWS aiobotocore lib

* Fix patch for tests
2022-01-24 13:02:51 +01:00
Niklas 27cb41a62c Add long-term battery and discharge sensors for energy panel to kostal_plenticore (#62761) 2022-01-24 12:59:52 +01:00
epenet 32d5c8e8ac Add type hint to RegistryEntry.entity_category (#64618)
Co-authored-by: Dave T <17680170+davet2001@users.noreply.github.com>
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 12:51:11 +01:00
Brandon Rothweiler b03ae66254 Add diagnostics to Mazda integration (#64606) 2022-01-24 12:41:58 +01:00
Michael 6874b49a39 Perform re-login after Fritzbox has rebooted (#64709) 2022-01-24 12:25:29 +01:00
aomann 2a00c096db Add missing voices to Amazon Polly (#64708) 2022-01-24 12:12:33 +01:00
Joakim Sørensen e272ab7a29 Use Etag in GitHub coordinator updates (#64449)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-24 12:08:22 +01:00
Jens Østergaard Nielsen 1ffc2a05db Move autosetup out of init.py (#64761) 2022-01-24 12:07:54 +01:00
Michael a5eac99208 Add pylint to pre-commit hooks (#64665) 2022-01-24 12:00:49 +01:00
Massimiliano Cannarozzo 229b3175f3 Increase BleBox timeout (#64760) 2022-01-24 11:37:28 +01:00
epenet a459cf8ca4 Use shorthand attributes in shelly covers (#64829)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-24 12:31:50 +02:00
Hans Oischinger b8237e5ec9 vicare: Add support for hybrid devices (#64776) 2022-01-24 11:24:42 +01:00
Hans Oischinger 8d6880ab85 Support systems w/o circuits (#64779) 2022-01-24 11:18:54 +01:00
Hans Oischinger 201229d20c Add more vicare binary sensors and clean up constants (#64780)
* Add some binary sensors and clean up constants

* Remove duplicated code
2022-01-24 11:16:35 +01:00
Hans Oischinger 157f145ea9 vicare: Fix dynamic unit of measurement (#64782) 2022-01-24 11:14:59 +01:00
Aaron Bach f2a3f758af Add diagnostics to RainMachine (#64788) 2022-01-24 11:10:42 +01:00
Joakim Sørensen 92fbf0ee09 Remove source and channel attributes from local version (#64827) 2022-01-24 11:07:16 +01:00
uvjustin 3b3a8db291 Bump httpx to 0.21.3 and pin requirements for httpcore, anyio, and h11 (#64822) 2022-01-24 10:43:39 +01:00
dougiteixeira d33e2609b9 Fix DPCode in battery support check for vacuum Tuya (#64806) 2022-01-24 10:27:13 +01:00
Shay Levy a2f3c843f9 Mark webOS TV as a platinum quality integration (#64587) 2022-01-24 10:21:28 +01:00
epenet aa9ccc7dfb Add coordinator data to Renault diagnostics (#64783)
* Add coordinator data to renault diagnostics

* Adjust tests

* Adjust tests

* Add GPS coordinates to redacted information
2022-01-24 11:15:57 +02:00
J. Nick Koston 17d7dc991f Bump flux_led to 0.28.11 (#64823)
- Fixes the device needing a hard reboot after setting effects that
  were not supported by the hardware

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.28.10...0.28.11
2022-01-24 11:13:28 +02:00
Jc2k 5ac50a56b4 Make sensor name consistent with other homekit_controller entity names (#64821) 2022-01-23 22:42:55 -10:00
alexanv1 7cbf02e37b Tuya: Add support for turning smart heater LEDs on and off (#64739) 2022-01-24 09:25:01 +01:00
Robert Svensson 76bfbbafe1 Update method names reflecting changes in UniFi library (#64817)
* Update method names

* Bump dependency to v30
2022-01-24 08:50:08 +01:00
Otto Winter a65a0b5903 ESPHome prevent connecting to different hosts when IP reassigned (#64559) 2022-01-24 08:29:29 +01:00
Shay Levy eb48748038 Add webostv 100% tests coverage for init (#64801) 2022-01-24 09:27:24 +02:00
jjlawren e80823bb57 Bump plexapi to 4.9.0 (#64818) 2022-01-24 08:18:40 +01:00
J. Nick Koston 3b6bc6654f Fix unexpected color mode switch in flux_led when brightness is near 0 (#64812)
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2022-01-23 20:53:17 -10:00
Brett Adams 0cd3302ebc Start depreciation of custom services in Advantage Air (#58777)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-23 20:13:44 -10:00
Erik Montnemery 55ff1e9c1d Revert "Allow setting entity options with config/entity_registry/update" (#64693) 2022-01-23 21:07:12 -08:00
Jc2k 32099ea38a Easier identification of devices with homekit_controller (#64804) 2022-01-23 16:49:40 -10:00
Brandon Rothweiler dfa567b6e3 Bump pymazda to 0.3.1 (#64807) 2022-01-23 15:42:13 -10:00
GitHub Action 7d31f570e2 [ci skip] Translation update 2022-01-24 00:13:45 +00:00
Allen Porter ebaaa13759 Update nest climate and sensor test fixtures (#64800)
Update nest climate tests to use shared fixtures for component setup. Add an additional
fixture for creating devices shared between the climate and sensor tests.
2022-01-23 16:06:04 -08:00
Oliver 1e3b947fb4 Update denonavr to version 0.10.10 (#64805) 2022-01-24 02:05:10 +02:00
Josh Soref 867392778e spelling: components/coinbase (#64239)
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-23 15:40:04 -08:00
Franck Nijhof 22656f6082 Add diagnostics support to CPU Speed (#64745)
* Add diagnostics support to CPU Speed

* Fix copy pasta error
2022-01-24 01:36:51 +02:00
Franck Nijhof 88c9422b70 Add diagnostics support to Stookalert (#64747)
* Add diagnostics support to Stookalert

* coveragerc
2022-01-24 01:36:41 +02:00
Franck Nijhof d8b6291806 Add diagnostics support to RDW (#64787) 2022-01-24 01:36:32 +02:00
Franck Nijhof 0ae2ffd467 Add diagnostics support to Verisure (#64789)
* Add diagnostics support to Verisure

* coveragerc
2022-01-24 01:36:22 +02:00
J. Nick Koston 1743850ab8 Bump bond-api to 0.1.16 to handle disconnects and protocol errors (#64802)
- Changelog: https://github.com/prystupa/bond-api/compare/v0.1.15...v0.1.16
2022-01-24 01:35:22 +02:00
Austin Mroczek 68a4bf118c bump total_connect_client to 2022.1 (#64797) 2022-01-24 01:24:36 +02:00
Andreas Oberritter 88b2baa880 Bump pysml to 0.0.7 (#64798) 2022-01-24 01:23:28 +02:00
Jc2k 4a0a4624ff Allow homekit_controller to handle device registry entries for devices with poor serial numbers (#64749) 2022-01-23 13:00:05 -10:00
Chris Talkington e3900f0c0a Add diagnostics support to roku (#64729) 2022-01-23 12:38:07 -10:00
J. Nick Koston 74c16b977d Add support for preset modes to bond fans (#64786) 2022-01-23 12:33:31 -10:00
rappenze 09408234a6 Use basic entity attributes in fibaro integration (#64784)
* use basic entity attributes in fibaro integration

* use fibaro_device without self in constructor
2022-01-23 16:25:42 -06:00
Michael 2f0059fa8b Revert fix MultiDict typing with multidict-6.0.0 (#64733) (#64792)
* revert #64733

* pin down multidict to < 6.0.0
2022-01-23 23:22:16 +01:00
Robert Svensson 425911e850 Use whole config entry in deCONZ diagnostics (#64795) 2022-01-23 23:14:02 +01:00
Robert Svensson 7e20e555dd Redact usernames in UniFi diagnostics (#64794) 2022-01-23 23:11:06 +01:00
Aaron Bach 02fe7fe897 Revert "Don't import from integration .const (#64608)" (#64793) 2022-01-23 23:10:48 +01:00
Jc2k f71e053947 De-duplicate generation of DeviceInfo data in homekit_controller (#64751) 2022-01-23 11:57:16 -10:00
Jc2k fbe2b81cd4 Add diagnostics support for homekit_controller (#64773)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-23 11:56:09 -10:00
Robert Svensson 1b46575f29 Add diagnostics support to Axis integration (#64637)
* Add diagnostics support to Axis integration

* Remove system info

* Redact sensitive information

* Store whole config entry

* Redact username

* Apply suggestions from code review

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2022-01-23 22:52:08 +01:00
Jc2k 061ee1b875 Add HUB_TEST_ACCESSORY_ID const for homekit_controller tests (#64750) 2022-01-23 11:51:55 -10:00
Brandon Rothweiler e564f4193f Use friendly name instead of hostname in Tailscale integration (#64682) 2022-01-23 21:55:54 +01:00
Michael eda5cfc12d Add option to select quality of camera snapshots taken from Synology DSM connected cameras (#58306) 2022-01-23 10:23:04 -10:00
Aaron Bach d2eda91588 Clean up RainMachine tests (#64785)
* Clean up RainMachine tests

* Remove old stuff
2022-01-23 13:17:07 -07:00
Jesse Hills 8736b0649b Fix ESPHome ReconnectLogic to make faster connection when device comes online (#64697) 2022-01-23 20:14:17 +01:00
Andre Lengwenus d5ec2fe842 Add tests for LCN light platform (#64741) 2022-01-23 07:45:22 -10:00
Hans Oischinger c23b2135a3 Add vicare one-time charge (#64376)
* vicare: Add OneTime Charge

* Integrate review comments

* Simplify button entity
2022-01-23 18:27:19 +01:00
Shay Levy 94a89d520b Fix webostv sources import from YAML (#64768) 2022-01-23 18:23:29 +01:00
Robert Hillis 53c39293a4 Simplify hass data in acmeda (#62479) 2022-01-23 16:04:36 +01:00
Allen Porter e74fe0e390 Enable Low Latency HLS (LL-HLS) by default to lower stream latency (#64643) 2022-01-23 15:38:29 +01:00
rforro 4e376181f5 Expose entity device temperature from cluster in ZHA (#64189)
* expose device temperature sensor in frontend

* fixes after runnig test

* specified device temp channel

* add dev temp int test device aqara water

* black fix
2022-01-23 09:37:01 -05:00
dougiteixeira b3a8ac8932 Add service send command in Tuya Vacuum (#63417)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-23 15:26:55 +01:00
stephan192 58555954ab Bump dwdwfsapi to 1.0.5 (#64766) 2022-01-23 16:05:49 +02:00
Robert Svensson 20072140c6 Add diagnostics support to UniFi Network integration (#64640)
* Add diagnostics support to UniFi Network integration

* Remove system info

* Add test data before trying to redact sensitive information

* Redact sensitive information from config_entry.data

* Redact a lot of different parts of the device descriptions
Redact mac addresses in such a way its possible to still view topology
2022-01-23 13:44:43 +01:00
Simone Chemelli 02df6eb10e Move call_action to AvmWrapper for Fritz (#64667) 2022-01-23 13:04:19 +01:00
Jan Bouwhuis efe5b0ca81 Add command template for MQTT button (#63838)
* Add command template for MQTT button

* Move CONF_COMMAND_TEMPLATE
2022-01-23 12:48:41 +01:00
Franck Nijhof 52e169db02 Diagnostics extended info adjustment (#64752) 2022-01-23 11:32:39 +01:00
Franck Nijhof 176f03d4ac Allow toggles (switches) state to be None (#64621) 2022-01-23 11:31:01 +01:00
Robert Svensson 01fbc4257b Redact possibly sensitive information in deCONZ diagnostics data (#64754) 2022-01-23 11:24:46 +01:00
Daniel Shokouhi 06ef6bf38e Bump tensorflow to be compatible with python3.9 (#64732) 2022-01-23 10:39:09 +01:00
Franck Nijhof 5afbcf4185 Update pipdeptree to 2.2.1 (#64746) 2022-01-23 10:30:00 +01:00
Aaron Bach ccef4a7f9a Clean up AirVisual config flow tests (#64714) 2022-01-23 10:19:52 +01:00
Aaron Bach c3ccc76eb1 Clean up Notion config tests (#64669) 2022-01-23 10:18:54 +01:00
Michael a56bfe012f Enhancements for diagnostics platform (#64670) 2022-01-23 10:15:23 +01:00
J. Nick Koston e6affb8b88 Improve seperation of lookin udp listener and typing (#64742) 2022-01-23 09:45:49 +01:00
J. Nick Koston 3360a95156 Add warning when calling deprecated bond services (#64744) 2022-01-23 09:24:40 +01:00
Maciej Bieniek 2ed30ac361 Add diagnostics to NAM (#64743)
* Add diagnostics

* Fix tests
2022-01-23 00:17:32 -08:00
Franck Nijhof 6c54267f57 Add diagnostics support to Elgato (#64652) 2022-01-23 09:02:14 +01:00
Franck Nijhof 1bf58b37e9 Add diagnostics support to Sensor.Community (#64636) 2022-01-23 09:02:02 +01:00
Franck Nijhof 0af369d8f9 Add diagnostics support to Tailscale (#64649) 2022-01-23 09:01:44 +01:00
Franck Nijhof db979fef6c Refactor Tuya DPCode and data type handling (#64707) 2022-01-23 09:01:10 +01:00
Allen Porter a5fb60fd3a Update nest media player device thumbnails (#64738) 2022-01-22 23:46:00 -08:00
Chris Talkington c06a32cdb4 Upgrade rokuecp to 0.11.0 (#64740) 2022-01-22 21:41:01 -10:00
J. Nick Koston 50b2e9d794 Prevent lookin polling when push updates are coming in (#64687)
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2022-01-22 21:19:34 -10:00
Robert Svensson 84b483673e Remove system info from deCONZ diagnostics (#64704) 2022-01-23 07:43:07 +01:00
J. Nick Koston d5211c12b0 Fix flux_led reloading too quickly after an operating mode change (#64591) 2022-01-22 20:56:38 -08:00
Allen Porter cdf7742c3e Refactor nest test_init_sdm tests to use fixtures with varied config types (#64736) 2022-01-22 20:56:03 -08:00
J. Nick Koston 15532c38d7 Add button platform to bond to replace custom services (#64725) 2022-01-22 20:52:00 -08:00
J. Nick Koston 5d753abd79 Fix MultiDict typing with multidict-6.0.0 (#64733) 2022-01-22 20:49:48 -08:00
J. Nick Koston b587e49300 Allow doorbird to still setup with missing operator permission (#64727) 2022-01-22 20:45:30 -08:00
Sean Vig b713a951dd Update the states of the amcrest camera on every update (#56284) 2022-01-22 18:34:36 -10:00
Jens Østergaard Nielsen 6de24baf95 Make service functions async (#64705) 2022-01-22 20:33:10 -08:00
Sean Vig cd34beb832 Use _attr_* properties for Doorbird camera (#64734)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-22 17:53:44 -10:00
Brett Adams dba6562356 Add Device Info to Aussie Broadband (#64673)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-22 15:51:20 -10:00
Sean Vig 7781e308cd Migrate amcrest integration to new async API (#56294) 2022-01-22 15:49:45 -10:00
starkillerOG a9cefec1db Motionblinds improvements (#64698)
* use gateway_mac as identifier

see revieuw request: https://github.com/home-assistant/core/pull/64414#discussion_r787691139

* show hw_version and add interface "0.0.0.0"
2022-01-23 02:42:23 +02:00
Aaron Bach 8e5a74d9e9 Add diagnostics to OpenUV (#64716) 2022-01-22 16:38:38 -08:00
Michael 1d2b9d2c63 Add diagnostics platform to Shelly (#64660)
* add config entry diagnostics

* add test

* make pylint happy

* add some device settings

* adjust tests

* add hass system info

* make sw_version be a property of wrapper classes

* remove hass sys info, since is added centraly

* check if device is initialized

* device_info is always available

* add device status data
2022-01-23 02:18:09 +02:00
GitHub Action 47d3fb1dec [ci skip] Translation update 2022-01-23 00:13:53 +00:00
Shay Levy 12780a3173 Add webostv 100% tests coverage for media player (#64723) 2022-01-22 14:06:48 -10:00
uvjustin 5654490aa8 Update version requirements for httpcore and anyio (#64711) 2022-01-22 13:52:41 -10:00
Aaron Bach 8badb1085c Clean up OpenUV config flow tests (#64715)
* Clean up OpenUV config flow tests

* Code review
2022-01-22 16:52:25 -07:00
jjlawren a7982adc73 Discard duplicate sonos events (#64722)
* Throttle duplicate Sonos events

* Fix test by breaking reference
2022-01-23 00:40:08 +01:00
J. Nick Koston 490d8e1136 Fix webserver responsiveness where there are a lot of discoveries (#64719) 2022-01-22 22:29:16 +01:00
Aaron Bach a70c980283 Fix small inconsistency in OpenUV data storage (#64717) 2022-01-22 14:27:12 -07:00
Marvin Wichmann 0f7e9177a2 Remove system info from KNX diagnostic (#64721) 2022-01-22 22:25:24 +01:00
Andre Lengwenus 19e3c08c56 Add tests for LCN switch platform (#52590) 2022-01-22 10:41:25 -10:00
Chris Talkington 9639968a96 Refactor roku tests (#64498) 2022-01-22 10:31:34 -10:00
Shay Levy 9d39a38c16 Fix webostv media player (#64690)
* Fix webostv media player

* Revise service call error handling
2022-01-22 19:26:02 +02:00
J. Nick Koston 30eacdbea0 Change ssdp scanning interval to 2 minutes (#64688) 2022-01-22 11:12:58 -06:00
Willem-Jan 5e71e7b775 Bump bsblan python lib v0.5.0 (#64702)
* Bump bsblan python lib v0.5.0

also fixed some minor issues

* update CODEOWNERS
2022-01-22 16:01:03 +02:00
Franck Nijhof 511546631a Add diagnostics support to Open-Meteo (#64645) 2022-01-22 13:47:51 +01:00
Franck Nijhof b4c5bcf44d Add diagnostics support to PVOutput (#64625) 2022-01-22 13:47:07 +01:00
starkillerOG 71106074a7 bump motionblinds to 0.5.10 (#64695) 2022-01-22 13:01:52 +02:00
Jens Østergaard Nielsen 59e8633e46 Update of the ihcsdk to 2.7.6 (#64664)
* Bump home-assistant/wheels from 2021.07.0 to 2022.01.0

Bumps [home-assistant/wheels](https://github.com/home-assistant/wheels) from 2021.07.0 to 2022.01.0.
- [Release notes](https://github.com/home-assistant/wheels/releases)
- [Commits](https://github.com/home-assistant/wheels/compare/2021.07.0...2022.01.0)

---
updated-dependencies:
- dependency-name: home-assistant/wheels
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

* Update ihcsdk to 2.7.5

* Update to ihcsdk 2.7.5

* Update ihcsdk to 2.7.5

* Go back to ihcsdk 2.7.4

* Update ihcsdk to 2.7.6

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-22 11:57:55 +02:00
Joakim Plate 2e2e589ac3 rfxtrx: bump to 0.27.1 (#64666) 2022-01-22 11:30:16 +02:00
J. Nick Koston aada66cc93 Fix music mode and on with older 0x08 flux_led models (#64672) 2022-01-21 21:16:24 -10:00
J. Nick Koston ea79bfb90f Bump flux_led to fix setting strip order on SK6812RGBW (#64671) 2022-01-21 18:01:40 -10:00
Alexei Chetroi 2b3df46f06 Bump up ZHA dependencies (#64676) 2022-01-21 21:14:46 -05:00
GitHub Action 9098c71cd4 [ci skip] Translation update 2022-01-22 00:13:08 +00:00
Franck Nijhof 5bbbf8eee3 Update emoji to 1.6.3 (#64663) 2022-01-21 23:27:12 +01:00
Paulus Schoutsen 090e667b64 Add local media browser to VLC (#64655) 2022-01-21 13:49:23 -08:00
Paulus Schoutsen ed2e1f431c Allow Sonos to browse and play local media via media browser (#64603) 2022-01-21 13:49:06 -08:00
Franck Nijhof 7a2b699371 Update codespell to 2.1.0 (#64661) 2022-01-21 22:05:24 +01:00
Franck Nijhof a26f008b6e Update luftdaten to 0.7.2 (#64662) 2022-01-21 15:56:45 -05:00
Daniel Perna 150bb65cad Fix tilt-position for HmIPW-DRBL4 (#64208) 2022-01-21 21:43:40 +01:00
Kevin Van den Abeele 1b571db19d Feature/voc olinc smart adapter vp3 power measurement (#64571) 2022-01-21 10:20:32 -10:00
Michael 443f50cde6 Add diagnostics to Synology DSM integration (#64480) 2022-01-21 11:37:11 -08:00
Paulus Schoutsen c72c39e9a1 Some tweaks for media source (#64641) 2022-01-21 11:26:06 -08:00
Michael e0e6853968 Add diagnostics platform to AVM Fritz!Smarthome (#64657)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-21 11:25:19 -08:00
Paulus Schoutsen a827d91e3a Add CO2signal diagnostics (#64646) 2022-01-21 20:20:59 +01:00
Paulus Schoutsen 3c250ecf43 Fix flaky upnp test (#64656) 2022-01-21 11:20:43 -08:00
Jens Østergaard Nielsen 526db1bcd8 Update of the ihcsdk to 2.7.5 (#64631)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-21 20:09:05 +01:00
J. Nick Koston 01241483cc Add note to unifiprotect flow that a local user is required (#64651) 2022-01-21 09:04:33 -10:00
Christopher Bailey 8fb4e0934e Fix UniFi Protect test warning (#64650) 2022-01-21 09:00:35 -10:00
Paulus Schoutsen 3899600771 Add rainforest diagnostics (#64647) 2022-01-21 19:59:11 +01:00
Franck Nijhof e982df5199 Add DataUpdateCoordinator to Elgato (#64642) 2022-01-21 10:38:02 -08:00
Paulus Schoutsen 63f8e437ed Add Home Assistant Content user (#64337) 2022-01-21 10:06:39 -08:00
Erik Montnemery b3cda6b681 Attempt to fix flaky nam test (#64613) 2022-01-21 09:44:05 -08:00
Erik Montnemery 3575009330 Store remote domain in Cloud preferences (#64532) 2022-01-21 09:42:34 -08:00
Paulus Schoutsen 9f12612391 Update hassfest dependency check (#64638) 2022-01-21 09:29:17 -08:00
Erik Montnemery 07e10c645b Attempt to fix flaky upnp test (#64617)
* Attempt to fix flaky upnp test

* Remove unused constant

* Correct test changes

* Correct test changes
2022-01-21 17:27:07 +01:00
Maciej Bieniek 9e2a8a5b09 Add diagnostics to Brother integration (#64478)
* Add diagnostics

* Suggested changes

* Fix tests
2022-01-21 17:23:42 +01:00
Franck Nijhof f667333dea Deprecate Apple Push Notification Service (APNS) (#64629) 2022-01-21 17:23:02 +01:00
Franck Nijhof 30e0a93fb3 Update sentry-dsk to 1.5.3 (#64630) 2022-01-21 17:21:43 +01:00
Franck Nijhof 4f4fca0d14 Add diagnostics support to TwenteMilieu (#64627) 2022-01-21 16:39:21 +01:00
Franck Nijhof 4c83ecd7bd Fix incorrect usage of ToggleEntity in switch platforms (#64620)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2022-01-21 13:17:45 +01:00
MizterB 604a900658 Scrape HTML attributes that are not key/val pairs (#58247) 2022-01-21 11:17:48 +01:00
Kai Bepperling 5954ca2b1f Add ToDoist Assignee option for new task service (#63918)
Co-authored-by: Aaron Godfrey <me@aarongodfrey.dev>
2022-01-21 11:13:16 +01:00
Duco Sebel 53e9a2451e Add switch platform to HomeWizard Energy (#64084)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-21 10:44:56 +01:00
Tobias Sauerwein aecb342fda Update Netatmo diagnostics (#64610) 2022-01-21 10:26:18 +01:00
Tobias Sauerwein 954caa93b5 Fix Netatmo select platform setup (#64560) 2022-01-21 10:20:16 +01:00
rappenze fc1dc9874b Bump fiblary3 to 0.1.8 (#64577) 2022-01-21 10:18:33 +01:00
Franck Nijhof 1c94431efe Handle WLED devices with CCT channels (#64581) 2022-01-21 09:19:50 +01:00
Aaron Bach d634a08361 Don't import from integration .const (#64608) 2022-01-20 23:25:08 -08:00
Aaron Bach 6bbe38578c Add diagnostics to Elexa Guardian (#64599) 2022-01-21 00:12:36 -07:00
Allen Porter fec669f9c8 Revert "Add version constraint for google-auth (#64583)" (#64605)
This reverts commit 3792b8b3ca.
2022-01-21 08:12:04 +01:00
Aaron Bach d170faeffc Add diagnostics to IQVIA (#64602) 2022-01-20 22:09:36 -08:00
Nick Whyte 3dd7ec6856 Add Aussie Broadband integration (#53552) 2022-01-20 19:34:25 -10:00
Aaron Bach 1f00ded33a Clean up IQVIA config flow tests (#64601) 2022-01-20 21:45:32 -07:00
Aaron Bach aef8d9ee4d Clean up Guardian config flow tests (#64598)
* Clean up Guardian config flow tests

* Docstring
2022-01-20 20:32:07 -07:00
Aaron Bach ff535053a9 Use return_value in Flu Near You config flow tests (#64596) 2022-01-20 19:37:05 -07:00
Aaron Bach b2811cff51 Clean up Flu Near You tests (#64575)
* Clean up Flu Near You tests

* Docstring

* More fixtures

* Revert "More fixtures"

This reverts commit 30f079b6266ef6cb14417ca895da1ae937c87abe.
2022-01-20 19:25:49 -07:00
GitHub Action fc6d6594ab [ci skip] Translation update 2022-01-21 00:13:34 +00:00
Shay Levy 4ec4383639 Change webostv iot class to local push (#64593) 2022-01-21 01:30:06 +02:00
jjlawren e7f0962979 Improve Sonos diagnostics (#64586) 2022-01-20 13:14:08 -10:00
Marc Mueller 3792b8b3ca Add version constraint for google-auth (#64583) 2022-01-21 00:11:22 +01:00
Robert Svensson 11de453848 Add diagnostics to deCONZ integration (#64585) 2022-01-20 14:47:42 -08:00
Shay Levy 3d99e23399 Fix switcher_kis test sleep time patching (#64582) 2022-01-20 12:20:49 -10:00
Shay Levy 7248451525 Mark Switcher as a platinum quality integration (#64584) 2022-01-20 12:20:14 -10:00
Paulus Schoutsen 520ba0a82e Introduce new redact helper (#64579) 2022-01-20 23:02:47 +01:00
jjlawren 53aed22d5c Add diagnostics support to Sonos (#64576)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-20 13:26:54 -08:00
Michael Chisholm c9e495607e Ignore further ssdp:alive message if connection fails in dlna_dmr (#59891) 2022-01-20 11:23:23 -10:00
Franck Nijhof 7e09b16598 Update wled to 0.12.0 (#64580) 2022-01-20 22:09:26 +01:00
Paulus Schoutsen 7f2f135e13 Convert last media player tests to async (#64572) 2022-01-20 13:05:33 -08:00
Raman Gupta a420e9443c Add version info to zwave js device diagnostics (#64573) 2022-01-20 12:55:47 -08:00
G Johansson 543064d7b7 Implement config flow dnsip (#62843) 2022-01-20 10:45:58 -10:00
Keilin Bickar fe17f97543 Add last_reset for Sense trend sensors (#63490) 2022-01-20 10:41:07 -10:00
epenet 9c11b0aa89 Add diagnostics to Renault integration (#64531)
* Add diagnostics to Renault

* Add diagnostic tests

* Add device diagnostics

* Include vehicle information in main diag

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 21:32:28 +01:00
epenet 3f8032c635 Remove ring from mypy ignore list (#64522)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 12:31:28 -08:00
Shay Levy 62c55e6698 Fix atag slow tests (#64567)
* Fix atag slow tests

* Fix sleep fixture
2022-01-20 22:23:08 +02:00
sebfortier2288 a9785f1b41 Add support for Soma Tilt devices (#49734) 2022-01-20 10:21:54 -10:00
Guido Schmitz 8b99adc1dc Remove default value of async_add_entities in devolo Home Control (#64574) 2022-01-20 21:34:41 +02:00
epenet 6f631c542c Import hassio (#64561)
* Import hassio

* Fix HassioAPIError

* Use relative import

* Adjust import

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 19:03:26 +01:00
Raman Gupta f622bf4ff2 Fix bug for zwave_js diagnostics (#64568) 2022-01-20 12:38:34 -05:00
Paulus Schoutsen 6803219133 Convert remaining image processing tests to async (#64506) 2022-01-20 18:00:58 +01:00
Paulus Schoutsen ddf548cd27 Convert remaining TTS tests to async (#64505)
* Convert remaining TTS tests to async

* Add block till done after setting up component
2022-01-20 17:58:19 +01:00
Mick Vleeshouwer 8fda3ae4cb Use EntityCategory enum in Overkiz (#64565) 2022-01-20 16:55:17 +01:00
Jan Bouwhuis 7ea8d72133 Move CONF_COMMAND_TEMPLATE to .const (#64558) 2022-01-20 16:15:26 +01:00
Erik Montnemery 8c1a5f5329 Fix errors when trying to enable Alexa (#64536)
* Fix errors when trying to enable Alexa

* Update homeassistant/components/cloud/alexa_config.py

Co-authored-by: Franck Nijhof <git@frenck.dev>

* Ran black

Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-20 15:26:58 +01:00
epenet e59510f0ce Fix onboarding (#64557)
* Adjust auth and hassio import

* Adjust pylint

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 15:19:31 +01:00
Daniel Hjelseth Høyer 549afff307 Tibber diagnostics (#64472)
Co-authored-by: Philip Allgaier <mail@spacegaier.de>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-20 15:03:14 +01:00
Martin b8ecb98fd6 Handle missing values in alpha_vantage sensor (#63632)
* Update sensor.py

catch error condition if returned values does not contain expected values

* Update sensor.py

fixed smaller code problems

* Update sensor.py

* Update sensor.py

fix case when values is None

* Update sensor.py

check if values is a dict

* Update sensor.py

removed comment

* Update sensor.py

simplified check for dict
2022-01-20 08:49:42 -05:00
Jan Löffler c741412808 Add dishwasher program to Home Connect Integration (#61237) 2022-01-20 14:47:21 +01:00
Bernhard Hecker 4715163150 Add vicare solar collector and pump information (#64178)
* Added solar collector and pump information

* moved sensors to GLOBAL_SENSORS
2022-01-20 08:21:48 -05:00
Guido Schmitz 144371d843 Add siren platform to devolo Home Control (#53400)
* Rework mocking

* Add siren platform

* Rebase with dev

* React on change of default tone

* Fix linting error
2022-01-20 08:10:06 -05:00
epenet 0fd003b21e Address late review in sharkiq config flow (#64554)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 13:56:25 +01:00
Jan Bouwhuis 31a9d64572 Improve code coverage MQTT integration (#64546) 2022-01-20 13:51:19 +01:00
epenet f9cd67675f Import auth, hassio and person in onboarding (#64542)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 13:48:56 +01:00
Franck Nijhof 8b8f750c41 Address after merge review comments on IntelliFire (#64553)
* Remove unneeded coordinator update method parameter

* Remove unused error

* Remove unused translation strings

* Remove leftover debug print from tests

* Improve tests

* Cleanup unused entry ID

* Typing completions
2022-01-20 13:48:24 +01:00
Jan Bouwhuis 8b30751839 MQTT Remove unused and not tested code (#64550) 2022-01-20 13:47:46 +01:00
Joakim Sørensen 04c5e51cbd Remove the deprecated discovery_info endpoint (#64534) 2022-01-20 13:46:48 +01:00
Robert Svensson 3258f66097 Expose deCONZ configuration url from discovered entry (#64519) 2022-01-20 13:46:22 +01:00
epenet 7d66d4c219 Cleanup logger in sharkiq (#64552)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 13:44:41 +01:00
epenet f083b97f9f Import camera (#64540)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 13:07:05 +01:00
epenet dbc6e41264 Import panel_custom (#64541)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 13:06:44 +01:00
Sebastian Lövdahl bb671830a6 Run scheduled workflows only in the home-assistant organization (#64085)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-20 12:54:54 +01:00
Michael 09297520c0 Let the new wrapper just extend the FritzBoxTools class (#64133)
* let wrapper just extend the FritzBoxTools class

* keep avm_device in method names
2022-01-20 12:43:32 +01:00
Franck Nijhof 76229bc188 Add device diagnostics support to Tuya (#64537) 2022-01-20 12:37:52 +01:00
Shay Levy 92e0dc577e Fix braviatv tests doing IO (#64549) 2022-01-20 12:28:52 +01:00
epenet 6a6cdef725 Import webhook in toon (#64544)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 12:04:47 +01:00
Franck Nijhof f1e591f2d7 Update pytest-timeout to 2.1.0 (#64533) 2022-01-20 12:02:32 +01:00
epenet c81ea9409a Import mqtt (#64543)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 12:01:42 +01:00
Raman Gupta 11d0dcf7ac Add zwave_js device diagnostics (#64504)
* Add zwave_js device diagnostics

* Add diagnostics as a dependency in manifest

* Add failure scenario test

* fix device diagnostics helper and remove dependency

* tweak
2022-01-20 11:49:24 +01:00
Franck Nijhof 20a277c0ab Replace whois library in Whois integration (#63227) 2022-01-20 11:21:58 +01:00
epenet 51c8e041ea Remove plugwise from mypy ignore list (#64525)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 10:14:52 +01:00
Allen Porter 86dbe068e7 Abort rtsp_to_webrtc config flow on error during add-on discovery (#64500) 2022-01-20 10:14:13 +01:00
epenet a1ed2a57e9 Remove smartthings from mypy ignore list (#64511)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 10:13:04 +01:00
Jeef f854fdb8fd Add Intellifire Gas Fireplace integration (#63637)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Mick Vleeshouwer <mick@imick.nl>
2022-01-20 10:01:04 +01:00
epenet 3393b78e08 Remove plaato from mypy ignore list (#64516)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:58:12 +01:00
epenet e2a9ff5ecd Remove system_log from mypy ignore list (#64469) 2022-01-20 09:51:10 +01:00
epenet 3e4883b175 Remove stt from mypy ignore list (#64468) 2022-01-20 09:49:34 +01:00
epenet 3ef2eadaf5 Remove plum lightpad from mypy ignore list (#64523)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:47:42 +01:00
Robert Svensson 1551da33ac Expose Axis device configuration url from discovered entry (#64517) 2022-01-20 09:47:02 +01:00
epenet 66c2520a94 Remove sharkiq from mypy ignore list (#64509)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:45:47 +01:00
epenet 921a554b9e Remove pioneer from mypy ignore list (#64515)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:44:45 +01:00
Allen Porter 09920f5303 Fix rtsp-to-webrtc bug in calling client library (#64502) 2022-01-20 09:44:04 +01:00
epenet dc7231492e Address late review in screenlogic (#64529)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:43:23 +01:00
Jesse Hills acd88e1c61 Bump aioesphomeapi to 10.7.0 (#64495) 2022-01-20 09:38:58 +01:00
epenet bb7653e477 Remove point from mypy ignore list (#64524)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:35:31 +01:00
epenet 15bbff960e Remove sense from mypy ignore list (#64508)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:35:10 +01:00
Robert Svensson 86d32b3440 Expose UniFi controller configuration url from discovered entry (#64514) 2022-01-20 09:34:54 +01:00
J. Nick Koston 2b413b86a3 Bump aiosenseme to 0.6.1 to fix parser (#64520) 2022-01-20 09:33:43 +01:00
J. Nick Koston 8289da88cb Bump unifi-discovery to 1.1.2 to fix exception on missing mac (#64527) 2022-01-20 09:25:27 +01:00
epenet 3ab9dc9b0e Remove search from mypy ignore list (#64507)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:24:48 +01:00
J. Nick Koston 6e4f01b2cf Fix incorrect preset mode in senseme (#64526) 2022-01-20 09:22:27 +01:00
epenet fceeafb5de Remove ruckus unleashed from mypy ignore list (#64513)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:18:09 +01:00
Allen Porter e56e25180b Strip whitespace in nest cloud project id (#64503) 2022-01-20 09:13:49 +01:00
epenet e56c64db07 Remove screenlogic from mypy ignore list (#64512)
* Adjust screenlogic

* Adjust mypy_config

* Adjust coordinator cast

* Move cast higher up

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 09:06:44 +01:00
epenet ca6dd09fc2 Remove rachio from mypy ignore list (#64521)
* Adjust rachio

* Adjust mypy-config

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-20 08:53:16 +01:00
J. Nick Koston d53124910f Add entity category support to HomeKit (#64492) 2022-01-19 21:48:50 -10:00
epenet e248ef1dd7 Remove sma from mypy ignore list (#64510) 2022-01-20 09:22:18 +02:00
epenet 03bf2cdd56 Remove vera from mypy ignore list (#64474)
* Remove vera from mypy ignore list

* Fix pylint
2022-01-20 07:46:26 +01:00
J. Nick Koston 2083f0b3c0 Add support for checking if an entity is explicitly included in an entity filter (#64463) 2022-01-19 22:38:48 -08:00
Paulus Schoutsen a3281f9bda Drop slash from media source directories (#64499) 2022-01-19 22:36:47 -08:00
Raman Gupta 24c733b271 Pass device entry to async_get_device_diagnostics instead of device_id (#64501) 2022-01-20 01:19:09 -05:00
Aaron Bach 917b84f4d9 Add explicit branching in AirVisual diagnostics (#64493) 2022-01-19 21:53:20 -07:00
Raman Gupta 8b3fe0a2d9 Add support for device diagnostics (#64344)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-19 20:48:32 -08:00
Aaron Bach c9d7917491 Fix incorrect docstring in AirVisual test (#64496) 2022-01-19 17:36:10 -10:00
Aaron Bach a77dc55ca9 Add diagnostics to Ambient PWS (#64489) 2022-01-19 20:13:49 -07:00
Mick Vleeshouwer 1968257b23 Fix attr spelling error in Nest SDM SensorBase (#64490) 2022-01-19 17:49:52 -08:00
GitHub Action e9e9852e05 [ci skip] Translation update 2022-01-20 00:15:19 +00:00
Aaron Bach 31fe6d9592 Clean up Ambient PWS tests (#64486) 2022-01-19 17:03:53 -07:00
Tobias Sauerwein 801011863b Add diagnostics to Netatmo integration (#64392) 2022-01-19 15:52:20 -08:00
Mick Vleeshouwer 2503530b8c Add diagnostics to Overkiz integration (#64427) 2022-01-19 15:51:52 -08:00
Aaron Bach c00cff2650 Remove unnecessary AirVisual attribute constants (#64483) 2022-01-19 15:56:21 -07:00
Aaron Bach 05b8da11a3 Add diagnostics for the AirVisual integration (#64479)
* Add diagnostics for AirVisual config entries

* Tests

* More

* Tests

* Code review

* Fix tests
2022-01-19 15:28:18 -07:00
Joakim Sørensen 6b7f625ae3 Use callback for async_cleanup_device_registry (#64481) 2022-01-19 23:17:03 +01:00
Franck Nijhof d2f868051e Small cleanup of Shodan (#64467) 2022-01-19 14:04:06 -08:00
Stephan Uhle dafc071214 Add edl21 sensor state class and device class (#56968) 2022-01-19 23:03:44 +01:00
epenet 29ec65f924 Remove verisure from mypy ignore list (#64475) 2022-01-19 22:56:31 +01:00
Franck Nijhof 944f2c9745 Add redacted constant in diagnostics (#64473) 2022-01-19 22:51:03 +01:00
Mick Vleeshouwer d2a8114b48 Address stateless switch feedback in Overkiz integration (#64430)
* Address stateless switch feedback

* Address feedbcak

* Change order back to original
2022-01-19 22:50:26 +01:00
Aaron Bach 4d72e41a3e Perform some more AirVisual test cleanup (#64470)
* Perform some more AirVisual test cleanup

* Smarter startup patch

* Simplify
2022-01-19 14:32:52 -07:00
Aaron Bach ee215fb589 Streamline hass.data storage for AirVisual (#64476) 2022-01-19 14:32:23 -07:00
Mark Ireland eabe658211 Add Volumio repeat support (#64132) 2022-01-19 22:07:11 +01:00
Michael 17d6d76fb8 Add libturbojpeg0 to dev-container (#64466) 2022-01-19 22:04:13 +01:00
Paulus Schoutsen 7d85c00b91 Make setup tests async (#64456)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-19 12:47:21 -08:00
epenet 7592347715 Remove somfy from mypy ignore list (#64462)
* Adjust somfy

* Remove somfy from mypy-config

* Fix pylint
2022-01-19 21:46:26 +01:00
Matthias Alphart 10538aabbf Add diagnostics to KNX (#64471) 2022-01-19 12:46:10 -08:00
Matthias Alphart b245a0d0ee Only flag SUPPORT_STOP_TILT when tilt available in KNX cover (#64410) 2022-01-19 21:35:36 +01:00
Josh Soref 53f8225f90 spelling: components/abode (#64263)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-19 21:06:26 +01:00
Shay Levy 5da8d62f33 Add webostv YAML to config flow migration warning (#64450) 2022-01-19 21:00:54 +01:00
epenet 211b99e22d Remove ping from mypy ignored modules (#64439)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-19 20:59:20 +01:00
G Johansson 4a102d6b2a Improve code quality trafikverket_train (#62677) 2022-01-19 20:57:05 +01:00
candreacchio d5cb92db7f Initial Tuya support for FSD based fans (#64283) 2022-01-19 20:53:00 +01:00
Joakim Sørensen 554e51017e Adjust tests for removing github devices (#64448) 2022-01-19 20:30:57 +01:00
Franck Nijhof 9facd3962c Update shodan to 1.26.1 (#64457) 2022-01-19 14:15:32 -05:00
Aaron Bach ff4ad8ddf8 Add restrict_watering and unrestrict_watering services to RainMachine (#64219) 2022-01-19 11:58:15 -07:00
Aaron Bach 573e17472b Clean up AirVisual tests (#64402)
* Simplify AirVisual tests

* First fixture

* More

* Fixture

* More
2022-01-19 11:52:24 -07:00
Josh Soref 6c24aa8ed9 spelling: components/cast (#64241)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-19 19:43:20 +01:00
rappenze 62e64eb8ab Extract fibaro switch energy attributes into sensors (#63697)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-19 19:32:44 +01:00
Erik Montnemery 4bcf71b1f3 Prevent race when loading cloud config (#64437) 2022-01-19 09:57:54 -08:00
Erik Montnemery fd3b41dbe0 Catch exceptions when trying to enable Alexa (#64438) 2022-01-19 09:53:32 -08:00
Alan Byrne a474c1e342 Signal messenger attachments as bytes support (#62311)
Co-authored-by: Alex <33379584+alexyao2015@users.noreply.github.com>
Co-authored-by: Ian Byrne <ian.byrne@burnsie.com.au>
2022-01-19 18:49:27 +01:00
epenet 250379e181 Add setup type hints (init) (#64351)
* Add setup type hints to acmeda

* Add setup type hints to xiaomi_aqara

* Add setup type hints to motion_blinds

* Add setup type hints to xiaomi_miio

* Add setup type hints to diagnostics

* Add setup type hints to zha

* Add setup type hints to firmata

* Add setup type hints to denonavr

* Add setup type hints to rfxtrx

* Add setup type hints to hue

* Cleanup denonavr

* Add return types to xiaomi_miio

* Fix return type

Co-authored-by: epenet <epenet@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-19 18:00:34 +01:00
Colin Robbins 1777987d4f Bump Lightwave Version - Improved Error Handling (#64452)
* Bump Version - Improved Error Handling

* Bump Lightwave
2022-01-19 18:58:16 +02:00
Jeff Irion 1e9a0c0609 Fix the Android TV volume mute service (#64403)
* Fix the Android TV volume mute service

* Update homeassistant/components/androidtv/media_player.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* assert mute_volume.called

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-19 18:55:46 +02:00
Regev Brody 6176bb954c fix: 17track package summary status is not updated when there are no more packages in that summary (#64421)
* 17track package status is not updated when there are no packages

* 17track package status is not updated when there are no packages

* 17track package status is not updated when there are no packages
2022-01-19 17:35:20 +02:00
Mick Vleeshouwer 24e24a5157 Move logger to constants (#64431) 2022-01-19 17:19:49 +02:00
Jan Stienstra 4c952f09ac Allow to skip artist level in media hierarchy (#64160) 2022-01-19 15:13:11 +01:00
Djowie 1d20f5be33 Improved stream url and removed dependency on track numbers (#64079) 2022-01-19 15:02:49 +01:00
Renat Nurgaliyev d11f2b5151 Add HVAC modes of climate entities to Prometheus exporter (#62144) 2022-01-19 14:49:29 +01:00
J. Nick Koston 8e835df8d4 Fix source ip detection in unifi-discovery (#64419) 2022-01-19 13:45:48 +01:00
Joakim Sørensen b46b32bafa Add diagnostics to GitHub integration (#64385) 2022-01-19 13:41:02 +01:00
epenet edaf75321e Remove integrations from mypy ignored modules (part 4) (#64435)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-19 13:29:24 +01:00
Florent Thoumie 7520a3fd01 Get rid of name collision in iaqualink tests (#63642) 2022-01-19 13:25:12 +01:00
Paulus Schoutsen 8d7cca9774 Convert discovery tests to async (#64411) 2022-01-19 12:21:15 +01:00
Shay Levy e6c7c01e6c Add webostv 100% tests coverage for notify (#64412)
* Add webostv 100% tests coverage for notify

* Apply review comments

* Fix assert
2022-01-19 13:13:55 +02:00
starkillerOG 5d7cda850b Address late Netgear review comments (#64428) 2022-01-19 12:11:23 +01:00
epenet f467f0a094 Add diagnostics to the core files (#64417)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-19 10:55:33 +01:00
Glenn Waters f5f89db8a4 Add AQHI sensor for Environment Canada (#63644) 2022-01-19 10:54:57 +01:00
epenet f6bc21d2aa Remove integrations from mypy ignored modules (part 3) (#64414)
* Adjust kaiterra

* Adjust keenetic_ndms2

* Adjust kodi

* Adjust kulersky

* Adjust litejet

* Adjust motion_blinds

* Cleanup mypy_config

* Adjust kulersky

* Adjust keenetic_ndms2

* Adjust kodi

* Adjust motion_blinds

* Introduce RequiredKeysMixin in kaiterra

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-19 10:49:46 +01:00
Joakim Sørensen 29d13110af Make launch library lambdas single line (#64424) 2022-01-19 10:40:53 +01:00
Joakim Sørensen b82a57d861 Clean up Launch Library consts (#64420) 2022-01-19 09:52:22 +01:00
Allen Porter f1435b1385 Add diagnostic information for nest (#64405)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-19 09:30:48 +01:00
Simon Hansen 6fcf643d5d Add launch mission sensor for launch_library (#64387) 2022-01-19 09:28:07 +01:00
Josh Soref 2f5f6cc05e spelling: components/emulated_hue (#64250)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-19 09:14:57 +01:00
Eric Severance 35cf6d7a7b Use wemo enums in fan entity (#64397) 2022-01-18 22:13:25 -10:00
epenet 2f8d99bf5d Remove integrations from mypy ignored modules (part 2) (#64367)
* Adjust dhcp

* Adjust growatt_server

* Adjust habitica

* Adjust home_connect

* Adjust iaqualink

* Adjust incomfort

* Adjust input_number

* Adjust ipp

* Adjust mypy_config

* Unindent input-number

* Fix type hint in home_connect

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-19 09:00:09 +01:00
J. Nick Koston f38a00740f Unifi protect discovery cleanups (#64413) 2022-01-19 08:50:24 +01:00
epenet 4f5859c612 Add setup type hints (platforms) (#64354)
* Add setup type hints to arcam_fmj

* Add setup type hints to denonavr

* Add setup type hints to philips_js

* Add setup type hints to zha

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-19 07:44:03 +01:00
Raman Gupta fd465df016 Bump zwave-js-server-python to 0.34.0 (#64407) 2022-01-18 22:33:50 -08:00
Paulus Schoutsen a07c4bc468 Use async_create_task for microsoft_face tests (#64409) 2022-01-18 22:17:37 -08:00
J. Nick Koston 36e2617796 Ensure homekit options flow remembers excluded entities during edit (#64401) 2022-01-18 19:17:43 -10:00
Brave Chicken efcae8bece Add HomeConnect Freezer (#63851) 2022-01-18 22:45:12 -06:00
Chris Talkington 1421797c50 Add camera play stream support to roku (#64153) 2022-01-18 22:43:22 -06:00
Paulus Schoutsen 08083f399e Convert some tests to async and drop usage get_test_home_assistant (#64394)
* Fix some tests

* Update MS tests

* Convert last logbook tests to async
2022-01-18 19:37:17 -08:00
Mick Vleeshouwer 394c6850a3 Fix situation where 'model' can be None (string) in Overkiz (#64320) 2022-01-18 17:04:26 -10:00
J. Nick Koston 3c7005d4dc Use unifi direct connect w/ssl verify for unifiprotect when possible (#64395) 2022-01-18 14:40:55 -10:00
GitHub Action 04a2227f4b [ci skip] Translation update 2022-01-19 00:13:35 +00:00
J. Nick Koston 720732d1b3 Bump unifi-discovery to 1.1.0 (#64391) 2022-01-18 13:47:31 -10:00
Paulus Schoutsen 9e41873de7 Bump frontend to 20220118.0 (#64388) 2022-01-18 14:44:27 -08:00
J. Nick Koston 8aec26d105 Cleanup unifiprotect discovery name (#64389) 2022-01-18 12:38:16 -10:00
Franck Nijhof 9e33a3014c Automatically add entry title as name placeholder in reauth (#64078) 2022-01-18 14:18:16 -08:00
Paulus Schoutsen 7943b0ff5e Remove http dependency from system log (#64386) 2022-01-18 14:10:14 -08:00
Erik Montnemery a8c14835b9 Add entity options to entity registry (#64350)
* Initial commit for entity options

* Tweak broadlink tests

* Add async_update_entity_options + test
2022-01-18 22:47:46 +01:00
Simon Hansen 57bcddbba2 Add launch status sensor for launch_library (#64382) 2022-01-18 22:39:37 +01:00
Joakim Sørensen 13fe5d8216 Add device registry cleanup to github (#64380) 2022-01-18 22:37:33 +01:00
Erik Montnemery c285743621 Validate operating system is supported (#64352)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-18 13:16:23 -08:00
Franck Nijhof 5a1e5e1cef Add daily weather forecasts to Open-Meteo integration (#63677) 2022-01-18 13:01:08 -08:00
Franck Nijhof ddb6f36890 Update pre-commit to 2.17.0 (#64378) 2022-01-18 21:54:17 +01:00
J. Nick Koston 1098aa4456 Fix unifi discovery, add Dream Machine SE (#64377) 2022-01-18 12:46:25 -08:00
Franck Nijhof 8cfe6ef25a Add diagnostics support to Tuya (#64374) 2022-01-18 12:44:09 -08:00
Matthias Alphart 29baad8848 Update xknx to 0.19.0 (#64379) 2022-01-18 21:38:13 +01:00
Paulus Schoutsen 4cd222e70a Add evil genius labs diagnostics (#64339) 2022-01-18 21:02:37 +01:00
Simon Hansen d8df62ba1b Add two new sensors to Launch Library (#64203)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-18 20:58:36 +01:00
Joakim Sørensen 6a0c3843e5 Revamp github integration (#64190)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-18 20:04:01 +01:00
starkillerOG 37caa22a36 Netgear try all ports (#64170)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-18 11:02:43 -08:00
J. Nick Koston 88261c6c14 Add discovery support to unifiprotect (#64340) 2022-01-18 08:40:29 -10:00
epenet 81461832c3 Import configurator (#64211)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-18 10:18:37 -08:00
Andre Lengwenus 9fd704cabf Bump pypck to 0.7.13 (#64368) 2022-01-18 17:13:02 +02:00
Erik Montnemery fbd4eca7b3 Remove --runner option from __main__.py (#64347)
* Remove --runner option from __main__.py

* Update homeassistant/__main__.py

Co-authored-by: Joakim Sørensen <joasoe@gmail.com>

* Always check for lingering threads

Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2022-01-18 15:18:35 +01:00
Erik Montnemery 319d4d64dc Remove --daemon and --pid-file option from __main__.py (#64345)
* Remove --pid-file option from __main__.py

* Remove --daemon option from __main__.py
2022-01-18 14:01:57 +01:00
epenet 45313e3f7a Remove integrations from mypy ignored modules (#64358)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-18 13:26:12 +01:00
epenet d1a2ce4b78 Cleanup mypy ignored modules (#64341)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-18 12:10:49 +01:00
Shay Levy de19483632 Fix webostv media next/previous services (#64355) 2022-01-18 12:09:26 +01:00
Erik Montnemery 64bcd60974 Remove Windows workarounds from frontend (#64343) 2022-01-18 09:05:00 +01:00
Martin Hjelmare ef1e56dfe1 Fix media player image url password logged (#64293) 2022-01-17 23:02:02 -08:00
Erik Montnemery 9718fd2534 Enable Alexa state reporting by default (#63802) 2022-01-17 23:01:43 -08:00
Allen Porter 737ac7cb7c Cleanup nest auth registration, moving out of __init__.py (#63350) 2022-01-17 22:17:23 -08:00
Allen Porter cef0a18e23 Bump google-nest-sdm 1.5.1 (#64334) 2022-01-17 22:16:13 -08:00
Franck Nijhof a0bbe46c4a Clean last usages of old config flow handlers decorator (#64329) 2022-01-17 22:02:12 -08:00
epenet 8bcf495caf Import tts (#64212)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-17 22:01:28 -08:00
Raman Gupta c3fc7becb6 Add zwave_js support for diagnostics (#64336) 2022-01-17 22:00:53 -08:00
Paulus Schoutsen 6055cd20c8 Add diagnostics integration (#64330) 2022-01-17 20:42:18 -08:00
G Johansson a334e0c7b9 Exception handling config flow yale_smart_alarm (#63623) 2022-01-17 19:29:55 -08:00
Josh Soref eda806ca12 spelling: components/airly (#64266)
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 19:22:11 -08:00
epenet 24c07ccf15 Remove tado from mypy ignored modules (#64333)
* Remove tado from mypy ignored modules

* Adjust typing

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-17 19:20:12 -08:00
Paulus Schoutsen 7887f23824 Merge pull request #64317 from home-assistant/rc 2022-01-17 16:29:40 -08:00
GitHub Action 8e14f2037c [ci skip] Translation update 2022-01-18 00:15:38 +00:00
Paulus Schoutsen c3126543b8 remove typing 2022-01-17 15:47:05 -08:00
Robert Svensson 959498d8df Orphaned MAC addresses breaks UniFi options flow (#64327) 2022-01-17 14:35:55 -08:00
J. Nick Koston bfe657ac96 Bump flux_led to 0.28.4 to fix setting white temp on 0x35 devices (#64326) 2022-01-17 14:35:54 -08:00
J. Nick Koston 777c5b7717 Ensure status is correct at start for older august bridges (#64144) 2022-01-17 14:35:53 -08:00
J. Nick Koston b01449f751 Bump flux_led to 0.28.4 to fix setting white temp on 0x35 devices (#64326) 2022-01-17 14:35:36 -08:00
Robert Svensson d4e509422a Orphaned MAC addresses breaks UniFi options flow (#64327) 2022-01-17 22:37:33 +01:00
Robert Svensson deed5f327c Add low battery binary sensor to deCONZ integration (#64168)
* Make tamper sensor a property sensor

* Add low battery binary sensor as a binary property sensor

* Change according to review comment

* Use value_fn lambda

* Fix comparison

* Specific entity_description typing

* Minimize the code block affected by catching AttributeError

* Update homeassistant/components/deconz/binary_sensor.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Update homeassistant/components/deconz/binary_sensor.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Avoid try statement

* Reflect review changes in sensor platform as well

* Store known sensor entities once per device

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-17 22:35:20 +01:00
Christopher Bailey 259befa65f Cleans up various asserts/type ignores for UniFi Protect (#63824)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-17 10:51:55 -10:00
Mick Vleeshouwer b9cfaae3de Refactor some sensors and add translations to Overkiz (#64108) 2022-01-17 10:47:42 -10:00
Mick Vleeshouwer 8f6884ac10 Add new Binary Sensor description to Overkiz integration (#64322) 2022-01-17 10:46:20 -10:00
Jc2k f0fdd7d650 Finish deduplicating homekit_controller enumeration tests (#64306) 2022-01-17 10:44:59 -10:00
Mick Vleeshouwer 05c177e3ed Address late feedback to Overkiz (move to constants) (#64324) 2022-01-17 10:25:24 -10:00
Mick Vleeshouwer 728b587933 Add additional buttons to Overkiz integration (#64321) 2022-01-17 10:17:23 -10:00
G Johansson bbb29ab455 Code quality improvements smhi (#64312) 2022-01-17 20:27:23 +01:00
Robert Svensson 7e40707288 Add Air Quality PPB sensor to deCONZ integration (#64164)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-17 20:25:55 +01:00
Paulus Schoutsen 69c5b04de9 lint 2022-01-17 11:21:55 -08:00
Paulus Schoutsen 1c82a56618 Bumped version to 2021.12.10 2022-01-17 10:39:56 -08:00
rikroe 8c531b4c17 Bump bimmer_connected to 0.8.10 (#64314)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-01-17 10:39:52 -08:00
Matthias Alphart ec993b12e9 Fix KNX onboarding when there is no yaml config defined yet (#64216) 2022-01-17 10:39:51 -08:00
Raman Gupta da5b4735da Ignore unavailable entities when creating zwave_js device actions list (#64184)
* Fix bug with zwave-js device actions

* outdent

* Add test and fix bug

* fix
2022-01-17 10:39:50 -08:00
J. Nick Koston 8f842c7807 Fix august lock/unlock with older bridges (#64143) 2022-01-17 10:37:32 -08:00
J. Nick Koston 9f281e026f Ensure august status is current when integration loads (#64027) 2022-01-17 10:37:32 -08:00
J. Nick Koston 4f09439c8c Fix flux_led turn on when brightness is zero on newer devices (#64129) 2022-01-17 10:35:25 -08:00
Erik Montnemery 7c110eeef4 Remove Windows workarounds from tests/utils/test_json.py (#64311) 2022-01-17 19:34:46 +01:00
Maciej Bieniek 405c4f685c Fix changing the preset mode (#64119) 2022-01-17 10:31:35 -08:00
J. Nick Koston 7a886efec5 Bump flux_led to 0.28.3 to fix setting colorloop on older models (#64094)
Fixes #64087
2022-01-17 10:31:23 -08:00
rikroe 08132eb922 Bump bimmer_connected to 0.8.10 (#64314)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-01-17 19:30:35 +01:00
J. Nick Koston 7bcf3e81d2 Bump nexia to 0.9.13 to fix setting emergency heat (#64020) 2022-01-17 10:25:18 -08:00
J. Nick Koston ba961b7fdd Fix homekit options being mutated during config_flow/migration (#64003) 2022-01-17 10:25:17 -08:00
Stefan Agner 2fb1e406cf Convert disabled_by to DeviceEntryDisabler on load (#63944)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-17 10:25:16 -08:00
Michael Chisholm 7320904f48 dlna_dmr: Allow for upnp attributes with None contents (#63892) 2022-01-17 10:25:16 -08:00
J. Nick Koston df2b6fd5d4 Convert siri requests for target heating cooling state auto to a valid mode (#60220) 2022-01-17 10:23:16 -08:00
kpine cb89c23c0f Avoid removing zwave_js devices for non-ready nodes (#59964)
* Only replace a node if the mfgr id / prod id / prod type differ

* Prefer original device name for unready node

* move register_node_in_dev_reg into async_setup_entry

* simplify get_device_id_ext

* Don't need hex ids

* Revert "move register_node_in_dev_reg into async_setup_entry"

This reverts commit f900e5fb0c67cc81657a1452b51c313bccb6f9e1.

* Revert Callable change

* Revert device backup name

* Add test fixtures

* Update existing not ready test with new fixture data

* Check device properties after node added event

* Add entity check

* Check for extended device id

* better device info checks

* Use receive_event to properly setup components

* Cleanup tests

* improve test_replace_different_node

* improve test_replace_same_node

* add test test_node_model_change

* Clean up long comments and strings

* Format

* Reload integration to detect node device config changes

* update assertions

* Disable entities on "value removed" event

* Disable node status sensor on node replacement

* Add test for disabling entities on remove value event

* Add test for disabling node status sensor on node replacement

* disable entity -> remove entity

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-17 10:22:20 -08:00
Mick Vleeshouwer 313ad2ecde Add switch entity to Overkiz integration (#64000) 2022-01-17 08:21:37 -10:00
Shay Levy 57bd8a7a4a Fix webostv YAML migration failure if the entity is removed (#64290)
* Fix webostv YAML migration failure if the entity is removed

* Update homeassistant/components/webostv/__init__.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* use new entity_id for unique_id update

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-17 19:38:19 +02:00
Shay Levy a2e1cd2632 Add webostv 100% tests cover for triggers (#64301) 2022-01-17 18:33:46 +01:00
Erik Montnemery e6899416e1 Suppress Alexa state reports when not authorized (#64064) 2022-01-17 09:14:26 -08:00
Josh Soref efddace53a spelling: components/analytics (#64268)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 17:36:59 +01:00
Erik Montnemery ff9bea9fa9 Add changed states device trigger to media_player entity (#64304) 2022-01-17 17:27:56 +01:00
Erik Montnemery 513d6cc467 Change value of device_automation constant (#64296)
* Change value of constant CONF_CHANGED_STATES

* Adjust tests
2022-01-17 16:34:40 +01:00
Josh Soref ab73d7c347 spelling: components/camera (#64242)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 16:27:39 +01:00
Josh Soref 4bf0510b78 spelling: components/conversation (#64238)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 16:27:25 +01:00
Josh Soref dadcc5ebcb spelling: components/august (#64232)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:51:46 +01:00
Josh Soref db588bcf64 spelling: components/aurora_abb_powerone (#64231)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:44:10 +01:00
Josh Soref 63fee312bd spelling: components/awair (#64230)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:43:31 +01:00
Josh Soref b038102cd7 spelling: components/apple_tv (#64234)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:41:32 +01:00
Josh Soref e33f95e261 spelling: components/coolmaster (#64237)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:41:18 +01:00
Josh Soref 08ea6d1709 spelling: components/bmw_connected_drive (#64236)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:41:05 +01:00
Josh Soref ac9aaadfa7 spelling: components/buienradar (#64235)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:40:49 +01:00
Josh Soref fcc9cf71cc spelling: components/asuswrt (#64233)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:40:23 +01:00
Josh Soref 13a8fe30dd spelling: components/ambiclimate (#64227)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:40:09 +01:00
Josh Soref fb8c7c58b6 spelling: components/climacell (#64240)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:39:43 +01:00
Josh Soref c99ddcb80a spelling: components/fritzbox (#64258)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:31:48 +01:00
Josh Soref 09d75a6a38 spelling: components/eufy (#64248)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:29:10 +01:00
Josh Soref 7c7807b5b3 spelling: components/emonitor (#64251)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:28:57 +01:00
Josh Soref 2a7c808d38 spelling: components/ecobee (#64255)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:28:45 +01:00
Josh Soref 3f43df1348 spelling: components/androidtv (#64267)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:28:28 +01:00
Josh Soref 54128b5765 spelling: components/airvisual (#64265)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:27:28 +01:00
Josh Soref b72c393dc7 spelling: components/apns (#64269)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:26:21 +01:00
Josh Soref 7a7b2a839b spelling: components/balboa (#64270)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:26:06 +01:00
Josh Soref aa57b29615 spelling: components/devolo_home_network (#64243)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:25:48 +01:00
Josh Soref 8f074bf0e3 spelling: components/gogogate2 (#64278)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:25:34 +01:00
Josh Soref df445cab8a spelling: components/freedompro (#64260)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:25:05 +01:00
Josh Soref 10cb81d316 spelling: components/ecovacs (#64253)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:24:45 +01:00
Josh Soref ace5918208 spelling: components/accuweather (#64264)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:19:24 +01:00
Josh Soref 83566a7722 spelling: components/demo (#64245)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:18:14 +01:00
Josh Soref 610045f4c1 spelling: components/geonetnz_quakes (#64276)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:17:26 +01:00
Josh Soref a916e4b146 spelling: components/flick_electric (#64262)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:16:13 +01:00
Josh Soref 87cdd973d9 spelling: components/forecast_solar (#64261)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:16:00 +01:00
Josh Soref 85bafbbc21 spelling: components/brother (#64273)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:15:45 +01:00
Josh Soref c755c8aa35 spelling: components/gdacs (#64275)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:12:27 +01:00
Josh Soref 34f0ec0e7b spelling: components/eafm (#64257)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:10:38 +01:00
Josh Soref 80b367b446 spelling: components/blueprint (#64271)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:10:12 +01:00
Josh Soref a94fa01574 spelling: components/azure_event_hub (#64229)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:08:56 +01:00
Christopher Bailey 7871c6ba1f Bump pyunifiprotect version to 3.1.1 for UniFi Protect (#64297) 2022-01-17 15:08:42 +01:00
Josh Soref 6e5506d453 spelling: components/elkm1 (#64252)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 15:00:14 +01:00
Michael Chisholm 45b8684b37 Bump async-upnp-client to 0.23.4 (#64287) 2022-01-17 14:55:07 +01:00
Joakim Sørensen 4e6f35f4fb Use assignment expression for unload_ok in scaffold templates (#64286) 2022-01-17 14:49:26 +01:00
epenet 58a53046f2 Move list to dict in utility-meter discovery (#63808)
* Move list to dict in utility-meter discovery

* Reuse name variable

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-17 14:23:12 +01:00
Erik Montnemery c109d59862 Fix comments in Alexa (#64289) 2022-01-17 14:22:04 +01:00
Erik Montnemery aa40476b49 Fix comments, improve readability in Cloud (#64291) 2022-01-17 14:19:11 +01:00
Joakim Sørensen b45f3b97c3 Bump pyaftership to 21.11.0 (#64294) 2022-01-17 14:14:57 +01:00
Marc Mueller d84beefd4e CI: Add job for pip check (#64058) 2022-01-17 14:06:30 +01:00
Josh Soref a6503406a4 spelling: components/fronius (#64274) 2022-01-17 13:50:50 +01:00
Josh Soref 9eb447c16f spelling: components/bond (#64272)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 11:58:52 +01:00
Josh Soref 1d27fec1ff spelling: components/denonavr (#64244)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 11:10:32 +01:00
Josh Soref 83c0b7910b spelling: components/fritz (#64259)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-01-17 11:09:58 +01:00
Shay Levy 601f3f9c6d Add Shelly Gen2 polling for sesnors missing push updates (#64171) 2022-01-17 11:58:54 +02:00
Eduard van Valkenburg b66fd820ff Implement entity_descriptions in SIA (#63130)
* moved sia to entity_descriptions

* cleanup

* moved logger to const

* redid entity description to static

* small fix

* moved entity description classes to proper file

* improved entity def's and undid logger

* further cleanup

* redid naming logic

* Clean up

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-17 10:50:53 +01:00
Eric Severance 8459a28489 WeMo state changes are seen by all coordinator entities (#64228)
* WeMo push update is seen by all coordinator entities

* Rename _wemo_exception_handler -> _wemo_call_wrapper

* Test turning off the entity

* Test setting light brightness

* Improve brightness test

* It is unnecessary to setup the platform integration

* Use domain names, not platform enum, in service calls
2022-01-17 10:03:24 +01:00
epenet 9a997e2df6 Fix raspihats callbacks (#64122)
* Adjust callback registration

* Register callbacks in the executor

* Move read_dq to online_callback

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-17 09:52:31 +01:00
epenet b9d3bb4cfd Fix tests and add setup type in feedreader (#64280)
* Fix feedreader tests

* Cleanup

* Add setup type hints

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-17 09:42:00 +01:00
Guy Khmelnitsky 85c6a24665 Bump Glances to 0.3.4 to fix async_timeout passing loop (#62090)
* Bump Glances to 0.3.2 to fix async_timeout passing loop

* Update requirements_all.txt

* Update requirements_test_all.txt

* Update config_flow.py

* Update __init__.py

* Update __init__.py

* Update strings.json

* Update config_flow.py

* Update config_flow.py

* Update __init__.py

* Update bg.json

* Remove `verify_ssl` translation

* Revert "Remove `verify_ssl` translation"

This reverts commit 906f9a01eaf9e8d229b7d977392875c00420d253.

* Revert "Update bg.json"

This reverts commit 1d0e69351fac0b96a1aa5da3e3ecc2153863c25a.

* Update __init__.py

* Update __init__.py

* Update test_config_flow.py

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update homeassistant/components/glances/__init__.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update __init__.py

* Update config_flow.py

* Update strings.json

* Update test_config_flow.py

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update __init__.py

* Update to glances_api 0.3.4 - with httpx_client parameter

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-17 09:32:54 +01:00
Allen Porter b92166e04c Defer to camera implementation for non-WebRTC cameras (#63182)
Improve nest support for default RTSP to WebRTCdefering to the camera
implementation for cameras that do not natively implement WebRTC so
they can use the registry added in #62962
2022-01-16 22:10:19 -08:00
Li-Huai (Allan) Lin 64d0b89ca1 Fix humidifier state error in HomeKit (#61432)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-16 19:03:54 -10:00
Matthias Alphart 456d403303 Fix KNX onboarding when there is no yaml config defined yet (#64216) 2022-01-16 20:44:21 -08:00
Chris Talkington 3303ad38fe Add sensor platform to roku (#64214) 2022-01-16 20:39:18 -06:00
Aaron Bach a657d34c92 Fix bug with too-long pause durations for RainMachine (#64218) 2022-01-16 19:13:14 -07:00
G Johansson 3cfa2bb6fe Cleanup code config flow smhi (#64197) 2022-01-16 15:32:16 -10:00
J. Nick Koston 57ab296d8a Fix duplicate code in nexia climate platform (#64220) 2022-01-17 02:23:43 +01:00
GitHub Action c6d481ca01 [ci skip] Translation update 2022-01-17 00:14:48 +00:00
Aaron Bach 2133eaa3a1 Fix bug when starting a RainMachine zone via service call (#64213) 2022-01-16 16:38:23 -07:00
Shay Levy fd955be547 Fix core restart due to change in relative imports (#64209) 2022-01-16 13:47:43 -08:00
epenet 183a739968 Check discovery_info is available and add setup type hints (#63782)
* Add setup type hints to ebusd

* Add setup type hints to envisalink

* Add setup type hints to sisyphus

* Add setup type hints to iperf3

* Add setup type hints to greeneye_monitor

* Revert "Add setup type hints to iperf3"

This reverts commit 9a382e4ba32e03620c18bbd9d47cae9a8b4d1c21.

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-16 22:34:05 +01:00
Franck Nijhof 423674c0c9 Register MAC connection for Elgato devices (#64201)
* Register MAC connection for Elgato devices

* Add tests, fix name
2022-01-16 22:18:46 +01:00
Shay Levy 32d4f104ff Enable strict typing in webostv (#64193)
* Enable strict typing in webostv

Enable strict typing in webostv

* Apply review comments
2022-01-16 22:07:29 +01:00
J. Nick Koston 3d7572843e Add switch platform to nexia (#64205) 2022-01-16 09:38:29 -10:00
epenet 265ebd17a3 Move list to dict in iperf3 discovery (#64204) 2022-01-16 10:56:35 -08:00
Jc2k 99481e2258 Refactor homekit_controller tests to reduce duplication. (#64198) 2022-01-16 18:43:44 +00:00
J. Nick Koston 187b4fad84 Update nexia climate platform to use newer standards (#64186) 2022-01-16 07:51:16 -10:00
Gerard 92b48cca7e Update iot_class (#64202) 2022-01-16 17:55:33 +01:00
Marc Mueller 55894d0bf9 Run pre-commit hassfest on changes to script files (#64195) 2022-01-16 17:02:05 +01:00
Simone Chemelli a1e7459dc5 Fix misuse of cast for Shelly Valve (#64181) 2022-01-16 15:28:49 +01:00
Marc Mueller 2ee2626e8b Upgrade miflora to 0.7.2 (#64179) 2022-01-16 15:02:07 +01:00
J. Nick Koston 9c73e66cbe Remove unneeded update_before_add from nexia (#64187) 2022-01-16 14:48:04 +01:00
Álvaro Fernández Rojas ea96e7e512 Remove myself from CODEOWNERS (#64188) 2022-01-16 13:47:13 +01:00
Raman Gupta 9bb78af79c Ignore unavailable entities when creating zwave_js device actions list (#64184)
* Fix bug with zwave-js device actions

* outdent

* Add test and fix bug

* fix
2022-01-16 13:22:18 +01:00
Álvaro Fernández Rojas e019d0890f Drop aemet isoformat() from timestamps (#62793)
* aemet: drop isoformat() from timestamps

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* aemet: fix forecast timestamp sensors

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* aemet: move forecast timestamp sensor to lambda

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Revert "aemet: move forecast timestamp sensor to lambda"

This reverts commit 1f012c9adce4bd952e812a893a42baa681d5a9f2.
2022-01-16 12:31:55 +01:00
Robert Svensson 02cc75997c Change carbon monoxide device class to CO for deCONZ integration (#64185)
* Change carbon monoxide device class from gas to co

* Add device class safety to alarm sensor
2022-01-16 10:06:09 +01:00
GitHub Action 5b1acdf607 [ci skip] Translation update 2022-01-16 00:15:31 +00:00
Allen Porter 849abaca8b Bump google-nest-sdm to 1.5.0 and add nest mp4 clip transcoding to animated gif (#64155) 2022-01-15 12:31:02 -08:00
Sdahl1234 7545b93787 Add TimeCold and TimeWarm programs to HomeConnect dryer (#63330) 2022-01-15 14:16:03 -06:00
Brandon Rothweiler bc17616720 Add electric vehicle sensors to Mazda integration (#64099) 2022-01-15 09:05:06 -10:00
Sean Vig 9d0b73bd99 Change doorbird relay/IR switch to button (#63995) 2022-01-15 09:02:31 -10:00
G Johansson 6750614655 Set unique id for config entry in smhi (#63547) 2022-01-15 09:01:48 -10:00
Brave Chicken b7785eb188 Add HomeConnect Refrigerator (#63850) 2022-01-15 11:24:35 -06:00
starkillerOG 759b6fd9b2 Fix changed port on Netgear R7000 (#64012)
* fix changed port on Netgear R7000

* fix styling

* update tests
2022-01-15 18:01:23 +01:00
Patrik Lindgren e87fb6fc09 Add test cases for Tradfri sensor platform (#64165)
* Add tests for Tradfri sensor platform

* Update docstring
2022-01-15 15:53:03 +01:00
Patrik Lindgren c2181aa5fc Add test cases for Tradfri switch platform (#64156)
* Add tests for the switch platform

* Fix typo

* Typos
2022-01-15 12:27:42 +01:00
Patrik Lindgren 66f1ac025d Add test cases for Tradfri fan platform (#64135)
* Add test cases for Tradfri fan platform

* Remove line
2022-01-15 11:34:19 +01:00
Robert Svensson 43fe46c582 Use hass.async_create_task rather than hass.loop.create_task in deconz (#64158) 2022-01-15 11:13:26 +01:00
Shay Levy c0b1d083b8 Use dataclass properties in webostv discovery (#64159) 2022-01-15 11:10:04 +01:00
Chris Talkington 533d0e4444 Add play media URL support to roku (#64021) 2022-01-15 01:49:33 -06:00
J. Nick Koston d1831748eb Ensure status is correct at start for older august bridges (#64144) 2022-01-14 21:00:44 -10:00
J. Nick Koston 06329a2f43 Code cleanups for lookin (#64106) 2022-01-14 14:22:06 -10:00
GitHub Action b949199866 [ci skip] Translation update 2022-01-15 00:14:21 +00:00
Anton Malko 946de01b94 Fix media_player power state (#64136) 2022-01-15 01:52:18 +02:00
Christopher Bailey f4b5b56427 Fix package camera snapshot (#64145) 2022-01-14 13:38:01 -10:00
J. Nick Koston 8f8ea5b102 Add energy and additional sensors to oncue (#64097)
- The genset total energy can now be added to the energy dashboard
2022-01-15 00:36:29 +01:00
J. Nick Koston b273c37d2b Fix flux_led turn on when brightness is zero on newer devices (#64129) 2022-01-14 15:14:02 -08:00
J. Nick Koston 2d5fe93cb2 Fix august lock/unlock with older bridges (#64143) 2022-01-14 15:13:30 -08:00
Paulus Schoutsen b0387efee3 Guard for timeout errors during wled discovery (#64130) 2022-01-14 14:32:07 -08:00
Shay Levy dee843bf6e Add LG webOS Smart TV config flow support (#64117)
* Add webOS Smart TV config flow support (#53256)

* Add Webostv config flow

* Fix tests mocks and apply review comments

* Apply review comments

* Change config flow to use ssdp UDN as unique_id

* Fix device info

* More review comments

* Fix _async_check_configured_entry

* Remove turn on script

* Add webOS Smart TV device triggers (#53752)

* Add webOS Smart TV config flow support (#53256)

* Add Webostv config flow

* Fix tests mocks and apply review comments

* Apply review comments

* Change config flow to use ssdp UDN as unique_id

* Fix device info

* More review comments

* Fix _async_check_configured_entry

* Remove turn on script

* Add webOS Smart TV device triggers (#53752)

* Fix webOS Smart TV mypy and pylint errors (#62620)

* Change webOS Smart TV PyPi aiopylgtv package to bscpylgtv (#62633)

* Change webOS Smart TV PyPi aiopylgtv package to bscpylgtv

* Update bscpylgtv to 0.2.8 (revised websockets requirment)

* Change webOS Smart TV PyPi package to aiowebostv (#63759)

* Change webOS Smart TV PyPi package to aiowebostv

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* webOS TV check UUID for user added device (#63817)

* webOS TV check uuid when for user added device

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Add test for form abort and host update

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Rework webOS Smart TV device trigger to custom trigger platform (#63950)

* Rework webOS Smart TV device trigger to custom trigger platform

* Review comments and add tests

* Fix webOS TV import from YAML (#63996)

* Fix webOS TV import from YAML

* Fix requirements

* Migrate YAML entities unique id to UUID

* Add backoff to migration task delay

* Assert result data and unique_id

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Add codeowner

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-14 22:48:45 +01:00
Simon Hansen 043b9c66b0 Add missing type annotation for launch library (#64131)
* Add missing type annotation in config flow

* Add import

* Add default None

* Fix black

* Fix linting
2022-01-14 22:15:38 +01:00
Clifford Roche fede0f8e66 Bump greeclimate to 1.0.2 (#64138) 2022-01-14 22:11:29 +01:00
Rob Bierbooms efe34c8d13 Cleanups in Twinkly code (#64139)
* Cleanup Twinkly code

* Add codeowner'

* Change const names
2022-01-14 22:07:15 +01:00
Michael e609f196bc add @mib1185 as codeowner (#64134) 2022-01-14 22:06:36 +01:00
Patrik Lindgren 03defdc922 Add test cases for Tradfri cover platform (#64072)
* Add test cases for Tradfri cover

* Simplify test

* Fix typo

* Fix typos

* Update tests/components/tradfri/test_cover.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Fix

* Remove unused function

* Move common tools to separate file

* Simplify parametrization

* Use int

* Remove loop

* Use context manager

* Simplify

* Update docstring

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-14 19:40:14 +01:00
G Johansson 99f36c9a8b Implement DeviceInfo in smhi (#64126)
* Implement DeviceInfo in smhi

* Change model
2022-01-14 19:39:41 +01:00
Duco Sebel 19c65abaa6 Fix initial HomeWizard integration issues (#63921)
* Use helper for setup and unload

* Set mutable object in __init__

* Move logic out of try..except

* Print stack trace on error in config flow

* Don't catch broad except in update_coordinator, already handled

* Fix typo

* Combine available with super.available()

* Fix issues with config_flow test

* Test coordiantor indirectly

* Test coordinator by moving time forward

* set utcnow beforehand and increase timedelta

* Roll back f658749

* Rolled back the rollback and fixed timing

* Move setting time after adding to hass
2022-01-14 19:28:24 +01:00
Paulus Schoutsen 2f18058fe7 Allow browsing favorites in Sonos media browser (#64082)
* Allow browsing favorites in Sonos media browser

* Group favorites by type, add thumbnails

* Update homeassistant/components/sonos/media_player.py

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Keep favorite groups ordering consistent

* Skip root folder if only one child available

Co-authored-by: Jason Lawrence <jjlawren@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-14 09:28:25 -08:00
Maciej Bieniek 3265a09083 Fix changing the preset mode (#64119) 2022-01-14 17:24:54 +01:00
Franck Nijhof b1848cd2f4 Modernize Elgato tests (#64060) 2022-01-14 17:16:59 +01:00
Marc Mueller b17860a7dd Upgrade boto3 to 1.20.24 + aiobotocore to 2.1.0 (#64045) 2022-01-14 17:10:09 +01:00
Marc Mueller 0407f60955 Upgrade enturclient to 0.2.3 (#64121) 2022-01-14 16:49:47 +01:00
epenet 3049f820b8 Add setup type hints to raspihats (#63988)
* Use DOMAIN to store hass.data

* Add setup type hints to binary_sensor

* Add setup type hints to switch

* Adjust callback registration

* Revert "Adjust callback registration"

This reverts commit 88c179f870536174fca969064789a19ff847f27e.

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 16:43:52 +01:00
epenet 2c0033254b Import cloud (#64116)
* Add type hints to cloud

* Import cloud

* Adjust smartthings tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 16:35:35 +01:00
epenet 9f61aecd5e Import onboarding (#64115)
* Add type hints to onboarding

* Import onboarding

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 16:29:48 +01:00
Shay Levy 532c3aca33 Bump aprslib to 0.7.0 (#64093) 2022-01-14 16:28:30 +01:00
epenet 5db1dd2e41 Deprecate Raspihats (ADR-0019) (#64113)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 14:03:31 +01:00
epenet e492cb5156 Import webhook in netatmo (#64105)
* Import webhook in netatmo

* Adjust tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 13:01:14 +01:00
epenet 0042bb68d9 Cleanup ADS constants and add type hints (#63390)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 12:58:12 +01:00
G Johansson 55143e240b Add DeviceInfo to trafikverket_weatherstation (#64083)
* Add DeviceInfo to trafikverket_weatherstation

* Correct DeviceInfo
2022-01-14 12:42:59 +01:00
epenet c1692a324b Add type hints to tts (#64050)
* Add type hint for _get_cache_files

* Add type hint for _init_tts_cache_dir

* Add init type hints for async_clear_cache

* Add type hints to async_setup_platform

* Add type hints to async_register_engine

* Add type hints to self.providers

* Add type hints to _async_store_to_memcache

* Add type hints to async_file_to_mem

* Add full type hints

* Use tuple in async_read_tts

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 12:35:29 +01:00
epenet 44a686931e Import webhook (#64102)
* Import webhook

* Adjust webhook trigger

* Fix pylint

* Add type hints to async_handle_webhook

* Revert changes to netatmo

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 12:31:02 +01:00
Joakim Sørensen 0eff3e4b26 Bump aiogithubapi to 22.1.0 (#64109) 2022-01-14 11:50:31 +01:00
Erik Montnemery 537dfbca18 Rename cloud's AlexaConfig to CloudAlexaConfig (#64065)
* Rename cloud's AlexaConfig to CloudAlexaConfig

* Tweak
2022-01-14 11:09:39 +01:00
epenet 3763407046 Move list to dict in supla discovery (#63805)
* Move list to dict in supla discovery

* Adjust key

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 10:11:04 +01:00
epenet 65f21891db Move list to dict in repetier discovery (#64001)
* Move list to dict in repetier discovery

* Add setup type hints to repetier
2022-01-14 10:10:40 +01:00
epenet 946238fb02 Import frontend (#64104)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 10:01:12 +01:00
Allen Porter 4bce92dd2d Bump google-nest-sdm to 1.4.0 (#64098) 2022-01-14 10:35:13 +02:00
RenierM26 a4656bc7bc Ezviz dependancy to 0.2.0.6 (#64100)
* Ezviz dependency to 0.2.0.6

* Gen requirements
2022-01-14 10:33:49 +02:00
Marc Mueller c6acd8efa4 Pin python-engineio and python-socketio (#64074)
Prevent potential dependency conflicts between sisyphus-control and aioambient
2022-01-14 10:25:28 +02:00
Allen Porter 64c5f69c3d Add thumbnails to nest media player (#62532) 2022-01-13 22:31:33 -08:00
Anton Malko 6a3de6ab10 Add light platform to LOOKin (#64076) 2022-01-13 17:07:02 -10:00
epenet 59c84f9586 Explicitly allow Mapping type hint in config entry async_update_entry (#63986)
* Allow MappingProxyType in async_update_entry

* Add setup type hints to ps4

* Adjust type hint to Mapping

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-14 04:06:19 +01:00
J. Nick Koston b064a24123 Add select platform to senseme (#64086)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-13 17:04:52 -10:00
Patrik Lindgren b52a8ba37a Bump pytradfri to 8.0.1 and fix fan preset mode "Auto" bug (#63920)
* Move util functions

* Fix errors

* Revert changes

* Fix tests

* Use self.async_set_percentage()

* Fix calculation functions and associated tests

* Handle case of 0

* Update tests/components/tradfri/test_util.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update tests/components/tradfri/test_util.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update tests/components/tradfri/test_util.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Handle case of 0

* Update homeassistant/components/tradfri/fan.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-14 04:01:24 +01:00
ollo69 a978661545 Address late review of Minor AndroidTV config flow (#64088)
* Minor changes for AndroidTV config flow

* Add mark.parametrize to media_player tests
2022-01-14 02:05:35 +01:00
Joakim Sørensen 5a33610739 Use Platform enum in scaffold templates (#64091) 2022-01-14 02:13:56 +02:00
Marc Mueller 99d648fde6 Fix pre-commit gen_requirements_all files regex (#64095) 2022-01-14 01:04:12 +01:00
J. Nick Koston 33ca1bb7d9 Bump flux_led to 0.28.3 to fix setting colorloop on older models (#64094)
Fixes #64087
2022-01-14 01:43:39 +02:00
Mick Vleeshouwer 5e3bfabfcf Add select entity to Overkiz integration (#62916) 2022-01-13 12:35:44 -10:00
mletenay c3c14563e5 Update to goodwe library v0.2.15 (#64089) 2022-01-14 00:34:59 +02:00
Marc Mueller cb976fa3b4 Upgrade pyserial-asyncio to 0.6 (#64041) 2022-01-14 00:31:28 +02:00
G Johansson 1a5716efc4 Enable strict typing for trafikverket_weatherstation (#64080) 2022-01-13 23:04:15 +01:00
Marc Mueller 77ea432b9e Upgrade vallox-websocket-api to 2.9.0 (#64055) 2022-01-13 22:47:31 +01:00
G Johansson d53e5dfc2d Add gjohansson-ST as codeowner to trafikverket_train (#64081) 2022-01-13 22:21:59 +01:00
Marc Mueller 30bd3234de Run pre-commit script on constraint changes (#64073) 2022-01-13 22:14:43 +01:00
Mick Vleeshouwer 3fcdaa8a5d Don't close HA aiohttp session in Overkiz Config Flow (#64052) 2022-01-13 21:35:07 +01:00
epenet 4bdc0c7120 Adjust device_tracker type hints (#64054)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 21:29:38 +01:00
Raman Gupta 867f8237e9 Remove attributes from vizio state when they don't make sense (#64025)
* Remove attributes from vizio state when they don't make sense

* rename var
2022-01-13 20:59:55 +01:00
Erik Montnemery 0fa4f616ed Remove Windows workarounds from ping (#64069) 2022-01-13 20:43:00 +01:00
Erik Montnemery abce453b5c Remove Windows workarounds from wake_on_lan (#64070) 2022-01-13 20:42:30 +01:00
Erik Montnemery b3421cf727 Remove Windows workarounds (#64068) 2022-01-13 20:41:11 +01:00
Erik Montnemery be628a7c4d Keep track of Alexa authorization status (#63979) 2022-01-13 09:47:31 -08:00
Rob Bierbooms 49a32c398c Add support for setting RGB and RGBW values for Twinkly lights (#62337)
* Change library to ttls

* Add rgbw support

* Add client session to config flow

* Fix config flow

* Adjust tests 1

* Fix more tests

* Fix last tests

* Add new tests

* Update test for coverage

* Update test for coverage 2

* Update test for coverage 3

* Change brightness to attribute

* Set RGBW mode only when available

* Add RGB support
2022-01-13 18:44:27 +01:00
Petro31 5f9a351889 Remove warnings from compensation (#63691) 2022-01-13 18:33:02 +01:00
Zac West 2df8ab865f Allow name-only location updates for mobile_app device_tracker (#62243) 2022-01-13 09:30:36 -08:00
J. Nick Koston 06fd75be7e Ensure august status is current when integration loads (#64027) 2022-01-13 18:26:47 +01:00
Hedda 88f4aeaa22 Update featured integrations screenshot in README (#64046) 2022-01-13 18:26:13 +01:00
Franck Nijhof d1eecba36a Pin libcst==0.3.23 (#64036) 2022-01-13 18:25:28 +01:00
Marcel van der Veldt ab0d512a5f Add guard in Hue availability check (#64062) 2022-01-13 09:18:34 -08:00
epenet c8043eccc9 Fix yamaha discovery (#64056)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 15:32:39 +01:00
epenet c495317a71 Adjust mailbox type hints (#64051)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 14:53:38 +01:00
epenet 5f0fcb1a70 Add setup type hints to script (#64030)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 14:24:58 +01:00
Franck Nijhof bb9d4c1e2c Update wled to 0.11.0 (#64048) 2022-01-13 14:22:29 +01:00
epenet 7c0dc2ff1f Add typing to async_get_handler in demo (#64029)
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 14:20:05 +01:00
Marc Mueller 84552d2406 Upgrade oauth2client to 4.1.3 (#64044) 2022-01-13 14:04:52 +01:00
Mick Vleeshouwer 105a7e5109 Simplify Overkiz coordinator (step 2) and address feedback (#64028) 2022-01-13 13:45:39 +01:00
Franck Nijhof 754e291e1e Remove unused serial number config entry data from Elgato (#64035) 2022-01-13 13:17:16 +01:00
Franck Nijhof 99798223d9 Elgato refactoring; add base entity (#64034) 2022-01-13 13:09:08 +01:00
epenet bd859f428a Add setup type hints to group (#64002)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 12:25:20 +01:00
Franck Nijhof af23a23888 Update elgato to 3.0.0 (#64033) 2022-01-13 11:42:26 +01:00
Erik Montnemery 6ffe04b788 Remove constant DEFAULT_CONFIG from alexa tests (#64031) 2022-01-13 11:35:16 +01:00
epenet 04d2c6e0bf Use Platform enum in load_platform (#63903)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 10:46:16 +01:00
epenet ed5e1af10a Add type hints to media_player (part 2) (#64006) 2022-01-13 10:43:52 +01:00
epenet 5cd73170de Add type hints to media_player (part 1) (#64005)
* Add type hints to media_player (part 1)

* Fix roku to match
2022-01-13 10:36:44 +01:00
G Johansson c021e58ee2 Implement binary_sensor in yale_smart_alarm (#63937) 2022-01-12 23:34:43 -10:00
Erik Montnemery b196064540 Import persistent notification (part 5) (#63902) 2022-01-13 08:45:30 +01:00
Erik Montnemery 03593aa21b Import persistent notification (part 2) (#63899) 2022-01-13 08:42:50 +01:00
Robert Svensson bc7624b417 Fix UniFi remove client service if time stamps are not integers (#63998)
* Only calculate total time if first and last seen are ints, else remove client

* Update homeassistant/components/unifi/services.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Update homeassistant/components/unifi/services.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-13 08:15:40 +01:00
epenet 91c47264b5 Add setup type hints to rfxtrx (#63963)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 07:00:14 +01:00
Christopher Bailey 20768172b1 Improve UniFi Protect Smart Sensor support (#64019)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-12 17:54:22 -10:00
J. Nick Koston cafbcb634a Bump nexia to 0.9.13 to fix setting emergency heat (#64020) 2022-01-12 16:12:30 -10:00
J. Nick Koston 35c5bd0a70 Bump flux_led to 0.28.2 to fix older A3 not being able to setup (#64017) 2022-01-12 16:12:07 -10:00
Chris Talkington 4b11a4365b Add content deeplinking support to roku (#64010) 2022-01-12 20:07:11 -06:00
J. Nick Koston 7fc1306898 Ensure flux_led is reloaded when the ICtype is changed (#64016) 2022-01-12 15:57:12 -10:00
epenet 128256a3ee Fix invalid type hint in discovery async_listen (#63987)
* Fix invalid type hint in discovery async_listen

* Add setup type hints to sabnzbd

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 02:43:43 +01:00
epenet ea08e0d62d Set event data as dict in foursquare.checkin event (#63982)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 02:37:48 +01:00
epenet 4fad49ec57 Add setup type hints to proximity (#63990)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-13 02:30:10 +01:00
Mick Vleeshouwer 1cf2f0b944 Simplify coordinator and import OverkizStateType (#63969) 2022-01-13 02:23:20 +01:00
GitHub Action 090a9f94f0 [ci skip] Translation update 2022-01-13 00:15:26 +00:00
Marc Mueller c7e05cb44a Upgrade yarl to 1.7.2 (#64009) 2022-01-12 14:07:11 -10:00
Marc Mueller 1dfb929986 Upgrade async_timeout to 4.0.2 (#64008) 2022-01-13 00:49:31 +01:00
Jonathan Keslin f43c4d51e1 Address late review of VeSync (#63945)
* Fast follow improvements to VeSync

* Apply suggestions to other platforms, use async_on_unload

* Rename dev_list to entities
2022-01-13 00:38:39 +01:00
Marc Mueller 0922627612 Remove unused pillow 8.2.0 constraint (#64011) 2022-01-13 00:28:32 +01:00
Robert Svensson 59cea56e17 Fix reconnect rather than reauth when both HA and UniFi controller restarts at the same time (#63994) 2022-01-12 15:08:04 -08:00
J. Nick Koston d3f980d402 Convert siri requests for target heating cooling state auto to a valid mode (#60220) 2022-01-12 15:06:09 -08:00
J. Nick Koston b23be22c67 Add light platform to SenseME (#63772)
Co-authored-by: Big Mike <mikelawrence@users.noreply.github.com>
2022-01-12 15:04:00 -08:00
J. Nick Koston 1c6ca908d1 Add support for changing the white strip type to flux_led (#63943) 2022-01-12 15:03:09 -08:00
J. Nick Koston 5622db10b1 Fix HomeKit reporting/setting colors when white values are present (#63948) 2022-01-12 14:58:25 -08:00
J. Nick Koston 1019156899 Fix homekit options being mutated during config_flow/migration (#64003) 2022-01-12 14:56:24 -08:00
Christopher Bailey f034ea5b4b Enable package camera by default for UniFi Protect (#63985) 2022-01-12 11:27:41 -10:00
Christopher Bailey 6473069be1 Add Chime Type select for UniFi Protect (#63993) 2022-01-12 08:55:44 -10:00
Christopher Bailey c6ef2bcdab Bump pyunifiprotect version to 1.6.1 for UniFi Protect (#63989) 2022-01-12 07:38:21 -10:00
Franck Nijhof 6fe2c135cd Update shodan to 1.26.0 (#63827) 2022-01-12 08:59:36 -08:00
Franck Nijhof b14eeca99b Revert "Weather units: Buienradar (1.2/4) (#61470)" (#63843)
This reverts commit b5d55ce7bc.
2022-01-12 08:59:05 -08:00
Franck Nijhof f93d999260 Revert "Weather units: climacell (1.3/4) (#61472)" (#63842)
This reverts commit 48057e1dfb.
2022-01-12 08:58:33 -08:00
Franck Nijhof 28d49e69c1 Expose WLED configuration URL of discovered device (#63983)
* Expose WLED configuration URL of discovered device

* Add test
2022-01-12 08:57:15 -08:00
Robert Svensson e37456fb36 Move DPI Group logic to UniFi switch platform (#58761)
* Library has normalized management of DPI apps and groups, move logic to UniFi integration

* Bump dependency to v29

* Use a generator instead of a list - Pylint

* Minor improvements

* Improve doc strings
2022-01-12 17:11:05 +01:00
epenet b71a22557d Use Platform enum in load_platform [tests] (#63904)
* Use Platform enum in numato tests

* Use Platform enum in discovery tests

* Adjust load_platform argument

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-12 15:07:30 +01:00
Simon Hansen 0fadce751f Use EntityDescription in launch_library (#63685)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-12 14:44:29 +01:00
kezziny 2df3c85ba6 Fix discord component using userid as target (#63972) 2022-01-12 14:37:22 +01:00
Milan Meulemans a6fe1c24ab Fix typo in tuya select strings (#63974) 2022-01-12 14:34:23 +01:00
epenet bcd2ec977d Add setup type hints to mailboxes (#63975)
* Add setup type hints to asterisk_cdr mailbox

* Add setup type hints to asterisk_mbox mailbox

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-12 14:25:37 +01:00
Eduard van Valkenburg 296ebc08c0 Bump brunt to 1.1.1 (#63973) 2022-01-12 14:04:23 +01:00
Marc Mueller 8460c2f66d Improve typing [helpers.entity_registry] (#63767) 2022-01-12 14:00:22 +01:00
Marc Mueller 2d2944d186 Enable deprecated-typing-alias check [pylint] (#63935) 2022-01-12 13:53:34 +01:00
Marc Mueller 2178130fba CI: Print python version (#63968) 2022-01-12 13:52:39 +01:00
epenet 1a46a6687e Add setup type hints to mailbox (#63792)
* Add setup type hints to mailbox

* Add more type hints

* Adjust base helper

* Filter type is not None in mailbox

* Filter empty platforms in device_tracker

* Filter out empty platform in notify

* Filter out empty platform in entity_component

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-12 13:44:36 +01:00
Franck Nijhof 7a699480d4 Add strict typing to LaMetric (#63891)
* Add strict typing to LaMetric

* Forgot about Pylint 🙈
2022-01-12 13:39:12 +01:00
Glenn Waters 1d9318233d Remove dead code in Environment Canada integration (#63946) 2022-01-12 13:11:04 +01:00
epenet ec1b45c922 Add setup type hints (part 3) (#63961)
* Drop return value from vesync

* Add setup type hints to netgear_lte

* Drop return value from hyperion

* Add setup type hints to opentherm_gw

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-12 12:53:50 +01:00
epenet 0d58887bc0 Add setup type hints in bluetooth_le_tracker (#63828)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-12 09:29:05 +01:00
epenet 29d58e427b Add setup type hints (part 2) (#63960)
* Add setup type hints to demo

* Add setup type hints to group

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-12 09:28:14 +01:00
Marc Mueller 67c35652f0 Update typing - collections.abc (2) (#63934) 2022-01-12 09:04:37 +01:00
epenet eafece3651 Add setup type hints (part 1) (#63955)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-12 08:49:46 +01:00
Chris Talkington fbb558618f Update rokuecp to 0.10.0 (#63951) 2022-01-12 01:29:47 -06:00
Chris Talkington 93075d5cea Reduce roku poll rate by 5s (#63952) 2022-01-12 01:29:20 -06:00
Marc Mueller d057850971 Update typing - collections.abc (3) (#63947) 2022-01-12 08:04:17 +01:00
Marc Mueller 12757a8cd2 Update typing - collections.abc (1) (#63933)
* Update typing - collections.abc (1)

* Additional typing updates
2022-01-12 07:56:35 +01:00
Allen Porter 789c0a24dd Improve nest media player clip/image and event handling for multiple events in a short time range (#63149) 2022-01-11 20:54:49 -08:00
Stefan Agner 42706f780c Convert disabled_by to DeviceEntryDisabler on load (#63944)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-11 20:50:32 -08:00
Simone Chemelli bdea7fad75 Fritz: introduce wrapper.py - part 1 (sensor) (#63682)
* Revert "Improve availability for Shelly Valve"

This reverts commit d8cbd81b456820153522e6d86bbd00c4a4a31129.

* Fritz: introduce api.py - part 1 (sensor)

* Revert

* coverage

* Apply review comments

* Better naming

* Coverage

* fix naming

* Avoid "ignore[no-any-return]"
2022-01-11 17:31:52 -10:00
GitHub Action 27dd4857df [ci skip] Translation update 2022-01-12 00:15:31 +00:00
Christopher Bailey ce0b378e05 Removes ThumbnailProxyView (#63940) 2022-01-11 13:45:40 -10:00
Christopher Bailey 05ee5e0251 Simplify UniFi Protect service setup/cleanup (#63908)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-11 23:37:47 +01:00
Marc Mueller 240c9979c7 Move disallow-any-generics to mypy.ini (#63917) 2022-01-11 13:33:25 -08:00
Franck Nijhof f4aa18de31 Replace hass.helpers: async_call_later() (#63929) 2022-01-11 13:30:59 -08:00
J. Nick Koston 259975c116 Add already_configured coverage to oncue (#63919) 2022-01-11 21:44:44 +01:00
Marc Mueller dd39389a11 Use --py39-plus setting [pyupgrade] (#63927) 2022-01-11 21:38:17 +01:00
Marc Mueller ef7316d8d9 Update typing (5) [tests] (#63926) 2022-01-11 21:28:13 +01:00
Marc Mueller fa7e787415 Update typing (3) [k-t] (#63924) 2022-01-11 21:26:55 +01:00
Marc Mueller bcb93d95bb Update typing (4) [u-z] (#63925) 2022-01-11 21:26:45 +01:00
Marc Mueller d3b7bd25ef Update typing (1) (#63922) 2022-01-11 21:26:03 +01:00
Marc Mueller 4e2cd1bec0 Update typing (2) [a-i] (#63923) 2022-01-11 21:23:26 +01:00
G Johansson 17bf51a855 Implement lock to yale_smart_alarm (#63643) 2022-01-11 09:20:15 -10:00
Franck Nijhof d3da791168 Fix missing full test suite in CI some cases (#63912)
* Fix missing full test suite in CI some cases

* Update .core_files.yaml

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Add hassfest

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-11 19:07:15 +01:00
Erik Montnemery 2eab3c8de1 Import persistent notification (part 3) (#63900) 2022-01-11 09:51:16 -08:00
Erik Montnemery 9c9dc4cb8c Import websocket_api (part 1) (#63905) 2022-01-11 18:24:08 +01:00
epenet 4460aef040 Cleanup variable names in versasense (#63914)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 18:18:39 +01:00
Matthias Alphart dc58bc375a Warn ontime.sleep in event loop (#63766)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-11 17:55:24 +01:00
Franck Nijhof 20bdcc7fff Replace hass.helpers: async_get_clientsession() (#63910) 2022-01-11 17:33:50 +01:00
epenet 43aec6e784 Move list to dict in versasense discovery (#63809)
* Move list to dict in versasense discovery

* Adjust dictionnary key

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 17:29:39 +01:00
epenet c6416955c6 Add type hints to setup_scanner (#63825)
* Add type hints to setup_scanner

* Fix aprs tests

* Revert "Add type hints to setup_scanner"

This reverts commit 3e8b2954843ee978d356e01ae5976528c74e54dc.

* Revert "Fix aprs tests"

This reverts commit 854b37aee8394e3e59ee48122226a50b8ddcf8bb.

* Add type hints to setup_scanner

* Fix aprs tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 17:29:04 +01:00
epenet 4eae888546 Fix incorrect type hint in config_per_platform helper (#63890)
* Adjust base helper

* Filter type is not None in mailbox

* Filter empty platforms in device_tracker

* Filter out empty platform in notify

* Filter out empty platform in entity_component

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 17:28:37 +01:00
Erik Montnemery 6eb0447566 Import websocket_api (part 3) (#63907) 2022-01-11 17:26:37 +01:00
Erik Montnemery 3b7448bb1c Import websocket_api (part 2) (#63906) 2022-01-11 17:26:25 +01:00
Allen Porter aab5a097a0 Bump google-cloud-pubsub to 2.9.0 (attempt #3) (#63911) 2022-01-11 17:25:50 +01:00
Erik Montnemery 8d6e2ae354 Import persistent notification part 1 (#63898) 2022-01-11 17:24:59 +01:00
Jan Bouwhuis 65deaa1daf Always send hvac_mode deprecate send_if_off (#63814) 2022-01-11 17:12:48 +01:00
Jan Bouwhuis aa73e5bd72 Fix MQTT climate optimistic preset modes (#63463)
* Always publish when preset_mode is set

* Revert "Fixed isort error"

This reverts commit 1a3c5e6460a50a75dd334331e3a9b14d0dedabe3.

* isort
2022-01-11 17:08:26 +01:00
Erik Montnemery a672dc3437 Import persistent notification (part 4) (#63901) 2022-01-11 16:57:40 +01:00
G Johansson 4b6e196606 Improve code quality alarm_control_panel in yale_smart_alarm (#63672)
* Code quality yale_smart_alarm

* Raise error on arming

* Raise error if not possible to arm/disarm

* Type checking and settings properties

* Fix direct write state
2022-01-11 07:49:46 -08:00
Daniel Perna f4f1ea4068 Update pyhomematic to 0.1.77 (#63848)
* Update pyhomematic to 0.1.77

* Add HmIP-STE2

* Add HmIPW-SPI
2022-01-11 16:45:33 +01:00
Stefan Agner 0a9927d18e Avoid locking the database for non-SQLite backends (#63847)
* Avoid locking the database for non-SQLite backends

Currently we only have a lock implementation for SQLite. Just return
success for all other databases as they are not expected to store data
in the config directory and the caller can assume that a backup can
be safely taken.

This fixes `RuntimeError: generator didn't yield` errors when creating
a backup with the current Supervisor dev builds.
2022-01-11 16:17:56 +01:00
epenet f2a6118435 Fix waqi config parsing (#63897)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 15:05:07 +01:00
Franck Nijhof 1c29260a31 Update Pillow to 9.0.0 (#63894) 2022-01-11 14:28:48 +01:00
Erik Montnemery 13abac101b Drop legacy support for sensor sum statistics (#63884) 2022-01-11 13:59:08 +01:00
Erik Montnemery 3083f059cc Drop last_reset attribute for non 'total' sensors (#63880)
* Drop last_reset attribute for non 'total' sensors

* Adjust MQTT tests

* Add exception for utility_meter

* Rewrite exception for utility_meter

* Add comment in utility_meter

* Tweak comment
2022-01-11 13:58:35 +01:00
Marc Mueller f3bc9fc740 Update Python version used for pylint (#63895) 2022-01-11 13:41:57 +01:00
epenet 277c12cf64 Add setup type hints to envisalink (#63785)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 13:39:52 +01:00
Michael Chisholm dc71d59141 dlna_dmr: Allow for upnp attributes with None contents (#63892) 2022-01-11 13:36:46 +01:00
Franck Nijhof 396825ab92 Update pyupgrade to v2.31.0 (#63888) 2022-01-11 13:22:16 +01:00
Franck Nijhof c71e2b1d5b Update wheels builder to 2022.01.0 (#63882) 2022-01-11 12:21:40 +01:00
Franck Nijhof cb66685174 Drop Python 3.8 support (#63883) 2022-01-11 12:00:53 +01:00
Franck Nijhof f92213201c Add myself as codeowner for LaMetric (#63887) 2022-01-11 11:34:58 +01:00
Marc Mueller 4d76ed9ceb Fix implicit reexport [helpers.condition] (#63830) 2022-01-11 11:03:10 +01:00
Ville Skyttä 1dd87810bc Generate supported python versions based on current and next required (#62618) 2022-01-11 10:50:17 +01:00
Erik Montnemery f4e9187d01 Remove last_reset from vicare sensor (#63879) 2022-01-11 10:25:00 +01:00
Erik Montnemery ccc4423c62 Remove last_reset from vesync sensor (#63877) 2022-01-11 10:01:47 +01:00
micha91 b4b758811f Fix MusicCast select current_option (#63668)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-11 08:49:02 +01:00
epenet 431d15bf8b Remove deprecated async_get_scanner from fritz (#63857)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 08:27:33 +01:00
epenet d8a3a26444 Remove deprecated async_get_scanner from keenetic_ndms2 (#63860)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 08:24:21 +01:00
epenet 8dcffc9993 Remove deprecated async_get_scanner from nmap_tracker (#63863)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 08:23:50 +01:00
epenet 9bcdc2b847 Deprecate iCloud YAML configuration (#63875)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 08:22:23 +01:00
epenet 0793445c40 Cleanup netgear platform schema (#63873)
* Cleanup netgear platform schema

* Cleanup config_flow

* Cleanup tests

* Cleanup CONF_APS constant

* Cleanup tests (take 2)

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-11 08:07:56 +01:00
Marc Mueller bb765803dc Upgrade hangups to 0.4.17 (#63871) 2022-01-11 07:21:17 +01:00
Allen Porter 596edc8919 Add a stream_id parameter to the WebRTC provider (#63625)
* Add a stream_id parameter to the WebRTC provider

Add an additional stream id parameter (effectively, the camera entity id)
to allow updating an existing stream source when the strema changes. This
is useful for stream sources that have expiring URLs, like Nest.

* Redefine the provider using a type

* Use old typing methods for type definintion to pass python3.8 pylint
2022-01-10 17:56:18 -08:00
Paulus Schoutsen b6f432645d Merge pull request #63867 from home-assistant/rc 2022-01-10 17:26:09 -08:00
Duco Sebel 8f6e24aa1e Add HomeWizard Energy integration (#55812)
Co-authored-by: Matthias Alphart <farmio@alphart.net>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-10 16:23:31 -08:00
Paulus Schoutsen 25b07b07d4 Bumped version to 2021.12.9 2022-01-10 16:22:00 -08:00
Paulus Schoutsen a4f717cb5a Bump frontend to 20211229.1 (#63866) 2022-01-10 16:21:53 -08:00
J. Nick Koston ab4aa5dda4 Bump aioharmony to 0.2.9 (#63858) 2022-01-10 16:21:52 -08:00
J. Nick Koston f6d21a04e0 Bump flux_led to 0.27.45 to fix missing controls on ZJ21410 models (#63854) 2022-01-10 16:21:51 -08:00
Knodd 50bd5d62aa Support Tuya strip lights with correct values for saturation and brightness (#63812)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-10 16:21:51 -08:00
Joakim Sørensen e0ba71e6cb Add client metadata to cloud register (#63794) 2022-01-10 16:21:50 -08:00
Raman Gupta 4a3d1bcb23 Fix zwave_js device actions (#63769) 2022-01-10 16:21:49 -08:00
Korn e2c7c7f582 Bump WazeRouteCalculator to 0.14 (#63718) 2022-01-10 16:21:48 -08:00
RenierM26 c7257934cc Bump PySwitchbot to 0.13.2 (#63713)
* Bump api

* gen requirements

* Bump api to 0.13.2 to remove print statement.
2022-01-10 16:21:48 -08:00
J. Nick Koston 3e02fffdb6 Bump flux_led to 0.27.44 to fix CCT ceiling lights (#63712)
- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.27.42...0.27.44

- The library was incorrectly speaking the older protocol
  to these devices when it needed to speak the newer CCT one
2022-01-10 16:21:47 -08:00
starkillerOG 50d690544a Fix Netgear used method version (#63686)
* Netgear fix used method version

* add error message

* fix imports

* fix black

* fix error mess

* rename const
2022-01-10 16:21:46 -08:00
Franck Nijhof 1444a3cce0 Fix Tuya climate c_f DP not being a string (#63680) 2022-01-10 16:21:45 -08:00
RenierM26 70d21bf3c0 Switchbot Set initial state for switch (#63654) 2022-01-10 16:21:45 -08:00
J. Nick Koston 0828eb5bc5 Fix august locks failing to lock/unlock (#63652) 2022-01-10 16:21:44 -08:00
J. Nick Koston 028169c076 Bump yalexs to 1.1.16 (#62700) 2022-01-10 16:21:43 -08:00
J. Nick Koston ea5b18c1ef Split august motion and image capture binary sensors (#62154) 2022-01-10 16:21:43 -08:00
J. Nick Koston 79d789c610 Bump flux_led to 0.27.42 (#63651)
- Fixes RGB/WW/CW controller operating mode not being detected after
  a factory reset.

- When the device is factory reset or setup for the first time the operating
  mode is reported as 0 and its expected the user will set it in the
  Magic Home app. If they skip that step Home Assistant will never be able
  to figure out which operating mode the device is using and the CW and WW
  channels will not work.

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.27.41...0.27.42
2022-01-10 16:20:18 -08:00
Leah Oswald b4391fd114 Add default mode 'auto' for tradfri starkvind air purifier on turn on (#63641)
* add default mode 'auto' for tradfri starkvind air purifier on turn on

This commits fixes the behaviour described in #60122 (purifier couldn't be
started via toggle switch). It adds 'auto' as default mode/fallback for
turning on the starkvind air purifier. This is now the same behaviour the
original app provides.

* Refactor code that set 'auto' as default value for tradfri starkvind on
turn on
2022-01-10 16:20:16 -08:00
J. Nick Koston 1923f86b75 Bump flux_led to 0.27.41 (#63638) 2022-01-10 16:20:16 -08:00
J. Nick Koston 20362867ff Ensure selected entity is pre-selected in homekit options flow (#63628)
* Ensure selected entity is pre-selected in homekit options flow

- We recently adjusted the flow to exclude entities that had
  been deleted from breaking the UI validation. We need to include
  single entities in the set of all supported entities since
  accessory mode has no domain filter

* tweak

* Additional fixes

* small tweak to speed up building the set

* merged fixed version for test branch
2022-01-10 16:20:15 -08:00
J. Nick Koston f487f2ee31 Fix KeyError during call to homekit.unpair (#63627) 2022-01-10 16:20:14 -08:00
jjlawren 4ad77a758c Bump soco to 0.25.3 (#63548) 2022-01-10 16:20:13 -08:00
Kevin Worrel 4318bec5d4 Bump screenlogicpy (#63533) 2022-01-10 16:20:13 -08:00
J. Nick Koston 2d7defbdb1 Pickup screenlogic codeowner (#61477)
- I am using this in production and already doing some work on it
2022-01-10 16:20:12 -08:00
Franck Nijhof 178b63f3b4 Fix incorrect access to entity registry in Xiaomi Miio (#63446) 2022-01-10 16:18:42 -08:00
J. Nick Koston 5f3e89d638 Bump flux_led to 0.27.40 to fix SK6812RGBW white level reporting (#63435) 2022-01-10 16:16:30 -08:00
Erik Montnemery 4d8cf8f14a Bump pychromecast to 10.2.3 (#63429) 2022-01-10 16:16:29 -08:00
GitHub Action d3cd813c5e [ci skip] Translation update 2022-01-11 00:14:57 +00:00
Paulus Schoutsen 51c98085e3 Bump frontend to 20211229.1 (#63866) 2022-01-10 16:13:08 -08:00
J. Nick Koston 173b890b21 Bump aioharmony to 0.2.9 (#63858) 2022-01-10 15:40:57 -08:00
J. Nick Koston 08337fbd36 Bump flux_led to 0.27.45 to fix missing controls on ZJ21410 models (#63854) 2022-01-10 15:40:45 -08:00
epenet caff3e0630 Add type hints to get_scanner/async_get_scanner (#63836)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 23:42:39 +01:00
epenet d76d9f9e42 Add type hint to get_scanner in ubus (#63856) 2022-01-10 23:30:15 +01:00
epenet edc4d3bb6e Fix invalid get_scanner return value in unify_direct (#63855) 2022-01-10 23:23:40 +01:00
epenet f24b3509a7 Remove deprecated async_get_scanner from netgear (#63862) 2022-01-10 22:54:35 +01:00
Kevin Hellemun 6d162929a6 Add xiaomi_miio vacuum current cleaning cycle statistics sensor (#61098) 2022-01-10 22:49:59 +01:00
epenet 0ac9b62f97 Fix incorrect type hint in async_setup_scanner (#63833)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 22:47:24 +01:00
Christopher Bailey 0030f114f9 Add UniFi Protect global services (#63768)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-10 11:04:53 -10:00
epenet 52959cf48c Remove ee brightbox integration (#63839)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 20:21:46 +01:00
Franck Nijhof 003a1e87a7 Remove unneeded boolean conversion from senseme (#63783) 2022-01-10 09:12:57 -10:00
Jonathan Keslin 56c577c832 Expose power & energy usage of VeSync outlets as separate sensors (#61837) 2022-01-10 09:39:31 -08:00
Marc Mueller 021debb5c5 Resolve implicit imports (#63832) 2022-01-10 17:10:46 +01:00
epenet 8fcca8c88b Allow None agent in conversation (#63761) 2022-01-10 17:02:54 +01:00
Guido Schmitz eacd9f9994 Bump devolo-plc-api to 0.7.1 (#63834) 2022-01-10 16:56:04 +01:00
epenet e3784b9c3e Add setup type hints to yamaha (#63811)
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 16:45:59 +01:00
epenet 505320f827 Add setup type hints to season (#63798)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 16:38:32 +01:00
Marc Mueller 01baa20671 Fix implicit reexport [dt_util] (#63829) 2022-01-10 16:31:23 +01:00
epenet c6aaa24027 Add type hints to async_setup_scanner (#63826)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 16:13:54 +01:00
epenet 896885a2c3 Add setup type hints to supervisord (#63807)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 16:12:17 +01:00
jjlawren 740a8c33ee Add audio_delay number entity to Sonos (#63566) 2022-01-10 16:04:40 +01:00
dougiteixeira e2f9284c55 Fix the translation strings for Tuya Select (#63353) 2022-01-10 15:55:09 +01:00
Robert Hillis 7c51d2f159 Add strict typing to abode (#57673) 2022-01-10 15:54:09 +01:00
epenet bc2f4e82e3 Add setup type hints to nx584 (#63796)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 15:43:34 +01:00
epenet 0471a9e885 Add setup type hints to workday (#63810)
* Add setup type hints to workday

* Adjust dict accessor

* Adjust tests

* Undo changes to tests

* Adjustments to loading of config

* Once more

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 15:21:16 +01:00
Knodd 40d0a6e99e Support Tuya strip lights with correct values for saturation and brightness (#63812)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-10 15:21:03 +01:00
Franck Nijhof 2e97719650 Update sentry-sdk to 1.5.2 (#63821) 2022-01-10 15:14:39 +01:00
epenet c370a4b987 Use local constant in netgear_lte config schema (#63753)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 15:13:30 +01:00
Joakim Sørensen d1bb916070 Add client metadata to cloud register (#63794) 2022-01-10 14:49:25 +01:00
epenet ca4cd4fbda Add setup type hints to mikrotik (#63797)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 14:05:08 +01:00
Franck Nijhof c339233421 Update PyTurboJPEG to 1.6.5 (#63803) 2022-01-10 13:28:04 +01:00
Sagi Bernstein f00a029910 Support 4 channels switch (#63724) 2022-01-10 13:27:47 +01:00
Erik Montnemery 0b28881b75 Enable Google Assistant state reporting by default (#63801) 2022-01-10 13:18:40 +01:00
Ryan Fleming 77d22c8542 Allow self signed certs on octoprint server (#59213) 2022-01-10 13:15:38 +01:00
Simone Chemelli 69c8a02e16 Address late Shelly review (#63754)
* Late review

* Apply review comments

* Revert review original comment

* Optimizization: loop exit

* Break instead of return

* Missing super init
2022-01-10 13:14:19 +01:00
epenet 9a312e7a7d Drop use of discovery_info in aquostv (#63777)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 13:11:02 +01:00
Gunnar Klauberg 0f2e2aef2f Add DSMR config options for EasyMeter/Q3D (#63669)
Co-authored-by: Rob Bierbooms <mail@robbierbooms.nl>
2022-01-10 13:08:41 +01:00
Petro31 9c6c13a55c Add is_number as a test for use in select, selectattr, reject, and re… (#63732) 2022-01-10 13:00:43 +01:00
Marc Mueller 912ff76fda Enable strict typing for core.py (#63244) 2022-01-10 12:07:22 +01:00
epenet 51292cc135 Fix incorrect type hint in discovery helper (#63789)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 11:14:31 +01:00
epenet 06e2f58529 Adjust custom data location in hdmi_cec (#63791)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 10:57:48 +01:00
epenet 24314f1b11 Use Platform enum in load_platform [m-z] (#63751) 2022-01-10 10:45:11 +01:00
epenet 1305affda0 Add setup type hints to hdmi_cec (#63788)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 10:35:19 +01:00
epenet c7cb26cbab Use Platform enum in load_platform [a-l] (#63750) 2022-01-10 10:30:47 +01:00
Orce MARINKOVSKI b78e22e012 Update MQTT light schema template (#62759)
* shema template update

* tests to cover the additional template variables

* fix flake8: too many blank lines

* Update schema_template.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-01-10 09:57:56 +01:00
epenet 4f3fa0dbbe Add setup type hints to gpmdp (#63787)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 09:51:23 +01:00
chpego 4c8dac9607 Bump py synologydsm api to 1.0.5 (#63786) 2022-01-10 09:44:12 +01:00
J. Nick Koston 4dfe6b3355 Cleanups for SenseME switch platform (#63774) 2022-01-10 09:38:08 +01:00
epenet ccdfe0fb01 Add setup type hints to avion (#63778)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 09:35:23 +01:00
epenet 82f91bcd5f Adjust migrate_entry in axis (#63779)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 09:34:22 +01:00
epenet 66809464e4 Add setup type hints to aws (#63781)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 09:33:04 +01:00
epenet f984e17d4e Add setup type hints to emby (#63784)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-10 09:31:26 +01:00
RenierM26 18706e6408 Bump PySwitchbot to 0.13.2 (#63713)
* Bump api

* gen requirements

* Bump api to 0.13.2 to remove print statement.
2022-01-10 07:19:04 +01:00
J. Nick Koston a8a6e22063 Add DeviceInfo to steamist (#63773) 2022-01-09 21:28:59 -08:00
Raman Gupta 7b3e5fdf9d Fix zwave_js device actions (#63769) 2022-01-09 21:28:36 -08:00
J. Nick Koston b5bb692fe4 Fix august locks failing to lock/unlock (#63652) 2022-01-09 21:27:27 -08:00
Franck Nijhof d0ddf3ce8c Fix Tuya climate c_f DP not being a string (#63680) 2022-01-09 21:26:28 -08:00
Paulus Schoutsen 689504af86 Raise if trying to store mocks in storage (#63622) 2022-01-09 21:20:21 -08:00
Christopher Bailey d8ba90fb8a Refactor EntityDescriptions for UniFi Protect (#63716) 2022-01-09 18:37:24 -10:00
J. Nick Koston b658c053ec Add switch platform to SenseME (#63719) 2022-01-09 17:16:19 -10:00
epenet 36dd8ca09a Enable strict typing in browser (#63760)
* Add setup type hints to browser

* Add browser to script-typing
2022-01-10 04:02:50 +01:00
Simone Chemelli 9479ef0a34 Fix climate channel for Shelly (#63756)
* Revert "Improve availability for Shelly Valve"

This reverts commit d8cbd81b456820153522e6d86bbd00c4a4a31129.

* Fix channel for climate
2022-01-10 01:16:13 +01:00
GitHub Action d99548fc04 [ci skip] Translation update 2022-01-10 00:14:49 +00:00
RogerSelwyn 4ee4d909ec Bump pyskyqhub to 0.1.4 (#63734)
* Bump pyskyqhub to 0.1.4

* Bump pyskyqhub to 0.1.4
2022-01-09 23:11:58 +02:00
J. Nick Koston 96aa623d2a Add discovery support to steamist (#63707) 2022-01-09 10:34:50 -10:00
J. Nick Koston 0efdc7fa65 Additional SenseME cleanups (#63748)
* Additional SenseME cleanups

* drop the super as its no longer needed

* one more
2022-01-09 19:48:54 +01:00
Brandon Rothweiler 8915b73f72 Use SensorEntityDescription in Mazda integration (#63423)
* Use SensorEntityDescription in Mazda integration

* Change lambdas to functions

* Minor fixes

* Address review comments
2022-01-09 16:46:18 +01:00
Korn eb50de5baa Bump WazeRouteCalculator to 0.14 (#63718) 2022-01-09 15:29:06 +01:00
Daniel Hjelseth Høyer 0e0ef0aa17 Tibber cost statistics (#63626)
* Tibber cost statistics

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Tibber cost statistics

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* unit

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* unit

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Update homeassistant/components/tibber/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/tibber/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* break lines

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-09 12:20:53 +01:00
starkillerOG 1d24fb7ad9 Fix Netgear used method version (#63686)
* Netgear fix used method version

* add error message

* fix imports

* fix black

* fix error mess

* rename const
2022-01-09 11:27:42 +01:00
Jonathan Keljo 6c6607b5be Improve multi-device test coverage for greeneye_monitor (#63657) 2022-01-09 01:44:18 -06:00
Jonathan Keljo 15f1a850ba Eliminate redundant code in greeneye_monitor (#63661) 2022-01-09 01:24:16 -06:00
Marc Mueller 4d3f70ad05 Use Platform enum (#63577) 2022-01-09 07:57:51 +01:00
J. Nick Koston 8e0b124875 Add binary_sensor platform to SenseME (#63660) 2022-01-08 19:52:51 -10:00
epenet 34a967c48a Explicitely allow Platform enum in config_entries (#63581)
* Explicitely allow Platform enum in config_entries

* Undo argument name change and conversion to string

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-09 06:08:04 +01:00
epenet 665eeb4b27 Explicitely allow Platform enum in discovery helper (#63571)
* Adjust Platform type hint in discovery helper

* Adjust amcrest

* Adjust comfoconnect

* Adjust ecovacs

* Adjust egardia

* Rename arguments

* Convert Platform enum to string explicitely

* Revert "Adjust egardia"

This reverts commit ff7b0d6100ee3ef820fe5aa8497d47951a34e3c4.

* Revert "Adjust ecovacs"

This reverts commit 2749045e1359937811c048fa67c7f93eb9cf96ac.

* Revert "Adjust comfoconnect"

This reverts commit bfff08f7fc692550b20f504002f5d9c9317cef01.

* Undo argument name change and conversion to string

* Remove comment

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-09 06:06:56 +01:00
Marc Mueller 89859aad8d Fix ParamSpec Callable return types (#63701) 2022-01-09 06:03:18 +01:00
J. Nick Koston 37285194f8 Bump flux_led to 0.27.44 to fix CCT ceiling lights (#63712)
- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.27.42...0.27.44

- The library was incorrectly speaking the older protocol
  to these devices when it needed to speak the newer CCT one
2022-01-08 22:27:31 -06:00
Shay Levy 1f92c25b8c Remove package constraint to websockets (#63703) 2022-01-09 05:04:19 +01:00
GitHub Action a8fee4c2f6 [ci skip] Translation update 2022-01-09 00:15:18 +00:00
Christopher Bailey dec22aa510 Use MediaPlayerDeviceClass for UniFi Protect media_player (#63708) 2022-01-08 14:06:00 -10:00
Christopher Bailey 0232021f5c Add UniFi Protect camera motion sensors and ThumbnailProxyView (#63696) 2022-01-08 13:51:49 -10:00
Franck Nijhof 71208b2ebb Replace custom Tuya device classes with StrEnum (#63681) 2022-01-09 00:44:27 +02:00
Simone Chemelli e6419fd505 Fritz: small optimization (#63693)
* Revert "Improve availability for Shelly Valve"

This reverts commit d8cbd81b456820153522e6d86bbd00c4a4a31129.

* Small optimization
2022-01-09 00:39:51 +02:00
Simone Chemelli e3c793718c Add button and deprecate service for Fritz cleanup (#63692)
* Revert "Improve availability for Shelly Valve"

This reverts commit d8cbd81b456820153522e6d86bbd00c4a4a31129.

* Add cleanup button

* Wrong commit

* Add service deprecation warning
2022-01-09 00:38:28 +02:00
Leah Oswald ec508130d2 Add default mode 'auto' for tradfri starkvind air purifier on turn on (#63641)
* add default mode 'auto' for tradfri starkvind air purifier on turn on

This commits fixes the behaviour described in #60122 (purifier couldn't be
started via toggle switch). It adds 'auto' as default mode/fallback for
turning on the starkvind air purifier. This is now the same behaviour the
original app provides.

* Refactor code that set 'auto' as default value for tradfri starkvind on
turn on
2022-01-08 21:01:54 +01:00
Marc Mueller 8c51303332 Use Platform enum [mysensors] (#63687) 2022-01-08 20:55:24 +01:00
micha91 073a080bb2 Fix the unregistration of Capability based MusicCast Entities (#63665) 2022-01-08 12:42:40 -06:00
Jonathan Keljo a754584284 Move greeneye_monitor constants into their own file (#63659) 2022-01-08 12:32:24 -06:00
Simone Chemelli 38244dd245 Fritz cleanup: part2 (triggers for button/service) (#63564)
* Revert "Improve availability for Shelly Valve"

This reverts commit d8cbd81b456820153522e6d86bbd00c4a4a31129.

* Fritz cleanup: part2 (triggers for button/service)

* Remove commit

* Fix func overlapping

* Apply review comments

* Remove too early warning

* Missing wrapping
2022-01-08 19:23:12 +01:00
Christopher Bailey 8860549ef2 Minor bugfixes for UniFi Protect (#63475) 2022-01-08 06:49:55 -10:00
Franck Nijhof 51754f796b Improve typing of Steamist sensors (#63674) 2022-01-08 06:47:57 -10:00
Joakim Sørensen fa15f91dbf Bump awesomeversion to 22.1.0 (#63676) 2022-01-08 16:25:13 +01:00
Marc Mueller eb2238a9e1 Add types for HassJob [helpers.event] (#63675) 2022-01-08 14:26:22 +01:00
Marc Mueller e74d7b22f3 Bump mypy to 0.931 (#63673) 2022-01-08 14:10:16 +01:00
Franck Nijhof 80a4ec82b4 Deprecate Media Player Classic Home Cinema (ADR-0004) (#63598) 2022-01-08 13:41:22 +01:00
Raman Gupta 9e4e43cf77 Handle zwave_js metadata/value updates when the unit changes (#63579)
* Handle zwave_js metadata updates when the unit changes

* Use value updated event instead of metadata updated event so we don't get an invalid state value

* update comments and formatting

* simplify

* Update tests/components/zwave_js/test_sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update tests/components/zwave_js/test_sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update tests/components/zwave_js/test_sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* fix tests

* add additional assertions

* Add unit checks and simplify logic

* Add unit assertion

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-08 13:23:29 +01:00
Andreas Oberritter b55b802aeb Use device registry in aten_pe (#61906) 2022-01-08 13:04:53 +01:00
RenierM26 e3848944e8 Switchbot Set initial state for switch (#63654) 2022-01-08 12:58:31 +01:00
Daniel Hjelseth Høyer 039507c86a Update pyTibber to 0.21.7 (#63663) 2022-01-08 12:56:33 +01:00
Andreas Oberritter 798eb77110 Bump pysml to 0.0.6 (#63664) 2022-01-08 12:54:31 +01:00
Simon Hansen 3f1d5ac7fc Bump pylaunches to 1.2.1 (#63667) 2022-01-08 12:51:31 +01:00
Simon Hansen b22a9b8669 Refactor Launch Library to use config flow (#62416)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-08 11:47:16 +01:00
Mick Vleeshouwer b4187540c0 Improve typing for Overkiz integration and address late feedback (#63483)
* Bump pyoverkiz to 1.0.2

* Remove cast for str enum.

* Address feedback on coordinator

* Change datatype to Callable

* Address feedback

* Move scenarios to seperate list

* Cast Device to avoid issues with DataUpdateCoordinator default

* Remove unnecessary casts and improve type notation

* Check if state.value exists

* Fix last mypy error (thanks @epenet)

* Remove extra string cast

* Improve sensor typing

* Update pyoverkiz and remove typing

* Small code improvement

* Fix assert to reflect real world

* Properly type Callable to not return Any

* Remove unnecessary cast

* Add OverkizStateType

* Bugfix

* Address feedback - multiline lambda

* Pylint fix

* Remove added binary sensor
2022-01-08 10:53:15 +01:00
J. Nick Koston 943aaaeb3f Add SenseME integration (#62909)
Co-authored-by: Big Mike <mikelawrence@users.noreply.github.com>
2022-01-07 22:53:05 -10:00
J. Nick Koston 509ddc84a5 Add support for managing 2.4G remotes in flux_led (#63646) 2022-01-07 21:26:10 -10:00
J. Nick Koston ba402237c2 Add temp and minutes remaining sensors to steamist (#63653) 2022-01-07 21:02:12 -10:00
J. Nick Koston 9dd09f66e2 Ensure selected entity is pre-selected in homekit options flow (#63628)
* Ensure selected entity is pre-selected in homekit options flow

- We recently adjusted the flow to exclude entities that had
  been deleted from breaking the UI validation. We need to include
  single entities in the set of all supported entities since
  accessory mode has no domain filter

* tweak

* Additional fixes

* small tweak to speed up building the set

* merged fixed version for test branch
2022-01-07 17:46:39 -08:00
J. Nick Koston 0b67d7fb28 Bump flux_led to 0.27.42 (#63651)
- Fixes RGB/WW/CW controller operating mode not being detected after
  a factory reset.

- When the device is factory reset or setup for the first time the operating
  mode is reported as 0 and its expected the user will set it in the
  Magic Home app. If they skip that step Home Assistant will never be able
  to figure out which operating mode the device is using and the CW and WW
  channels will not work.

- Changelog: https://github.com/Danielhiversen/flux_led/compare/0.27.41...0.27.42
2022-01-07 17:45:39 -08:00
Franck Nijhof 146e1c5eb5 Revert "Update Numpy to 1.22.0 (#63559)" (#63648)
This reverts commit d8e1e1396c.
2022-01-07 17:11:39 -08:00
GitHub Action 0827608302 [ci skip] Translation update 2022-01-08 00:14:39 +00:00
Artem Draft 3df2ab709a Bump pylgnetcast to 0.3.7 (#63645) 2022-01-08 01:06:49 +01:00
J. Nick Koston aee412f60b Bump flux_led to 0.27.41 (#63638) 2022-01-07 22:43:42 +01:00
Franck Nijhof 6d2fc38f58 Update youtube_dl to 2021.12.17 (#63592) 2022-01-07 20:27:35 +01:00
J. Nick Koston 945477a482 Fix KeyError during call to homekit.unpair (#63627) 2022-01-07 19:47:14 +01:00
Paulus Schoutsen 1ea3a17d89 Allow sending webhooks via WS connection (#62725) 2022-01-07 10:41:36 -08:00
Franck Nijhof 3f7275a9c7 Give scenes last activated state (#62673) 2022-01-07 19:02:32 +01:00
Jacek Kończewski e03283292b Add new TRV Beca and proper Presets with new one Temporary Manual (#60337) 2022-01-07 18:52:41 +01:00
Glenn Waters 128433758e Add SensorEntityClass support for Environment Canada integration (#58615) 2022-01-07 18:28:13 +01:00
Phil Cole 9ef1033152 Use entities instead of devices for nissan leaf (#63542) 2022-01-07 17:54:37 +01:00
Kevin Stillhammer 397538fd1a Use find_coordinates in google_travel_time (#61423) 2022-01-07 17:45:29 +01:00
Erik Montnemery fc2025509e Teach call service script action about entity registry ids (#61172) 2022-01-07 08:42:47 -08:00
Diogo Gomes d5d8eefded Case sensitive SQL queries checks (#62752) 2022-01-07 17:19:30 +01:00
Daniel Hjelseth Høyer 04796c4410 Add missing last_rest in Tibber (#61914) 2022-01-07 16:57:52 +01:00
epenet f3af0781f8 Add setup type hints [f-g] (#63599)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:48:54 +01:00
Marc Mueller 54cb1e7556 Add strict typing to core.py (5) - Task (#63243) 2022-01-07 16:48:34 +01:00
Matt Zimmerman ae3ff0a8ce Skip empty test directories in gen_requirements_all (#62970) 2022-01-07 16:45:27 +01:00
Allen Porter 4203e1b064 Delete nest event image fetching and use same APIs as media player (#62789) 2022-01-07 16:37:54 +01:00
G Johansson 91900f8e4e Add yale_smart_alarm config options flow (#54097) 2022-01-07 16:32:49 +01:00
epenet ecb921949a Add setup type hints [v-y] (#63614)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:30:01 +01:00
epenet 0700c73bd0 Add setup type hints [s-t] (#63613)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:29:16 +01:00
epenet d94f68d697 Add setup type hints [n-r] (#63607)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:28:24 +01:00
epenet d504a4dbda Add setup type hints [k-m] (#63605)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:27:49 +01:00
epenet 8c49fff699 Add setup type hints [h-i] (#63603)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:26:57 +01:00
epenet a08b758bfb Add setup type hints [a-e] (#63597)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-07 16:24:13 +01:00
Franck Nijhof 56692b5a2a Fail CI when package init file is missing in component tests (#63589)
* Fail CI when package init file is missing in component

* Warning -> error

* Force bash

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-07 15:30:45 +01:00
G Johansson e7ef317b43 Bump yalesmartalarmclient to v0.3.7 (#63596) 2022-01-07 15:15:23 +01:00
Tobias Perschon beed861a19 Add daily energy usage sensor to daikin (#61617) 2022-01-07 14:58:21 +01:00
tausen 95f8c26e23 Auto-setup a few more IHC devices (#58806) 2022-01-07 14:47:12 +01:00
Michael 9deebaa65f Move lock and devicelock attributes into sensors for all AVM Fritz!Smarthome entities (#60426) 2022-01-07 14:46:17 +01:00
Ted van den Brink b3f3e7259e Add long term statistics to buienradar (#58917) 2022-01-07 14:36:43 +01:00
Tuen Lee 8b216db885 Tuya Alarm Initial commit (#60080) 2022-01-07 14:20:30 +01:00
Erik Montnemery 09986436a1 Make idle chromecasts appear as idle instead of off (#61786) 2022-01-07 14:19:41 +01:00
rianadon b5d55ce7bc Weather units: Buienradar (1.2/4) (#61470) 2022-01-07 14:15:40 +01:00
Steven Looman 9bf1397c54 Fix upnp device not being reinitialized after device changes location (#63133) 2022-01-07 14:10:11 +01:00
Raman Gupta 6d42af1b12 Add state translations and icons to ClimaCell sensors (#63526) 2022-01-07 14:08:49 +01:00
Kevin Stillhammer 9236c08e6c Add SensorStateClass to Kraken sensors (#63590) 2022-01-07 13:21:36 +01:00
RefineryX b3c2ebd9ca Add support for Levoit Core 300S air purifier to VeSync integration (#62488) 2022-01-07 12:55:39 +01:00
Simon Tegelid 4c1f65b7a4 Bump pybotvac version for the neato integration (#63586) 2022-01-07 12:54:57 +01:00
Kevin Stillhammer b1f19ede34 Add Kraken configuration_url (#63565) 2022-01-07 12:53:11 +01:00
Marc Mueller 5783c07630 Add missing TypeVar in vlc_telnet decorator (#63587) 2022-01-07 12:08:28 +01:00
Marc Mueller 7b78862a11 Revert "Use Platform enum [emulated_hue] (#63498)" (#63576)
This reverts commit 4fd555f508.
2022-01-07 11:38:48 +01:00
Erik Montnemery 8bf8709d99 Simplify groups (#63477)
* Simplify group

* Rename async_update to async_update_group_state and mark it as callback

* Simplify _async_start
2022-01-07 08:58:45 +01:00
J. Nick Koston e222e1b6f0 Add device configuration entities to flux_led (#62786)
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2022-01-06 21:02:19 -10:00
Marc Mueller 250af90acb Improve callable typing [helpers.event] (#63543) 2022-01-06 21:01:27 -10:00
J. Nick Koston ad68d0795e Fix missing device name with legacy flux_led discovery (#62785) 2022-01-06 19:43:22 -10:00
J. Nick Koston ff3b7489ec Pickup code owner for flux_led (#63573)
- I am now using the smart plugs in production since support
  for disconnecting them from the cloud was added
2022-01-06 19:17:36 -06:00
GitHub Action f0a3e241ee [ci skip] Translation update 2022-01-07 00:14:47 +00:00
Marc Mueller 198ade5e2b Fix typing TrackTemplateResultListener [helpers.event] (#63541) 2022-01-06 13:43:54 -10:00
Michael f8a78a49bb Fix cleanup service to just run on loaded config entries in Fritz!Tools (#63570) 2022-01-06 12:28:12 -10:00
Christopher Bailey 3e2495f417 Isolate consts better to where they are used (#63569) 2022-01-06 11:57:56 -10:00
epenet 442690b885 Rewrite vultr unittest to pytest (#63367)
* Rewrite vultr unittest to pytest

* Fix tests

* Fix annotations

* Don't check setup_platform return value

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-06 21:44:53 +01:00
epenet 5fa6ef2849 Use attr** in thermoworks-smoke (#62436)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-06 20:56:30 +01:00
Christopher Bailey 812cb4a9d8 UniFi Protect test sensor followup (#63563) 2022-01-06 19:31:25 +01:00
Franck Nijhof 469b6a0eb1 Update requests to 2.27.1 (#63552) 2022-01-06 19:15:17 +01:00
Marc Mueller 120c199ddf Fix flux_led sync time (#63554) 2022-01-06 07:57:01 -10:00
Franck Nijhof d8e1e1396c Update Numpy to 1.22.0 (#63559)
* Update Numpy to 1.22.0

* Remove obsolete ignore
2022-01-06 18:51:13 +01:00
Allen Porter 1ed2497ec9 Revert "Bump google-cloud-pubsub to 2.9.0 (attempt #2) (#63522)" (#63561)
This reverts commit 1baa3d87d1.
2022-01-06 09:46:11 -08:00
Franck Nijhof 31f37f3363 Update PyTurboJPEG to 1.6.4 (#63553) 2022-01-06 08:56:39 -08:00
G Johansson 3950933514 Code improvements to trafikverket_weatherstation (#62854)
* Code cleanup

* Fix extra state attributes

* Fix review comments

* Fix precipitation_amount if None

* Fix sensors returning None

* Use const for sensors reporting None
2022-01-06 16:33:06 +01:00
Aaron Bach c341adb0d6 Move ReCollect Waste "next pickup" info to its own sensor (#62558) 2022-01-06 08:05:48 -07:00
Allen Porter 1baa3d87d1 Bump google-cloud-pubsub to 2.9.0 (attempt #2) (#63522) 2022-01-06 15:47:06 +01:00
Allen Porter 5edc17a358 Add link flags for grpc armv7 wheels (attempt #2) (#63521) 2022-01-06 15:36:49 +01:00
jjlawren 7f077c8956 Bump soco to 0.25.3 (#63548) 2022-01-06 15:26:03 +01:00
Jonathan Keljo 41625f7410 Bump greeneye_monitor to v3.0.1 (#63531) 2022-01-06 14:59:56 +01:00
Simone Chemelli 60b6871b46 Fritz cleanup: part1 (naming) (#63535) 2022-01-06 12:15:40 +01:00
Franck Nijhof 53d86d4317 Deprecate 1-Wire SysBus (ADR-0019) (#63513)
* Deprecate 1-Wire (ADR-0019)

* Deprecate only SysBus

* Remove from init

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Clarify OWServer is supported

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-06 12:09:43 +01:00
rikroe e9dec5d03a Add button entities to bmw_connected_drive (#63136)
Co-authored-by: Gerard <gerard33@users.noreply.github.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-01-06 12:05:25 +01:00
Dmitry Vasilyev 77ccf46c9b Updated the support of Tuya Circuit Breaker 'dlq' (#63519)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-06 12:01:16 +01:00
Kevin Worrel 10e2caf9e6 Bump screenlogicpy (#63533) 2022-01-05 22:32:55 -10:00
Paulus Schoutsen 7872f87dd7 Allow registering a webhook as local only (#63516) 2022-01-05 23:45:02 -08:00
Marc Mueller 8207665c3e Add strict typing to core.py (1) - EventBus (#63239) 2022-01-06 03:14:42 +01:00
J. Nick Koston 4283b2358c Add support for Steamist steam showers (#63251)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-06 02:55:57 +01:00
Christopher Bailey 7d442122c0 Add UniFi Protect sensor platform (#63524)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-05 15:47:47 -10:00
Allen Porter da71e89f53 Add tests that exercise nest dhcp discovery behavior (#62526)
* Add tests that exercise nest dhcp discovery

Add tests that exercise the behavior of dhcp discovery for nest,
which is effectively that it doesn't work -- it only works when
you have already added a configuration.yaml.

Discovery can be made to work by using an entirely config flow
driven approach, which is in discussion.

* Adjust whitespace from merge
2022-01-05 17:35:55 -08:00
Eric Severance 7eacabf684 Share common EntityTestHelpers in wemo tests (#62455) 2022-01-05 17:22:38 -08:00
J. Nick Koston c16794968f Consistently type/coerce climate humidity to be an int (#61456) 2022-01-06 02:09:43 +01:00
Marc Mueller caaa1b32c1 Add strict typing to core.py (3) - Service (#63241) 2022-01-06 01:18:17 +01:00
GitHub Action dd118fe013 [ci skip] Translation update 2022-01-06 00:15:13 +00:00
Franck Nijhof 24ae379fad Deprecate Piglow (ADR-0019) (#63505) 2022-01-05 23:36:02 +01:00
Franck Nijhof 8c67963991 Deprecate Raspberry Pi GPIO (ADR-0019) (#63503) 2022-01-05 23:35:41 +01:00
Franck Nijhof c88c3e9abb Deprecate pigpio Daemon PWM LED (ADR-0019) (#63504) 2022-01-05 23:35:22 +01:00
Franck Nijhof 274955f492 Deprecate Blinkt! (ADR-0019) (#63510) 2022-01-05 23:35:12 +01:00
Franck Nijhof 2af50b831b Deprecate Enviro pHAT (ADR-0019) (#63509) 2022-01-05 23:34:57 +01:00
Franck Nijhof 7b79a0a086 Deprecate MH-Z19 CO2 Sensor (ADR-0019) (#63508) 2022-01-05 23:34:48 +01:00
Franck Nijhof 25490b892b Deprecate Orange Pi GPIO (ADR-0019) (#63507) 2022-01-05 23:34:39 +01:00
Franck Nijhof e9e25b55dc Deprecate PiFace Digital I/O (PFIO) (ADR-0019) (#63506) 2022-01-05 23:34:26 +01:00
Phil Cole 10027b2090 Add button to start leaf charge (#62948)
Co-authored-by: Bruce Duncan <bwduncan@gmail.com>
2022-01-05 23:33:04 +01:00
Phil Cole 8cacfd852b Optimise sleep time for nissan leaf servers (#62857) 2022-01-05 23:22:15 +01:00
Christopher Bailey 4e56217b89 Add UniFi Protect binary_sensor platform (#63489)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-05 11:59:21 -10:00
Pascal Reeb 00e7421e3a Upgrade pynuki to 1.5.2 (#62866) 2022-01-05 22:57:55 +01:00
Allen Porter 274c9c079e Revert "Add link flags for grpc armv7 wheels" (#63518) 2022-01-05 22:52:26 +01:00
Franck Nijhof ce31af5b42 Revert "Bump google-cloud-pubsub to 2.9.0 (to bump grpcio)" (#63517) 2022-01-05 22:50:11 +01:00
rhpijnacker 32c416b646 Bump dsmr-parser dependency to 0.32 (#63436) 2022-01-05 22:50:00 +01:00
Hans Oischinger 2969a7ab4f Address late review of vicare config flow (#63343)
* Review comments from #56691

* Adapt to review suggestions

* Update homeassistant/components/vicare/strings.json

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-05 22:49:42 +01:00
jjlawren 10195dc700 Improve server selection for Plex config flows (#63408) 2022-01-05 22:20:33 +01:00
Nico Müller cf1df5ff38 Add 'fire_event' command to websocket api (#63378)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-05 12:28:40 -08:00
Loek Sangers 25fe213f22 Enable local fulfillment google assistant (#63218)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-05 12:09:59 -08:00
Allen Porter f786237def Bump google-cloud-pubsub to 2.9.0 (#63493)
The primary motivation is to kick off building wheels for grpcio
2022-01-05 12:03:45 -08:00
stegm 0aaf0b6160 Add configuration url to kostal plenticore (#63502) 2022-01-05 20:34:56 +01:00
Marc Mueller 4fd555f508 Use Platform enum [emulated_hue] (#63498) 2022-01-05 20:27:01 +01:00
Simone Chemelli c3a432620c Improve cleanup service for Fritz (#61484) 2022-01-05 20:21:15 +01:00
Franck Nijhof da1d74feb8 Deprecate Raspberry Pi RF (ADR-0019) (#63501) 2022-01-05 19:38:43 +01:00
Franck Nijhof 640e625c2c Deprecate Sense HAT (ADR-0019) (#63500) 2022-01-05 19:34:45 +01:00
Christopher Bailey d0d5222bf4 UniFi Protect test refactoring (#63486)
* UniFi Protect test refactoring

* More pylint fixes

* Use load_fixture helper

* yield to return where able
2022-01-05 19:29:59 +01:00
Franck Nijhof 8864492e35 Mark PVOutput as platinum on the integration quality scale (#63453) 2022-01-05 19:26:43 +01:00
Marc Mueller 945b67c5c5 Fix 3rd party imports (#63455) 2022-01-05 19:00:47 +01:00
Marc Mueller 6873b02858 Add timeouts to CI jobs (#63491) 2022-01-05 18:53:47 +01:00
epenet ef02f2005a Add setup type hints [v-w] (#63484)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 18:23:43 +01:00
Marc Mueller ae6d9c229e Use const imports [l-z] (#63469) 2022-01-05 18:21:20 +01:00
Erik Montnemery 6d57dbde68 Support passing callbacks to start.async_at_start (#63473)
* Support passing callbacks to start.async_at_start

* Update homeassistant/helpers/start.py

Co-authored-by: Franck Nijhof <git@frenck.dev>

* Fix imports

Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-05 18:04:09 +01:00
Erik Montnemery 1b44c25015 Sort google_assistant consts (#63487) 2022-01-05 17:54:29 +01:00
Tom Hennigan ce138dd30e Add unique id to flic buttons (#61496)
* Use bluetooth address as unique id for flic buttons.

* Always lower case address for uid and add tests.

* Update test to set up component.

* Use format_mac(addr) as unique id.

* Only patch pyflic objects and use query entity registry for buttons.

* Replace ExitStack with patch.multiple, remove assert_setup_component.

* Test binary sensor is present in state machine.
2022-01-05 17:51:01 +01:00
Allen Porter 09456925e9 Add link flags for grpc armv7 wheels (#62779)
* Add -lexecinfo for grpc armv7 wheel building

Add missing flags so that we can link grpc armv7 builds. This is needed because
home assistant wheel building installs libexecinfo which grpc recognizes
and uses for `backtrace`. This is normally provided by the standard library but
is not provided by alpine / musl.

This allows building a grpc 1.43.0 wheel on alpine 3.14 armv7 with python 3.9

* Fix quoting error in workflow wheels
2022-01-05 08:47:17 -08:00
epenet ef309182fe Add setup type hints to homeassistant (#63439)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 17:35:17 +01:00
epenet 4c48705fe8 Add setup type hints [s] (part 1) (#63476)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 17:34:47 +01:00
epenet 992f9c3c6c Add setup type hints [s] (part 2) (#63479)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 17:34:18 +01:00
Marc Mueller d61a96f0ab Use correct relative imports [a-m] (#63470) 2022-01-05 17:28:12 +01:00
Marc Mueller 04e1933728 Use correct relative imports [n-z] (#63471) 2022-01-05 17:23:49 +01:00
epenet d20851812e Add setup type hints [x-z] (#63485)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 17:21:46 +01:00
epenet a4fdaffb14 Add setup type hints [t-u] (#63480)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 17:19:19 +01:00
Marc Mueller 246338f93d Use const imports [g-i] (#63468) 2022-01-05 17:08:00 +01:00
Marc Mueller 1b32385ab2 Use const imports [a-e] (#63467) 2022-01-05 16:44:13 +01:00
epenet a2de95197d Add setup type hints [n] (#63462)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 16:38:37 +01:00
epenet 64e7e62aa0 Add setup type hints [r] (#63472)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 16:37:47 +01:00
epenet 8756fa28e2 Add setup type hints [o-q] (#63465)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 16:29:21 +01:00
jjlawren 754f4c52c2 Support media_player grouping services for Sonos (#63256) 2022-01-05 16:22:36 +01:00
Allen Porter d6c8f3965a Improve nest camera failure handling on removal (#63207) 2022-01-05 16:17:51 +01:00
Colin O'Dell 17b6f7ec88 Remove colinodell as QNAP codeowner (#63474) 2022-01-05 16:14:58 +01:00
Simone Chemelli 969930b9c9 Remove debug print (#63460) 2022-01-05 15:34:33 +01:00
epenet 5196b75ed6 Add setup type hints [m] (#63456)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 15:11:38 +01:00
epenet 47812575d0 Add setup type hints [c-d] (#63428)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 15:05:22 +01:00
epenet 953a4f07fa Add setup type hints [b] (#63427)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 15:04:17 +01:00
Erik Montnemery 75f8e031df Add support for curtain device class to google assistant (#63380) 2022-01-05 15:01:58 +01:00
Marc Mueller 40262c4763 Fix exception import locations (#63454) 2022-01-05 15:00:49 +01:00
Marc Mueller c384596899 Use SensorDeviceClass in sensor and helpers packages (#63452) 2022-01-05 14:59:51 +01:00
Marc Mueller dfa94d6ce1 Import image_processing constants from const (#63461) 2022-01-05 14:58:00 +01:00
Marc Mueller b168a8c7d0 Use imports from helpers.typing (#63459) 2022-01-05 14:56:34 +01:00
Marc Mueller b0f72f59da Use imports from core (#63458) 2022-01-05 14:55:38 +01:00
Stefan Agner efc0d0265d Upgrade python_opendata_transport to 0.3.0 (#63409) 2022-01-05 14:52:25 +01:00
epenet 6a67143732 Add setup type hints [a] (#63424)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 14:15:57 +01:00
epenet eed6ca51e9 Add setup type hints [g] (#63432)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 13:49:14 +01:00
epenet 1ac3e71462 Add setup type hints [f] (#63431)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 13:34:15 +01:00
epenet 506a0b526b Add setup type hints [l] (#63450)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 13:30:37 +01:00
epenet 177b573454 Add setup type hints to magicseaweed (#63451)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 13:26:23 +01:00
epenet 3f3ba4f714 Add setup type hints [e] (#63430)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 12:49:13 +01:00
Simone Chemelli cd5bd2ff8b Fix internet access switch for Fritz Wi-Fi guest devices (#63407) 2022-01-05 12:47:47 +01:00
Mike Degatano c1967abfca Bump influxdb-client dependency to 1.24.0 (#63397) 2022-01-05 12:45:41 +01:00
J. Nick Koston 11ec7937f7 Bump flux_led to 0.27.40 to fix SK6812RGBW white level reporting (#63435) 2022-01-05 12:24:03 +01:00
Franck Nijhof cac60d5c57 Fix incorrect access to entity registry in Xiaomi Miio (#63446) 2022-01-05 12:21:24 +01:00
Chris Talkington 213b1bf684 Add MAC to Roku device (#63422) 2022-01-05 12:18:52 +01:00
Erik Montnemery 0ef30c4e37 Bump pychromecast to 10.2.3 (#63429) 2022-01-05 12:17:54 +01:00
epenet 533c377bd1 Add setup type hints to history (#63441)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 12:16:56 +01:00
Erik Montnemery c60bb1890d Remove unused group config view (#63434) 2022-01-05 12:16:11 +01:00
epenet 178d2848f3 Add setup type hints [i-k] (#63444)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 12:14:13 +01:00
epenet fee95e129a Add setup type hints [h] (#63438)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-05 12:13:11 +01:00
Franck Nijhof ed791aa854 Add sensor tests to PVOutput (#63400) 2022-01-05 11:15:18 +01:00
Daniel Hjelseth Høyer ba1b09a3a5 Add external Tibber statistics (#62249)
* Tibber, add external statistics

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Tibber, add external statistics

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Tibber ext stats

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Add tests

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* name

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-01-05 09:33:12 +01:00
Franck Nijhof 56520b69ac Remove deprecated Arduino integration (#63406) 2022-01-05 09:15:50 +01:00
Franck Nijhof 0adc96348c Update holidays to 0.12 (#63389) 2022-01-05 09:14:48 +01:00
Paulus Schoutsen 2b4bb49eb7 Make device tracker entities work better (#63328)
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-04 23:16:43 -08:00
Erik Montnemery d4310f0d70 Remove groups.yaml from default config (#63366)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-04 23:16:08 -08:00
Milan Meulemans 8e46dff2a2 Deprecate Nanoleaf YAML (#63404) 2022-01-05 08:07:11 +01:00
Marcel van der Veldt f999266c9a Add additional service to set advanced Hue scene options (#63035) 2022-01-04 21:39:08 -08:00
epenet 40e77e2af0 Fix type hint in http register_view (#63385)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-04 21:25:16 -08:00
J. Nick Koston e6e200f3c1 Handle no enabled ipv4 addresses in the network integration (#63416) 2022-01-04 21:22:28 -08:00
Allen Porter 224f960050 Set the nest configuration title to a user friendly name (#62886)
* Set the nest configuration title to a user friendly name

Set the config entry title name to be the name of the Google Home or
Nest Home that was authorized. In case more than one home was authorized,
they are all listed since they are all accessed over a single shared
home.

* Fix pylint errors

* Resolve pylint errors
2022-01-04 19:23:20 -08:00
mezz64 5c44c27088 Fix Heat Service, bump pyEight to 0.2.0 (#63405) 2022-01-04 16:17:27 -10:00
GitHub Action d2c06c5947 [ci skip] Translation update 2022-01-05 00:15:18 +00:00
epenet 4c14aad90f Add setup type hints to august (#63388)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-04 13:32:11 -10:00
jjlawren 058520769b Handle missing monitored users in Plex options (#63411) 2022-01-04 15:16:53 -08:00
Christopher Masto 32933b2c6b Work around ingress glitch with 304 responses (#63355)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-04 14:04:43 -08:00
Maciej Bieniek 626ae7be9b Do not create a number LED brightness entity for Xiaomi Miio devices that do not support it (#62819)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-04 13:43:22 -08:00
mletenay f0acbabd48 Add Goodwe solar inverter integration (#58503)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: starkillerOG <starkiller.og@gmail.com>
2022-01-04 22:19:31 +01:00
Franck Nijhof 841e22258d Fix missing timezone in GTFS timestamp sensor (#63401) 2022-01-04 13:16:35 -08:00
Allen Porter cb76a30233 Add a lock on nest stream URL creation to avoid multiple in flight at once (#63212)
Add a lock to avoid multiple calls to create stream URLs when requests race in parallel
to open streams. This is to avoid # of API calls on the nest server which can be
rate limited, and to avoid any possibility of having too many streams per camera outstanding at once.
2022-01-04 12:27:56 -08:00
Michaël Arnauts 5c8e802cbf Add unique_id to tellstick devices (#63391) 2022-01-04 21:16:43 +01:00
Franck Nijhof 919aa95f97 Improve test coverage for PVOutput (#63048) 2022-01-04 20:20:39 +01:00
Franck Nijhof cd9096907b Simplify WLED config flow, use device name for config entry (#63377) 2022-01-04 10:59:14 -08:00
On Freund 8c756f4b41 Parse Risco event time as local (#63395) 2022-01-04 19:57:21 +01:00
Marc Mueller 048d8f9263 Add strict typing to core.py (6) - Implicit reexport (#63345) 2022-01-04 19:51:19 +01:00
Maciej Bieniek 16f6bad897 Fix status type in Shelly climate platform (#63347) 2022-01-04 19:32:25 +01:00
Jevgeni Kiski 6af99882c5 Prometheus to support input_number (#58964)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-04 18:52:43 +01:00
jjlawren 8a8ffa1c08 Add support for Sonos microphone binary_sensor (#63097)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-04 18:45:40 +01:00
Hmmbob ec75b0caf0 Add Picnic last_order_max_order_time sensor (#63169) 2022-01-04 18:41:31 +01:00
Marc Mueller 53496c019c Start using ParamSpec for decorator functions (#63148) 2022-01-04 18:37:46 +01:00
Marc Mueller 3a32fe9a34 Add strict typing to core.py (2) - State (#63240) 2022-01-04 18:33:56 +01:00
ryborg 5f5adffd5b Fix CO/CO2 sensors mixup in Google Assistant (#63152)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-04 18:24:44 +01:00
Franck Nijhof 2fe08d2b9b Complete strict typing to Humidifier entity platform (#61021) 2022-01-04 18:09:32 +01:00
Allen Porter d7b080b285 Add support for Add-on discovery in rtsp_to_webrtc (#63211)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-04 17:58:08 +01:00
tschnilo 46e61008ea Update PyVicare to 2.15.0 (#63342)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-04 17:55:43 +01:00
J. Nick Koston 13b262bcce Keep flux_led device time in sync (#63259) 2022-01-04 17:37:15 +01:00
Renat Nurgaliyev f71d49230d Add counter entities support to Prometheus component (#62410) 2022-01-04 17:34:05 +01:00
epenet 911f2751b4 Drop device_class in wallbox number (#62438)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-04 17:29:46 +01:00
Allen Porter 0bcad5579b Set nest climate hvac_action to report idle when hvac mode is not off (#62811) 2022-01-04 17:28:46 +01:00
Marcel van der Veldt 829ff9c423 Fix Hue grouped light color_mode calculation (#63374) 2022-01-04 17:15:19 +01:00
Tobias Sauerwein c423b01eb0 Implement retry for Netatmo webhook registration (#62597) 2022-01-04 16:52:27 +01:00
J. Nick Koston ee375ff42d Offer local control option when there are multiple zeroconf homekit matches (#62649) 2022-01-04 16:51:38 +01:00
epenet 411fcad798 Use BinarySensorDeviceClass enum in binary_sensor device automations (#62635) 2022-01-04 16:46:21 +01:00
On Freund 7e4414710d Convert Risco sensor states to timestamps (#63139)
Co-authored-by: Franck Nijhof <frenck@frenck.dev>
2022-01-04 16:40:32 +01:00
Allen Porter fdb4b1d7f0 Cleanup nest config flow (#63351) 2022-01-04 16:33:17 +01:00
Franck Nijhof 1a7ae839d3 Add little slack to CodeCov project/config-flows threshold (#63379) 2022-01-04 16:26:22 +01:00
J. Nick Koston 5c8271552a Add hardware revision support to homekit (#63336) 2022-01-04 16:19:12 +01:00
Joakim Plate 7c6297db86 Add support for philips js screen state (#62775) 2022-01-04 16:14:44 +01:00
Brandon Rothweiler 06f05d2302 Use entity class attributes for Mazda integration (#59869) 2022-01-04 16:08:54 +01:00
Robert Hillis f028079815 Remove deprecated yaml config from sma (#62472)
Co-authored-by: René Klomp <rene@klomp.ws>
2022-01-04 16:04:16 +01:00
Sebastian Muszynski 72674876fc Add philips.light.hbulb support (#62417) 2022-01-04 16:01:36 +01:00
vauriga 0a00c77ed6 Add support for Pet Feeder (cwwsq) in Tuya (#61359) 2022-01-04 16:00:48 +01:00
Erwin Oldenkamp 39b26e5ff7 Add device to Wallbox integration (#63011) 2022-01-04 15:46:57 +01:00
Marc Mueller 3e51659ba7 Remove some unused TypeVars (#63346) 2022-01-04 15:38:34 +01:00
starkillerOG 4d59c1bf07 Bump micloud to 0.5 (#63348) 2022-01-04 15:37:33 +01:00
Marc Mueller fcd80b2ed7 Fix ensure_list typing (#63311) 2022-01-04 15:23:48 +01:00
Dave T 05834029a5 Make review link exclude PRs with failing tests (#63373)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-04 15:16:38 +01:00
Ville Skyttä 5231bc5dcb Simplify device registry update (#62868) 2022-01-04 15:02:11 +01:00
Mike Degatano 8d2cb82b1d Update influxdb dependency to 5.3.1 (#62228) 2022-01-04 13:49:43 +01:00
Paulus Schoutsen e201293848 Add MAC to WLED device (#63349) 2022-01-04 13:49:15 +01:00
Eric Severance 1bfa2a9b25 Add configuration_url for ONVIF (#61526) 2022-01-04 13:48:26 +01:00
Eric Severance 26f9ffbdd5 Allow password-less login to jellyfin (#61646) 2022-01-04 13:44:10 +01:00
Fabian Affolter e2f7a58a38 Update no_ip URL (#62477) 2022-01-04 13:42:54 +01:00
David F. Mulcahey 6a685f0315 Add select entities to ZHA (#62718) 2022-01-04 13:40:29 +01:00
Robert Hillis cfb47b9195 Remove deprecated yaml config from waze_travel_time (#62543) 2022-01-04 13:39:32 +01:00
Franck Nijhof 12450daf56 Only rely on device status when adding Tuya entities (#63074) 2022-01-04 12:51:45 +01:00
Allen Porter 9c166dfff2 Bump rtsp_to_webrtc to 0.4.0 (#63359) 2022-01-04 11:31:33 +01:00
epenet 5140c1fa6a Remove invalid return values in setup methods [i-p] (#63363)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-04 11:30:13 +01:00
epenet 2709db008c Remove invalid return values in setup methods [a-h] (#63362)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-04 11:08:28 +01:00
epenet b14ac1b94a Remove invalid return values in setup methods [r-z] (#63365)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-04 10:52:30 +01:00
Thomas Dietrich dc15c9ed75 Add SensorDeviceClass to statistics component, improve structures (#62629)
* Improve config checking, add device_class timestamp

* Move additional characteristics into separate branch

* Move deprecation warning for sampling_size default to other branch

* Add supports list description
2022-01-04 10:25:37 +01:00
avee87 04606f05a4 Use built-in Jinja min and max filters in templates (#60327)
* Use built-in Jinja min and max filters in templates

* use built-in filter for global

* lint

* less generic name

* more tests

* even more tests
2022-01-04 10:07:23 +01:00
Chris Talkington 2d0aaeba6b Address late review of #63238 (#63358) 2022-01-04 09:16:47 +01:00
Robert Hillis 4177644c68 Use enums in smartthings tests (#62194) 2022-01-03 17:27:36 -08:00
GitHub Action 021a4f7106 [ci skip] Translation update 2022-01-04 00:14:15 +00:00
Christopher Bailey a2677983a2 Add UniFi Protect select platform (#63337) 2022-01-03 13:42:10 -10:00
rianadon 48057e1dfb Weather units: climacell (1.3/4) (#61472)
* climacell units

* Fix climacell tests
2022-01-03 15:09:47 -05:00
Paulus Schoutsen ad8af5fc7a Allow mobile app registrations only supporting websocket push (#63208) 2022-01-03 11:02:41 -08:00
Paulus Schoutsen 9f0805f512 Sisyphus: Fix bad super call (#63327)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-03 19:46:56 +01:00
epenet e4a88e921f Add switch setup type hints [n-r] (#63304)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:24:34 +01:00
epenet f39531dcfc Add switch setup type hints [g-m] (#63303)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:23:11 +01:00
epenet eb7911f951 Add basic type hints to acmeda (#62736)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:21:48 +01:00
epenet 6f93ffb7ee Add sensor setup type hints [t-v] (#63309)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:20:39 +01:00
epenet d24ebc3c10 Add sensor setup type hints [e-f] (#63317)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:19:11 +01:00
epenet 4363852178 Add sensor setup type hints [a-b] (#63319)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:18:00 +01:00
epenet 84221f656a Add sensor setup type hints [c-d] (#63318)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:16:42 +01:00
epenet 30a64bd0f2 Add sensor setup type hints [g-h] (#63316)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:13:59 +01:00
epenet a9901356c3 Add sensor setup type hints [i-l] (#63315)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:11:50 +01:00
epenet 9184eb8916 Add sensor setup type hints [o-q] (#63313)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:10:57 +01:00
epenet 80b6195505 Add sensor setup type hints [m-n] (#63314)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:09:36 +01:00
epenet 822ac203c3 Add sensor setup type hints [r] (#63312)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:08:34 +01:00
epenet 595e8a327c Add sensor setup type hints [s] (#63310)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 19:06:08 +01:00
epenet 26819d1132 Add sensor setup type hints [w-z] (#63308)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 18:45:33 +01:00
Erik Montnemery d8e7236502 Cleanup handling of unsupported config keys in MQTT fan (#62681)
* Cleanup handling of unsupported config keys in MQTT fan

* Update fan.py
2022-01-03 17:54:03 +01:00
epenet 5ddab5a7f2 Add setup type hints to number, remote and scene (#63299)
* Add number setup type hints

* Add remote setup type hints

* Add scene setup type hints

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 17:17:44 +01:00
Erik Montnemery 1995a825f3 Reject MQTT light discovery using unsupported value_template (#62682)
* Reject MQTT light discovery using unsupported value_template

* Tweak
2022-01-03 17:16:26 +01:00
Franck Nijhof a039d245fd Fix typo in CPU Speed translation key (#63284) 2022-01-03 17:09:32 +01:00
Jan Bouwhuis 86ed091dbf Skip raw encoding test for cover (#63322) 2022-01-03 17:08:28 +01:00
epenet f456f68dff Add switch setup type hints [s-z] (#63305)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:44:20 +01:00
epenet e5dcc5694a Add switch setup type hints [a-f] (#63302)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:31:24 +01:00
epenet 7df339f436 Add weather setup type hints (#63301)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:27:33 +01:00
epenet 3fe527422d Add setup type hints to select, vacuum and water_heater (#63300)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:26:14 +01:00
epenet 9b5939a7a5 Add setup type hints to all demo platforms (#63294)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:24:09 +01:00
epenet 1c30992b0e Add setup type hints to all template platforms (#63295)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:23:12 +01:00
epenet 94061fa997 Add geo_location setup type hints (#63288)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:22:23 +01:00
epenet 1519aa202d Add media_player setup type hints [m-x] (#63298)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:09:34 +01:00
Jan Bouwhuis dd0193052c Add MQTT encoding parameter for all subscribed topics (#62263)
* Add encoding parameter for all subscribable topics

* test setup encoding incoming payload

* remove support for device_tracker and tag+tests
2022-01-03 16:08:07 +01:00
Jan Bouwhuis 3ca18922e6 Mqtt rework on value templates (#62105)
* add MqttValueTemplate class

* support variables at initiation

* pass MqttEntity instead of hass

* Use MqttValueTemplace class for value templates

* make hass en enitity parameters conditional

* remove unused property and remove None assignment

* rename self._attr_value_template
2022-01-03 16:07:40 +01:00
epenet bf78ddcadb Add media_player setup type hints [a-l] (#63297)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 16:04:15 +01:00
epenet eed7ce55b3 Add lock setup type hints (#63296)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:45:15 +01:00
epenet 7967f49e48 Add light setup type hints [s-z] (#63293)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:43:55 +01:00
epenet a46f25f2a9 Add device_tracker setup type hints (#63286)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:19:38 +01:00
epenet b9e9445a51 Add humidifier setup type hints (#63289)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:15:32 +01:00
epenet ca366e6f87 Add image_processing setup type hints (#63290)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:14:57 +01:00
Jan Bouwhuis 061ce0c187 Fix mqtt reloading and rework tests (#62950)
* Improve mqtt reloading/tests and fix issues

* Cleanup fixture for reloading test

* isort and black remove replaced test_reloadable
2022-01-03 15:14:50 +01:00
Jan Bouwhuis 0dab5e69db Fix MQTT cover not using tilt_command_template (#63080) 2022-01-03 15:13:30 +01:00
epenet 1ce75f8e6b Add cover setup type hints (#63285)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:13:18 +01:00
epenet 277562bc38 Add light setup type hints [l-r] (#63292)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:11:59 +01:00
epenet 71cb42f53a Add fan setup type hints (#63287)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:10:53 +01:00
Jan Bouwhuis 457ce195dd Add mqtt entity attributes command templates (#61937)
* Add entity variables to MqttCommandTemplate

* missing command template update

* make hass and entity conditional parameters

* Add encoding support for publishing

* Revert "Add encoding support for publishing"

This reverts commit b69b9c60ececdab1d35621bdd7ffe5b8b9d59c44.
2022-01-03 15:10:15 +01:00
epenet 7f9b7c7b0e Add light setup type hints [a-i] (#63291)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 15:02:21 +01:00
bvweerd acc974b26b Add eq3btsmart presets on, off, auto and manual mode (#54586)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Teemu R <tpr@iki.fi>
2022-01-03 14:04:23 +01:00
Aidan Timson d85d93d1a1 Downgrade OctoPrint printer disconnected errors (#63076)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-03 13:53:25 +01:00
Steven Looman cba752c1af Bump async-upnp-client==0.23.3 (#63282) 2022-01-03 13:42:09 +01:00
Joakim Sørensen 56bda80e0a Address late review comments for version integration (#63283)
* Address late review comments for version integration

* 2 leftover persistent_notification setup
2022-01-03 13:30:40 +01:00
epenet 06ebbb7cae Add climate setup type hints [a-l] (#63278)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 13:26:32 +01:00
epenet cbd3cd4599 Add camera setup type hints (#63277)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 13:22:41 +01:00
Marc Mueller cad09a9eda Add strict typing to core.py (4) - Misc (#63242) 2022-01-03 13:18:15 +01:00
epenet ce6206b422 Add calendar setup type hints (#63272)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 13:14:02 +01:00
epenet 862daff622 Add binary_sensor setup type hints [s-z] (#63271)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 13:13:03 +01:00
epenet fbabad1d1d Add binary_sensor setup type hints [a-f] (#63268)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 13:10:41 +01:00
epenet 6f4b25950c Add climate setup type hints [m-z] (#63279)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 13:09:43 +01:00
chpego 39df04495d Bump caldav version to 0.8.2 (#63280) 2022-01-03 13:05:35 +01:00
Ryan Fleming adbcb642cf Update to pyoctoprintapi 1.7 (#63254) 2022-01-03 12:13:33 +01:00
epenet e5ba34b9f9 Add init type hints [misc] (#63261)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 12:08:14 +01:00
epenet 929da2154a Add air_quality setup type hints (#63263)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 12:07:05 +01:00
J. Nick Koston d1bda6949e Prevent doorbird integration from overloading the device on startup (#63253) 2022-01-03 12:06:44 +01:00
J. Nick Koston 78d7387547 Bump flux_led to 0.27.32 to fix incorrect strip order on A2 devices (#63262) 2022-01-03 12:05:35 +01:00
epenet f7b26e9b06 Fix relative import issue in device_automation (#63274)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 11:59:50 +01:00
Gabriel Rauter d26275011a Add unique_id configuration variable to command_line integration (#58596) 2022-01-03 11:44:47 +01:00
epenet 545b10a711 Add binary_sensor setup type hints [o-r] (#63270)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 11:35:02 +01:00
epenet 33e4251606 Add binary_sensor setup type hints [h-n] (#63269)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 11:32:26 +01:00
epenet 24fc0df4b0 Add alarm_control_panel setup type hints (#63264)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 10:57:25 +01:00
Erik Montnemery e9b746e874 Add turned on or off device trigger to toggle entity (#61089)
* Add turned on or off device trigger to toggle entity

* Renamed changed_states trigger to toggled

* Adjust tests

* Fix homekit triggers test

* Add tests

* Adjust tests after rebase

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-03 10:41:30 +01:00
Erik Montnemery 8f99cb51b5 Improve test coverage of template button (#63265) 2022-01-03 10:39:24 +01:00
Raman Gupta 6f8cd54ca1 Add button platform to template integration (#61908)
* Add button platform to template integration

* review comments

* add unique ID check
2022-01-03 10:03:37 +01:00
epenet ad7a0d799d Add type hints to google_assistant (#62748)
* Add type hints to google_assistant

* Fix pylint

* Adjust type hint

* Fix black

* Revert changes to smart_home

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 09:10:43 +01:00
Jan Bouwhuis d0c4f0fec4 Add mqtt encoding support for publishing (#62739)
* encoding support for mqtt publishing - todo tests

* signature allows None values for qos and retain

* common test for mqtt publishing encoding

* better test with command templates

* more tests

* fix tests alarm control panel+tests light basic

* tests light json and template

* add tests vacuum and fix tests light_template
2022-01-03 09:03:47 +01:00
epenet 2cc4d9846b Add basic type hints to mqtt (#62875)
* Add basic type hints to mqtt

* Add hints to async_setup_platform

* Add type hint to async_setup_entry

* Fix pylint

* Set correct argument order in climate entity

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-03 08:53:52 +01:00
Chris Talkington f4857ffe33 Add binary_sensor platform to roku (#63238) 2022-01-02 18:44:31 -06:00
Chris Talkington c693b6f455 Add hardware version to Roku device info (#63249)
* add hardware version to Roku device info.

* Update test_media_player.py

* Update test_media_player.py

* Update test_media_player.py
2022-01-02 18:35:09 -06:00
GitHub Action ea0b24a5f0 [ci skip] Translation update 2022-01-03 00:14:23 +00:00
J. Nick Koston 56103a4623 Fix oncue string for already_configured (#63248) 2022-01-02 17:59:04 -06:00
Marc Mueller 1b884964a4 Run hassfest on changes to .strict-typing (#63237) 2022-01-02 22:53:34 +01:00
Dave T 89895c6c04 Improve tests for generic camera (#63197)
* Improve tests for generic camera

* Fix black error

* Code review: Move common code to fixtures

* Remove unnecessary patches from tests.

* Address review comments

* Code review: swap more patches for respx

* Code review: use _attr for frame interval.
2022-01-02 13:26:44 -08:00
Christopher Bailey 4099d84fa4 Refactor static attributes to class attrs for UniFi Protect (#63236) 2022-01-02 22:16:14 +01:00
Mike Degatano 50188e06ac Add link into statistics unit mismatch warning (#62217) 2022-01-02 22:13:21 +01:00
Chris Talkington 857c9e3836 Update rokuecp to 0.9.0 (#63234) 2022-01-02 21:52:17 +01:00
Karthik T bf1f8f4bfa Fix systemmonitor CPU temp for Armbian on PineA64 (#63111) 2022-01-02 21:51:50 +01:00
Allen Porter 9e3f7d2961 Simplify nest reauth config flow (#63058) 2022-01-02 21:43:50 +01:00
Franck Nijhof 76a7149a5e Use shorthand attributes in Tuya camera platform (#63228) 2022-01-02 21:37:15 +01:00
J. Nick Koston 7de4801bfa Add support for oncue connectivity binary sensor (#63232) 2022-01-02 21:36:14 +01:00
J. Nick Koston 1483d394be Add entity_category to oncue sensors (#63231) 2022-01-02 10:06:27 -10:00
epenet f14e162610 Add missing schema to dominos order service (#63016)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 20:49:41 +01:00
Christopher Bailey d364186571 Add UniFi Protect number platform (#63220) 2022-01-02 09:47:25 -10:00
dougiteixeira 66c2259f5c Fix Tuya vacuum display battery level (#61643)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-02 20:46:18 +01:00
epenet 9248865443 Ensure service calls are typed in remember-the-milk (#63018)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 20:43:38 +01:00
J. Nick Koston 724f5dbf1a Add Oncue by Kohler integration (#63203) 2022-01-02 09:15:39 -10:00
Allen Porter 584e660548 Bump google-nest-sdm to 1.3.0 (#63224) 2022-01-02 18:55:37 +01:00
Allen Porter 15baea4ba3 Use more narrow exception catching in nest (#63225) 2022-01-02 18:54:56 +01:00
Phil Cole b9daa22891 Introduce const file in Nissan Leaf (#63082)
* Introduce const file in Nissan Leaf

* Use final

* Don't alter start_charging logic

* Don't centralise logger
2022-01-02 11:48:33 -06:00
epenet 2aa8a86126 Add basic type hints to broadlink (#62879)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:21:37 +01:00
epenet d8dabd305c Make ATTR_ENTITY_ID required in local_file service call (#63017)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:20:46 +01:00
epenet 71a5b89691 Ensure service calls are typed in todoist (#63020)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:17:55 +01:00
epenet 9ed7d82661 Add type hint to reload_config in homeassistant scene (#63094)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:16:47 +01:00
epenet 24e27290b5 Drop deprecated CONF_NAMES from onewire (#61094)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:10:19 +01:00
Allen Porter ebc8e19788 Revert nest reloading due to lock up (#63206) 2022-01-02 17:08:38 +01:00
epenet 20150daf1e Fix incorrect parameter name/hint in mqtt climate (#63106)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:06:17 +01:00
epenet 9e16f87ddc Add init type hints [b-c] (#63100)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 17:05:18 +01:00
rhpijnacker 5d037a079d Bump dsmr-parser dependency to 0.31 (#63123) 2022-01-02 16:55:09 +01:00
epenet 95537166e8 Add init type hints [r] (#63192)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:36:24 +01:00
epenet 0d7b531285 Add init type hints [p-q] (#63191)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:35:23 +01:00
epenet e02f0c34e5 Add init type hints [k-l] (#63188)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:34:33 +01:00
J. Nick Koston 1d41e5b0c6 Bump flux_led to 0.27.28 to fix missing white channel on SK6812RGBW strips (#63154) 2022-01-02 16:32:39 +01:00
epenet 1650332188 Add init type hints [h-j] (#63187)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:31:48 +01:00
epenet 00ec874389 Add init type hints [s] (#63193)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:29:52 +01:00
epenet 33e926371f Add init type hints [m] (#63189)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:28:14 +01:00
epenet e7b262f9e5 Add init type hints [v-z] (#63195)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:27:12 +01:00
epenet 6d51cccbf7 Add init type hints [d] (#63101)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 16:12:46 +01:00
Marc Mueller 2738217c4b Run gen_requirements_all script on changes to setup.py (#63171) 2022-01-02 16:11:25 +01:00
epenet 631e4c6bd3 Use DeviceClass Enum in alarmdecoder schema (#61967) 2022-01-02 16:01:00 +01:00
Simone Chemelli fc02260146 Fix management of Fritz repeaters (#63110) 2022-01-02 14:59:41 +01:00
epenet a2b611d9d9 Drop use of HomeAssistantType in elmax (#63105)
* Drop HomeAssistantType in elmax

* Update common.py

* Update switch.py

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-02 10:19:42 +02:00
trdischat e3de81cd02 Add default Fronius logger model for v0 API (#63184) 2022-01-02 08:15:27 +01:00
epenet 18056f3a8a Add init type hints [t-u] (#63194)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-01 22:06:11 -08:00
Marc Mueller 06b9be4d9c Upgrade flake8-noqa to 1.2.1 (#63170) 2022-01-02 02:22:26 +01:00
GitHub Action efac363cdf [ci skip] Translation update 2022-01-02 00:14:58 +00:00
epenet b6909feb8b Add init type hints [n-o] (#63190)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-01 13:39:38 -08:00
epenet d57c54c93e Add init type hints [f-g] (#63186)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-01-01 13:38:11 -08:00
Christopher Bailey e5b7eac411 Add UniFi Protect switch platform (#63177) 2022-01-01 11:23:10 -10:00
Dave T 817f0c9aae Refactor enum zwave js tests (#62712)
* Use new enums in zwave_js tests

* Convert == to is

* Refactor some ATTR_ * as well.

* Address review comments
2022-01-01 21:50:48 +01:00
Allen Porter c7b991f56b Add rtsptowebrtc integration (#59660)
* Add initial version of the webrtc integration

Add the webrtc integration. This integration proxies the
signal 'offer' from the client to a RTSPtoWebRTCP server that
returns an 'answer'.

The RTSPtoWebRTC server is a go binary based on pion, and this is
what is currently used by the WebRTC custom_component:
https://github.com/AlexxIT/WebRTC
https://github.com/deepch/RTSPtoWebRTC

* Readability improvements for webrtc

* Reach 100% test coverage

* Use rtsp-to-webrtc client library package

* Rename webrtc to rtstptowebrtc

This is to reflect naming as one type of approach to webrtc since other webrtc integrations would look very different.

* Remove internal quality scale

* Bump rtsptowebrtc to support heartbeats

* Shorten server url variable and remove const.py

* Add config flow validation for RTSPtoWebRTC server

* Add RTSPtoWebRTC server health checks

* Accept translation suggestion

* Apply suggestions from code review

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update rtsptowebrtc to use new camera registry API

Update rtsptowebrtc to use new API added in #62962

* Remove unused variable

* Fix lint and typing errors for python 3.8

* Rename to rtsp_to_webrtc to follow standards

* Use async_on_unload for unsubscribing camera webrtc provider

* Remove unnecessary translations in config flow

* Remove unnecessary configuration setup

* Cleanup test setup and typing

* Patch integration setup to avoid starting the whole integration

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-01 12:36:31 -08:00
Maciej Bieniek 8af545a4e3 Add new buttons for Shelly Gas (#63099)
* Add self test/mute/unmute buttons

* Improve doctrings

* Improve test coverage

* Add supported property to ShellyButtonDescription

* Change icon
2022-01-01 21:42:17 +02:00
Steffen Zimmermann 9ead2c7148 Improve wiffi config flow handling (#63167)
Don't use `async_set_unique_id` and `_abort_if_unique_id_configured`
because TCP port number is not a unique id.

Use `_async_abort_entries_match` instead.
2022-01-01 20:36:45 +01:00
Allen Porter 81aff973ea Keep entity state management within entity (#63183)
Simplify the entity state management for webrtc providers, incurring
extra state writes on startup.  Followup post-review comments for PR #62962
2022-01-01 11:22:48 -08:00
Dave T 0410c205ca Move constants to const file for generic (#63179) 2022-01-01 10:57:56 -08:00
Daniel Hjelseth Høyer 8bf6aba1cf Mill use walrus operator (#63166)
* Mill use walrus operator

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Mill use walrus operator

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2022-01-01 13:11:56 +01:00
stegm 0a0ca233c5 Add entity categories. (#63165) 2022-01-01 12:45:24 +01:00
GitHub Action 93758e2e6c [ci skip] Translation update 2022-01-01 00:14:34 +00:00
Daniel Hjelseth Høyer 4f6b2e6e1c Bump mill-local to 0.1.1 and add device info (#63141) 2021-12-31 12:33:50 -10:00
Daniel Hjelseth Høyer 8e5c8c516d Adax, unique id and title should be string (#63132) 2021-12-31 12:22:47 -10:00
Christopher Bailey b379acc119 Clean up patching of setup platforms for UniFi Protect integration (#63156) 2021-12-31 12:20:23 -10:00
Allen Porter 0dee4f85f0 Implement an rtsp to webrtc registry in camera (#62962)
* Implement a webrtc to rtsp support in camera as a registry

Allow integrations to register a provider that can convert an RTSP stream and WebRTC offer to a WebRTC answer. This is
planned to be used by the RTSPtoWebRTC server integration as an initial pass, but could
support other server implementations as well (or even native implementationf or that matter).

* Fix test bug to improve test covergae and restructure statements

* Add missing call to refresh webrtc providers

* Run provider refresh in parallel since it may send RPCs

* Replace for loop with any

* Fix pylint warning to use a generator
2021-12-31 13:44:33 -08:00
Christopher Bailey 0de3a299d6 Add UniFi Protect light platform (#63137) 2021-12-31 11:21:29 -10:00
Allen Porter b17120a511 Bump google-nest-sdm to 1.2.1 (#63151) 2021-12-31 10:11:00 -10:00
Daniel Hjelseth Høyer 3ea2b7d89f Mill, add HVAC_MODE_OFF for gen 3 heaters (#63134)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-12-31 12:06:05 -08:00
Maikel Punie d7f0ad29df Add velbus USB dicovery (#62596) 2021-12-31 09:44:35 -10:00
Shay Levy c65a50bd2e Fix Shelly error fetching device triggers for sleeping devices (#63103) 2021-12-31 18:47:03 +01:00
Mick Vleeshouwer 4eb077b6b4 Enable strict typing for Overkiz integration (#63108) 2021-12-31 07:35:15 -10:00
Daniel Hjelseth Høyer 0da53bad90 Update Adax-local to 0.1.3 (#63129)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-12-31 14:18:06 +01:00
Franck Nijhof c5d8792c34 Cleanup switch light (#63127) 2021-12-31 12:47:16 +01:00
Franck Nijhof 78442d82d1 Add color mode support to switch light (#63124) 2021-12-31 11:43:59 +01:00
jjlawren 2172679f41 Make Sonos alarm unique_id unique with multiple households (#62645) 2021-12-31 11:10:10 +01:00
Milan Meulemans cdd54b365a Remove deprecated Connection class from octoprint ConfigFlow (#63117) 2021-12-31 11:06:30 +01:00
epenet 04e8e84058 Add init type hints [e] (#63102)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-31 11:05:44 +01:00
Andre Lengwenus 7b9e643536 Bump pypck to 0.7.12 (#63119) 2021-12-31 11:01:59 +01:00
Allen Porter 4c46cf79c4 Bump google-nest-sdm to 1.2.0 (#63121) 2021-12-31 10:43:11 +01:00
epenet 545e321002 Add init type hints [a] (#63098)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-30 21:17:05 -08:00
Marcel van der Veldt 055fb99938 Hue allow per-device availability override (#63025)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-30 20:46:52 -08:00
Christopher Bailey ebe9853e6f Bumps pyunifiprotect to 1.4.8 (#63113) 2021-12-30 16:17:32 -10:00
GitHub Action f205708e56 [ci skip] Translation update 2021-12-31 00:14:15 +00:00
Simone Chemelli 6725e4033c Use mesh topology and add 3 more attr for Fritz (#63049)
* Use mesh topology and add 3 more attr

* Apply review comment
2021-12-30 23:23:55 +01:00
Franck Nijhof b5300fb32e Add configuration flow to Whois (#63069)
Co-authored-by: Dave T <17680170+davet2001@users.noreply.github.com>
2021-12-30 22:42:46 +01:00
epenet 9971831b51 Improve typing in core service registration (#63005)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-30 21:18:10 +01:00
Clifford Roche 1320f27fd7 Bump greeclimate to 1.0.1 (#63092) 2021-12-30 21:15:59 +01:00
epenet 803eaa8e22 Ensure admin service calls are typed (#63093)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-30 21:12:40 +01:00
Simone Chemelli 34e732ebc1 Add hw info for Shelly devices (#62643)
* Add hw info for Shelly devices

* Better rappresentation

* Remove date parsing

* Added model as requested
2021-12-30 20:08:29 +01:00
uvjustin 849dc0e53a Use original PyAv in stream (#63079) 2021-12-30 10:54:25 -08:00
Franck Nijhof 540ccc37b5 Use StrEnum in Tuya constants (#63073) 2021-12-30 20:23:27 +02:00
epenet f724aea0bb Ensure service calls are typed [a-j] (#63013)
* Ensure service calls are typed [a-j]

* Adjust apns

* Adjust arlo

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-30 18:50:51 +01:00
Maciej Bieniek c0b9a34901 Bump library to version 1.0.7 (#63078) 2021-12-30 19:45:09 +02:00
Simone Chemelli c2938c50c3 Fix unique id for Fritz buttons (#63072)
* Fix unique id for Fritz buttons

* Apply review comment
2021-12-30 17:44:02 +01:00
Simone Chemelli c27e4feff6 Refresh device_info for Shelly devices (#62899)
* Rework device_info

* Update device_info via registry

* Optimized checks: only when needed

* Revert device_info rework as not needed

* Fix reboot detection for all scenarios

* Final optimization

* Remove leftover

* Bump aioshelly

* Bump fritzconnection and remove workarounds

* Cleanup fritzbox_callmonitor

* Rework device_info

* Update device_info via registry

* Optimized checks: only when needed

* Revert device_info rework as not needed

* Fix reboot detection for all scenarios

* Final optimization

* Remove leftover

* Update homeassistant/components/shelly/utils.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* Update homeassistant/components/shelly/__init__.py

Co-authored-by: Shay Levy <levyshay1@gmail.com>

* Revert slipped in commit

* Rename param

* Apply review comment

* Apply comment review #2

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2021-12-30 15:37:28 +01:00
Mick Vleeshouwer 8599ddf51e Address feedback to Overkiz integration (round 2) (#63036)
* Address feedback in multiple files

* Add missing return statement

* Improve sensor descriptions

* Improve typing

* Move to new device registry

* Disable RSSI sensor by default

* Improve typing
2021-12-30 15:22:35 +01:00
Marc Mueller 52ca06c750 CI: Fix pip cache restore key (#63075) 2021-12-30 14:09:18 +01:00
Simone Chemelli da24b7ce2f Bump fritzconnection and remove workarounds (#63050)
* Bump fritzconnection and remove workarounds

* Cleanup fritzbox_callmonitor
2021-12-30 12:53:54 +01:00
Sebastian Lövdahl 0a95b2c591 Vallox config flow follow-up fixes (#63032)
* Vallox config flow follow-up fixes

* Fix logging

* Get documentation URL from manifest

* Feedback fixes
2021-12-30 11:58:36 +01:00
Marc Mueller 77ffd7b066 CI: Cache pip wheels (#62755) 2021-12-30 11:49:05 +01:00
ollo69 7d1de80926 Ignore serial number "blank" from NUT (#63066) 2021-12-30 10:25:44 +01:00
Alan Murray eaba29657f Catch bluetooth_tracker OSError (#60437)
Catch when bluetooth_tracker integration throws an OSError when a bluetooth device can't be found.
2021-12-30 10:06:44 +01:00
Franck Nijhof bbb652304e Introduce const file in Whois (#63051) 2021-12-30 09:05:16 +01:00
Tobias Sauerwein 792d9196df Bump pyatmo to v6.2.2 (#63053)
Signed-off-by: cgtobi <cgtobi@gmail.com>
2021-12-30 00:00:30 -08:00
epenet e3c1a3567e Fix local_file partial tests (#63023)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-29 16:52:23 -10:00
Marvin Wichmann b9247f3952 Fix local_ip handling in KNX options flow (#62969) 2021-12-30 01:13:58 +01:00
Christopher Bailey 02e59b2f38 Fixes UniFi Protect reconnect issues (#63047) 2021-12-29 12:39:55 -10:00
Christopher Bailey 5eb59092e6 Adds missing strings (#63046) 2021-12-29 12:27:31 -10:00
Allen Porter 26972942ca Deprecate the Legacy Works with Nest API (#63027) 2021-12-29 23:22:31 +01:00
Franck Nijhof c6230fef08 Add full test coverage to CPU Speed (#63042) 2021-12-29 22:59:14 +01:00
epenet 709afc63b0 Ensure service calls are typed [m-z] (#63014)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-29 22:41:55 +01:00
Franck Nijhof 4ef9abbf3f Add myself as codeowner for CPU Speed (#63034) 2021-12-29 21:43:53 +01:00
Christopher Bailey 699512c36f Add UniFi Protect button (#63001) 2021-12-29 09:38:44 -10:00
Christopher Bailey b31041698f Feedback from previous PR (#63022) 2021-12-29 08:39:45 -10:00
Allen Porter 788373a7ca Update legacy nest config flow tests to use modern best practices (#63019)
* Update legacy nest tests to use modern best practices

Update legacy nest integration config flow tests to test the config flow actually through the integration APIs rather
than interacting with the config flow object directly. This is a pre-factoring pulled out of a larger config flow revamp
where we want to exercise the actual production code for initializing configuration, config flows, and authentication
implementations.

* Revert some test name/comment changes

* Update setup calls to verify async_setup_legacy is called
2021-12-29 10:38:50 -08:00
Allen Porter 23384ee1e8 Update stream errors with additional error information (#62900) 2021-12-29 18:57:14 +01:00
Franck Nijhof 2f7fa962b4 Detect unsupported system in CPU Speed integration (#63012) 2021-12-29 18:54:47 +01:00
Marcel van der Veldt 1547a046db Fix reporting correct colormode for 3rd party Hue lights (#63015) 2021-12-29 18:26:52 +01:00
Mirko Lenz ab4effc7e2 Allow sending GroupValueResponse telegrams with knx.send service (#62639)
* Add knx.respond service

* Combine knx.send and knx.respond services

* Rename knx attribute and fix tests

* Use parametrization in tests

Co-authored-by: Marvin Wichmann <marvin.wichmann@unic.com>
2021-12-29 18:15:48 +01:00
epenet 7185e1140d Add setup type hints to plex (#62883)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-29 18:05:56 +01:00
Marcel van der Veldt f28c66ce19 Fix Hue motion sensor state if sensor is disabled (#63000) 2021-12-29 17:54:53 +01:00
jjlawren a8fe9f2eff Add missing migration for Sonos speech enhancement switch entities (#63010) 2021-12-29 17:31:04 +01:00
jjlawren 00a4b60f74 Fix night mode switch state on Sonos (#63009) 2021-12-29 17:25:29 +01:00
Phil Cole 469a1cae85 Add unique id to nissanleaf entities (#62824)
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-29 16:43:10 +01:00
David F. Mulcahey 946544b08f Update ZHA to use apparent power (#62990) 2021-12-29 10:35:17 -05:00
Franck Nijhof fc1899987a Fix incorrect unit of measurement access in Tuya (#62989) 2021-12-29 15:35:51 +01:00
Franck Nijhof 12a57ad925 Fix Tuya data type information in lights (#62993) 2021-12-29 15:35:41 +01:00
Franck Nijhof 17536df7ea Fix Tuya data type information in climate (#62994) 2021-12-29 15:34:56 +01:00
Franck Nijhof 084e81f827 Gracefully handle missing preset mode in Tuya fan (#62996) 2021-12-29 15:34:36 +01:00
Marcel van der Veldt 497bfc1c8f Normalize Hue colortemp if value outside of bounds (#62998) 2021-12-29 15:13:52 +01:00
Franck Nijhof 32d1e28dab Clean up Tuya loggers (#62999) 2021-12-29 15:12:27 +01:00
Franck Nijhof bd98fc231d Gracefully handle unknown HVAC mode in Tuya (#62984)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-29 14:52:08 +01:00
Steffen Zimmermann 85f2e259da Add unique id check in wiffi config flow (#60388)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-29 14:34:47 +01:00
epenet 98135d8158 Ensure service calls are typed in homeassistant (#62915)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-29 14:30:55 +01:00
Marcel van der Veldt c5bdf858a8 Fix short flash effect in Hue integration (#62988) 2021-12-29 14:21:38 +01:00
epenet 4d8c9fc1ab Add basic type hints to cast (#62746)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-29 12:30:16 +01:00
Phil Cole 54d1e20948 Add type hints to nissan_leaf integration (#62967) 2021-12-29 12:23:54 +01:00
Allen Porter 2df0adfbc7 Reload nest integration when new devices are added (#62976) 2021-12-29 12:20:55 +01:00
Bram Kragten d62f9a19ae Update frontend to 20211229.0 (#62981) 2021-12-29 12:15:52 +01:00
epenet 7cf66fa72d Add basic type hints to alexa (#62878)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-29 12:11:33 +01:00
Marcel van der Veldt e0744625bc Bump aiohue to 3.0.11 (#62983) 2021-12-29 12:01:57 +01:00
Marcel van der Veldt c7f465ff3b Remove duplicate filter for Hue button events (#62974) 2021-12-28 22:21:23 -08:00
Marcel van der Veldt bc7e51b992 Send commands to Hue grouped lights all at once (#62973) 2021-12-28 22:20:20 -08:00
Allen Porter 67663dd31a Bump google-nest-sdm to 1.1.0 (#62977) 2021-12-28 22:19:31 -08:00
Christopher Bailey 490d76e01e Add UniFi Protect media_player (#62895) 2021-12-28 18:36:18 -10:00
J. Nick Koston 4025ce8f97 Bump flux_led to 0.27.21 (#62971) 2021-12-28 16:22:53 -10:00
Alexei Chetroi b54f2c9487 Don't throw when a Zigbee device has an unknown ZCL cluster (#62964)
* Fix channel name for clusters with None ep_attribute

* Correctly generate entity name based on channel names
2021-12-28 21:04:11 -05:00
Matt Zimmerman dcd2d1e3e2 Bump python-smarttub dependency to 0.0.29 (#62968)
* Bump python-smarttub dependency to 0.0.29

* gen
2021-12-28 19:26:53 -05:00
Andre Richter acf3217449 Fix zwave_js ZWaveTiltCover docstring (#62972)
This is a small leftover from the PR that introduced the class, which
wasn't a generic class originally.
2021-12-28 19:24:27 -05:00
GitHub Action 026ead2889 [ci skip] Translation update 2021-12-29 00:13:49 +00:00
Jonas 1bd1a12285 Remove myself from proxmoxve component codeowners (#62963)
* remove myself from proxmoxve component codeowners

* remove myself from proxmoxve component codeowners
2021-12-28 22:31:23 +01:00
Franck Nijhof 059d86ef25 Add unique ID to CPU Speed sensor (#62961) 2021-12-28 22:28:06 +01:00
epenet 4f32a329a7 Add basic type hints to command_line (#62877)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 21:56:38 +01:00
Franck Nijhof 8b59b3baf4 Add device info to PVOutput (#62951) 2021-12-28 21:47:39 +01:00
Franck Nijhof 4fe62a251d Rename Luftdaten -> Sensor.Community (#62865) 2021-12-28 21:40:00 +01:00
Franck Nijhof 4edf6163f7 Deprecate Bosch BME280 Environmental Sensor (ADR-0019) (#62934) 2021-12-28 21:38:46 +01:00
epenet 4da7508e9d Add CO device class to binary_sensor entity model (#61962)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 10:33:21 -10:00
Franck Nijhof 43dc12b1c8 Add strict typing to Whois (#62959) 2021-12-28 21:25:09 +01:00
Sebastian Lövdahl 53f4a3d8bc Use Platform constants all over the place 3/3 (#62954) 2021-12-28 21:24:27 +01:00
Sebastian Lövdahl d18f1cc872 Use Platform constants all over the place 2/3 (#62953) 2021-12-28 21:23:07 +01:00
Franck Nijhof c8aabc48f1 Deprecate Time of Flight (ADR-0019) (#62955) 2021-12-28 21:20:10 +01:00
Franck Nijhof e60530fb30 Deprecate HTU21D(F) Sensor (ADR-0019) (#62956) 2021-12-28 21:19:45 +01:00
Franck Nijhof 5ab527e59c Add configuration flow to CPU Speed (#62929) 2021-12-28 21:17:53 +01:00
Sebastian Lövdahl bc3bf2ffe3 Use Platform constants all over the place 1/3 (#62952) 2021-12-28 21:13:20 +01:00
Sebastian Lövdahl b5fd2e0d58 Convert Vallox integration to config flow (#62780) 2021-12-28 10:06:29 -10:00
Franck Nijhof 28faf9eafc Add myself as codeowner for Whois (#62958) 2021-12-28 21:05:15 +01:00
epenet 1f35ad08e2 Add basic type hints to homekit_controller (#62880)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 18:24:40 +00:00
Aaron Bach 3a3a6ed464 Fix incorrect state class for Ambient PWS rain rate sensor (#62946) 2021-12-28 09:54:18 -07:00
Franck Nijhof 90a9d64f67 Add reauthentication handling to PVOutput (#62932) 2021-12-28 17:28:35 +01:00
Franck Nijhof 980d6c9563 Deprecate Bosch BMP280 Environmental Sensor (ADR-0019) (#62937) 2021-12-28 15:37:48 +01:00
Franck Nijhof b21505aa43 Deprecate Bosch BME680 Environmental Sensor (ADR-0019) (#62936) 2021-12-28 15:24:48 +01:00
epenet 8cc0df7b72 Ensure service calls are typed [k-n] (#62917)
* Ensure service calls are typed [k-n]

* Ensure service calls are typed in mazda

* Adjust mazda

* Add mazda comment

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 14:33:08 +01:00
Franck Nijhof 1c7efe7047 Update pvo to 0.2.0 (#62926) 2021-12-28 14:30:48 +01:00
epenet 92ace6c2e8 Ensure service calls are typed [s-u] (#62922)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 14:23:42 +01:00
epenet 656d383ba6 Ensure service calls are typed [e-g] (#62912)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 14:23:01 +01:00
epenet fb272f58fb Ensure service calls are typed [h-i] (#62914)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 14:19:14 +01:00
Franck Nijhof 7b5a159899 Add strict typing to CPU Speed (#62924) 2021-12-28 13:19:36 +01:00
epenet 05ac2d4c3a Ensure service calls are typed [v-z] (#62923)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 13:12:06 +01:00
epenet a19c95e4bd Ensure service calls are typed [o-r] (#62920)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 13:10:17 +01:00
Franck Nijhof f6c1266af6 Use shorthand attributes in the CPU Speed integration (#62896) 2021-12-28 11:38:42 +01:00
Mick Vleeshouwer 41c497ee6e Add binary sensor entity to Overkiz integration (#62913) 2021-12-27 23:10:39 -10:00
Phil Cole 68acf13f48 Add basic type hints to nissan_leaf (#62904) 2021-12-28 08:56:07 +01:00
Franck Nijhof d63b7bc5f1 Extract attribute into sensor for PVOutput (#62894) 2021-12-28 08:33:40 +01:00
GitHub Action 4745e2fb3b [ci skip] Translation update 2021-12-28 00:14:11 +00:00
Mick Vleeshouwer 0bcb0a6267 Add scene entity to Overkiz integration (#62884) 2021-12-27 13:57:19 -10:00
epenet cb135bc889 Add basic type hints to xiaomi_miio (#62889)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 00:15:40 +01:00
epenet de64622f3b Ensure service calls are typed [a-d] (#62891)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-28 00:14:20 +01:00
epenet 942f58593b Add type hint to adguard service calls (#62893)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-27 23:55:46 +01:00
epenet e01b0a3625 Add setup type hints to sonos, unifi and wake_on_lan (#62876)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-27 23:42:24 +01:00
Franck Nijhof cee0440ab6 Add unique ID to PVOutput entities (#62890) 2021-12-27 23:14:43 +01:00
Pascal Reeb 1af3177466 Fix unique_id of nuki config entry (#62840)
* fix(nuki): fixed naming of nuki integration

* parse_id function

* migration path

* fixes from ci runs

* don't update title if it was changed

* move to dedicated helper

* use dict of params

* Update homeassistant/components/nuki/__init__.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-27 23:02:48 +01:00
Franck Nijhof 53fdcf1b6a Add basic support for EntityDescription in PVOutput (#62887) 2021-12-27 23:01:00 +01:00
Franck Nijhof 16e9ea6ac7 Slightly improve Open-Meteo configuration flow (#62869) 2021-12-27 22:58:31 +01:00
Thomas Schamm 40aa852a57 Fix missing power and energy sensors for light switches in bosch_shc (#62802) 2021-12-27 22:54:23 +01:00
Franck Nijhof af3d52a3e0 Add myself as codeowner for Luftdaten (#62888) 2021-12-27 22:51:31 +01:00
Mick Vleeshouwer b9ce82f79c Add unique id to DHCP step in Config Flow for Overkiz (#62847) 2021-12-27 11:28:18 -10:00
Franck Nijhof 1cfeb404b6 Add configuration flow to PVOutput (#62667)
* Add configuration flow to PVOutput

* Update homeassistant/components/pvoutput/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/pvoutput/sensor.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Use account URL placeholder

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-27 22:05:10 +01:00
Bram Kragten 6b0f2aa13f Update frontend to 20211227.0 (#62874) 2021-12-27 21:37:21 +01:00
Florent Thoumie 3c2d5d5f8c Update to iaqualink 0.4.1 (#53745)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-27 10:20:55 -10:00
Franck Nijhof 5824477298 Update tuya-iot-py-sdk to 0.6.6 (#62858) 2021-12-27 20:58:33 +01:00
htmltiger de2adce1ca Fix TypeError of vacuum battery level None (#62722)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-27 20:55:43 +01:00
Amos Yuen 45ab9a3e33 Init template trigger binary sensor to None instead of False (#62769) 2021-12-27 20:52:26 +01:00
Allen Porter 17fbfe2eed Set a suggested_area on nest devices based on the Google Home room name (#62871) 2021-12-27 11:39:57 -08:00
corneyl 7fc5605639 Fix keyerror when no previous Picnic orders exist (#62870) 2021-12-27 20:31:35 +01:00
Alberto Geniola 1f425b1942 Improve Elmax code quality (#61273)
Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-27 19:50:43 +01:00
G Johansson 0d957ad93b Code improvements Sensibo (#62810) 2021-12-27 08:34:00 -10:00
Mick Vleeshouwer 089dcb2b22 Address feedback to Overkiz integration (#62841) 2021-12-27 18:26:55 +01:00
Dave T 8fd60dbd51 Refactor entity_category str types (#62790) 2021-12-27 18:23:08 +01:00
epenet 377b0efc60 Add basic type hints to ffmpeg (#62744)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-27 17:56:13 +01:00
Tobias Sauerwein 2c904c0974 Bump mypy to 0.930 (#62642)
Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2021-12-27 17:55:17 +01:00
corneyl b0704c190f Fix picnic sensor time unit (#62437) 2021-12-27 17:44:45 +01:00
Christopher Bailey dc3f21dd1e Followup PR for UniFi Protect integration (#62806)
* Followup improvements from initial PR

* Update tests/components/unifiprotect/conftest.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update translations

* Fixes log message

* Fixes log message

* Unknown to cannot connect

* Update tests/components/unifiprotect/test_config_flow.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Fixes camera coverage

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-27 12:39:24 +01:00
Mick Vleeshouwer cf6fb7bf39 Add light entity to Overkiz integration (#62835) 2021-12-27 12:35:59 +01:00
gjong 35bb19b4eb Upgrade youless library to version 0.16 (#62837) 2021-12-27 12:32:25 +01:00
kpine 22e475790f Avoid removing zwave_js devices for non-ready nodes (#59964)
* Only replace a node if the mfgr id / prod id / prod type differ

* Prefer original device name for unready node

* move register_node_in_dev_reg into async_setup_entry

* simplify get_device_id_ext

* Don't need hex ids

* Revert "move register_node_in_dev_reg into async_setup_entry"

This reverts commit f900e5fb0c67cc81657a1452b51c313bccb6f9e1.

* Revert Callable change

* Revert device backup name

* Add test fixtures

* Update existing not ready test with new fixture data

* Check device properties after node added event

* Add entity check

* Check for extended device id

* better device info checks

* Use receive_event to properly setup components

* Cleanup tests

* improve test_replace_different_node

* improve test_replace_same_node

* add test test_node_model_change

* Clean up long comments and strings

* Format

* Reload integration to detect node device config changes

* update assertions

* Disable entities on "value removed" event

* Disable node status sensor on node replacement

* Add test for disabling entities on remove value event

* Add test for disabling node status sensor on node replacement

* disable entity -> remove entity

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-27 12:31:31 +01:00
Kristján Bjarni 38723b277e Added XML RSS as Content-Type (#62822) 2021-12-27 10:49:38 +01:00
Phil Cole a17fffbfc2 Update to pycarwings 2.13 (#62821) 2021-12-27 10:42:00 +01:00
J. Nick Koston 7a46e04fd1 Remove unused homekit.start service (#62827) 2021-12-27 10:12:02 +01:00
Michael a721927b9a Use ConfigEntryDisabler enum (#62816) 2021-12-27 10:08:29 +01:00
J. Nick Koston 417172eef2 Cleanup HomeKit names to avoid unknown error when adding (#62831) 2021-12-27 09:53:33 +01:00
flfue a3e526d6cf Add return for certified devices to not apply availability check (#62728) 2021-12-26 23:31:51 -08:00
GitHub Action e00406c7b8 [ci skip] Translation update 2021-12-27 00:40:55 +00:00
Ville Skyttä 6f1675944e Add huawei_lte hardware version (#62773) 2021-12-26 10:36:00 -10:00
Simone Chemelli c07077833f Add missing entity category for gen2 devices (#62812) 2021-12-26 22:26:24 +02:00
Thomas Schamm 746aa948bb Bumped boschshcpy 0.2.27 to 0.2.28 (#62778) 2021-12-26 07:53:40 -10:00
uvjustin 08a3140e6c Allow generic camera conf without still_image_url (#62611)
* Allow generic config with no CONF_STILL_IMAGE_URL
* Use Stream.async_get_image when no CONF_STILL_IMAGE_URL
* Remove GenericCamera.camera_image
2021-12-26 15:53:14 +08:00
Ville Skyttä 3e3fb52dfa Huawei LTE simplifications (#62770)
* Use enum types rather than strs in sensor type hints

* Name sensor meta fields same as in SensorEntityDescription

* Make integration shared state a NamedTuple

* Use dataclasses instead of attr
2021-12-26 09:17:59 +02:00
Christopher Bailey e982e7403a Add unifiprotect integration (#62697)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-25 20:12:57 -10:00
Allen Porter c54439ef42 Bump google-nest-sdm to 1.0.0 (#62783)
* Bump google-nest-sdm to 1.0.0

See release log in https://github.com/allenporter/python-google-nest-sdm/compare/0.4.9...1.0.0

* Remove typing ignore now that typing is fixed
2021-12-25 21:47:45 -08:00
GitHub Action cc92aa557a [ci skip] Translation update 2021-12-26 00:15:41 +00:00
Franck Nijhof 7d7f5272fe Add device info to Luftdaten (#62692) 2021-12-25 10:52:31 +01:00
Raman Gupta 639181108f Add zwave_js support for Fortrezz SSA3 (#62765) 2021-12-25 10:33:20 +01:00
GitHub Action 8c8c7e91a2 [ci skip] Translation update 2021-12-25 00:13:29 +00:00
David F. Mulcahey 0062676f61 Add lqi and rssi sensors back to ZHA (#62716)
* update device list

* Only 1 identify button per device

* Add LQI and RSSI sensors to ZHA

* refactor entity creation filter

* update device list and update discover test

* fix reference

* code reduction

* walrus

* parens

* simplify
2021-12-24 16:48:02 -05:00
Evgeny 64d1a7382f Bump roombapy to 1.6.4 (#62741) 2021-12-24 10:34:49 -10:00
Eric Severance a1be11a492 Store wemo device sw_version & upnp connections (#62758) 2021-12-24 10:31:42 -10:00
Mick Vleeshouwer c37077aa9b Add number entity to Overkiz integration (#62732) 2021-12-24 10:29:51 -10:00
uvjustin 9dbba6b7f2 Use lock in Camera.create_stream (#62757)
Rename create_stream to async_create_stream in Camera
Rename get_image to async_get_image in Stream
Rename get_image to async_get_image in KeyFrameConverter
2021-12-25 04:14:43 +08:00
Franck Nijhof 78cc5f8d43 Upgrade vehicle to 0.3.1 (#62747) 2021-12-24 19:59:37 +01:00
Lorenzo Brescanzin 0da710c4e0 Fix HomeKit sensor update check (#62705) 2021-12-24 08:39:37 -10:00
Marc Mueller 6eb31def08 CI: Use wheel to install base requirements (#62743) 2021-12-24 15:09:27 +01:00
epenet 6ffd587788 Add basic type hints to ads (#62738)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-24 14:25:10 +01:00
epenet 6dcec898c4 Add basic type hints to abode (#62730)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-24 14:06:14 +01:00
epenet 3e567959f7 Add basic type hints to advantage_air (#62737)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-24 13:45:42 +01:00
J. Nick Koston 1d0036b86a Bump zeroconf to 0.38.1 (#62720) 2021-12-24 13:26:07 +01:00
J. Nick Koston 690b5a994b Add missing __init__.py to overkiz tests (#62727) 2021-12-23 22:55:31 -10:00
Brian Egge 27e3a5ba83 Generic thermostat presets (#56080)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-23 14:29:29 -10:00
Mick Vleeshouwer fb04b19960 Add button entity to Overkiz integration (#62719) 2021-12-23 14:21:47 -10:00
GitHub Action f07030c425 [ci skip] Translation update 2021-12-24 00:13:45 +00:00
Mick Vleeshouwer f722931920 Add lock entity to Overkiz integration (#62713) 2021-12-23 13:28:01 -10:00
David F. Mulcahey 41531b528e Add identify buttons to ZHA devices (#61495)
* Identify buttons

* clean up and add test

* use Platform

* update device list

* Only 1 identify button per device

* cleanup press until the need arises for the branch

* make imports relative
2021-12-23 17:52:42 -05:00
Dave T fa6d6d914b Use new enums in zwave tests (#62711)
* Use new enums in zwave tests

* Code review: == to is and BinarySensor to Sensor
2021-12-23 23:51:33 +01:00
Dave T 759481688b Use new enums in huisbaasje tests (#62714) 2021-12-23 23:44:09 +01:00
ollo69 bbebf311b1 Review AndroidTV option flow strings (#62601)
Co-authored-by: Jeff Irion <JeffLIrion@users.noreply.github.com>
2021-12-23 12:43:30 -10:00
Dave T 79ef4dea98 Use new enums in smartthings tests (#62708)
* Use new enums in smartthings tests

* Convert == to is
2021-12-23 23:14:10 +01:00
Dave T caa2157b5b Use new enums in rdw tests (#62707) 2021-12-23 23:07:56 +01:00
J. Nick Koston 20e6b50003 Bump yalexs to 1.1.16 (#62700) 2021-12-23 21:08:38 +01:00
Joakim Sørensen 13e3ca6ab1 Add config flow to version integration (#54642) 2021-12-23 21:04:58 +01:00
G Johansson 0ec2978698 Add DeviceInfo to Sensibo (#62668) 2021-12-23 21:02:24 +01:00
Ruslan Sayfutdinov 55f4962c06 Fix pylint plugin which checks relative imports (#62693) 2021-12-23 11:14:47 -08:00
jjlawren 00307e1ade Bump soco to 0.25.2 (#62691) 2021-12-23 11:07:29 -08:00
Ed Coen df6fa43bff Add connectsense to homekit_controller (#62675) 2021-12-23 19:05:36 +00:00
Mick Vleeshouwer 3605c4f32f Add Overkiz integration (with base + sensor entity) (#62640) 2021-12-23 08:34:35 -10:00
Eugenio Panadero f422dd418b Fix pvpc_hourly_pricing by changing data source and modernise integration (#62591) 2021-12-23 17:08:40 +01:00
Erik Montnemery c1ada1754f Reject MQTT cover discovery using unsupported tilt_invert_state (#62680) 2021-12-23 17:05:52 +01:00
epenet 08c66f4983 Add subfolder globbing to partial linters (#62683)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-23 16:41:47 +01:00
Marcel van der Veldt c79f13429c Fix Hue docstring (#62684) 2021-12-23 16:41:22 +01:00
Mick Vleeshouwer c3917fc250 Remove TaHoma integration (#62607) 2021-12-23 16:17:51 +01:00
Franck Nijhof 40f1d53475 Add sensor tests to Luftdaten (#62663) 2021-12-23 15:46:17 +01:00
Marcel van der Veldt 430cc6194b Never use availability workaround for certified Hue devices (#62676) 2021-12-23 15:35:57 +01:00
epenet dff9767da5 Use SensorDeviceClass in thermoworks_smoke (#62637) 2021-12-23 15:17:40 +01:00
Christian Manivong 772428e70f Round Hue transition to steps of 100ms (#62619)
* Adding round() to transition before firing turn_on, turn_off #62608
2021-12-23 15:08:24 +01:00
Marcus Lönnberg 1bbeaa722c Support Tuya cover with operation mach_operate (#62650) 2021-12-23 15:07:23 +01:00
J. Nick Koston 540ae4d10e Update flux_led dhcp matching for older devices (#62577) 2021-12-23 14:32:57 +01:00
Robert Hillis 66fd7de34a Remove deprecated yaml config from Syncthru (#62541) 2021-12-23 14:31:28 +01:00
Marcel van der Veldt eb37668036 Fix Hue button events (#62669) 2021-12-23 14:24:37 +01:00
Marcel van der Veldt 8e759bb267 Adjust Hue retry logic to changes in the aiohue library (#62665) 2021-12-23 14:04:10 +01:00
Marcel van der Veldt aa9746808e Bump aiohue to 3.0.10 (#62664) 2021-12-23 12:18:53 +01:00
G Johansson b6682b3089 Correct extra attributes trafikverket_train (#62636) 2021-12-23 11:35:01 +01:00
Tom Brien fa7739937d Provide clearer feedback in Coinbase when authentication fails (#62627) 2021-12-23 10:52:22 +01:00
Erik Montnemery 8e8e49d3e7 Add sensor device classes for apparent and reactive power (#62010) 2021-12-23 10:29:38 +01:00
Marcel van der Veldt 247c220882 Bump aiohue to 3.0.9 (#62658) 2021-12-23 10:14:07 +01:00
Erik Montnemery cb2c2d98c3 Remove unnecessary checks before calling os.makedirs (#62576) 2021-12-23 09:59:31 +01:00
Paulus Schoutsen 1edfa2d426 Bump aiohue to 3.0.8 (#62651) 2021-12-22 23:17:04 -08:00
Eduard van Valkenburg 259e454c3e Azure Event Hub code improvements (#62584)
* code improvements to AEH

* moved hub back
2021-12-23 07:52:44 +01:00
Andre Richter e9c69682c7 Fix broken Vallox integration in 2021.12 (#62308) 2021-12-22 22:48:31 -08:00
Franck Nijhof dc47cbd01b Add input_button support to Google Assistant (#62593) 2021-12-23 07:38:35 +01:00
Franck Nijhof 99b2161365 Add input_button support to Alexa (#62592) 2021-12-23 07:36:45 +01:00
Allen Porter 23277181ca Increase test coverage for google calendar (#62648)
* Increase test coverage for google calendar

Update tests to exercise the API responses, getting test coverage
to 97% for calendar.py

----------- coverage: platform linux, python 3.9.6-final-0 -----------
Name                                          Stmts   Miss  Cover   Missing
---------------------------------------------------------------------------
homeassistant/components/google/__init__.py     193     84    56%   92, 163-228, 238, 244-247, 254-262, 274, 298-299, 305-347, 387-392, 416-430, 435-437
homeassistant/components/google/calendar.py     122      4    97%   41, 45, 51, 135
---------------------------------------------------------------------------
TOTAL                                           315     88    72%

* Revert conftest changes

* Update typing errors found on CI

* Update python3.8 typing imports

* Remove commented out code
2021-12-23 07:31:56 +01:00
Franck Nijhof 6ef7539a31 Add base integration tests to Luftdaten (#62594) 2021-12-23 07:25:26 +01:00
J. Nick Koston ef5e5c3f96 Dismiss existing discoveries when a HomeKit device is paired (#62632) 2021-12-22 19:40:36 -10:00
Franck Nijhof 79627526c7 Add strict typing to PVOutput (#62628) 2021-12-23 06:25:05 +01:00
shbatm 36c7521508 Bump PyISY to v3.0.1 (#62646) 2021-12-22 21:22:27 -07:00
GitHub Action 87d4420a72 [ci skip] Translation update 2021-12-23 00:14:21 +00:00
Franck Nijhof c5d62ccc7e Add input_button support to HomeKit (#62590) 2021-12-22 13:23:57 -10:00
Steven Looman cb82169e92 Bump async-upnp-client to 0.23.2 (#62634) 2021-12-22 13:23:22 -10:00
epenet cd452552af Use relative imports in sensor (#62638) 2021-12-22 13:22:15 -10:00
Joakim Plate bda1f02371 Reduce boilerplate code in entry init of rfxtrx (#58844)
* Reduce boilerplate code for rfxtrx

* Use rfxtrx built in to construct event

* Fixup mypy after rebase

* Also fix callable import
2021-12-22 22:38:55 +01:00
J. Nick Koston 91a8b1e7b3 Speed up connecting to legacy flux_led devices (#62614) 2021-12-22 22:27:03 +01:00
Robert Hillis e593377fba Add deprecation warning to switchbot yaml config (#62583)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-22 22:17:53 +01:00
Tom Harris 8750fd14cc Improve Insteon responsiveness (#62612) 2021-12-22 21:44:37 +01:00
G Johansson 566f631933 Implement config_Flow for Sensibo (#60900)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-22 10:32:50 -10:00
G Johansson 0e48a658f3 Fix timezone trafikverket_train (#62582)
* Bugfix trafikverket train

* Change from pytz to hass function

* Fix datetime in extra attributes

* Fix time timezone

* Reset changes extra attributes
2021-12-22 21:28:18 +01:00
Thomas Dietrich 0b8cf47613 Add secondary codeowner to statistics integration (#62622) 2021-12-22 10:22:57 -10:00
Ville Skyttä a49aa065b7 Derive mypy python_version from REQUIRED_PYTHON_VER (#62616) 2021-12-22 21:21:05 +01:00
J. Nick Koston 4954f3c73f Bump flux_led to 0.27.13 to fix discovery of legacy devices (#62613)
- The 2013/2014 devices have yet another format for
  the version
2021-12-22 22:18:52 +02:00
Franck Nijhof e3f7d9a803 Extract PVOutput logic into PyPi package (#62625) 2021-12-22 21:17:23 +01:00
Simone Chemelli 51a49f3d39 Fix missing exception handling from upstream lib in Fritz (#62617)
* Fix missing exception handling from upstream lib

* isort
2021-12-22 20:59:56 +01:00
René Klomp d1c0e60bf1 Bump pysma to 0.6.10 (#62599) 2021-12-22 21:57:35 +02:00
Jc2k 06eec7adfc Allow adding new devices to an Aqara hub via homekit_controller (#62600) 2021-12-22 08:49:58 -10:00
uvjustin 6e13605cad Add get_image method to Stream (#61918)
* Add get_image method to Stream

* Add KeyFrameConverter class
2021-12-23 00:24:53 +08:00
Erik Montnemery eda9291ca1 Improve google cast state reporting (#62587) 2021-12-22 14:54:36 +01:00
J. Nick Koston c2b44c5fdc Bump flux_led to 0.27.12 to fix legacy cct controllers (#62573) 2021-12-22 14:35:48 +01:00
Dave T 38e95ca663 Use new enums for prometheus tests (#62550) 2021-12-22 14:31:20 +01:00
Dave T d7de3fbfce Use new enums in picnic tests (#62549) 2021-12-22 14:29:55 +01:00
Dave T eb10ff47df Use new enums in p1_monitor tests (#62548) 2021-12-22 14:28:22 +01:00
Erik Montnemery 2f8e65a9b0 Store deleted duplicated statistics in .storage (#62574) 2021-12-22 14:27:56 +01:00
Robert Hillis 75e8a2ec77 Use platform enums in plex tests (#62561) 2021-12-22 07:59:54 -05:00
Robert Hillis 432d48a4d7 Use platform enums in vizio tests (#62555) 2021-12-22 07:33:13 -05:00
Robert Hillis d9788c2447 Use platform enums in rest tests (#62564) 2021-12-22 07:31:55 -05:00
Franck Nijhof 496165711d Improve config flow Luftdaten (#62589)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-22 13:00:51 +01:00
Simone Chemelli 925e4998b4 Fix missing object assignment for Fritz (#62575) 2021-12-22 12:59:54 +01:00
rikroe 986b60e527 Replace charging_time_remaining with charging_end_time in bmw_connected_drive (#60942)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-12-22 12:52:01 +01:00
rikroe f40870b4d7 Round imperial values to two decimals in bmw_connected_drive (#62531)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-12-22 12:27:36 +01:00
ShadowBr0ther 89526fe86c Fix repetier crash when printer is offline (#62490) 2021-12-22 12:26:23 +01:00
Franck Nijhof 60b2cdd069 Allow binary sensor state to be None (#60193) 2021-12-22 12:24:29 +01:00
Franck Nijhof 4805b67300 Add strict typing to Luftdaten (#62588) 2021-12-22 12:20:35 +01:00
Erik Montnemery 3323263c94 Flip behavior for grouped locks (#62580) 2021-12-22 12:14:45 +01:00
Franck Nijhof 66185f8247 Add state class support to Luftdaten (#62585) 2021-12-22 12:04:31 +01:00
Robert Hillis ee878513a7 Remove deprecated yaml config from squeezebox (#62537) 2021-12-22 12:03:31 +01:00
Robert Hillis 5e25df91b2 Use platform enums in utility_meter tests (#62553) 2021-12-22 10:43:33 +01:00
Dave T 563e6b3e80 Use new enums in modern_forms tests (#62519) 2021-12-22 10:04:12 +01:00
Dave T e64352a7e0 Use new enums in modbus tests (#62518) 2021-12-22 10:03:11 +01:00
Dave T f2ae7c0b92 Use new enums in mfi tests (#62516)
* Use new enums in mfi tests

* Code review: swap == for is
2021-12-22 10:01:00 +01:00
Dave T a7ef983a31 Use new enums in litterrobot tests (#62515)
* Use new enums in litterrobot tests

* Code review: swap == for is
2021-12-22 10:00:24 +01:00
Jc2k d3d6965ba0 Support setting Aqara Hub Volume via homekit_controller (#62538) 2021-12-22 08:43:17 +00:00
Eduard van Valkenburg 6806b8b116 Change Brunt cover device class (#62578) 2021-12-22 09:39:59 +01:00
Dave T c7b910ca33 Use new enums in knx tests (#62513)
* Use new enums in knx tests

* Code review: Swap == for is
2021-12-22 09:31:23 +01:00
schmyd f135d77a27 Fix deconz light service parameter handling (#62128)
* Only check presence of values, not their content

* Add tests

* Revert "Only check presence of values, not their content"

This reverts commit 046f0ed5fd631cbac0d26e4d3869ad2c6254c0f9.

* Validate existence of keys, not their values

* Properly handle cases of missing keys
2021-12-22 09:29:54 +01:00
Dave T 3663e0af41 Use enums for ozw tests (#62547) 2021-12-22 09:16:37 +01:00
Paulus Schoutsen 5580e87253 Add correct callback annotation in configurator (#62569) 2021-12-22 09:09:31 +01:00
Allen Porter 14e4216e29 Put access to ffmpeg hass.data behind a method (#62570)
* Put access to ffmpeg hass.data behind a method

Move all callers of `hass.data[DATA_FFMPEG]` to a new function that returns the FFMpegManager.

* Update homeassistant/components/ffmpeg/__init__.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Remove unnecessary async_ prefix

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-21 23:40:43 -08:00
Robert Hillis ce9abdb520 Use platform enums in ring tests (#62565) 2021-12-21 21:01:01 -08:00
Allen Porter bf108b9d0d Update nest mac addresses based on newer generation hardware (#62525)
Add nest mac addresses for cameras and doorbell devices added
in the last few years.

This is in perparation for improving nest discovery, which
currently does not work great because it requires configuration.yaml
2021-12-21 22:38:25 -06:00
Robert Hillis 0c82a3c7b0 Use platform enums in withings tests (#62551) 2021-12-21 20:37:17 -08:00
Aaron Bach a2be1a4402 Bump pytile to 2021.12.0 (#62559) 2021-12-21 20:36:37 -08:00
Marvin Wichmann 42c7f1dd1f Update xknx to version 0.18.15 (#62557) 2021-12-21 20:36:27 -08:00
jjlawren 4475e88707 Fix Sonos updating when entities are disabled (#62456)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-21 20:36:12 -08:00
GitHub Action cceedf766a [ci skip] Translation update 2021-12-22 00:14:51 +00:00
Robert Hillis 1279592a98 Remove deprecated yaml config from vlc_telnet (#62542) 2021-12-21 23:37:46 +01:00
Robert Hillis 550fe18603 Use enums in tasmota tests (#62150)
* Use enums in tasmota tests

* platform enums
2021-12-21 23:01:07 +01:00
Franck Nijhof 82013e68fb Implement DataUpdateCoordinator in luftdaten (#62313)
* Implement DataUpdateCoordinator in luftdaten

* Typing additions/fixes

* Update homeassistant/components/luftdaten/sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-21 22:51:47 +01:00
Dave T d82e8b6cc0 Use new enums in mobile_app tests (#62517) 2021-12-21 22:30:18 +01:00
J. Nick Koston fddbecd2bf Fix backwards vol.Coerce order in flux_led (#62509)
* Fix backwards vol.Coerce order in flux_led

- reference: https://github.com/home-assistant/core/pull/62429#discussion_r773045507

* fix a few more after updating head

* cleanup extra comma
2021-12-21 22:14:44 +01:00
Angelo Gagliano 600db0794d Require RPi.GPIO and bump adafruit-circuitpython-dht to 3.7.0 in dht (#61751) 2021-12-21 22:09:28 +01:00
Dave T 043a4b06d0 Use new enums in mqtt tests (#62520) 2021-12-21 22:04:32 +01:00
Dave T 03054bc430 Use new enums in mysensors tests (#62521) 2021-12-21 21:57:55 +01:00
Dave T e0c5cbf1e0 Use new enums in nam tests (#62522) 2021-12-21 21:54:58 +01:00
Dave T 8166f37830 Use new enums in nzbget tests (#62524) 2021-12-21 21:51:10 +01:00
jjlawren cc6228f5c9 Bump soco to 0.25.1 (#62523) 2021-12-21 21:14:44 +01:00
Dave T 33bddf275c Use SensorStateClass Enums in fritzbox tests (#62134) 2021-12-21 19:17:23 +01:00
Ville Skyttä 9b437ef146 Remaining DeviceAutomationType bits (#62508)
* Use DeviceAutomationType in missed tests/components/*

* Tighten device automation type hints
2021-12-21 20:05:48 +02:00
Dave T 498720f3c9 Use DeviceClass Enums in integration tests (#62511) 2021-12-21 19:03:39 +01:00
Dave T 1f62371f45 Use DeviceClass Enums in iotawatt tests (#62512) 2021-12-21 19:02:15 +01:00
micha91 0540c9455d Use EntityCategory enum for MusicCast entity types (#62303) 2021-12-21 18:56:13 +01:00
Franck Nijhof eb292fbfbd Deprecate BeagleBone Black GPIO integration (ADR-0019) (#62492) 2021-12-21 17:53:42 +01:00
Franck Nijhof 07e034c1c6 Add iif (immediate if) template function/filter (#61428) 2021-12-21 17:25:07 +01:00
Franck Nijhof 0e9282a404 Deprecate pi4ioe5v9xxxx integration (ADR-0019) (#62491) 2021-12-21 17:23:02 +01:00
Erik Montnemery 6151bbe5c8 Improve debug log when warning about a dip in total_increasing sensor (#62501) 2021-12-21 17:22:40 +01:00
Erik Montnemery e48f567176 Wrap shorthand template conditions during schema validation (#62485) 2021-12-21 17:20:15 +01:00
Franck Nijhof 6d1c4a4f5f Deprecate BH1750 integration (ADR-0019) (#62493) 2021-12-21 17:17:58 +01:00
Franck Nijhof cdc3dcc1e6 Deprecate DHT Sensor integration (ADR-0019) (#62495) 2021-12-21 17:16:21 +01:00
Franck Nijhof e8c972c55d Deprecate Sensirion SHT31 integration (ADR-0019) (#62496) 2021-12-21 17:13:53 +01:00
Erik Montnemery 48b3d6e1c0 Save original + duplicate pairs when deleting duplicated statistics (#62498) 2021-12-21 15:24:36 +01:00
Erik Montnemery cab2a74b5f Don't pollute config dir with deleted duplicated statistics (#62489) 2021-12-21 14:27:35 +01:00
Erik Montnemery cbcd6d458e Assert current state of script condition validation in tests (#62486) 2021-12-21 14:10:05 +01:00
Erik Montnemery 684c380ce2 Use SensorDeviceClass enum in sensor device automations (#62480) 2021-12-21 14:07:01 +01:00
Franck Nijhof 69ba04be3c Deprecate pcal9535a integration (ADR-0019) (#62487) 2021-12-21 13:24:08 +01:00
Franck Nijhof 6cdd341465 Deprecate mcp23017 integration (ADR-0019) (#62484) 2021-12-21 13:03:29 +01:00
Franck Nijhof e62148b8ff Remove deprecated YAML configuration from Stookalert (#61007) 2021-12-21 12:53:19 +01:00
Franck Nijhof eb5a321a9f Mark removed config schemas as removed (#61014) 2021-12-21 12:46:10 +01:00
Erik Montnemery e2fca2e305 Support shorthand templates in condition actions (#61177)
* Support shorthand templates in condition actions

* Fix validation message

* Fix tests
2021-12-21 12:19:31 +01:00
J. Nick Koston 4b30c9631f Add set_music_mode service to flux_led for detailed music mode control (#62429) 2021-12-21 12:09:41 +01:00
Jonathan Keslin eb897c6f48 Add device registry information to Blink entities (#62449) 2021-12-21 12:06:08 +01:00
Robert Hillis ed9e17aeec Clean up ssdp flow in dlna_dmr (#62466) 2021-12-21 12:02:21 +01:00
GJH 83f3666aa8 Add USB discover for Sonoff zigbee dongle plus (#62171) 2021-12-21 11:59:57 +01:00
Ville Skyttä ea58432721 Use DeviceAutomationType in tests/components/[s-z]* (#62450) 2021-12-21 11:56:00 +01:00
Brynley McDonald 26dc526234 Add slugify as a template filter (#58724) 2021-12-21 11:35:54 +01:00
J. Nick Koston e0ef066022 Remove legacy migration and yaml from tplink (#62457)
- tplink has been fully migrated to a config flow in previous
  versions.
2021-12-21 11:24:32 +01:00
Robert Hillis a9c45fdcc0 Remove deprecated yaml config from philips_js (#62471) 2021-12-21 11:11:25 +01:00
Petru Paler 71852fd7a8 Update Solax library to 0.2.9 (#62464) 2021-12-21 11:06:44 +01:00
Robert Hillis 101341f186 Remove deprecated yaml config from google travel time (#62468) 2021-12-21 11:00:11 +01:00
Robert Hillis d1980e7351 Remove deprecated yaml config from honeywell (#62469) 2021-12-21 10:53:07 +01:00
dependabot[bot] 3898dfd248 Bump docker/login-action from 1.10.0 to 1.12.0 (#62462)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-21 10:40:04 +01:00
Mark Zachmann 64e3383b72 Use on_level when turning an Insteon dimmer on (#62321)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-21 10:37:29 +01:00
Erik Montnemery 7fb79b363a Enable PYTHONASYNCIODEBUG in tests (#62104) 2021-12-21 10:35:48 +01:00
Franck Nijhof 7cdfc7558e Cleanup stale setup/import from Nuki (#62476)
* Cleanup stale setup/import from Nuki

* Adjust tests
2021-12-21 10:31:41 +01:00
Robert Hillis d73081f875 Remove deprecated yaml config from nuki (#62470) 2021-12-21 10:01:43 +01:00
Eric Severance d60540d4f5 Cast types in wemo rather than converting (#62454) 2021-12-20 22:34:34 -06:00
J. Nick Koston a7cae02725 Add support for changing Magic Home socket power restore state (#62301) 2021-12-20 20:35:50 -06:00
GitHub Action babd753610 [ci skip] Translation update 2021-12-21 00:15:06 +00:00
Marcel van der Veldt 92454e3ac8 Change Hue availability blacklist logic a bit (#62446) 2021-12-20 16:09:14 -08:00
rikroe aaac1d4c5a Bump bimmer_connected to 0.8.7 (#62435)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-12-20 23:25:26 +01:00
Marcel van der Veldt d22012ac43 bump aiohue to 3.0.7 (#62444) 2021-12-20 13:45:38 -08:00
epenet b483754ad3 Use new enums in sma (#62439)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 22:30:22 +01:00
Ville Skyttä f913961d63 Use DeviceAutomationType in tests/components/[m-r]* (#62443) 2021-12-20 22:29:22 +01:00
Ville Skyttä 5926961ed5 Use DeviceAutomationType in tests/components/[a-f]* (#62440) 2021-12-20 22:26:29 +01:00
Ville Skyttä c5e6489475 Use DeviceAutomationType in tests/components/[h-l]* (#62441) 2021-12-20 22:18:53 +01:00
epenet ce93364a36 Use new enums in zwave_js (#62432)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 15:18:15 -05:00
epenet bd63b707fc Use attr** in tellstick sensor (#62422)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 21:17:37 +01:00
epenet 4176cb15f6 Use new enums in tado (#62423)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 21:16:12 +01:00
epenet 369041e0d2 Use new enums in tahoma (#62424)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 21:12:20 +01:00
Aaron Bach b051704c4b Add reauth flow to Tile (#62415) 2021-12-20 13:11:26 -07:00
epenet 9eb1a44c03 Use new enums in tellduslive (#62426)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 21:04:24 +01:00
epenet 3724a4fb2f Use new enums in tasmota (#62427)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 21:00:53 +01:00
epenet 69df7bc43d Use new enums in ted5000 (#62425)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 20:59:50 +01:00
epenet 314dce914f Use new enums in temper (#62428)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 20:58:54 +01:00
epenet 418221bd21 Use new enums in tesla_wall_connector (#62434)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 20:58:17 +01:00
epenet 666e14b11d Use new enums in wled (#62431)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 20:57:05 +01:00
epenet 2f8e44641b Use new enums in verisure (#62433)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 20:56:33 +01:00
epenet 6a5192b170 Use new enums in watttime (#62430)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 20:55:37 +01:00
Erik Montnemery a7a0cfd9e6 Make it possible to turn on audio only google cast devices (#62420) 2021-12-20 11:18:11 -08:00
ollo69 5a41251d45 Add config_flow to AndroidTV integration (#54444)
Co-authored-by: Robert Hillis <tkdrob4390@yahoo.com>
2021-12-20 13:08:35 -06:00
Eric Severance 2dfd4c49da Fix Non-thread-safe operation in wemo tests (#62418) 2021-12-20 12:56:56 -06:00
Dave T 168fefad88 Use DeviceClass Enums in homekit (#62218) 2021-12-20 12:53:44 -06:00
Matthias Alphart 6cf9f1a0cc Update xknx to 0.18.14 (#62411)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-20 19:22:04 +01:00
epenet 6a81821399 Refactor kaiterra to use SensorEntityDescription (#61865)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 19:20:40 +01:00
epenet 7bee0e6423 Update "Code Coverage" task to use numprocesses (#61449)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 19:18:55 +01:00
Ville Skyttä 334c6c5c02 Make device automation type an enum (#62354) 2021-12-20 19:16:30 +01:00
Bram Kragten 2ddd45afd5 Update frontend to 20211220.0 (#62389) 2021-12-20 09:49:16 -08:00
epenet c04e181809 Use attr** in smarty (#62371)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:42:36 +01:00
Erik Montnemery ba818c0a95 Bump pychromecast to 10.2.2 (#62390) 2021-12-20 18:37:11 +01:00
epenet 07e1e174ac Use attr** in somfy-mylink (#62381)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:33:58 +01:00
Eduard van Valkenburg afc42ff835 Bump brunt to 1.1.0 (#62386) 2021-12-20 18:31:59 +01:00
epenet ff7a0dabb2 Use new enums in somfy (#62378)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:28:52 +01:00
epenet 527d3a9e5b Use new enums in solaredge (#62373)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:16:53 +01:00
Franck Nijhof c931044d46 Invalidate CI cache when bumping dependencies, part 2 (#62412) 2021-12-20 09:09:36 -08:00
Dave T ac0f655fd6 Use DeviceClass Enums in devolo_home_network tests (#62117) 2021-12-20 18:09:28 +01:00
epenet bae82d76b5 Use new enums in spider (#62396)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:06:33 +01:00
epenet 36a57b00d9 Use attr** in solax (#62397)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:05:04 +01:00
epenet de88d43068 Use new enums in subaru (#62403)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:03:52 +01:00
epenet 7da7a8434e Use new enums in switchbot (#62404)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 18:03:08 +01:00
epenet ae3162bb6e Use new enums in starline (#62407)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 17:55:37 +01:00
epenet bea1fbb4aa Use new enums in supla (#62406)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 17:38:31 +01:00
epenet 5251c1b934 Use new enums in speedtestdotnet (#62405)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 11:16:20 -05:00
epenet 8bd03d520b Use new enums in system_bridge (#62402)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 11:15:44 -05:00
epenet 071e29bf1d Use new enums in systemmonitor (#62401)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 11:15:30 -05:00
epenet 23baf6e02a Use new enums in syncthru (#62399)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 10:53:50 -05:00
epenet 75000c317b Use new enums in switcher_kis (#62400)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 10:53:40 -05:00
epenet e5cf9b78bd Use new enums in synology_dsm (#62398)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 10:53:21 -05:00
Nate Clark e2a95181ad Update CODEOWNERS and correct iot class for Konnected (#62391) 2021-12-20 16:27:06 +01:00
Franck Nijhof f14f0f93cb Invalidate CI cache when bumping dependencies (#62394)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-20 16:22:09 +01:00
Franck Nijhof fc6c0b1d4a Add input_button (#62008)
* Add input_button

* Update homeassistant/components/input_button/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Improve test coverage

* Add reload test: not affecting state

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-20 16:18:58 +01:00
Franck Nijhof ff062bd052 Cleanup stale setup from CO2Signal (#62395) 2021-12-20 16:07:13 +01:00
epenet 0cc1a7b9bd Use new enums in solaredge_local (#62374)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 15:58:25 +01:00
Thomas Dietrich 28af0b4092 Statistics component typing (#60997)
* Implement optional manually defined uniqueid

* Fix test case via mocked environment

* Add typing to statistics component

* Fix minor inconsistency

* Fix linter issues

* Execute hassfest

* Fix stricter mypy warnings

* Fix maxsplit warning

* Make binary value range explicit check

* Add basic typing to statistics tests

* Add empty config testcase

* Minor improvements

* Improve after comments

* Remove unnecessary test case

* Fix changed type

* Remove dict.get default
2021-12-20 14:53:51 +01:00
epenet 2f0b73c4ad Use new enums in solax (#62376)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 14:33:08 +01:00
Erik Montnemery c96606df68 Don't use the homeassistant media app when casting media (#62385) 2021-12-20 14:28:02 +01:00
epenet 43099f6eb0 Use _attr_attribution in synology_dsm (#62382)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 14:19:40 +01:00
epenet d147038cc5 Use new enums in soma (#62377)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 14:19:09 +01:00
epenet c7a3a0da9f Use new enums in spc (#62384)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 14:18:48 +01:00
epenet c18c58f560 Use attr** in linode (#61882)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 14:17:23 +01:00
Robert Hillis e689afc0b3 Remove deprecated yaml config from dlna_dmr (#62344) 2021-12-20 13:56:45 +01:00
epenet b5de2c38b3 Use new enums in sms (#62372)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-20 13:54:10 +01:00
Robert Hillis cabcb52fb3 Remove deprecated yaml config from co2signal (#62343) 2021-12-20 13:49:15 +01:00
J. Nick Koston abc7dcf6bf Add zones support to flux_led (#61072) 2021-12-20 13:45:34 +01:00
Aaron Bach 3d75befe0a Replace SimpliSafe logged errors with HomeAssistantError in service handlers (#62352) 2021-12-20 13:35:45 +01:00
Thomas Dietrich d471e7e111 Fix typo in Kostal Plenticore integration entity (#62380) 2021-12-20 13:04:30 +01:00
Franck Nijhof 030a2c4de2 Invalidate CI cache by bumping caching version (#62383) 2021-12-20 12:31:16 +01:00
Robert Hillis 31c0440b25 Use enums in smartthings (#62198) 2021-12-20 09:46:33 +01:00
Paulus Schoutsen a5c39e6fe4 Improve evil genius labs error handling (#62365) 2021-12-20 09:00:49 +01:00
Paulus Schoutsen 02ad5f3779 Bump voluptuous_serialize to 2.5.0 (#62363) 2021-12-19 22:28:15 -08:00
Penny Wood 2d049e9b4a Update version of iZone library to add some bug fixes (#61548) 2021-12-19 22:25:01 -08:00
Eric Severance f50dc10276 Use the Platform enum in wemo (#62153) 2021-12-19 21:11:40 -08:00
J. Nick Koston 70947b14a3 Improve SSDP callback performance (#62359) 2021-12-19 21:04:45 -08:00
Eric Severance e8096e7f51 Bump pywemo==0.7.0 (#62360) 2021-12-19 21:02:05 -08:00
Tobias Sauerwein f2e4613db5 Bump pyatmo to 6.2.1 (#62291) 2021-12-19 21:00:55 -08:00
jjlawren d64e7b1dc4 Support Plex resuming and playback offset (#61468) 2021-12-19 22:33:36 -06:00
Allen Porter 6ae7b928ea Add a camera specific logger to help diagnose stream errors (#61647)
* Add a camera specific logger to help diagnose stream errors

Add a camera specific logger to help users associate stream errors with a particular camera.
Issue #54659

* Apply code review feedback

* Update package name based on manual testing
2021-12-19 19:42:37 -08:00
GitHub Action 1f066a7b6f [ci skip] Translation update 2021-12-20 00:15:28 +00:00
Eric Severance 1318597370 Fix typing for wemo (#62157) 2021-12-19 18:09:30 -06:00
Robert Hillis 7919960570 Remove deprecated yaml config from broadlink (#62341) 2021-12-19 17:42:30 -06:00
AJ Schmidt 3c913d4e88 Re-add binary_sensor attribute for AlarmDecoder that was inadvertently removed (#62351) 2021-12-19 16:12:33 -06:00
Aaron Bach b77fc2e8cb Ensure existing SimpliSafe websocket tasks are cancelled appropriately (#62347) 2021-12-19 15:05:13 -07:00
Robert Hillis 667a632e06 Remove deprecated yaml config from enphase_envoy (#62348) 2021-12-19 16:03:18 -06:00
Aaron Bach fed18fe142 Replace OpenUV logged errors with HomeAssistantError in service handlers (#62349)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-19 23:02:51 +01:00
Aaron Bach dbb4c1b5f0 Replace RainMachine logged errors with HomeAssistantError in service handlers (#62350) 2021-12-19 14:58:34 -07:00
Robert Hillis 1baba2a807 Remove deprecated yaml config from flux_led (#61844)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-19 15:24:04 -06:00
Aaron Bach 443003795b Replace Guardian logged errors with HomeAssistantError in service handlers (#62342) 2021-12-19 22:14:08 +01:00
Aaron Bach 8eb33ede43 Fix bug in which SimpliSafe websocket won't reconnect on error (#62241) 2021-12-19 13:52:21 -07:00
J. Nick Koston cb26862d7a Add zeroconf discovery to ecobee for non-homekit models (#62335) 2021-12-19 21:13:23 +01:00
Allen Porter 368e16f189 Simplify nest test patch using new keyword (#62336) 2021-12-19 11:45:04 -08:00
Maikel Punie 9017d35e73 Fix velbus climate current temp (#62329) 2021-12-19 20:22:41 +01:00
Aaron Bach 1b17c295d6 Use migration helper in RainMachine (#62328) 2021-12-19 20:17:31 +01:00
J. Nick Koston b63c766ec0 Add homekit discovery to ecobee (#62334) 2021-12-19 20:17:19 +01:00
Thijs Walcarius f9e38cd08b Fix missing brightness for Velbus entities (#62314)
* Fix #62169: missing brightness for Velbus-entities

* Use default implementation of supported_features

Co-authored-by: Thijs Walcarius <thijs.walcarius@ugent.be>
2021-12-19 20:14:56 +01:00
Aaron Bach 2bfcc5777d Use migration helper in Ridwell (#62327) 2021-12-19 20:12:51 +01:00
Robert Hillis dfc93f6ab8 Remove deprecated yaml config from Efergy (#61520) 2021-12-19 18:44:26 +01:00
Thomas Schamm 78d028a013 Bumped boschshcpy 0.2.19 to 0.2.27 (#62326) 2021-12-19 18:24:37 +01:00
Allen Porter 647febd7d8 Mark camera unavailable when keepalive stream fails (#62294)
* Mark camera unavailable when keepalive stream fails

Add a listener in stream that notifies camera when the stream state has changed, and
use that to inform the camera `available` property. Update the property to be set
only from the main loop where it is read to reduce thread safety races.

Issue #54659

* Fix pylint import related errors

* Address lint naming errors

* Apply suggestions from code review

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-19 09:09:59 -08:00
Ville Skyttä 1ec8619687 Make core config source an enum (#61966)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-19 18:02:52 +01:00
Robert Hillis 1bd904b5b5 Use enums for rest tests (#62197)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-19 18:01:33 +01:00
Robert Hillis b869b680fb Remove deprecated yaml config from aurora abb (#62317) 2021-12-19 18:00:49 +01:00
J. Nick Koston c3a963e12a Add switch to enable/disable music mode in Magic Home/flux_led (#62320) 2021-12-19 17:57:33 +01:00
Robert Hillis 5d5b6bef55 Remove deprecated yaml config from opengarage (#61961) 2021-12-19 17:55:27 +01:00
J. Nick Koston 2f4c29cf1f Move Magic Home/flux_led coordinator to its own module (#62324) 2021-12-19 17:52:48 +01:00
J. Nick Koston 9128693e71 Add reboot button to Magic Home/flux_led (#62323) 2021-12-19 17:48:42 +01:00
J. Nick Koston d325de7510 Add additional guarding to color_rgb_to_rgbww (#62220) 2021-12-19 09:44:53 -06:00
Pierre Ståhl 355f2f25d8 Support additional Apple TV device types (#61104) 2021-12-19 07:55:53 -06:00
Robert Hillis 4e2195baa1 Remove deprecated yaml config from environment canada (#61839) 2021-12-19 13:40:39 +01:00
Robert Hillis 867cbeedb9 Use enums in zwave (#62131)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-19 13:30:16 +01:00
epenet abb36ff45f Use _attr_attribution in sense (#62181)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:27:23 +01:00
epenet 8bca984d61 Use _attr_** in openweathermap (#62179)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:25:51 +01:00
epenet 868a1c222c Use _attr_attribution in poolsense (#62180)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:23:04 +01:00
epenet 340ffc96dc Use new enums in sleepiq (#62203)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:15:09 +01:00
epenet 19fc15c3ac Use new enums in saj (#62205)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:12:02 +01:00
epenet 1d1c91a4eb Use _attr_** in slide (#62206)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:08:59 +01:00
epenet 6a489bb45a Cleanup attr** usage in uptime (#62212)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:06:36 +01:00
Gage Benne 7d3dfeea64 Bump pydexcom to 0.2.2 (#62207) 2021-12-19 13:05:51 +01:00
epenet b0cfc76add Use new enums in smarthab (#62208)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-19 13:04:52 +01:00
Klaas Schoute 779ce6216c Change unload for P1 Monitor (#62213) 2021-12-19 13:03:06 +01:00
Robert Hillis d52caf77d5 Finish using enums in srp_energy (#62192) 2021-12-19 13:02:29 +01:00
Dave T b01078199a Use DeviceClass Enums in filter tests (#62138) 2021-12-19 13:01:54 +01:00
Franck Nijhof 7fe895e554 Add unique ID to config entry in Luftdaten (#62176) 2021-12-19 12:42:52 +01:00
Robert Hillis b559d8845e Use enums in zwave_js (#62130)
* Use enums in zwave_js

* oops
2021-12-19 12:28:09 +01:00
Matthias Alphart 1cbcb9e2fd Don't add Fronius entities with unknown state (#62282) 2021-12-19 11:49:21 +01:00
Matthias Alphart 37bed64607 Silently retry Fronius inverter endpoint 2 times (#61826) 2021-12-19 11:37:14 +01:00
Andre Lengwenus 38cb477e7b Cleanup tests for lcn events and device triggers (#61719)
* Return PchkConnectionManager instance from init_integration

* Removed ip and port from LCN host model identifer

* Fix syntax error

* Convert init_integration to a fixture

* Rename device model for host

* Instantiate MockPchkConnectionManager with arguments from tests

* Invert logic for testing devices
2021-12-19 10:38:33 +01:00
J. Nick Koston 615872a5d1 Align zeroconf matching with ZeroconfServiceInfo (#62133) 2021-12-19 02:09:21 -06:00
Allen Porter a63fa53275 Persist nest media events to disk backed storage (#61641)
* Persist nest media events to disk backed storage

Persist nest events in the media player to disk, targeting about ~500mb
per camera device as a cap. Events are stored in config/nest/event_media/.

Add a NestEventMediaStore is used for persistence. It has three main jobs:
- Read/write the key/value data that holds event data (event type, time, device, etc)
- Read/write media contents to disk
- Pick the filename for the media event based on device and event deatils

The nest event media manager library handles cache management and eviction, and by
default uses an in memory cache. Home Assistant nest integration now provides the
disk backed implementation, which is invoked by the nest library.

The store reads the event metadata key/value dict on startup, and then writes it
back with a short delay of 5 seconds to avoid unnecessary writes.

Future work planned includes:
- Possibly a small memory buffer for media objects themselves. This could make sense
  when adding thumbnails to the media player grid to avoid unnecessary fetches
- Transcoding mp4 clips to animated image previews

* Address style errors

* Cleanup from CI test/pylint/etc.

* Put media for each device into its own directory

* Update comments for media store

* Decrease # of events to lower disk requirements

Target more like 1k events, to reduce disk needs.

* Address PR feedback

* Update homeassistant/components/nest/media_source.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Ignore incorrect mypy in nest library

* Fix pylint errors

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-18 23:53:40 -08:00
J. Nick Koston e834382b9a Add pico remote support to non-pro lutron caseta bridges (#61032) 2021-12-19 01:41:02 -06:00
Allen Porter 832184bacd Speed up stream tests by 40-50% with shared data (#62300) 2021-12-18 23:14:21 -08:00
J. Nick Koston a6b680cd32 Add support for enabling/disabling cloud access in flux_led (#61138)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-19 00:59:16 -06:00
J. Nick Koston d7c5e41802 Add hardware version to bond (#62256) 2021-12-18 22:30:44 -08:00
Simone Chemelli 90345b1cf2 Fix logging for Shelly climate platform (#62264)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-12-18 22:28:26 -08:00
J. Nick Koston 4572fec680 Bump flux_led to 0.27.8 to fix discovery of older devices (#62292) 2021-12-18 22:27:34 -08:00
J. Nick Koston 7764c957ba Avoid setting nexia humidity to the same value since it causes the api to fail (#61843) 2021-12-18 22:26:19 -08:00
J. Nick Koston 03477e0ae6 Split august motion and image capture binary sensors (#62154) 2021-12-18 22:25:30 -08:00
Aaron Bach ebfe9aa384 Add a switch to opt-in to/opt-out of the next Ridwell pickup (#62293)
* Add buttons to opt into/out of the next Ridwell pickup

* Buttons finished

* Coverage

* better name

* Move to switch

* Clean up

* Coverage

* Use correct exception
2021-12-18 23:06:17 -07:00
Dave T afdc570d70 Use DeviceClass Enums in homekit_controller tests (#62219) 2021-12-18 23:56:59 -06:00
J. Nick Koston a4c101b021 Add network support to flux_led discovery (#61132) 2021-12-18 21:55:57 -08:00
J. Nick Koston a40549c1b9 Fix hw_version not updating from an entity device_info (#62254) 2021-12-18 21:53:49 -08:00
Eric Severance 8d6763eaad Add wemo config_flow test to get 100% coverage (#62158) 2021-12-18 23:43:31 -06:00
Paulus Schoutsen 6fd617a89e Bump ring to 0.7.2 (#62299) 2021-12-18 23:41:59 -06:00
Michael Chisholm f280b03df8 Update async-upnp-client library to 0.23.1 (#62298) 2021-12-18 23:41:32 -06:00
epenet 931d51949d Use new DeviceClass enums in homekit (#61665)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-18 19:07:04 -06:00
GitHub Action d3710c7ba6 [ci skip] Translation update 2021-12-19 00:14:45 +00:00
Aaron Bach 98c398cc37 Bump aioridwell to 2021.12.2 (#62284) 2021-12-18 16:26:37 -07:00
micha91 ba79de56ab Move Device Class definition to Home Assistant for MusicCast Select Entities (#61218)
* Add a device class mapping to the consts to map from capability IDs to HA device classes.

* Use python3.8 compliant typing

* Fix return type

* Use relative import for musiccast const
2021-12-19 00:18:42 +01:00
J. Nick Koston 4dc70536b6 Fix Non-thread-safe operation in rflink binary_sensor (#62286) 2021-12-19 00:14:41 +01:00
J. Nick Koston b05149fc28 Fix Non-thread-safe operation in zwave node_added (#62287) 2021-12-18 23:17:54 +01:00
Chris Talkington 99d1e015ad Update rokuecp to 0.8.5 (#62285) 2021-12-18 14:50:49 -06:00
starkillerOG 58bcf275f5 Add xiaomi miio gateway hw version (#62274) 2021-12-18 17:46:16 +01:00
Robert Hillis 78f2866f98 Finish using enums in wled (#62189) 2021-12-18 16:17:55 +01:00
Martin Hjelmare ff530dce0d Fix fitbit no SSL URL handling (#62270) 2021-12-18 15:00:07 +01:00
epenet 93cba53860 Use new enums in smappee (#62209)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-18 14:56:13 +01:00
Robert Hillis af631b90e5 Use enums in statistics tests (#62191) 2021-12-18 14:54:26 +01:00
epenet a39f0643e8 Use new enums in smart_meter_texas (#62210)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-18 14:53:50 +01:00
epenet ac0fa3cbf8 Use new enums in smarttub (#62216)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-18 14:51:39 +01:00
J. Nick Koston 051a6499b8 Add software version to screenlogic (#62255) 2021-12-18 14:49:29 +01:00
J. Nick Koston b1ac1596d8 Add ATTR_HW_VERSION to homeassistant.const (#62258) 2021-12-18 14:46:22 +01:00
starkillerOG c40b02896a Hyperion add entity category (#62268) 2021-12-18 14:45:53 +01:00
starkillerOG 503a5cbd44 Motion blinds add entity category (#62266) 2021-12-18 14:23:34 +01:00
Franck Nijhof e2c65a3034 Upgrade tailscale to 0.1.6 (#62267) 2021-12-18 14:18:31 +01:00
starkillerOG c178fd0cc3 Add entity category to DSMR (#62262) 2021-12-18 13:53:21 +01:00
starkillerOG ca9b26e829 bump pynetgear to 0.8.0 (#62261) 2021-12-18 13:29:52 +01:00
starkillerOG c4879d71a1 Add Netgear entity category and configuration url (#62260)
* add entity category

* add configuration_url

* add import
2021-12-18 12:34:16 +01:00
GitHub Action 5fefb5985f [ci skip] Translation update 2021-12-18 00:13:26 +00:00
Teemu R b50a5d32a7 Remove myself from yeelight codeowners (#62239) 2021-12-17 18:00:04 -06:00
Diego Elio Pettenò 6ce99bfc80 Bump async-upnp-client to 0.23.0 (#62223) 2021-12-17 16:57:02 -06:00
epenet c59ae54dc8 Use new enums in sonos (#62202) 2021-12-17 13:35:21 -06:00
J. Nick Koston a0cd29bbcf Fix threading error in stream tests (#62221) 2021-12-17 09:26:30 -08:00
jkuettner 3b97c544b1 Fix "vevent" KeyError in caldav component (#61718) 2021-12-17 16:54:19 +01:00
Aaron Bach a9fc750fe3 Fix spurious RainMachine config entry reload (#62215) 2021-12-17 08:31:23 -07:00
Robert Hillis 3bd1f00b76 Use enums in samsungtv tests (#62195)
* Use enums in samsungtv tests

* uno mas
2021-12-17 16:26:53 +01:00
Robert Hillis 5e0eb0eb4d Use enums in roku tests (#62196) 2021-12-17 16:25:37 +01:00
Eric Severance d874eb261d Fix Wemo create task for awaitable (#62159) 2021-12-17 16:23:53 +01:00
Robert Hillis 8683a30380 Use enums in utility_meter tests (#62190)
* Use enums in utility_meter tests

* uno mas
2021-12-17 16:22:46 +01:00
Franck Nijhof 26d8d82061 Fix codeowners for tests in hassfest (#62204) 2021-12-17 16:21:32 +01:00
Dave T 1a32b10af8 Use DeviceClass Enums in greeneye_monitor tests (#62143)
* Use DeviceClass Enums in greeneye_monitor tests

* Use is for comparisons
2021-12-17 16:19:41 +01:00
Maximilian 703b689183 Address late review of nina (#61915) 2021-12-17 16:14:59 +01:00
Hans Oischinger ed1ce7d9f9 Add vicare strings (#61593)
* Add vicare strings

* Remove duplicates

* Remove duplicates from english translation

* Add missing strings
2021-12-17 15:43:41 +01:00
Klaas Schoute 177ffa3aa6 Upgrades P1 Monitor to v1.0.1 (#62201) 2021-12-17 15:23:04 +01:00
Peeter N 571b245b7e Add battery entity for Maxcube devices (#58699) 2021-12-17 15:02:28 +01:00
Kim Frellsen 9cd82e0f00 Update fortios device_tracker (#61970)
* FortiOS 7.0 support

Added support for FortiOS 7.0 and retaining FortiOS 6.4 support.
Since an API was deprecated in FortiOS 7.0 and replace by a new API the integration now also support FortiOS 7.0.
It is planned to deprecate the support for FortiOS 6.4 in a year

* updated requirement to fortios

* Update device_tracker.py

indentation fix

* Update device_tracker.py

run flake8 fixes

* flake8 fixes

* Update device_tracker.py

black fixing line breaks

* Update device_tracker.py

black fixes

* Update device_tracker.py

linter fixes

* Update device_tracker.py

linter fixes

* Update device_tracker.py

linter fix

* Update device_tracker.py

removed comment that pylint does not like :-~

* Update homeassistant/components/fortios/device_tracker.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/fortios/device_tracker.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update homeassistant/components/fortios/device_tracker.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Update device_tracker.py

to resolve double guard for supported versions.

* updated fortios device tracker

Deprecated old api.
cleaned up code.
better checking with try-catch
removed unnecessary error output.

* Update device_tracker.py

lint compliance.

* Update device_tracker.py

lint updates

* Update device_tracker.py

lint updates

* Update device_tracker.py

lint updates

* Update device_tracker.py

lint updates

* Update device_tracker.py

updated to use awesomeversion component.

* Update device_tracker.py

pylint updates

* Update device_tracker.py

pylint updates

* Clean up

* Simplify

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-17 14:20:23 +01:00
Erik Montnemery 474ef54477 Fix threading error in recorder tests (#62187) 2021-12-17 13:17:48 +01:00
Erik Montnemery f7f1d9b15d Fix threading error in litejet (#62185) 2021-12-17 13:16:44 +01:00
Daniel Hjelseth Høyer 9c749682bf Add Tibber peak hour, monthly consumption and monthly cost sensors (#61853)
* Tibber, Consumption data

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Tibber sensors

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Tibber, Consumption data

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Add peak_hour_time

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-12-17 12:55:16 +01:00
Robert Hillis 1c15e36afc Use enums in wallbox (#61997) 2021-12-17 12:46:21 +01:00
Erik Montnemery 6b9447e3a2 Fix threading error in demo vacuum (#62165) 2021-12-17 12:45:53 +01:00
epenet 8cde2e805b Use new SensorDeviceClass enum in climacell (#61362)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-17 12:44:29 +01:00
Ernst Klamer e771421ed0 Move Solarlog state to entity description (#62093)
* Move value to const

* Move value to const

* remove cast

* Remove Statetype import

* Add in and output for callable

* fix mypy

* Add int to callable

* fix callable

* Only convert value

* Add datetime import

* Update homeassistant/components/solarlog/const.py

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-12-17 12:40:32 +01:00
Aidan Timson 0f2a3c074e Force Lyric token refresh on first authentication failure (#62100) 2021-12-17 12:33:41 +01:00
Erik Montnemery 8c777011b6 Fix threading error in qwikswitch (#62173) 2021-12-17 12:03:29 +01:00
Erik Montnemery 9164a74fcc Fix threading error in zha (#62170) 2021-12-17 11:42:15 +01:00
Erik Montnemery 112e259437 Fix threading error in scripts with repeat or choose actions (#62168) 2021-12-17 11:41:54 +01:00
Robert Hillis 85c122f3e5 Use enums in unifi tests (#62151) 2021-12-17 11:12:43 +01:00
Robert Hillis 499cae9900 Use enums for testing_config (#62140) 2021-12-17 11:10:06 +01:00
Robert Hillis 626a3f35f5 Use enums in helpers tests (#62141) 2021-12-17 11:09:24 +01:00
Robert Hillis 07532c3153 Use enums in sensor tests (#62152) 2021-12-17 11:07:18 +01:00
Marcel van der Veldt ad171944da Add guard in call to activate_scene in Hue (#62177) 2021-12-17 10:50:10 +01:00
Ian a6cfbd4072 Nextbus upcoming sort as integer (#61416) 2021-12-17 09:39:55 +01:00
sindudas 67255d4b52 Update ebusdpy version (#59899) 2021-12-17 09:34:27 +01:00
Simone Chemelli 72e1fa1392 Improve availability for Shelly Valve (#62129) 2021-12-17 09:16:02 +01:00
Allen Porter beb824c452 Bump google-nest-sdm to 0.4.9 (#62160) 2021-12-17 09:07:51 +01:00
Dave T 4418b0a43e Use DeviceClass Enums in gogogate2 tests (#62137) 2021-12-17 08:45:39 +01:00
Dave T 28e373297f Use DeviceClass Enums in gios tests (#62135) 2021-12-17 08:43:03 +01:00
Dave T b25595289e Use DeviceClass Enums in forecast_solar tests (#62132) 2021-12-17 08:38:37 +01:00
Dave T f55668ff40 Use DeviceClass Enums in blebox tests (#62109) 2021-12-17 08:28:31 +01:00
J. Nick Koston ccf8dcd14a Fix Non-thread-safe operation in logbook (#62148) 2021-12-17 08:19:07 +01:00
J. Nick Koston 8bf58df624 Fix Non-thread-safe operation in homekit light events (#62147) 2021-12-17 08:17:32 +01:00
Dave T c710958261 Use DeviceClass Enums in goalzero tests (#62136) 2021-12-16 22:52:25 -08:00
Dave T 569d5644ab Use DeviceClass Enums in google_assistant tests (#62142) 2021-12-16 22:50:46 -08:00
GitHub Action d4f8a7c056 [ci skip] Translation update 2021-12-17 00:14:01 +00:00
Dave T ec4a9be4e6 Use EntityCategory Enums in elkm1 (#62123) 2021-12-16 23:41:17 +01:00
Dave T 82e11aecca Use DeviceClass Enums in efergy tests (#62119) 2021-12-16 23:40:58 +01:00
Dave T f92baffd09 Use DeviceClass Enums in energy tests (#62122) 2021-12-16 23:40:24 +01:00
Dave T f02e9eb70f Use DeviceClass Enums in directv tests (#62118) 2021-12-16 23:34:07 +01:00
Dave T 61f2f9d9ac Use DeviceClass Enums in devolo_home_control tests (#62116) 2021-12-16 23:27:44 +01:00
Robert Hillis b7ece5ae00 Use enums in pvpc_hourly_pricing (#62076) 2021-12-16 23:27:15 +01:00
Robert Hillis da60680b2f Use enums in rachio (#62056) 2021-12-16 23:26:53 +01:00
Dave T 16e152b797 Use DeviceClass Enums in axis tests (#62096) 2021-12-16 23:26:23 +01:00
Matthias Alphart 2f3f64c339 Use DeviceClass Enum in KNX schema (#61960) 2021-12-16 23:25:34 +01:00
Robert Hillis 72462b5dd1 Use enums in satel_integra (#62048) 2021-12-16 23:24:46 +01:00
epenet dce9d551f8 Use new SensorDeviceClass in juicenet (#61828) 2021-12-16 23:13:26 +01:00
epenet 42c7c38515 Use new enums in nam (#61940) 2021-12-16 23:05:34 +01:00
epenet 61cdc04f3f Use new enums in nanoleaf (#61938) 2021-12-16 23:03:37 +01:00
epenet e20029d87f Use attr** in meteoalarm (#61895)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 23:01:31 +01:00
epenet 863a139b6f Use _attr_attribution in goalzero (#61890)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 23:00:04 +01:00
epenet d26454a313 Use _attr_attribution in flipr (#61889)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 22:59:29 +01:00
epenet 98e1b7c95d Use attr** in linux-battery (#61883)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 22:59:05 +01:00
epenet 6778e4058e Use attr** in lightwave (#61881)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 22:57:15 +01:00
epenet bb538a9782 Use new enums in motion_blinds (#61931) 2021-12-16 22:47:23 +01:00
epenet b3105dc218 Use new enums in nuki (#61949) 2021-12-16 22:45:48 +01:00
epenet c4c9dc8cee Use new enums in neurio_energy (#61953) 2021-12-16 22:45:27 +01:00
epenet 39590f9917 Use new enums in nissan_leaf (#61951) 2021-12-16 22:44:50 +01:00
epenet 81ea811b74 Use new enums in nextbus (#61954) 2021-12-16 22:44:17 +01:00
epenet 890dcfee11 Use new enums in netgear_lte (#61955) 2021-12-16 22:42:52 +01:00
epenet 4bfc3eb22f Use new enums in netatmo (#61941) 2021-12-16 22:42:29 +01:00
Robert Hillis 6f54636baf Use enums in rainforest_eagle (#62057) 2021-12-16 22:38:26 +01:00
Robert Hillis 0ee5691f77 Use enums in roomba (#62045) 2021-12-16 22:36:01 +01:00
Robert Hillis a16f963605 Use enums in pi_hole (#62064) 2021-12-16 22:34:59 +01:00
Eduard van Valkenburg 6ba11fe6c7 Brunt dependency bump to 1.0.2 (#62014) 2021-12-16 22:33:03 +01:00
Robert Hillis 83cb2d11d5 Use enums in xiaomi_miio (#61979) 2021-12-16 22:31:51 +01:00
Robert Hillis 32e1a3d063 Use enums in Point (#62070) 2021-12-16 22:29:54 +01:00
Robert Hillis 74a9f8e81d Use enums in opentherm_gw (#62084) 2021-12-16 22:28:55 +01:00
Robert Hillis 10e5780fbb Use enums in Omnilogic (#62080) 2021-12-16 22:26:49 +01:00
Robert Hillis 2ab13f3603 Use enums in openweathermap (#62086) 2021-12-16 22:25:49 +01:00
Robert Hillis 5a268419f5 Use enums in pvoutput (#62073) 2021-12-16 22:25:04 +01:00
Robert Hillis 438fd79d23 Use enums in p1_monitor (#62061) 2021-12-16 22:24:06 +01:00
Robert Hillis b30dd6857f Use enums in opengarage (#62083) 2021-12-16 22:21:21 +01:00
Robert Hillis 06f670272f Use enums in obihai (#62078) 2021-12-16 22:18:28 +01:00
Dave T dab1a786a5 Use DeviceClass Enums in arlo tests (#62095) 2021-12-16 22:11:08 +01:00
Erik Montnemery 773ac289dd Tweak core add_job and async_add_job docstrings (#62112) 2021-12-16 22:08:13 +01:00
Dave T 9e4f720591 Use DeviceClass Enums in elgato tests (#62121) 2021-12-16 22:07:52 +01:00
rianadon 3b3ab2c19c Handle None values in weather entity forecast (#61467) 2021-12-16 22:01:32 +01:00
Dave T cabd6375d1 Use DeviceClass Enums in canary tests (#62113) 2021-12-16 21:47:59 +01:00
Dave T 373790cb15 Use DeviceClass Enums in deconz tests (#62114) 2021-12-16 21:46:01 +01:00
epenet 329d90b568 Use new enums in nzbget (#61946) 2021-12-16 21:42:05 +01:00
Maximilian 7a1b05d166 Add missing timezone information (#62106) 2021-12-16 21:39:49 +01:00
Erik Montnemery 4353b1e62c Improve tests for template binary sensor (#62103) 2021-12-16 21:31:37 +01:00
Franck Nijhof 4de4cc7bd4 Small cleanup of Luftdaten constants (#61757) 2021-12-16 21:25:24 +01:00
Dave T 0409665907 Use DeviceClass Enums in ambee tests (#62108) 2021-12-16 21:22:26 +01:00
Dave T 84dad5d678 Use DeviceClass Enums in brother tests (#62110) 2021-12-16 21:22:04 +01:00
Franck Nijhof 0dbd948867 Add Open-Meteo integration (second attempt) (#61742) 2021-12-16 21:12:33 +01:00
Dave T fe08668a87 Use DeviceClass Enums in accuweather tests (#61990) 2021-12-16 21:05:56 +01:00
Dave T 4a7a3b0469 Use DeviceClass Enums in advantage_air tests (#61986) 2021-12-16 21:05:12 +01:00
Dave T 1a594d2a8c Use DeviceClass Enums in abode tests (#61980) 2021-12-16 20:59:55 +01:00
Dave T 4f7182a41a Use DeviceClass Enums in airly tests (#61989) 2021-12-16 20:59:25 +01:00
Erik Montnemery 0e28fbbe83 Minor refactor of template vacuum (#61860) 2021-12-16 20:53:19 +01:00
Eduard van Valkenburg 80833aa7fb Add config flow to Azure Event Hub integration (#61155)
* config flow added, no tests yet

* added tests

* refinement of tests

* small reverses of hub code

* fix small bug

* test fixes from review

* test fixes from review

* further refinement of tests and config flow

* removed true return from hub and added failed reason for import

* added deepcopy to default options

* deleted max_delay from options, can still be in yaml for now

* updated dropped message

* mistaken period at eol
2021-12-16 18:57:51 +01:00
Robert Hillis 619529b40c Use enums in Powerwall (#62072) 2021-12-16 11:38:56 -06:00
Robert Hillis 31bef18e9a Use enums in screenlogic (#62049) 2021-12-16 11:38:32 -06:00
Robert Hillis 21e46e318d Use enums in venstar (#61993) 2021-12-16 17:42:24 +01:00
Robert Hillis 521458d981 Use enums in openverse (#62082) 2021-12-16 17:12:18 +01:00
Erik Montnemery 6acf45566e Minor refactor of template switch (#61859) 2021-12-16 17:11:47 +01:00
Erik Montnemery 597045149f Minor refactor of template select (#62091) 2021-12-16 17:11:27 +01:00
Robert Hillis e6956acb4b Use enums in octoprint (#62079) 2021-12-16 17:07:50 +01:00
Robert Hillis ec3efb4b1a Use enums in poolsense (#62071) 2021-12-16 17:06:16 +01:00
Robert Hillis b28c821bc3 Use enums in ondilo_ico (#62081) 2021-12-16 17:04:47 +01:00
Erik Montnemery 859bcb6eb4 Minor refactor of template alarm (#61862) 2021-12-16 16:41:40 +01:00
Erik Montnemery 682f29f131 Minor refactor of template weather (#61861) 2021-12-16 16:39:44 +01:00
Robert Hillis d660d68c34 Use enums in rainmachine (#62058) 2021-12-16 08:36:16 -07:00
Robert Hillis f9cc6c069e Use enums in recollect_waste (#62060) 2021-12-16 08:35:18 -07:00
Robert Hillis e39dcd7152 Use enums in openuv (#62085) 2021-12-16 08:33:50 -07:00
Erik Montnemery bb3a3bbc1b Minor refactor of template number (#61863) 2021-12-16 16:22:17 +01:00
Erik Montnemery c9320b5ca1 Fix none-check in template light (#62089) 2021-12-16 16:12:43 +01:00
Erik Montnemery 9bf7e25e6c Minor refactor of template lock (#61858) 2021-12-16 16:12:24 +01:00
Robert Hillis 1b66f3208d Use enums in ozw (#62088) 2021-12-16 16:11:55 +01:00
Erik Montnemery a0b6edc894 Minor refactor of template light (#61857) 2021-12-16 16:11:23 +01:00
Robert Hillis 1fb69fb69a Use enums in rpi_power (#62046) 2021-12-16 16:09:19 +01:00
Erik Montnemery 12ae684c96 Minor refactor of template fan (#61856) 2021-12-16 16:07:18 +01:00
Robert Hillis 16d16585ae Use enums in plaato (#62069)
* Use enums in plaato

* uno mas

* uno mas
2021-12-16 16:00:22 +01:00
epenet 7c8d235356 Use SensorDeviceClass in mfi (#61900)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 15:51:36 +01:00
epenet 599c8f4757 Use new enums in neato (#61939) 2021-12-16 15:49:11 +01:00
epenet 2cc343bb7f Use new enums in nws (#61947) 2021-12-16 15:43:15 +01:00
Robert Hillis e1a7f6d1b2 Use enums in pluugwise (#62067) 2021-12-16 15:40:32 +01:00
Robert Hillis a5cf783e6a Use enums in ping (#62066) 2021-12-16 15:38:02 +01:00
Robert Hillis 42fab1bb51 Use enums in picnic (#62065) 2021-12-16 15:36:38 +01:00
Robert Hillis 6d9787526b Use enums in oasa_telematics (#62077) 2021-12-16 15:34:42 +01:00
Robert Hillis 0ce985ee7b Use enums in ovo_energy (#62087) 2021-12-16 15:30:59 +01:00
Robert Hillis 6083b56139 Use enums for Panasonic Viera (#62062) 2021-12-16 15:29:45 +01:00
epenet c8607b1a4c Use DeviceClass Enum in ness-alarm schema (#61969) 2021-12-16 15:20:40 +01:00
epenet b16d779280 Use DeviceClass Enum in concord232 schema (#61968) 2021-12-16 15:18:52 +01:00
epenet 5454c5467d Use new enums in nx584 (#61948) 2021-12-16 15:15:54 +01:00
Robert Hillis b315877ad0 Clean up upcloud (#61971) 2021-12-16 15:14:46 +01:00
epenet 029af94d28 Use new enums in mobile_app (#61929) 2021-12-16 15:13:13 +01:00
Robert Hillis 5227019d3e Use enums in rdw (#62059) 2021-12-16 15:10:54 +01:00
epenet 079b7f217f Use new enums in mqtt (#61936)
* Use new enums in mqtt

* Fix typo
2021-12-16 15:09:31 +01:00
Robert Hillis ff654a9753 Use enums philips_js (#62063) 2021-12-16 15:02:38 +01:00
Robert Hillis 3b9547addc Use enums in qnap (#62055) 2021-12-16 15:01:45 +01:00
Robert Hillis 395fa6d15f Use enums in samsung_tv (#62047) 2021-12-16 14:57:06 +01:00
Robert Hillis fa522fc504 Use enums in rova (#62044) 2021-12-16 14:42:43 +01:00
Robert Hillis 093202f138 Use enum in roku (#62043) 2021-12-16 14:41:59 +01:00
Robert Hillis 7506b12277 Use enums in risco (#62042) 2021-12-16 14:41:20 +01:00
Robert Hillis 0dc5ae6dca Use enums in ridwell (#62040) 2021-12-16 14:34:51 +01:00
Robert Hillis d5fe0fcee0 Use enums in rfxtrx (#62039) 2021-12-16 14:34:10 +01:00
Robert Hillis 18ae4a9420 Use enums in repetier (#62038) 2021-12-16 14:33:23 +01:00
Robert Hillis 4983a8f218 Use enums in simplisafe (#62037) 2021-12-16 14:32:03 +01:00
Robert Hillis 9ddf2035d0 Use enums in sht31 (#62036) 2021-12-16 14:28:21 +01:00
Robert Hillis b6ed3e87e0 Use enums in senses (#62050) 2021-12-16 14:25:12 +01:00
Robert Hillis 65b67d9d91 Use enums in sensehat (#62051) 2021-12-16 14:20:36 +01:00
Robert Hillis ed8c7afc52 use enums in skybeacon (#62052) 2021-12-16 14:20:00 +01:00
Robert Hillis 25f72e45d7 Use enums in skybell (#62053) 2021-12-16 14:19:23 +01:00
Robert Hillis 1dab28a957 Use enums in uptime (#62032) 2021-12-16 14:13:43 +01:00
Robert Hillis 9e30e0c9bd Use enums in ring (#62041) 2021-12-16 14:12:57 +01:00
Robert Hillis 0cf0104662 Use enums in shelly (#62035) 2021-12-16 14:12:23 +01:00
Simone Chemelli db6b472e7a Add restore logic to Shelly climate platform (#61632)
* Add restore logic to Shelly climate platform

* Handle missing channel on restore
2021-12-16 14:08:40 +01:00
epenet 7f823f7211 Fix OwnetError preventing onewire initialisation (#61696)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 14:06:38 +01:00
epenet 550004f109 Fix mfi tests (#61904)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-16 13:59:58 +01:00
Simone Chemelli 105ad861bd Add buttons and deprecate services for Fritz (#61483)
* Add buttons and deprecate services

* Exclude tests

* Log full service name
2021-12-16 13:25:06 +01:00
Simone Chemelli 116759f2a1 Implement DataUpdateCoordinator for Fritz (#60909)
* Implement DataUpdateCoordinator for Fritz

* mypy

* Wrap sync method to async

* Apply review comments + final cleanup

* CoordinatorEntity
2021-12-16 13:24:32 +01:00
Robert Hillis 58942601b4 Use enums in tolo (#62020) 2021-12-16 13:09:35 +01:00
Robert Hillis 09892a5c55 Use enums in totalconnect (#62022) 2021-12-16 13:08:37 +01:00
Robert Hillis fcda72a337 Use enums in tplink (#62023) 2021-12-16 13:08:04 +01:00
Robert Hillis 357d91fb0e Use enums in tradfri (#62025) 2021-12-16 13:07:33 +01:00
Robert Hillis db4721bfba Use enums in trafikverket_train (#62026) 2021-12-16 13:07:10 +01:00
Robert Hillis b4daa88d9e Use enums in trafikverket_weatherstation (#62027) 2021-12-16 13:05:46 +01:00
Robert Hillis e713a597ec Use entity category enums in tuya (#62028) 2021-12-16 12:53:50 +01:00
Robert Hillis a49683d09a Use enums in unifi (#62029) 2021-12-16 12:53:01 +01:00
Robert Hillis a3765b2977 Use enums in updated (#62030) 2021-12-16 12:52:29 +01:00
Robert Hillis 633706d04a Use enums in upnp (#62031) 2021-12-16 12:52:06 +01:00
Robert Hillis 44f4656fe6 Use enums in utility_meter (#62033) 2021-12-16 12:50:41 +01:00
J. Nick Koston 94ae6ac2b2 Handle color temp to RGBWW conversion (#61473)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-16 05:39:33 -06:00
J. Nick Koston 12671b370e Bump flux_led to 0.26.15 (#62017) 2021-12-16 12:37:48 +01:00
Robert Hillis ad778f53f7 Use enums in tractive (#62024) 2021-12-16 12:34:01 +01:00
Robert Hillis 087724d2f2 Use enums in toon (#62021) 2021-12-16 12:26:39 +01:00
J. Nick Koston 11fde22d45 Add hardware version support to homekit controller (#61743) 2021-12-16 05:24:18 -06:00
epenet 389d9c2c35 Use new enums in netgear (#61943) 2021-12-16 12:16:56 +01:00
J. Nick Koston 04153c0075 Add hardware version to the device registry (#61650) 2021-12-16 05:16:19 -06:00
Daniel Hjelseth Høyer b1b3079d07 Add Tibber estimated hour consumption sensor (#62003) 2021-12-16 12:15:40 +01:00
Franck Nijhof a9879487cc Bump version to 2022.2.0dev0 (#62011) 2021-12-16 09:54:45 +01:00
epenet c9dbcc49e3 Use new enums in mysensors (#61935) 2021-12-16 09:49:15 +01:00
Robert Hillis b03ead1c9b Use enums in vicare (#61994) 2021-12-16 09:27:53 +01:00
Erik Montnemery b1117c17f1 Tweak comment for ENERGY sensor device class (#62006) 2021-12-16 09:26:44 +01:00
J. Nick Koston 048102e053 Prevent apple_tv rediscovery from secondary identifiers (#61973) 2021-12-16 02:25:18 -06:00
Robert Hillis 06c1949d2f Use enums in vilfo (#61995) 2021-12-16 09:23:54 +01:00
Robert Hillis 9d66dd35cc Use enums in waqi (#61998) 2021-12-16 09:21:58 +01:00
Robert Hillis 7764772202 Use enums in waterfurnace (#61999) 2021-12-16 09:21:28 +01:00
Robert Hillis b4c9d1844e Use enums in webostv (#62000) 2021-12-16 09:20:52 +01:00
Robert Hillis 868e5db47a Use enums in vallox (#61992) 2021-12-16 09:12:57 +01:00
Robert Hillis 701699350d Use enums in youless (#61977) 2021-12-16 09:11:51 +01:00
Robert Hillis 1568ee67c2 Use enums in velux (#61991) 2021-12-16 09:11:22 +01:00
Robert Hillis 173582d4fc Use enums in yandex_transport (#61978) 2021-12-16 09:10:38 +01:00
Robert Hillis 806366a0c1 Use enums in wolflink (#61988) 2021-12-16 09:10:14 +01:00
Robert Hillis f691b0a1da Use enums in withings (#61987) 2021-12-16 09:09:28 +01:00
Robert Hillis 98c2c8c2d1 Use enums in xiaomi_aqara (#61981) 2021-12-16 09:05:13 +01:00
Robert Hillis a41810efcf Use enums in xbee (#61982) 2021-12-16 09:04:11 +01:00
Robert Hillis b8dabfe659 Use enums in wemo (#61983)
* Use enums in wemo

* uno mas
2021-12-16 09:02:23 +01:00
Robert Hillis 2e0fc65bf3 Use enums in wirelesstag (#61985) 2021-12-16 09:01:46 +01:00
Robert Hillis 9084a227fd Use enums in wiffi (#61984) 2021-12-16 09:01:20 +01:00
dependabot[bot] e1f5b63f1e Bump actions/upload-artifact from 2.3.0 to 2.3.1 (#62004)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-16 08:24:04 +01:00
Pierre Ståhl 574f0fced3 Bump pyatv to 0.9.8 (#61959) 2021-12-15 19:24:38 -06:00
epenet c49d59bf54 Use new enums in nexia (#61952) 2021-12-15 19:15:54 -06:00
epenet f72b2e71ee Use new BinarySensorDeviceClass in isy994 (#61825) 2021-12-15 19:11:46 -06:00
Robert Hillis d68946f568 Use Enums in zamg (#61976) 2021-12-15 16:17:20 -08:00
GitHub Action b22a9e4d0a [ci skip] Translation update 2021-12-16 00:13:36 +00:00
Robert Hillis b0f5e7dabf Use Enums in zoneminder (#61975) 2021-12-15 16:07:12 -08:00
Marcel van der Veldt 62f411fccc Bump aiohue to 3.0.6 (#61974) 2021-12-16 00:53:20 +01:00
Robert Hillis 7a5177b7e2 Clean up dirt from recollect_waste yaml (#61964) 2021-12-16 00:43:26 +01:00
Ville Skyttä 5bf67cac66 Use RegistryEntryDisabler (#60436) 2021-12-15 23:25:40 +02:00
javicalle 75e7104339 A few RFLink tests (#58544)
* Full coverage for RFLink tests

* use global constants

* extend RFLink keepalive tests
2021-12-15 23:09:54 +02:00
epenet 25d33a2126 Use new enums in nest (#61942) 2021-12-15 13:00:10 -08:00
epenet 1e9e056671 Use new enums in notion (#61950) 2021-12-15 13:46:48 -07:00
Paulus Schoutsen 77829e397b Don't log DB connection string on error (#61927) 2021-12-15 20:54:57 +01:00
Ville Skyttä 7db3246de4 Make config entry disabled_by an enum (#60445)
* Make config entry disabled_by an enum

* Update homeassistant/config_entries.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-15 20:53:21 +01:00
epenet aa83b0388a Use new enums in mullvad (#61934) 2021-12-15 20:44:41 +01:00
epenet 6b13dc7285 Use new enums in myq (#61933) 2021-12-15 20:44:27 +01:00
epenet f9a310ea49 Use new enums in motioneye (#61932) 2021-12-15 20:43:39 +01:00
epenet 85199b4cde Use new enums in modern_forms (#61930) 2021-12-15 20:40:38 +01:00
epenet 6102e0aae8 Use new SensorDeviceClass in mitemp-bt (#61925) 2021-12-15 20:14:50 +01:00
epenet d95ce8a026 Use new BinarySensorDeviceClass in minecraft_server (#61924) 2021-12-15 20:14:18 +01:00
epenet 2da2de2ac8 Use SensorDeviceClass in mhz19 (#61923) 2021-12-15 20:11:06 +01:00
Erik Montnemery b42e2e6ef0 Fix typo in template select (#61919) 2021-12-15 20:10:42 +01:00
epenet 67061aeb7d Use new enums in miflora (#61922) 2021-12-15 20:09:10 +01:00
Marvin Wichmann 66b8f87e43 Fix notify platform setup for KNX (#61842)
* Fix notify platform setup for KNX

* Apply review suggestions

* Store hass config in DATA_HASS_CONFIG

* Readd guard clause
2021-12-15 19:30:38 +01:00
epenet 59e4b52065 Use new enums in lyric (#61888)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 16:37:35 +01:00
epenet c9132b229d Use new enums in melcloud (#61894)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 16:37:17 +01:00
epenet 3ac585ea2d Use new enums in meteo-france (#61896)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 16:36:22 +01:00
epenet e095cd95bf Use new SensorDeviceClass in meteoclimatic (#61897)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 16:35:35 +01:00
epenet ce2063fb07 Use new SensorDeviceClass in metoffice (#61899)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 16:33:15 +01:00
epenet b91124c030 Use _attr_attribution in meteoclimatic (#61898)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 16:32:48 +01:00
epenet 5b77fb9a0f Use BinarySensorDeviceClass in lutron (#61886)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 15:57:33 +01:00
epenet 61a6d278b8 Use new enums in lookin (#61885)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 15:17:37 +01:00
epenet 232d793661 Use new DeviceClass enums in lutron_caseta (#61887)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 15:17:18 +01:00
Bram Kragten b5d54d9bb1 Update frontend to 20211215.0 (#61877) 2021-12-15 15:15:47 +01:00
epenet 6c4f335650 Use new enums in litterrobot (#61884)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 15:02:42 +01:00
epenet ef15b159c1 Use SensorDeviceClass in lacrosse (#61879)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 14:48:19 +01:00
Robert Hillis cc3a4fef53 Remove deprecated yaml config from enphase envoy (#61840) 2021-12-15 13:55:31 +01:00
Aaron Bach 5372871727 Ensure SimpliSafe websocket reconnects upon new token (#61835) 2021-12-15 13:17:09 +01:00
Marvin Wichmann cefbc2c428 Allow setting local_ip for knx routing connections (#61836) 2021-12-15 13:15:56 +01:00
Michael Davie 9dea96399f Fix broken Environment Canada (#61848) 2021-12-15 13:13:59 +01:00
Allen Porter bff677e34e Bump google-nest-sdm to 0.4.8 (#61851) 2021-12-15 13:12:38 +01:00
epenet 764ff65a38 Use new DeviceClass enums in konnected (#61870)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 13:10:53 +01:00
epenet 25cf690b20 Tidy up package constraint messages (#61866)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 12:28:04 +01:00
Marcel van der Veldt a6f0492623 Bump aiohue to 3.0.5 (#61875) 2021-12-15 12:15:05 +01:00
epenet 9d36616477 Use new enums in kostal_plenticore (#61871)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 12:12:54 +01:00
epenet 19f398259d Use new enums in keba (#61869)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 12:06:47 +01:00
epenet bc61c5f49e Use new BinarySensorDeviceClass in keenetic_ndms2 (#61867)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 12:06:16 +01:00
Jan Bouwhuis d5defa8995 Support publishing MQTT messages with raw bytes payloads (#61090)
* correctly publish mqtt ouput

* Additional tests

* Add template test with binary output

* render_outgoing_payload with command templates

* use MqttCommandTemplate helper class

* add tests command_template

* Additional tests

* support pass-through for MqttComandTemplate

* fix bugs

* unify workform always initiate with hass

* clean up

* remove not needed lines

* comment not adding value
2021-12-15 11:28:43 +01:00
epenet a1abcad0ca Use new CoverDeviceClass in knx (#61868)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-15 10:54:14 +01:00
Erik Montnemery f17164fa47 Don't override pychromecast MediaController's APP ID (#61796) 2021-12-15 10:40:37 +01:00
Erik Montnemery a371d568c0 Bump pychromecast to 10.2.1 (#61811) 2021-12-15 10:40:06 +01:00
Martin Hjelmare a818afdad1 Revert pillow 8.3.2 (#61793)
* Revert "Bump pillow from 8.2.0 to 8.3.2 (#61661)"

This reverts commit 3635946211.

* Add comment

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* Fix comment

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-15 03:10:06 +01:00
GitHub Action 77843be01f [ci skip] Translation update 2021-12-15 00:13:42 +00:00
Teemu R 72556e5eaa Bump python-miio to 0.5.9.2 (#61831) 2021-12-14 22:36:55 +01:00
epenet 002512f4ff Use SensorDeviceClass in jewish-calendar (#61827) 2021-12-14 22:12:34 +01:00
epenet 158ff601b6 Use SensorDeviceClass in islamic_prayer_times (#61824) 2021-12-14 22:11:54 +01:00
epenet 12349eb70e Use SensorDeviceClass in ipp (#61822) 2021-12-14 22:11:26 +01:00
epenet b59f39b214 Use SensorStateClass in iqvia (#61823) 2021-12-14 13:56:36 -07:00
Marcel van der Veldt 01c8e5f49d Fix turn_off with transition for grouped Hue lights (#61728)
* fix turn_off with transition for grouped hue lights

* add test
2021-12-14 11:24:37 -08:00
Erik Montnemery cf09d1b604 Improve warnings when a zone trigger is referencing a none-existing zone (#61763) 2021-12-14 20:14:50 +01:00
Daniel Hjelseth Høyer d9105b071a Last reset is no longer deprecated (#61816) 2021-12-14 20:06:50 +01:00
epenet 6bf41325ca Use new DeviceClass enum in home_connect (#61759)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 19:59:47 +01:00
epenet 67ddfcb218 Use new DeviceClass enums in hive (#61758)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 19:59:17 +01:00
epenet 3404be8bb0 Use SensorDeviceClass in icloud (#61804)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 19:42:12 +01:00
epenet ffccc5bfa5 Use new enums in iotawatt (#61802)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 19:39:18 +01:00
epenet ef2a28cce2 Use new BinarySensorDeviceClass in insteon (#61801)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 18:48:06 +01:00
epenet d254d963b8 Use SensorDeviceClass in incomfort (#61800)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 18:46:38 +01:00
epenet 93c05b627f Use new SensorDeviceClass in ihc (#61799)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 18:46:02 +01:00
Daniel Hjelseth Høyer e203b85303 Tibber, update library, fixes #61525 (#61813) 2021-12-14 18:40:47 +01:00
epenet 1692fab664 Use new enums in integration (#61803)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 18:32:33 +01:00
epenet 2c26eae9b2 Use new DeviceClass enums in iaqualink (#61805)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 18:32:17 +01:00
Pascal Vizeli c02aae58fb Add twinkly DHCP support (#61434)
* Add twinkly DHCP support

* fix typing import

* fix format

* Fix imports v2

* Using IP

* Fix tests

* Apply suggestions from code review

Thanks @bdraco

Co-authored-by: J. Nick Koston <nick@koston.org>

* fix black

* Add confirm step

* Add more tests

* Update homeassistant/components/twinkly/config_flow.py

Co-authored-by: J. Nick Koston <nick@koston.org>

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-14 15:12:19 +01:00
MattWestb 36d3fb15f7 Fix ZHA unoccupied setpoints. (#61791)
ATTR_UNOCCP_HEAT_SETPT and ATTR_UNOCCP_COOL_SETPT is mixed up. 
Fixing so heating is heating and cooling is colling.
2021-12-14 08:49:00 -05:00
Robert Hillis dfcadd600c Remove deprecated yaml from foscam (#61761) 2021-12-14 13:11:07 +01:00
epenet 8cda315cd1 Use SensorDeviceClass enum in htu21d (#61770)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 13:09:19 +01:00
epenet 36da11e924 Use new enums in hue (#61772)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 13:08:49 +01:00
epenet bcc9251517 Use new enums in hunterdouglas_powerview (#61777)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 13:07:59 +01:00
epenet 237a8a8331 Use new enums in hydrawise (#61781)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 13:06:55 +01:00
Eduard van Valkenburg a28ce75a92 Bump brunt package to 1.0.1 (#61784) 2021-12-14 13:01:30 +01:00
epenet cec43fe868 Use new enums in huawei-lte (#61771)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 12:59:00 +01:00
epenet 96e54ca939 Use new SensorDeviceClass enum in hvv_departures (#61780)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 11:55:31 +01:00
epenet f4edd0ea20 Use new enums in homematicip_cloud (#61768)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 11:43:14 +01:00
epenet adc0c6523f Use new SensorDeviceClass enum in homeassistant-triggers (#61764)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 11:24:32 +01:00
epenet eddc1ae0ed Use new enums in huisbaasje (#61776)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 10:54:47 +01:00
epenet b7c0b21c6c Use new enums in homematic (#61765)
Co-authored-by: Pascal Vizeli <pascal.vizeli@syshack.ch>
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 10:53:47 +01:00
epenet 8fc69b7242 Use new SwitchDeviceClass enum in home-plus-control (#61760)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 09:56:52 +01:00
Franck Nijhof de45144750 Remove deprecated YAML configuration from Luftdaten (#61748) 2021-12-14 09:21:12 +01:00
Franck Nijhof 4a1f49852a Use SensorDeviceClass enum in Luftdaten (#61746) 2021-12-13 20:39:19 -08:00
RDFurman 1ed6abe23d Honeywell unique id fix (#59393)
* Move error logging and remove reload

* Change device assignment and improve logging

* Use dictionary for devices

* Check if new device exists in API response

* Add test and make loop better

* Make test assert on error in log
2021-12-13 20:38:43 -08:00
Franck Nijhof 228f141bfd Upgrade tailscale to 0.1.5 (#61744) 2021-12-14 01:39:51 +01:00
Marcel van der Veldt 438d19f72b Fix Flash effect for Hue lights (#61733) 2021-12-13 16:27:58 -08:00
Marcel van der Veldt 89a6640b82 Blacklist availability check for a light at startup in Hue integration (#61737) 2021-12-13 16:23:32 -08:00
GitHub Action eb345bfdf1 [ci skip] Translation update 2021-12-14 00:13:33 +00:00
Marcel van der Veldt 4204f5799f Add check for incompatible device trigger in Hue integration (#61726) 2021-12-13 16:04:55 -08:00
Franck Nijhof bc79d41266 Upgrade black to 21.12b0 (#61741) 2021-12-13 16:02:35 -08:00
Klaas Schoute dea20cf816 Upgrades Garages Amsterdam to v3.0.0 (#61734) 2021-12-14 00:31:22 +01:00
lunmay 0d4051efcb Typo fixes for Adax in strings.json (#61492) 2021-12-14 00:24:14 +01:00
lunmay f26b88998a Fix typo in wolflink strings.sensor.json (#61716)
Stablization -> Stabilization
2021-12-14 00:19:58 +01:00
epenet 933d624a4e Use _attr_* in ecoal_boiler (#61363)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 00:17:39 +01:00
epenet 3b80cbc495 Use _attr_* in danfoss_air (#61341)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-14 00:17:08 +01:00
Franck Nijhof b1a3ba2025 Upgrade sentry-sdk to 1.5.1 (#61735) 2021-12-14 00:13:13 +01:00
Franck Nijhof 9aa38201cd Upgrade vehicle to 0.3.0 (#61738) 2021-12-14 00:12:00 +01:00
epenet 3e0e2978e6 Use new DeviceClass enums in google-assistant (#61611)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 23:19:32 +01:00
epenet 6157dfe68b Use new HumidifierDeviceClass enum in generic_hygrostat (#61607)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 23:16:54 +01:00
epenet 85607970cf Use attr* in garages_amsterdam (#61605)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 23:16:13 +01:00
Pierre Ståhl 905295707d Add support for app launching in Apple TV (#61732) 2021-12-13 23:13:04 +01:00
Robert Hillis 82e280d2ac Remove deprecated yaml config from flume (#61517) 2021-12-13 23:04:50 +01:00
Vilppu Vuorinen 69043fe6de Update pymelcloud to 2.5.6 (#61717) 2021-12-13 22:52:35 +01:00
Ville Skyttä 8ba07a8288 Add configuration_url to syncthru devices (#61508) 2021-12-13 21:46:51 +01:00
ollo69 cd5fe11b44 Use async_on_unload for Nut update_listener (#61589) 2021-12-13 21:42:25 +01:00
J. Nick Koston 65ec251309 Fix updating apple_tv addresses (#61724) 2021-12-13 21:38:22 +01:00
epenet 7adffe6927 Use SensorStateClass in hassio (#61720)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 21:14:50 +01:00
epenet 782229ff44 Use _attr_* in hddtemp (#61721)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 20:48:44 +01:00
epenet 482e457814 Use BinarySensorDeviceClass in hikvision (#61722)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 20:44:35 +01:00
Michael b68a2747f3 Use relative imports [A-H] (#61574) 2021-12-13 20:03:01 +01:00
Paulus Schoutsen 237232dad6 Bump aiohue to 3.0.4 (#61709) 2021-12-13 10:46:57 -08:00
Jonathan Keljo e0b29d1800 Update sisyphus-control to version 3.1.2 (#58198)
* Update sisyphus_control dependency to version 3.1.1

[3.1.1] - 2021-10-21
====================
Changed
-------
* Re-enabled support for Python 3.8 (Home Assistant won't remove that until next year)

[3.1] - 2021-10-21
==================
Added
-----
* Python types for the entire API
* `Table.firmware_version` and `Table.mac_address`
Fixed
-------
* `find_table_ips` returns an empty list rather than `None` if none are found
* Locked dependency versions of `python-socketio` and `python-engineio` to those that support the SocketIO protocol version used by Sisyphus

* Remove spurious test requirements change

* Update to sisyphus-control 3.1.2

[3.1.2] - 2021-12-13
====================
Changed
-------
* Relax version requirements for socketio/engineio
2021-12-13 19:23:48 +01:00
Allen Porter efbec55818 Suppress errors for legacy nest api when using media source (#61629) 2021-12-13 17:41:45 +01:00
epenet 3cfc349e99 Use new DeviceClass enum in geniushub (#61608)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 17:39:38 +01:00
Austin Mroczek 3098778001 Bump total_connect_client to 2021.12 (#61634) 2021-12-13 17:39:11 +01:00
epenet 00b90dff55 Use SensorDeviceClass in greeneye-monitor (#61653)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 17:36:51 +01:00
epenet 88a93d5d53 Use new enums in growatt_server (#61655)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 17:35:06 +01:00
Joakim Sørensen fadbab0e32 Add additional-tag to machine builds (#61693) 2021-12-13 17:14:37 +01:00
LJU 3fb4a0a0a8 Fix typo transponder in LCN (#61658) 2021-12-13 17:13:20 +01:00
Martin Hjelmare 0662ab019f Improve balboa tests (#61691) 2021-12-13 17:11:21 +01:00
epenet 10f57cf1f5 Use new enums in homekit-controller (#61689)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 17:04:21 +01:00
epenet 3118bfdfab Use new enums in guardian (#61660)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 09:06:19 -05:00
epenet 2462d4cdf6 Use SensorDeviceClass in gtfs (#61657)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 09:05:20 -05:00
epenet a6a388721f Use SwitchDeviceClass in gree (#61656)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 09:04:45 -05:00
Erik Montnemery c157f1a787 Add color mode support to zwave light (#55264)
* Add color mode support to zwave light

* Fix typo
2021-12-13 14:38:49 +01:00
Marc Mueller e48f6d548f Upgrade hangups to 0.4.16 (#61678) 2021-12-13 14:15:52 +01:00
Erik Montnemery bceeaec2f8 Remove duplicated statistics rows (#61146)
* Remove duplicated statistics

* Fix misleading docstring

* Pylint knows best

* Correct test

* Oops

* Prevent insertion of duplicated statistics

* Tweak

* pylint

* Add models_schema_23.py

* Tweak
2021-12-13 14:15:36 +01:00
Sebastian Nohn 3635946211 Bump pillow from 8.2.0 to 8.3.2 (#61661)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-13 14:14:05 +01:00
Marc Mueller d6f48683a3 Use platform enum (8) [Misc] (#61013) 2021-12-13 14:09:49 +01:00
epenet c8f2d4a82b Use new enums in freedompro (#61445)
* Use new enums in freedompro
* Also update PLATFORMS

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-13 12:57:16 +01:00
Mark Adkins ff015d4ea4 Bump blinkpy to 0.18.0 (#61538) 2021-12-13 12:10:31 +01:00
Michael 90e52cd3ad Use relative imports [S-Z] (#61576) 2021-12-13 09:39:13 +01:00
majuss 8f11bcf4cc Upgrade lupupy to 0.0.24 (#61598) 2021-12-13 09:07:52 +01:00
epenet c69e479bfd Use new enums in goalzero (#61518)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-12 20:24:57 -08:00
epenet c060b5926c Use new SensorDeviceClass enum in glances (#61613)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-12 20:23:34 -08:00
epenet 704be10561 Use new BinarySensorDeviceClass in eight_sleep (#61610)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-12 20:15:58 -05:00
epenet 9784523dfb Use new SensorDeviceClass enum in gios (#61609)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-12 20:15:37 -05:00
GitHub Action ca12f257ca [ci skip] Translation update 2021-12-13 00:13:26 +00:00
Michael 83989d7b40 Use relative imports [L-R] (#61575) 2021-12-13 00:24:46 +01:00
Paulus Schoutsen 4013c0eb2b Bump aiohue to 3.0.3 (#61627) 2021-12-12 14:28:59 -08:00
J. Nick Koston 238de08d16 Bump aiopvapi to 1.6.19 to fix async_timeout passing loop (#61618) 2021-12-12 14:17:54 -08:00
Marcel van der Veldt ed8d5c09ff Fix availability for 3th party Hue lights (#61603) 2021-12-12 14:12:35 -08:00
Allen Porter cd001d0243 Only publish nest camera event messages once per thread and bump nest version (#61587) 2021-12-12 14:12:05 -08:00
Marcel van der Veldt 4ad90b33c9 Fix Hue transition calculation (#61581) 2021-12-12 14:11:41 -08:00
J. Nick Koston 8200101785 Fix HomeKit covers with device class window and no tilt (#61566) 2021-12-12 14:10:40 -08:00
Allen Porter c3e72bec0a Update logic for nest media source can_play for events (#61537) 2021-12-12 14:10:20 -08:00
Marc Mueller cbe58913ea Fix freedompro tests (#61012) 2021-12-12 14:09:45 -08:00
Ernst Klamer 6e7de8f85d Fix for failing Solarlog integration in HA 2021.12 (#61602) 2021-12-12 14:09:15 -08:00
Bram Kragten aff74f7969 Update frontend to 20211212.0 (#61577) 2021-12-12 19:24:32 +01:00
Marcel van der Veldt 599d5c4c41 enable grouped light if enabled in previous integration (#61582) 2021-12-12 10:12:49 -08:00
Austin Mroczek 0194f0a06e Fix totalconnect service schema (#61595) 2021-12-12 19:00:28 +01:00
David F. Mulcahey 94324cebea Update HVAC action handling in ZHA climate devices (#61460)
* Update HVAC action handling in ZHA climate devices

* fix class name

* align with class name changes

* get the correct sensor entity for state assertions
2021-12-12 12:11:37 -05:00
Allen Porter 7711f9a391 Use relative import within component for nest media source (#61571) 2021-12-12 07:14:44 -08:00
epenet a691abaa50 Use new enums in gogogate2 (#61515)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-12 06:27:20 -08:00
Alexei Chetroi 997809c6c4 Refactor ZHA entity matching process (#60063)
* Group multi-matches by channels

* Group multi-matched by explicit groups

* Registryless AnalogInput and PowerConfiguration

* Refactor single cluster sensor registry

* Refactor single cluster cover and lock registry

* Refactor single cluster binary_sensor registry

* Pylint
2021-12-12 07:52:49 -05:00
Nathan Spencer 359affb856 Bump pylitterbot to 2021.12.0 (#61536) 2021-12-11 22:13:12 -08:00
J. Nick Koston 388fcac689 Reduce cpu requirements for apple_tv mdns and discovery (#61346)
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2021-12-11 19:57:11 -10:00
jjlawren 9a1109949f Fix Sonos sub & surround switch state reporting (#61531)
* Fix sub/surround states, refactor volume param handling

* Lint
2021-12-11 21:14:22 -07:00
Austin Mroczek 3198211a7f Add instant arming for totalconnect (#60156)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-11 15:58:12 -10:00
GitHub Action f75b325ab2 [ci skip] Translation update 2021-12-12 00:14:30 +00:00
Bram Kragten 0736e4fde1 Update frontend to 20211211.0 (#61499) 2021-12-11 18:11:42 +01:00
David F. Mulcahey abbde8f128 Clean up state class and device class usage in ZHA (#61049)
* Clean up sensor and device class usage in ZHA

* additional cleanup

* Use EntityCategory
2021-12-11 11:51:24 -05:00
David F. Mulcahey f6ac856b8d Use async_on_unload from config entry in ZHA (#61015)
* remove DATA_ZHA_DISPATCHERS

* update typing information

* fix rebase
2021-12-11 11:50:03 -05:00
Marcel van der Veldt 0abfc90870 Fix typo in Hue device triggers - use enum value (#61498) 2021-12-11 17:12:33 +01:00
David F. Mulcahey a17031630f Use Platform enum in ZHA (#61016) 2021-12-11 11:06:39 -05:00
J. Nick Koston 5907f6690c Fix missing color modes for Magic Home Ceiling Light CCT (0xE1) (#61478) 2021-12-11 11:39:32 +01:00
J. Nick Koston 41bac5ccbb Fix non-threadsafe call to async_fire in telegram_bot (#61465)
Fixes https://github.com/home-assistant/core/issues/53255#issuecomment-888111478
2021-12-11 11:20:58 +01:00
J. Nick Koston 773ada5fe4 Pickup codeowner for lookin (#61474)
- I am now using these devices in production
2021-12-11 11:14:18 +01:00
J. Nick Koston d78914d138 Drop nmap_tracker code owner (#61476)
- I am no longer using this in production
2021-12-11 11:13:05 +01:00
J. Nick Koston 61865f4593 Pickup screenlogic codeowner (#61477)
- I am using this in production and already doing some work on it
2021-12-11 11:12:37 +01:00
J. Nick Koston 3eabd69666 Fix exception in color_rgb_to_rgbww (#61466) 2021-12-10 22:19:54 -08:00
Andre Lengwenus 74d5cbd3a9 Add events and device triggers to LCN (#58745) 2021-12-10 19:02:17 -10:00
GitHub Action 5e750a0625 [ci skip] Translation update 2021-12-11 00:12:44 +00:00
Marcel van der Veldt 0d36b07d10 Small fix for device triggers and events on Hue integration (#61462) 2021-12-10 15:11:34 -08:00
jjlawren 6d54261322 Remove external library discovery call in Sonos (#61461)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-10 11:28:47 -10:00
David F. Mulcahey d4e5c1832e Bump ZHA quirks to 0.0.65 (#61458) 2021-12-10 11:29:46 -08:00
MattWestb d73311075f Add 2 new CN-Hysen TRVs (#61002)
Adding CN-Hysen "_TZE200_pvvbommb" and "_TZE200_4eeyebrt" TRVs
2021-12-10 14:07:53 -05:00
Anton Malko e5b04cedf3 Add media_player platform to Lookin (#61337)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-10 08:52:51 -10:00
Erik Montnemery dc5888ab4a Correct recorder.statistics.get_last_statistics (#61421) 2021-12-10 10:09:29 -08:00
Erik Montnemery aa36dde148 Correct rest sensor configured to generate timestamps (#61429) 2021-12-10 09:59:27 -08:00
Yehuda Davis e0cb7dad31 Fix Tuya cover open/close commands (#61369)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-10 18:19:33 +01:00
Simone Chemelli f77c4485b6 Interim fix (#61435) 2021-12-10 17:40:31 +02:00
epenet 80b65c679f Use new enums in fritz (#61446)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:58:34 -05:00
epenet 44b7c0e65c Use new enums in fritzbox (#61447)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:58:23 -05:00
epenet 0d9d6d5727 Use new SensorStateClass enum in flunearyou (#61441)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:55:33 -05:00
epenet 25838e97e0 Use BinarySensorDeviceClass in ffmpeg (#61436)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:54:41 -05:00
epenet f1979f8b68 Use new enums in fjaraskupan (#61438)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:53:58 -05:00
epenet eb27da3cd4 Use new SensorDeviceClass enum in freebox (#61444)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:53:08 -05:00
epenet 731c70a0e7 Use new enums in forecast_solar (#61443)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:52:54 -05:00
epenet 4d282eca6d Use new DeviceClass constants in flo (#61440)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:52:33 -05:00
epenet 6677dd8507 Use new DeviceClass enums in fibaro (#61437)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:50:21 -05:00
epenet 172237f4f1 Use new SensorDeviceClass enum in foobot (#61442)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:48:48 -05:00
epenet 5538d5d59d Use new DeviceClass enums in flipr (#61439)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:48:10 -05:00
epenet da7c5f4722 Break long lines in discovery_info (#61431) 2021-12-10 12:48:47 +01:00
Erik Montnemery 281b5e1c22 Speed up demo lock tests (#61425) 2021-12-10 11:13:44 +01:00
epenet b5c5528082 Optimise state attributes in delijn (#61424) 2021-12-10 10:13:21 +01:00
epenet e50c00ea06 Use new enums in esphome (#61391)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:56:20 +01:00
epenet 412e531096 Use new DeviceClass enums in ezviz (#61383)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:54:58 +01:00
Daniel Hjelseth Høyer dd6b179549 Mill, use native_value (#61382) 2021-12-10 09:24:59 +01:00
epenet 8c39eade5e Use SensorDeviceClass in environment_canada (#61390)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:14:06 +01:00
epenet f12261b575 Use SensorDeviceClass in envirophat (#61389)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:13:07 +01:00
epenet 45425f118c Use new DeviceClass and StateClass in enphase_envoy (#61388)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:12:38 +01:00
Erik Montnemery d143aa06e3 Correct device class for Tasmota dewpoint sensor (#61420) 2021-12-10 09:12:24 +01:00
epenet 63efb809ee Use new DeviceClass and StateClass enums in enocean (#61387)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:10:36 +01:00
epenet 980f22244c Use new DeviceClass and StateClass enums in emoncms (#61381)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:07:17 +01:00
epenet 46326a47de Use new SensorDeviceClass enum in ebusd (#61374)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:06:23 +01:00
epenet b5cd13a134 Use new SensorStateClass in eliqonline (#61380)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:04:07 +01:00
epenet 5559c751a9 Use new EntityCategory enum in elgato (#61379)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:02:21 +01:00
epenet 9f9e2db510 Use new BinarySensorDeviceClass enum in egardia (#61378)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 09:01:58 +01:00
epenet 393107c855 Use new DeviceClass and StateClass enums in efergy (#61377)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:59:24 +01:00
epenet 347d1fc6bd Use new SensorDeviceClass enum in eddystone_temperature (#61376)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:57:55 +01:00
epenet f59966f8ee Use new DeviceClass enums in econet (#61375)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:57:31 +01:00
epenet 728f511627 Use new DeviceClass and StateClass enums in ecobee (#61372)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:55:57 +01:00
epenet f7bdbd9fdd Use new SensorDeviceClass in dsmr-reader (#61371)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:53:23 +01:00
Kevin Stillhammer 49a5c7b2cc Use find_coordinates in waze_travel_time (#61400) 2021-12-10 08:46:44 +01:00
bsmappee 9c28727aa0 Remove energy entity again in Smappee local integration (#61373) 2021-12-10 08:42:33 +01:00
epenet df608b56a5 Use new enums in energy (#61386)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-10 08:40:53 +01:00
J. Nick Koston fe17c9ffb6 Fix lookin set temperature when device is off (#61411) 2021-12-10 08:35:07 +01:00
Aaron Bach 9a46d238f7 Bump simplisafe-python to 2021.12.1 (#61412) 2021-12-10 08:30:15 +01:00
J. Nick Koston 8d483e2206 Fix flux_led discovery with older models (#61413) 2021-12-10 08:29:27 +01:00
J. Nick Koston 8383da6a5e Fix older v1 dimmable flux_led bulbs not turning on (#61414) 2021-12-10 08:28:35 +01:00
Erik Montnemery 27d1063dec Revert "Skip duplicated data when calculating fossil energy consumption (#60599)" (#61323)
This reverts commit 159506262a.
2021-12-10 08:19:53 +01:00
GitHub Action 0aaf9459ab [ci skip] Translation update 2021-12-10 00:13:29 +00:00
Matthias Alphart 4f9d4872a7 Fix unique_id of S0 meters connected to Fronius inverters (#61408) 2021-12-09 15:35:20 -08:00
Aaron Bach 58174eaa4e Assign docs URL to a placeholder in SimpliSafe config flow (#61410) 2021-12-09 14:41:13 -08:00
Paulus Schoutsen 1f97603f71 Bump frontend to 20211209.0 (#61406) 2021-12-09 14:40:05 -08:00
jjlawren 3ae16caf6a Fix Sonos radio handling during polling (#61401) 2021-12-09 14:12:19 -08:00
Aaron Bach b556bd1d58 Consolidate SimpliSafe config flow forms into one (#61402) 2021-12-09 14:11:41 -08:00
einarhauks 2b7c2d902e Update tesla-wall-connector to v1.0.1 (#61392) 2021-12-09 14:08:29 -08:00
Joakim Plate ea3e08c041 Improve type checking for rfxtrx (#58837) 2021-12-09 13:35:53 -08:00
epenet f512bacfc7 Use new SensorDeviceClass enum in emonitor (#61385)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 11:20:06 -10:00
bigbadblunt 497f036af6 Add default value for signal_repetitions in cover (#61393) 2021-12-09 22:12:40 +01:00
bsmappee d64ae20f94 add missing unit of measurement in Smappee (#61365) 2021-12-09 13:00:23 -06:00
epenet 2db1013620 Use new DeviceClass enums in blebox (#61361)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 15:38:32 +01:00
epenet fa38a2d0bf Use new enums in deconz (#61343)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 13:23:01 +01:00
epenet 2e99fbc1f3 Use new BinarySensorDeviceClass enum in digital_ocean (#61350)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 13:22:22 +01:00
epenet f5c77ef5d0 Use _attr_* in abode (#61357)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 12:59:29 +01:00
epenet b1a8e0b796 Use new enums in devolo_home_control (#61345)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 12:53:05 +01:00
epenet bcdeb06a4e Use new MediaPlayerDeviceClass enum in directv (#61351)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 12:06:04 +01:00
epenet 50940844b8 Use new enums in devolo_home_network (#61348)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 12:05:09 +01:00
epenet c5815ef936 Use new CoverDeviceClass enum in dynalite (#61354)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 12:04:25 +01:00
epenet 7389cdaf05 Use new SensorStateClass enum in dsmr_reader (#61352)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 12:03:45 +01:00
epenet 487c44e11d Use _attr_* in dte_energy_bridge (#61353)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 11:55:42 +01:00
epenet 50e034d4f0 Use new SensorDeviceClass enum in dht (#61349)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 11:52:37 +01:00
Franck Nijhof 1ed490ce62 Fix date/datetime support for templates (#61088)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-09 11:43:48 +01:00
epenet 5b8f8772d2 Use _attr_* in delijn (#61344)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 11:39:57 +01:00
epenet f4d66f67d5 Use new DeviceClass and StateClass enums in darksky (#61342)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 11:10:26 +01:00
epenet cfb1002920 Use new DeviceClass and StateClass enums in daikin (#61340)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 11:07:58 +01:00
Erik Montnemery 8e58ea8397 Correct state class for Tasmota sensors (#61236)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-09 10:49:19 +01:00
Maikel Punie 22f71a89e0 Use new SensorDeviceClass and SensorStateClass in velbus (#61339) 2021-12-09 10:28:51 +01:00
Franck Nijhof 11ee0fb1d0 Upgrade tailscale to 0.1.4 (#61338) 2021-12-09 10:17:34 +01:00
epenet c5ffeb7809 Use new DeviceClass and EntityCategory enums in cloud (#61332)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:40:12 +01:00
epenet 8df0bc9d57 Use new BinarySensorDeviceClass enum in concord232 (#61335)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:24:07 +01:00
epenet 59878968b2 Use new DeviceClass and StateClass enums in comfoconnect (#61334)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:22:52 +01:00
epenet dff29639bd Use new SensorStateClass enum in co2signal (#61333)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:22:02 +01:00
epenet fb7bab2a5d Use new SensorDeviceClass in cert_expiry (#61331)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:20:56 +01:00
epenet dfc85fe372 Use new SensorDeviceClass enum in canary (#61330)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:20:10 +01:00
epenet bdbecc6c05 Use new SensorDeviceClass enum in buienradar (#61329)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:18:48 +01:00
epenet 172591031d Use new CoverDeviceClass enum in brunt (#61328)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:18:20 +01:00
epenet 4818872591 Use new enums in brother (#61327)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:17:50 +01:00
epenet 9d25961bf3 Use new MediaPlayerDeviceClass enum in braviatv (#61325)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:16:37 +01:00
epenet 76bdf9bc25 Use new DeviceClass enums in bosch_shc (#61324)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:16:14 +01:00
epenet f7f50563dd Use new DeviceClass enums in bloomsky (#61316)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:14:16 +01:00
epenet 23f21bd27a Use new DeviceClass enums in blink (#61315)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:13:50 +01:00
epenet 730208028f Use SensorDeviceClass enum in bh1750 (#61314)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:13:23 +01:00
epenet a7b631d650 Use DeviceClass and StateClass enums in bbox (#61309)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 09:12:54 +01:00
Daniel Hjelseth Høyer 4c542336d5 Add sensors to Mill local heaters (#61247)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-09 09:04:19 +01:00
Paulus Schoutsen 54e312e1f7 Fix hue groups inheritance (#61308) 2021-12-08 23:58:23 -08:00
Yehuda Davis f4f13b7074 Fix regression in Tuya cover is_closed logic (#61303) 2021-12-09 08:40:45 +01:00
epenet d7756efe55 Use DeviceClass and StateClass enums in broadlink (#61326)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 08:39:33 +01:00
epenet 6d61a4678d Ues new SensorDeviceClass in bme680 (#61318)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 08:29:47 +01:00
epenet cf440f2452 Use SensorDeviceClass enum in beewi_smartclim (#61313)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 08:29:29 +01:00
epenet c7eae8b0bc Use new SensorDeviceClass enum in bme280 (#61319)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 08:29:01 +01:00
epenet 0c96b27ab2 Use new SensorDeviceClass enum in bmp280 (#61320)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 08:28:37 +01:00
epenet a8d0a54553 Use new DeviceClass enums in bmw (#61321)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 08:28:08 +01:00
epenet a63900a5a8 Use new CoverDeviceClass in bond (#61322)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-09 08:26:37 +01:00
Paulus Schoutsen 2e65923205 Fix CO2signal error handling (#61311) 2021-12-09 07:50:30 +01:00
Paulus Schoutsen 8f238d6b53 Fix rova timezone (#61302) 2021-12-09 07:36:41 +01:00
J. Nick Koston 4933189ad9 Fix lookin failing to setup during firmware updates (#61305) 2021-12-08 22:21:11 -08:00
Allen Porter 9ffa3b21f6 Display nest media events using local time (#61143) 2021-12-08 21:49:40 -08:00
Stefan Agner a13ae85982 Introduce only_supervisor for @websocket_api.ws_require_user() (#61298) 2021-12-08 16:49:35 -08:00
GitHub Action 1f1a29cada [ci skip] Translation update 2021-12-09 00:13:16 +00:00
Paulus Schoutsen 17cf53677c Rest fixes (#61296) 2021-12-08 14:35:50 -08:00
epenet af603d0427 Use new DeviceClass enums in alexa (#61263)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:35:52 +01:00
Dave T adf63d5116 Aurora ABB add entity category (#61231) 2021-12-08 22:34:47 +01:00
epenet 3e78c28a5b Use _attr_* in android_ip_webcam (#61270)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:34:05 +01:00
epenet ebf9faac17 Use new SensorDeviceClass enum in atag (#61278)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:33:09 +01:00
epenet 7c09cff3ad Use new DeviceClass and EntityCategory enums in august (#61288)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:15:15 +01:00
Daniel Hjelseth Høyer b2ae018837 Use new EntityCategory in Opengarage (#61285) 2021-12-08 22:14:43 +01:00
Daniel Hjelseth Høyer eb3fa12a6a Use new EntityCategory enum in Switchbot (#61280) 2021-12-08 22:14:16 +01:00
Daniel Hjelseth Høyer d6725715a1 Use new EntityCategory in Tractive (#61289) 2021-12-08 22:13:01 +01:00
epenet d817b4c7ea Use new BinarySensorDeviceClass enum in balboa (#61292)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:11:49 +01:00
epenet dff77e39ce Use new BinarySensorDeviceClass enum in axis (#61291)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:09:19 +01:00
Daniel Hjelseth Høyer 503593b301 Use new EntityCategory in Mill (#61294) 2021-12-08 22:08:44 +01:00
Daniel Hjelseth Høyer 07d0b6f726 Use new EntityCategory in rfxtrx (#61295) 2021-12-08 22:08:05 +01:00
Daniel Hjelseth Høyer eae1e669d0 Use new EntityCategory enum in Tibber (#61279) 2021-12-08 22:04:11 +01:00
epenet c893ad80e4 Use new SwitchDeviceClass in aten_pe (#61281)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:03:51 +01:00
epenet fd7328ce23 Use new DeviceClass and StateClass enums in atome (#61284)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 22:03:24 +01:00
J. Nick Koston aca2c3a27a Restore rest integration ability to follow http redirects (#61293) 2021-12-08 22:03:07 +01:00
epenet d2216363c5 Use new DeviceClass and StateClass enums in aseko_pool_live (#61276)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 21:57:25 +01:00
epenet 25db4a4f1f Use new SensorDeviceClass in arwn (#61275)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 21:56:41 +01:00
epenet 84141ff3dd Use new SensorDeviceClass in arlo (#61274)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 21:56:05 +01:00
epenet 880a2b69b6 Use new SensorDeviceClass in apcupsd (#61271)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 21:55:44 +01:00
epenet c0529ac1ce Use new SensorDeviceClass enum in awair (#61290)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 21:54:50 +01:00
J. Nick Koston e130688141 Bump flux_led to 0.26.3 (#61287) 2021-12-08 12:54:41 -08:00
Daniel Hjelseth Høyer 1990b5b608 Use new EntityCategory enum in Surepetcare (#61282) 2021-12-08 10:46:30 -10:00
epenet c05eca1c82 Remove log flooding prevention logic from discovery info (#61243)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:28:26 -10:00
epenet 9c11bb8ba1 Use new SensorDeviceClass in aqualogic (#61272)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 21:21:49 +01:00
Paulus Schoutsen ce59ed2a5e Guard cannot connect during Tuya init (#61267) 2021-12-08 21:21:33 +01:00
Paulus Schoutsen 3223332c1e Use correct template parameter in Rest template rendering (#61269) 2021-12-08 12:19:22 -08:00
epenet 7215244c17 Use new DeviceClass and EntityCategory enums in advantage_air (#61255)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:19:10 -08:00
epenet fd58c1eff5 Use new SensorDeviceClass enums in aemet (#61256)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:18:14 -08:00
epenet 048bdd321e Use new DeviceClass and StateClass enums in airly (#61258)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:17:41 -08:00
epenet 25224f6945 Use new SensorStateClass enum in airnow (#61259)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:17:20 -08:00
epenet 646da7a9b7 Use new EntityCategory enum in airthings (#61260)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:17:03 -08:00
epenet e460eec134 Use new CoverDeviceClass enum in aladdin_connect (#61262)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:16:43 -08:00
epenet c1a09d2bac Use new DeviceClass and StateClass enums in ambee (#61264)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:13:59 -08:00
epenet 549b72e48e Use new SensorStateClass enum in amberelectric (#61265)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:13:33 -08:00
epenet e4e0dcbae0 Use new BinarySensorDeviceClass enum in amcrest (#61268)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:13:18 -08:00
epenet 8a11cf3d1f Use new DeviceClass, StateClass and EntityCategory enums in ambient_station (#61266)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 13:06:31 -07:00
epenet c71fe71654 Use new SensorDeviceClass enum in airvisual (#61261)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 12:49:02 -07:00
Paulus Schoutsen 77a74a9bf4 Fix smartthings timestamp sensor (#61254) 2021-12-08 11:44:53 -08:00
alim4r 7d256f56c5 Refactor Prometheus tests (#60451)
* Removed prometheus from .coveragerc

* Update prometheus tests with handler categories

* Updated prometheus metrics to use the current registry
- don't use the registry created on import (needed for tests)

* Reset the prometheus CollectorRegistry before every test

* Update prometheus metrics generation
- Use latest registry when generating a response

* Add default collectors when resetting the registry

* Move entities to the specific prometheus test case

* Refactor body generation for prometheus tests

* Add test case for sensors without unit after rebase

* Fix prometheus tests
- Wait for events in prometheus tests
- Add workaround for demo platform dependecy conversation (aiohttp frozen router)

* Added prometheus tests for attribute metrics

* Added prometheus tests for binary_sensor

* Add prometheus test for input_boolean

* Add prometheus test for lights

* Add prometheus test for lock

* Add prometheus test for sensor fahrenheit conversion

* Fix prometheus test for input_number
2021-12-08 20:18:21 +01:00
Erik Montnemery 159506262a Skip duplicated data when calculating fossil energy consumption (#60599) 2021-12-08 10:59:26 -08:00
Milan Meulemans dbe0a801c6 Use _attr_* in whois integration (#61250) 2021-12-08 10:58:46 -08:00
epenet 40828e221e Use new DeviceClass enums in abode (#61244)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:58:01 -08:00
epenet d03b73eb23 Use new DeviceClass enums in accuweather (#61246)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:57:36 -08:00
epenet d79169ca2e Use new DeviceClass enums in acmeda (#61248)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:57:18 -08:00
epenet b5f7e14985 Use new DeviceClass enums in ads (#61249)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:56:59 -08:00
Jan Bouwhuis 17a542689f Fix pvoutput template use and REST integer parsing (#61171)
* Fix pvoutput template use and REST integer parsing

* revert accepting templates as input
2021-12-08 19:32:25 +01:00
jjlawren 9f3a4c3617 Improve Sonos tests, begin adding coverage (#61198)
* Update entity registry handling

* Add and use fixtures to test setup via config entry

* Remove legacy redundant tests

* Remove unnecessary mock_coro

* Remove unnecessary namespace change

* Move zeroconf payload to fixture

* Begin adding Sonos to codecov

* Mock proper return value

* Revert return value for platform
2021-12-08 19:28:27 +01:00
Dave T af91addc6c Use SensorDeviceClass and SensorStateClass enums in Aurora ABB (#61245) 2021-12-08 18:01:52 +01:00
Erik Montnemery f30eb05870 Refactor recorder queue handling (#61161)
* Refactor recorder queue handling

* Address pylint's concerns

* Implement workaround for mypy bug

* Address review comments
2021-12-08 16:54:26 +01:00
Thomas Dietrich bbe6d3c9ae Statistics refactor testcases in async pytest style (#60935)
* Implement optional manually defined uniqueid

* Fix test case via mocked environment

* Refactor testcases

* Fix missing awaits

* Revert order changes, reduce use of block command

* Tidy up mocked time testcases
2021-12-08 16:53:18 +01:00
Erik Montnemery 5169ee69c7 Attempt to fix flaky prometheus test (#61242) 2021-12-08 16:08:02 +01:00
epenet 9f15e7dcf4 Fix flaky tests around frame helper (#61179)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-08 10:50:56 +01:00
Daniel Hjelseth Høyer 9a46e802b7 Address late review of Adax (#61200)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-12-08 10:04:13 +01:00
J. Nick Koston d5aa4a9ce1 Updating naming for flux_led (#61187) 2021-12-08 09:30:22 +01:00
dependabot[bot] fad5314154 Bump actions/upload-artifact from 2.2.4 to 2.3.0 (#61215)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-08 09:06:06 +01:00
Paulus Schoutsen b7539fc0de Fix islamic prayer times timestamp sensor (#61207) 2021-12-07 23:39:27 -08:00
Paulus Schoutsen 7b3a7ee2d1 Jewish Calendar: Do not convert datetimes to UTC (#61222) 2021-12-07 23:38:52 -08:00
Paulus Schoutsen c8fbf4c339 don't convert GTFS timestamp to UTC in timestamp sensor (#61221) 2021-12-08 08:26:45 +01:00
Paulus Schoutsen a81026ea90 Fix follow-up review comment for bbox (#61219) 2021-12-07 23:14:21 -08:00
Paulus Schoutsen 1ca8df9584 Fix hydrawise timestamp sensor (#61206) 2021-12-07 22:56:22 -08:00
Paulus Schoutsen 6b6b60b589 Fix hvv_departures timestamp sensor (#61205) 2021-12-07 22:56:07 -08:00
Paulus Schoutsen ef70dec7a4 Fix Rova using strings as timestamp (#61201) 2021-12-07 22:55:43 -08:00
Paulus Schoutsen e011073789 Fix gtfs timestamp sensor (#61204) 2021-12-07 22:49:43 -08:00
Paulus Schoutsen 113a850c69 Fix flipr timestamp sensor (#61203) 2021-12-07 22:48:04 -08:00
Paulus Schoutsen fa75c1f92f Fix bbox timestamp (#61202) 2021-12-07 22:47:38 -08:00
Paulus Schoutsen 271b798dc9 Fix lyric timestamp sensor (#61209)
* Fix lyric timestamp sensor

* Update type
2021-12-07 22:46:45 -08:00
Paulus Schoutsen 2c451e6a76 Fix litterrobot timestamp sensor (#61208)
* Fix litterrobot timestamp sensor

* Update type
2021-12-07 22:38:35 -08:00
Paulus Schoutsen 566cf9785e Fix modern_forms timestmap sensors (#61211) 2021-12-07 22:35:38 -08:00
Paulus Schoutsen 3519ad4309 Fix vallox timestamp sensor (#61216)
* Fix vallox timestamp sensor

* Change old state type
2021-12-07 22:35:13 -08:00
Paulus Schoutsen 0780bf142f Fix meteo_france timestamp sensor (#61210) 2021-12-07 22:25:42 -08:00
Paulus Schoutsen ea42384afd Fix nextbus timestamp sensor (#61212) 2021-12-07 22:23:14 -08:00
Paulus Schoutsen 6257b3e070 Fix oasa_telematics timestamp sensor (#61213) 2021-12-07 22:14:52 -08:00
Paulus Schoutsen 4819484cbb Fix yandex_transport timestamp sensor (#61217) 2021-12-07 22:14:28 -08:00
Paulus Schoutsen 21f897bb5b Fix repetier timestamp sensors (#61214) 2021-12-07 22:12:26 -08:00
epenet 54d55fdf88 Use list comprehension in onewire sensor descriptions (#61157)
* Add 0-3 range to constants

* Use list comprehension in sensor definitions

Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-07 23:06:27 -06:00
Daniel Hjelseth Høyer 8cee47072d Add local access for Adax (#60019) 2021-12-07 16:48:16 -10:00
J. Nick Koston df9154268e Update MagicHome/flux_led OUIs for DHCP discovery (#61192) 2021-12-07 20:15:56 -06:00
J. Nick Koston 81dc84aef5 Fix log spam from flux_led 0x08 devices when in music mode (#61196) 2021-12-07 17:20:55 -08:00
J. Nick Koston 6b70bd7495 Fix uncaught exception in bond config flow (#61184) 2021-12-07 17:20:38 -08:00
Robert Blomqvist ea58778a5c Rephrase upgrade notification message to avoid installing Python 3.10 (#61181) 2021-12-07 17:19:23 -08:00
GitHub Action d69c6e3ab3 [ci skip] Translation update 2021-12-08 00:13:50 +00:00
puddly 1768b19f71 Bump ZHA dependency zigpy-znp from 0.6.3 to 0.6.4 (#61194) 2021-12-07 18:38:34 -05:00
Alberto Geniola b0affe7bfb Elmax integration (#59321)
* Add elmax integration.

* Run hassfest and generate requirements_all

* Remove secondary platforms from elmax integration as per first component integration.

* Move ElmaxCoordinator and ElmaxEntity into external file
Linting review

* Remove useless variables

* Fix wrong indentation.

* Remove unecessary platforms.

* Remove unnecessary attributes from manifest.

* Rely on property getters/setters rathern than private attribute from parent.
Update internal entity state just after transitory state update.

* Update homeassistant/components/elmax/const.py

Reference Platform constant

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

* Update username/password values

Rely on already-present templating constants

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

* Add missing constant import.

* Remove unnecessary test_unhandled_error() callback implementation.

* Add common.py to coverage ignore list.

* Improve coverage of config_flow.

* Rename the integration.

Co-authored-by: Franck Nijhof <frenck@frenck.nl>

* Fix reauth bug and improve testing.

* Refactor lambdas into generators.

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-07 22:42:55 +01:00
Marcel van der Veldt 7c7df5bb51 Change check for existence of options flow (#61147)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-12-07 12:50:34 -08:00
Erik Montnemery 4a814405c2 Minor deduplication of condition validation code (#61170) 2021-12-07 11:55:16 -08:00
einarhauks dced4d4542 Display energy in wh instead of kWh (#61169) 2021-12-07 11:33:24 -08:00
Allen Porter 6d867e0415 Bump nest to 0.4.5 to fix media player event expiration (#61174) 2021-12-07 11:30:23 -08:00
Aaron Bach 9af8d59a7a Bump py17track to 2021.12.2 (#61166) 2021-12-07 11:29:54 -08:00
Charles Garwood 00a82bf945 Remove loopenergy integration (#61175)
* Remove loopenergy integration

* Fix requirements_all.txt

* Fix requirements_test_all.txt
2021-12-07 19:47:44 +01:00
bsmappee 84dbc8279d Bump pysmappee to 0.2.29 (#61160) 2021-12-07 19:15:51 +01:00
Erik Montnemery 5256e26b6a Fix incorrect docstring in automation trace code (#61168) 2021-12-07 18:05:41 +01:00
Allen Porter 200a5c7e05 Fix flaky tests with unsynchronized stream available assertions (#61167)
Remove assertions that are not guaratuneed to be safe depending
on the state of the background worker. This leaves in the state
check for the keepalive case which does have some synchronization
already.
2021-12-07 07:40:36 -08:00
Tim Rightnour 489d85d862 Add Onewire diagnostic and config switches and binary_sensors (#59309)
* Onewire: Add diagnostic and config switches and binary_sensors
This commit adds diagnostic and config switches and binary_sensors to
the HobbyBoards devices.  With these, the user will be able to configure
those devices, without having to run owwrite/owread commands outside
of HA.

* Address review from @epenet

* Add HB_HUB to DEVICE_SUPPORT_OWSERVER

* Device class and entity category enums

* Fixup merge breakage

* Remove duplicate lines
2021-12-07 13:59:43 +01:00
Tobias Sauerwein 45c463b61c Fix Netatmo climate issue (#61154)
Signed-off-by: cgtobi <cgtobi@gmail.com>
2021-12-07 13:56:31 +01:00
Stefan Agner f0006b92be Allow to lock SQLite database during backup (#60874)
* Allow to set CONF_DB_URL

This is useful for test which need a custom DB path.

* Introduce write_lock_db helper to lock SQLite database

* Introduce Websocket API which allows to lock database during backup

* Fix isort

* Avoid mutable default arguments

* Address pylint issues

* Avoid holding executor thread

* Set unlock event in case timeout occures

This makes sure the database is left unlocked even in case of a race
condition.

* Add more unit tests

* Address new pylint errors

* Lower timeout to speedup tests

* Introduce queue overflow test

* Unlock database if necessary

This makes sure that the test runs through in case locking actually
succeeds (and the test fails).

* Make DB_LOCK_TIMEOUT a global

There is no good reason for this to be an argument. The recorder needs
to pick a sensible value.

* Add Websocket Timeout test

* Test lock_database() return

* Update homeassistant/components/recorder/__init__.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>

* Fix format

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-07 13:16:24 +01:00
Alexander Leisentritt 4eeee79517 Change ondilo_ico update interval to 5 minutes (#61153)
API has a rate limit of 30 queries per hours, 5 minutes uses 12 queries and leave a reasonable reserve but ensures timestamps of measurements in Home Assistant are about equal to real timestamps
2021-12-07 13:01:34 +01:00
Erik Montnemery af2e95d891 Guard against missing states in Alexa state updates (#61152) 2021-12-07 12:44:50 +01:00
Marcel van der Veldt 4563d95d40 Replace deprecated DEVICE_CLASS constants with new enums in Hue integration (#61149) 2021-12-07 11:41:43 +01:00
Fredrik Erlandsson c469bf2db9 Fix point availability (#61144) 2021-12-07 09:00:30 +01:00
Zac West 8ee2ca8a56 Deprecate ios push config (in favor of inline actions) (#61078) 2021-12-07 08:56:08 +01:00
Pierre Ståhl a87a6d3072 Add volume and tv metadata to Apple TV (#61107) 2021-12-06 21:36:13 -10:00
Erik Montnemery 5161126b58 Bump hatasmota to 0.3.1 (#61120) 2021-12-07 08:07:31 +01:00
Paulus Schoutsen 009a28ba7a Block pytest_asyncio (#61141) 2021-12-06 22:07:56 -08:00
Paulus Schoutsen e3ba533464 Disable lupusec (#61142) 2021-12-06 21:24:18 -08:00
Paulus Schoutsen bbaec2c481 Bump cache version CI (#61137) 2021-12-06 18:02:40 -08:00
GitHub Action 5258c5fc9c [ci skip] Translation update 2021-12-07 00:51:52 +00:00
Paulus Schoutsen b45f48a35a Bump frontend to 20211206.0 (#61133) 2021-12-06 15:51:03 -08:00
epenet b8b4855b8e Prevent log flooding in frame helper (#61085)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-06 15:26:31 -08:00
Aaron Bach 4aa7f36a53 Deprecate entity_id parameter in Guardian service calls (#61129) 2021-12-06 15:23:03 -08:00
jjlawren da4349d133 Improve Sonos activity debug logging (#61122) 2021-12-06 15:21:28 -08:00
Aaron Bach 0adf86d647 Bump simplisafe-python to 2021.12.0 (#61121) 2021-12-06 15:20:59 -08:00
Marcel van der Veldt 9e6e9774d1 Remove colon from default entity name in Hue integration (#61118) 2021-12-06 15:17:17 -08:00
epenet 97d292133f Revert "Add Open-Meteo integration (#60379)" (#61130)
This reverts commit d802f3a82f.
2021-12-06 23:35:14 +01:00
epenet d64bf3cc6c Use dataclass properties in Zeroconf tests (#61109)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-06 09:16:39 -10:00
Paulus Schoutsen e712b80650 Return native timestamps for home connect (#61116) 2021-12-06 10:08:52 -08:00
Franck Nijhof d802f3a82f Add Open-Meteo integration (#60379)
Co-authored-by: MatthewFlamm <39341281+MatthewFlamm@users.noreply.github.com>
2021-12-06 10:01:12 -08:00
epenet b6dc89b4b7 Add max/min/step to NumberEntityDescription (#61100)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2021-12-06 09:56:46 -08:00
Erik Montnemery e33384d8b9 Fix CO2 calculation when data is missing (#61106) 2021-12-06 09:55:28 -08:00
Paulus Schoutsen 10a423e01a Bump aiohue to 3.0.2 (#61115) 2021-12-06 09:46:17 -08:00
micha91 f94085c83e Add Yamaha MusicCast Select Entities (#60645)
* Add select entity for Yamaha MusicCast Capabilities

* Add musiccast select to .coveragerc

* Move status strings to string.select.json and auto generate the english translations from it. Let the device class start with yamaha_musiccast__.

* Make all device classes lower case

* Use platform enum to add select
2021-12-06 18:05:49 +01:00
G Johansson da5374614f Improve code quality trafikverket_weatherstation (#61044)
* Code quality trafikverket_weatherstation

* Updates from review

* Fix extra attributes settings

* Fix for additional review comments
2021-12-06 18:01:46 +01:00
Jérôme W 400b7a22bd Add media player volume control in fr-FR with Alexa (#60489)
* media player volume control in `fr-FR` with Alexa

* Apply suggestions from code review

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-12-06 17:49:47 +01:00
Marcel van der Veldt bd8bba9e3f Fix migration of entities of Hue integration (#61095)
* fix device name in log

* Fix Hue migration for all id versions

* fix tests

* typo

* change to bit more universal approach

* fix test again

* formatting
2021-12-06 08:24:59 -08:00
Martin Hjelmare dddca8aaeb Improve zwave_js add-on config flow description (#61099) 2021-12-06 14:46:53 +01:00
Pierre Ståhl 3a56cfed3a Update Apple TV integration to support tvOS 15 (#58665) 2021-12-06 13:04:18 +01:00
Alexander Pitkin 1dfadd72cf Fix yandex transport for Belarus (#61080) 2021-12-06 09:49:31 +01:00
Allen Porter bbe4a67a98 Coalesce nest media source preview clips by session and bump google-nest-sdm (#61081) 2021-12-05 23:59:24 -08:00
schreyack 1bcff0907b Fix previous setting briefly appearing on newer flux_led devices when turning on (#60004)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-12-05 23:56:59 -08:00
Aaron Bach 0ae6969aa4 Deprecate system_id parameter in SimpliSafe service calls (#61076) 2021-12-05 23:55:52 -08:00
J. Nick Koston 2f0695e408 Fix missing unique id in enphase_envoy (#61083) 2021-12-05 23:53:53 -08:00
J. Nick Koston 742623ee81 Provide a hint on which username to use for enphase_envoy (#61084) 2021-12-06 08:50:45 +01:00
J. Nick Koston 40a57b3b01 Bump enphase_envoy to 0.20.1 (#61082) 2021-12-06 08:48:17 +01:00
J. Nick Koston 52d6b83da8 Abort flux_led discovery if another device gets the ip (#61074)
- If the dhcp reservation expired for the device that
  was at the ip and a new flux_led device appears we
  would discover it because the unique_id did not match
2021-12-05 22:41:09 -06:00
Marc Mueller 40b99135e5 Use platform enum (3) [H-L] (#60937)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2021-12-05 17:10:07 -10:00
Marc Mueller e0cb33a0a1 Use platform enum (4) [M-O] (#60940) 2021-12-05 17:06:35 -10:00
Milan Meulemans a7e129a952 Add Aseko Pool Live integration (#56299) 2021-12-05 17:02:46 -10:00
J. Nick Koston ef326c0ce9 Bump flux_led to 0.25.17 to fix missing push messages on 0xA3 models (#61070) 2021-12-05 17:56:35 -08:00
epenet fb5cc13061 Adjust yeelight ssdp_listener tests (#61065) 2021-12-05 17:51:45 -08:00
Alexei Chetroi 4e9fd56b8c Add 3157100-E model to Centralite thermostat (#61073) 2021-12-05 20:36:05 -05:00
GitHub Action ecdb18eb0a [ci skip] Translation update 2021-12-06 00:13:37 +00:00
David F. Mulcahey 5e90e178aa Prevent ZHA coordinator from showing unavailable (#61068) 2021-12-05 18:24:20 -05:00
Matthias Alphart ac263acb1c Don't use ConfigEntry update listener for Fronius (#61017)
* disable `async_setup_entry` in config_flow tests

* don't use config_entry update listener

* add `Final` to constants

* assert that an updated entry causes a reload (unload)
2021-12-05 23:29:39 +01:00
Allen Porter ab75efda9a Add debug logging for pip install command (#61057) 2021-12-05 13:30:02 -08:00
Allen Porter 5bd1139867 Fix regression in nest event media player with multiple devices (#61064) 2021-12-05 13:02:37 -08:00
Aaron Bach 4144699814 Fix mispelling in SimpliSafe service description (#61058) 2021-12-05 08:38:27 -10:00
Franck Nijhof a4ffa63165 Handle unknown/unavailable state for mobile_app (#60974) 2021-12-05 09:51:57 -08:00
david reid 95f0098593 Catch ConnectionResetError (#60987) 2021-12-05 09:50:15 -08:00
Teemu R dc5377485b Use STATE_DOCKED for emptying the bin for xiaomi_miio.vacuum (#60513) 2021-12-05 09:48:25 -08:00
J. Nick Koston b5e3050a23 Update flux_led models database to fix turn on for newer models (#61005) 2021-12-05 09:48:03 -08:00
Marcel van der Veldt b98bc64604 Disable options flow for Hue V2 bridges (#61045) 2021-12-05 09:47:44 -08:00
Marcel van der Veldt 11e2f51681 Fix Hue migration (#61030) 2021-12-05 09:47:24 -08:00
Marcel van der Veldt 3eeb855679 Fix Hue config flow (#61028) 2021-12-05 09:46:48 -08:00
Marcel van der Veldt 86e8034ea0 Add guard for empty mac address in Hue integration (#61037) 2021-12-05 09:46:05 -08:00
Allen Porter 5fdcbbe0e1 Fetch media for events for rendering in the nest media player (#61056) 2021-12-05 09:45:40 -08:00
Allen Porter 1a842d65ce Remove unnecessary explicit use of OrderedDict in nest media source (#61054)
Address follow up PR comments from #60073
2021-12-05 18:11:44 +01:00
Tim Rightnour dd4ede09c8 Add Venstar runtimes and battery sensors (#60414)
* Venstar: Add runtimes and battery sensors

* Address review - replace classes with lambda functions

* Clean up patch usage, make temperature_unit it's own function

* Remove double define of entities
2021-12-05 17:23:22 +01:00
Tim Rightnour bf1cacf4b2 Address late review of Balboa (#61004)
* Initial fixes from review of balboa climate

* Minor fixes from review
2021-12-05 17:22:13 +01:00
Franck Nijhof 5efb88f3f1 Remove deprecated YAML configuration from DSMR (#61008) 2021-12-05 17:09:37 +01:00
J. Nick Koston f5d7adc018 Fix lutron caseta discovery with newer firmwares (#61029) 2021-12-05 17:09:18 +01:00
Maximilian 9f7b8d3009 Add nina integration (#56647)
* Added nina integration

* Improvements implemented

* Fixed lint errors

* Added tests

* Improvements implemented

* Use client session from HA

* Added custom coordinator

* Fixed tests

* Fix pylint errors

* Library updated to 0.1.4

* Optimization of static attributes

* Removed unused code

* Switched to BinarySensorDeviceClass

* Switched to Platform Enum

* Improve repetition

* Improve repetition

* Fix corona filter

* Removed intermediate variable

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

* Fix black formatting

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
2021-12-05 15:11:02 +01:00
Franck Nijhof cf371ea8dd Remove deprecated base entity classes (#61006)
* Remove deprecated base entity classes

* Clean up tests
2021-12-05 13:53:52 +01:00
Marc Mueller 21c09d1a3e Fix panasonic_viera tests (#60999)
Don't modify global test state
2021-12-05 12:19:14 +01:00
rikroe 380c1a4be9 Fix BMW Connected Drive (#60938)
* Bump bimmer_connected to 0.8.5

* Always update HA states after service execution

* Fix BMW device tracker & vehicle_finder service

* Add charging_end_time sensor

* Fix pylint & pytest

* Remove unneeded DEFAULT_OPTION

* Revert adding charging_end_time & state_attributes

* Don't delete option data for CONF_USE_LOCATION

* Remove stale string

Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2021-12-05 11:20:40 +01:00
Allen Porter e34d982bdb Bump nest to version 0.4.2 (#61036) 2021-12-05 10:50:47 +01:00
Allen Porter 08003c5287 Improve nest media source event timestamp display (#61027)
Drop subsecond text from the nest media source event timestamp display, using a common date/time
template string.
2021-12-05 00:39:18 -08:00
GitHub Action fa5f524fdb [ci skip] Translation update 2021-12-05 00:14:27 +00:00
Marvin Wichmann affa3a6ada Add missing local_ip to KNX config flow and options flow (#61018)
* Add missing local_ip to KNX config flow and options flow

* Update strings
2021-12-04 23:07:28 +01:00
David F. Mulcahey 5fd4c37427 Fix missing test assertion in ZHA siren test (#61009) 2021-12-04 13:50:55 -05:00
Erik Montnemery a5b0e21e08 Fix translations for binary_sensor tampered device triggers (#60996) 2021-12-04 18:38:09 +01:00
Aaron Bach e33774a61e Add missing SimpliSafe service information (#60958) 2021-12-04 09:34:24 -07:00
Charles Garwood e36f9f684d Revert "Use language independent variable to read MPC-HC state" (#60993) 2021-12-04 15:13:05 +01:00
infeeeee c44eaca533 Use state variable from mpchc (#59341) 2021-12-04 08:47:49 -05:00
Marc Mueller b79b35abb5 Use platform enum (7) [T-Z] (#60948)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-12-04 14:10:01 +01:00
Franck Nijhof 73c880b6c2 Fix typo in state_characteristic warning (#60990) 2021-12-04 07:52:42 -05:00
Franck Nijhof 66c7387111 Fix str for device registry entry_type warnings caused by core (#60989) 2021-12-04 07:46:42 -05:00
Marc Mueller f7193400d4 Use platform enum (6) [S] (#60944) 2021-12-04 13:43:48 +01:00
Franck Nijhof ffb4b4df96 Only report deprecated device_state_attributes once (#60980) 2021-12-04 13:37:42 +01:00
Franck Nijhof 216ecf3426 Fix DSMR Reader providing strings as timestamps (#60988) 2021-12-04 13:31:34 +01:00
Marc Mueller cd1b923e16 Use platform enum (2) [E-G] (#60933) 2021-12-04 13:26:40 +01:00
Marc Mueller 79cd281c48 Use platform enum (5) [P-R] (#60943) 2021-12-04 13:19:49 +01:00
Franck Nijhof ed6352a22b Fix Xiaomi Miio providing strings as timestamps (#60979) 2021-12-04 12:33:34 +01:00
Martin Hjelmare c9bb688a79 Revert metoffice weather daytime (#60978) 2021-12-04 10:29:48 +01:00
Chen-IL 8bb1a3fac4 Improve asuswrt code readability (#60975) 2021-12-04 10:29:26 +01:00
Raman Gupta 267896cfc0 Address late review of eight_sleep (#60951) 2021-12-04 10:17:17 +01:00
Thomas Dietrich 6d6e0dd8bf Add unique_id to the statistics component (#59205)
* Implement optional manually defined uniqueid

* Fix test case via mocked environment
2021-12-04 09:50:47 +01:00
J. Nick Koston a553054fde Fix flood lights not turning on/off with flux_led (#60973) 2021-12-03 22:44:16 -10:00
J. Nick Koston ad63149927 Fix dimmable effects for flux_led model 0x33 v9+ (#60972) 2021-12-04 09:20:56 +01:00
Paulus Schoutsen a59ec9ca5e Handle invalid device registry entry type (#60966)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-12-04 09:20:12 +01:00
Paulus Schoutsen 2fe48702f3 Fix statistics registering at start callback (#60963) 2021-12-04 09:17:13 +01:00
Franck Nijhof b2ee62ba8d Upgrade luftdaten to 0.7.1 (#60970) 2021-12-04 00:16:00 -08:00
Franck Nijhof 1485020a2e Upgrade netdata to 1.0.1 (#60971) 2021-12-04 00:15:26 -08:00
Marc Mueller 156435d1c2 Update integrations to use async_setup_platforms (#60956)
* Replace forward_entry_setup with setup_platforms

* Apply suggestions from code review

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>

Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
2021-12-04 08:57:24 +01:00
J. Nick Koston 10e669e69e Fix yeelight name changing to ip address if discovery fails (#60967) 2021-12-04 08:41:58 +01:00
Paulus Schoutsen b8071c688b Correctly type the SSDP callback function (#60964) 2021-12-03 23:24:22 -08:00
J. Nick Koston 7fbe1dbc99 Remove legacy fan compatibility shim (#59781) 2021-12-03 21:57:46 -08:00
Aaron Bach 566716d697 Ensure that inactive RainMachine switch that is toggled on is toggled back off (#60959) 2021-12-03 21:05:01 -07:00
GitHub Action 68ca0a05c8 [ci skip] Translation update 2021-12-04 00:13:16 +00:00
Penny Wood dcf3bae500 Updated code as per comment in #60676 (#60682)
* Minor code refactor
2021-12-04 07:28:23 +08:00
Raman Gupta 8c3014169f Fix nzbget datetime return value (#60953) 2021-12-04 00:01:48 +01:00
Franck Nijhof 3471a44f92 2022! Happy New Year! (#60936) 2021-12-03 21:06:14 +01:00
6418 changed files with 181016 additions and 55653 deletions
+15 -1
View File
@@ -6,7 +6,7 @@ core: &core
- homeassistant/helpers/*
- homeassistant/package_constraints.txt
- homeassistant/util/*
- pyproject.yaml
- pyproject.toml
- requirements.txt
- setup.cfg
@@ -21,6 +21,7 @@ base_platforms: &base_platforms
- homeassistant/components/climate/*
- homeassistant/components/cover/*
- homeassistant/components/device_tracker/*
- homeassistant/components/diagnostics/*
- homeassistant/components/fan/*
- homeassistant/components/geo_location/*
- homeassistant/components/humidifier/*
@@ -65,6 +66,7 @@ components: &components
- homeassistant/components/homeassistant/**
- homeassistant/components/image/*
- homeassistant/components/input_boolean/*
- homeassistant/components/input_button/*
- homeassistant/components/input_datetime/*
- homeassistant/components/input_number/*
- homeassistant/components/input_select/*
@@ -101,17 +103,29 @@ tests: &tests
- codecov.yaml
- requirements_test_pre_commit.txt
- requirements_test.txt
- tests/auth/**
- tests/backports/*
- tests/common.py
- tests/conftest.py
- tests/hassfest/*
- tests/helpers/*
- tests/ignore_uncaught_exceptions.py
- tests/mock/*
- tests/scripts/*
- tests/test_util/*
- tests/testing_config/**
- tests/util/**
other: &other
- .github/workflows/*
- homeassistant/scripts/**
requirements:
- .github/workflows/*
- homeassistant/package_constraints.txt
- requirements*.txt
- setup.py
any:
- *base_platforms
- *components
+95 -19
View File
@@ -27,6 +27,7 @@ omit =
homeassistant/components/adguard/sensor.py
homeassistant/components/adguard/switch.py
homeassistant/components/ads/*
homeassistant/components/advantage_air/diagnostics.py
homeassistant/components/aemet/weather_update_coordinator.py
homeassistant/components/aftership/*
homeassistant/components/agent_dvr/alarm_control_panel.py
@@ -55,6 +56,7 @@ omit =
homeassistant/components/amcrest/*
homeassistant/components/ampio/*
homeassistant/components/android_ip_webcam/*
homeassistant/components/androidtv/__init__.py
homeassistant/components/anel_pwrctrl/switch.py
homeassistant/components/anthemav/media_player.py
homeassistant/components/apcupsd/*
@@ -65,7 +67,6 @@ omit =
homeassistant/components/aquostv/media_player.py
homeassistant/components/arcam_fmj/media_player.py
homeassistant/components/arcam_fmj/__init__.py
homeassistant/components/arduino/*
homeassistant/components/arest/binary_sensor.py
homeassistant/components/arest/sensor.py
homeassistant/components/arest/switch.py
@@ -73,6 +74,9 @@ omit =
homeassistant/components/arris_tg2492lg/*
homeassistant/components/aruba/device_tracker.py
homeassistant/components/arwn/sensor.py
homeassistant/components/aseko_pool_live/__init__.py
homeassistant/components/aseko_pool_live/entity.py
homeassistant/components/aseko_pool_live/sensor.py
homeassistant/components/asterisk_cdr/mailbox.py
homeassistant/components/asterisk_mbox/*
homeassistant/components/asuswrt/__init__.py
@@ -91,7 +95,6 @@ omit =
homeassistant/components/azure_service_bus/*
homeassistant/components/baidu/tts.py
homeassistant/components/balboa/__init__.py
homeassistant/components/balboa/entity.py
homeassistant/components/beewi_smartclim/sensor.py
homeassistant/components/bbb_gpio/*
homeassistant/components/bbox/device_tracker.py
@@ -118,6 +121,7 @@ omit =
homeassistant/components/bmp280/sensor.py
homeassistant/components/bmw_connected_drive/__init__.py
homeassistant/components/bmw_connected_drive/binary_sensor.py
homeassistant/components/bmw_connected_drive/button.py
homeassistant/components/bmw_connected_drive/device_tracker.py
homeassistant/components/bmw_connected_drive/lock.py
homeassistant/components/bmw_connected_drive/notify.py
@@ -176,7 +180,6 @@ omit =
homeassistant/components/coolmaster/climate.py
homeassistant/components/coolmaster/const.py
homeassistant/components/cppm_tracker/device_tracker.py
homeassistant/components/cpuspeed/sensor.py
homeassistant/components/crownstone/__init__.py
homeassistant/components/crownstone/const.py
homeassistant/components/crownstone/listeners.py
@@ -203,7 +206,6 @@ omit =
homeassistant/components/devolo_home_control/climate.py
homeassistant/components/devolo_home_control/const.py
homeassistant/components/devolo_home_control/cover.py
homeassistant/components/devolo_home_control/devolo_multi_level_switch.py
homeassistant/components/devolo_home_control/light.py
homeassistant/components/devolo_home_control/sensor.py
homeassistant/components/devolo_home_control/subscriber.py
@@ -216,6 +218,7 @@ omit =
homeassistant/components/dlib_face_detect/image_processing.py
homeassistant/components/dlib_face_identify/image_processing.py
homeassistant/components/dlink/switch.py
homeassistant/components/dnsip/__init__.py
homeassistant/components/dnsip/sensor.py
homeassistant/components/dominos/*
homeassistant/components/doods/*
@@ -254,6 +257,10 @@ omit =
homeassistant/components/eight_sleep/*
homeassistant/components/eliqonline/sensor.py
homeassistant/components/elkm1/*
homeassistant/components/elmax/__init__.py
homeassistant/components/elmax/common.py
homeassistant/components/elmax/const.py
homeassistant/components/elmax/switch.py
homeassistant/components/elv/*
homeassistant/components/emby/media_player.py
homeassistant/components/emoncms/sensor.py
@@ -365,9 +372,11 @@ omit =
homeassistant/components/freebox/switch.py
homeassistant/components/fritz/__init__.py
homeassistant/components/fritz/binary_sensor.py
homeassistant/components/fritz/button.py
homeassistant/components/fritz/common.py
homeassistant/components/fritz/const.py
homeassistant/components/fritz/device_tracker.py
homeassistant/components/fritz/diagnostics.py
homeassistant/components/fritz/sensor.py
homeassistant/components/fritz/services.py
homeassistant/components/fritz/switch.py
@@ -383,6 +392,8 @@ omit =
homeassistant/components/garages_amsterdam/sensor.py
homeassistant/components/gc100/*
homeassistant/components/geniushub/*
homeassistant/components/github/__init__.py
homeassistant/components/github/coordinator.py
homeassistant/components/github/sensor.py
homeassistant/components/gitlab_ci/sensor.py
homeassistant/components/gitter/sensor.py
@@ -391,7 +402,12 @@ omit =
homeassistant/components/glances/sensor.py
homeassistant/components/gntp/notify.py
homeassistant/components/goalfeed/*
homeassistant/components/google/*
homeassistant/components/goodwe/__init__.py
homeassistant/components/goodwe/const.py
homeassistant/components/goodwe/number.py
homeassistant/components/goodwe/select.py
homeassistant/components/goodwe/sensor.py
homeassistant/components/google/__init__.py
homeassistant/components/google_cloud/tts.py
homeassistant/components/google_maps/device_tracker.py
homeassistant/components/google_pubsub/__init__.py
@@ -448,6 +464,7 @@ omit =
homeassistant/components/homematic/*
homeassistant/components/home_plus_control/api.py
homeassistant/components/home_plus_control/switch.py
homeassistant/components/homewizard/diagnostics.py
homeassistant/components/homeworks/*
homeassistant/components/honeywell/__init__.py
homeassistant/components/honeywell/climate.py
@@ -496,6 +513,10 @@ omit =
homeassistant/components/insteon/schemas.py
homeassistant/components/insteon/switch.py
homeassistant/components/insteon/utils.py
homeassistant/components/intellifire/__init__.py
homeassistant/components/intellifire/coordinator.py
homeassistant/components/intellifire/binary_sensor.py
homeassistant/components/intellifire/sensor.py
homeassistant/components/incomfort/*
homeassistant/components/intesishome/*
homeassistant/components/ios/*
@@ -542,11 +563,7 @@ omit =
homeassistant/components/knx/__init__.py
homeassistant/components/knx/climate.py
homeassistant/components/knx/cover.py
homeassistant/components/knx/expose.py
homeassistant/components/knx/knx_entity.py
homeassistant/components/knx/light.py
homeassistant/components/knx/notify.py
homeassistant/components/knx/schema.py
homeassistant/components/kodi/__init__.py
homeassistant/components/kodi/browse_media.py
homeassistant/components/kodi/const.py
@@ -564,17 +581,17 @@ omit =
homeassistant/components/lametric/*
homeassistant/components/lannouncer/notify.py
homeassistant/components/lastfm/sensor.py
homeassistant/components/launch_library/__init__.py
homeassistant/components/launch_library/const.py
homeassistant/components/launch_library/diagnostics.py
homeassistant/components/launch_library/sensor.py
homeassistant/components/lcn/binary_sensor.py
homeassistant/components/lcn/climate.py
homeassistant/components/lcn/cover.py
homeassistant/components/lcn/helpers.py
homeassistant/components/lcn/light.py
homeassistant/components/lcn/scene.py
homeassistant/components/lcn/sensor.py
homeassistant/components/lcn/services.py
homeassistant/components/lcn/switch.py
homeassistant/components/lg_netcast/media_player.py
homeassistant/components/lg_soundbar/media_player.py
homeassistant/components/life360/*
@@ -593,12 +610,14 @@ omit =
homeassistant/components/logi_circle/sensor.py
homeassistant/components/london_underground/sensor.py
homeassistant/components/lookin/__init__.py
homeassistant/components/lookin/coordinator.py
homeassistant/components/lookin/entity.py
homeassistant/components/lookin/models.py
homeassistant/components/lookin/sensor.py
homeassistant/components/lookin/climate.py
homeassistant/components/lookin/media_player.py
homeassistant/components/lookin/light.py
homeassistant/components/luci/device_tracker.py
homeassistant/components/luftdaten/__init__.py
homeassistant/components/luftdaten/sensor.py
homeassistant/components/lupusec/*
homeassistant/components/lutron/*
@@ -697,6 +716,7 @@ omit =
homeassistant/components/nad/media_player.py
homeassistant/components/nanoleaf/__init__.py
homeassistant/components/nanoleaf/button.py
homeassistant/components/nanoleaf/diagnostics.py
homeassistant/components/nanoleaf/entity.py
homeassistant/components/nanoleaf/light.py
homeassistant/components/neato/__init__.py
@@ -716,7 +736,9 @@ omit =
homeassistant/components/netgear_lte/*
homeassistant/components/netio/switch.py
homeassistant/components/neurio_energy/sensor.py
homeassistant/components/nexia/entity.py
homeassistant/components/nexia/climate.py
homeassistant/components/nexia/switch.py
homeassistant/components/nextcloud/*
homeassistant/components/nfandroidtv/__init__.py
homeassistant/components/nfandroidtv/notify.py
@@ -763,6 +785,8 @@ omit =
homeassistant/components/onvif/event.py
homeassistant/components/onvif/parsers.py
homeassistant/components/onvif/sensor.py
homeassistant/components/open_meteo/diagnostics.py
homeassistant/components/open_meteo/weather.py
homeassistant/components/opencv/*
homeassistant/components/openevse/sensor.py
homeassistant/components/openexchangerates/sensor.py
@@ -793,6 +817,22 @@ omit =
homeassistant/components/orvibo/switch.py
homeassistant/components/osramlightify/light.py
homeassistant/components/otp/sensor.py
homeassistant/components/overkiz/__init__.py
homeassistant/components/overkiz/binary_sensor.py
homeassistant/components/overkiz/button.py
homeassistant/components/overkiz/cover.py
homeassistant/components/overkiz/cover_entities/*
homeassistant/components/overkiz/coordinator.py
homeassistant/components/overkiz/diagnostics.py
homeassistant/components/overkiz/entity.py
homeassistant/components/overkiz/executor.py
homeassistant/components/overkiz/light.py
homeassistant/components/overkiz/lock.py
homeassistant/components/overkiz/number.py
homeassistant/components/overkiz/scene.py
homeassistant/components/overkiz/select.py
homeassistant/components/overkiz/sensor.py
homeassistant/components/overkiz/switch.py
homeassistant/components/ovo_energy/__init__.py
homeassistant/components/ovo_energy/const.py
homeassistant/components/ovo_energy/sensor.py
@@ -808,6 +848,7 @@ omit =
homeassistant/components/philips_js/light.py
homeassistant/components/philips_js/media_player.py
homeassistant/components/philips_js/remote.py
homeassistant/components/philips_js/switch.py
homeassistant/components/pi_hole/sensor.py
homeassistant/components/pi4ioe5v9xxxx/binary_sensor.py
homeassistant/components/pi4ioe5v9xxxx/switch.py
@@ -837,7 +878,6 @@ omit =
homeassistant/components/progettihwsw/__init__.py
homeassistant/components/progettihwsw/binary_sensor.py
homeassistant/components/progettihwsw/switch.py
homeassistant/components/prometheus/*
homeassistant/components/prowl/notify.py
homeassistant/components/proxmoxve/*
homeassistant/components/proxy/camera.py
@@ -846,7 +886,6 @@ omit =
homeassistant/components/pushbullet/sensor.py
homeassistant/components/pushover/notify.py
homeassistant/components/pushsafer/notify.py
homeassistant/components/pvoutput/sensor.py
homeassistant/components/pyload/sensor.py
homeassistant/components/qbittorrent/sensor.py
homeassistant/components/qnap/sensor.py
@@ -879,6 +918,7 @@ omit =
homeassistant/components/rest/switch.py
homeassistant/components/ridwell/__init__.py
homeassistant/components/ridwell/sensor.py
homeassistant/components/ridwell/switch.py
homeassistant/components/ring/camera.py
homeassistant/components/ripple/sensor.py
homeassistant/components/rocketchat/notify.py
@@ -907,6 +947,7 @@ omit =
homeassistant/components/sabnzbd/*
homeassistant/components/saj/sensor.py
homeassistant/components/samsungtv/bridge.py
homeassistant/components/samsungtv/diagnostics.py
homeassistant/components/satel_integra/*
homeassistant/components/schluter/*
homeassistant/components/scrape/sensor.py
@@ -925,6 +966,14 @@ omit =
homeassistant/components/sense/sensor.py
homeassistant/components/sensehat/light.py
homeassistant/components/sensehat/sensor.py
homeassistant/components/senseme/__init__.py
homeassistant/components/senseme/binary_sensor.py
homeassistant/components/senseme/discovery.py
homeassistant/components/senseme/entity.py
homeassistant/components/senseme/fan.py
homeassistant/components/senseme/light.py
homeassistant/components/senseme/switch.py
homeassistant/components/sensibo/__init__.py
homeassistant/components/sensibo/climate.py
homeassistant/components/serial/sensor.py
homeassistant/components/serial_pm/sensor.py
@@ -984,10 +1033,12 @@ omit =
homeassistant/components/solaredge/sensor.py
homeassistant/components/solaredge_local/sensor.py
homeassistant/components/solarlog/*
homeassistant/components/solax/__init__.py
homeassistant/components/solax/sensor.py
homeassistant/components/soma/__init__.py
homeassistant/components/soma/cover.py
homeassistant/components/soma/sensor.py
homeassistant/components/soma/utils.py
homeassistant/components/somfy/__init__.py
homeassistant/components/somfy/api.py
homeassistant/components/somfy/climate.py
@@ -996,7 +1047,17 @@ omit =
homeassistant/components/somfy/switch.py
homeassistant/components/somfy_mylink/__init__.py
homeassistant/components/somfy_mylink/cover.py
homeassistant/components/sonos/*
homeassistant/components/sonos/__init__.py
homeassistant/components/sonos/alarms.py
homeassistant/components/sonos/diagnostics.py
homeassistant/components/sonos/entity.py
homeassistant/components/sonos/favorites.py
homeassistant/components/sonos/helpers.py
homeassistant/components/sonos/household_coordinator.py
homeassistant/components/sonos/media_browser.py
homeassistant/components/sonos/media_player.py
homeassistant/components/sonos/speaker.py
homeassistant/components/sonos/switch.py
homeassistant/components/sony_projector/switch.py
homeassistant/components/spc/*
homeassistant/components/spider/*
@@ -1013,6 +1074,7 @@ omit =
homeassistant/components/stiebel_eltron/*
homeassistant/components/stookalert/__init__.py
homeassistant/components/stookalert/binary_sensor.py
homeassistant/components/stookalert/diagnostics.py
homeassistant/components/stream/*
homeassistant/components/streamlabswater/*
homeassistant/components/suez_water/*
@@ -1041,8 +1103,12 @@ omit =
homeassistant/components/synology_chat/notify.py
homeassistant/components/synology_dsm/__init__.py
homeassistant/components/synology_dsm/binary_sensor.py
homeassistant/components/synology_dsm/button.py
homeassistant/components/synology_dsm/camera.py
homeassistant/components/synology_dsm/diagnostics.py
homeassistant/components/synology_dsm/common.py
homeassistant/components/synology_dsm/sensor.py
homeassistant/components/synology_dsm/service.py
homeassistant/components/synology_dsm/switch.py
homeassistant/components/synology_srm/device_tracker.py
homeassistant/components/syslog/notify.py
@@ -1053,7 +1119,6 @@ omit =
homeassistant/components/system_bridge/sensor.py
homeassistant/components/systemmonitor/sensor.py
homeassistant/components/tado/*
homeassistant/components/tahoma/*
homeassistant/components/tank_utility/sensor.py
homeassistant/components/tankerkoenig/*
homeassistant/components/tapsaff/binary_sensor.py
@@ -1141,6 +1206,7 @@ omit =
homeassistant/components/transmission/errors.py
homeassistant/components/travisci/sensor.py
homeassistant/components/tuya/__init__.py
homeassistant/components/tuya/alarm_control_panel.py
homeassistant/components/tuya/base.py
homeassistant/components/tuya/binary_sensor.py
homeassistant/components/tuya/button.py
@@ -1148,6 +1214,7 @@ omit =
homeassistant/components/tuya/climate.py
homeassistant/components/tuya/const.py
homeassistant/components/tuya/cover.py
homeassistant/components/tuya/diagnostics.py
homeassistant/components/tuya/fan.py
homeassistant/components/tuya/humidifier.py
homeassistant/components/tuya/light.py
@@ -1175,7 +1242,11 @@ omit =
homeassistant/components/upnp/*
homeassistant/components/upc_connect/*
homeassistant/components/uscis/sensor.py
homeassistant/components/vallox/*
homeassistant/components/vallox/__init__.py
homeassistant/components/vallox/const.py
homeassistant/components/vallox/fan.py
homeassistant/components/vallox/sensor.py
homeassistant/components/vallox/binary_sensor.py
homeassistant/components/vasttrafik/sensor.py
homeassistant/components/velbus/__init__.py
homeassistant/components/velbus/binary_sensor.py
@@ -1195,6 +1266,7 @@ omit =
homeassistant/components/verisure/binary_sensor.py
homeassistant/components/verisure/camera.py
homeassistant/components/verisure/coordinator.py
homeassistant/components/verisure/diagnostics.py
homeassistant/components/verisure/lock.py
homeassistant/components/verisure/sensor.py
homeassistant/components/verisure/switch.py
@@ -1204,9 +1276,11 @@ omit =
homeassistant/components/vesync/const.py
homeassistant/components/vesync/fan.py
homeassistant/components/vesync/light.py
homeassistant/components/vesync/sensor.py
homeassistant/components/vesync/switch.py
homeassistant/components/viaggiatreno/sensor.py
homeassistant/components/vicare/binary_sensor.py
homeassistant/components/vicare/button.py
homeassistant/components/vicare/climate.py
homeassistant/components/vicare/const.py
homeassistant/components/vicare/__init__.py
@@ -1234,8 +1308,6 @@ omit =
homeassistant/components/waze_travel_time/__init__.py
homeassistant/components/waze_travel_time/helpers.py
homeassistant/components/waze_travel_time/sensor.py
homeassistant/components/webostv/*
homeassistant/components/whois/sensor.py
homeassistant/components/wiffi/*
homeassistant/components/wirelesstag/*
homeassistant/components/wolflink/__init__.py
@@ -1284,11 +1356,15 @@ omit =
homeassistant/components/xs1/*
homeassistant/components/yale_smart_alarm/__init__.py
homeassistant/components/yale_smart_alarm/alarm_control_panel.py
homeassistant/components/yale_smart_alarm/binary_sensor.py
homeassistant/components/yale_smart_alarm/const.py
homeassistant/components/yale_smart_alarm/coordinator.py
homeassistant/components/yale_smart_alarm/entity.py
homeassistant/components/yale_smart_alarm/lock.py
homeassistant/components/yamaha_musiccast/__init__.py
homeassistant/components/yamaha_musiccast/media_player.py
homeassistant/components/yamaha_musiccast/number.py
homeassistant/components/yamaha_musiccast/select.py
homeassistant/components/yandex_transport/*
homeassistant/components/yeelightsunflower/light.py
homeassistant/components/yi/camera.py
+1 -1
View File
@@ -107,7 +107,7 @@ To help with the load of incoming pull requests:
- [ ] I have reviewed two other [open pull requests][prs] in this repository.
[prs]: https://github.com/home-assistant/core/pulls?q=is%3Aopen+is%3Apr+-author%3A%40me+-draft%3Atrue+-label%3Awaiting-for-upstream+sort%3Acreated-desc+review%3Anone
[prs]: https://github.com/home-assistant/core/pulls?q=is%3Aopen+is%3Apr+-author%3A%40me+-draft%3Atrue+-label%3Awaiting-for-upstream+sort%3Acreated-desc+review%3Anone+-status%3Afailure
<!--
Thank you for contributing <3
+17 -10
View File
@@ -10,11 +10,12 @@ on:
env:
BUILD_TYPE: core
DEFAULT_PYTHON: 3.8
DEFAULT_PYTHON: 3.9
jobs:
init:
name: Initialize build
if: github.repository_owner == 'home-assistant'
runs-on: ubuntu-latest
outputs:
architectures: ${{ steps.info.outputs.architectures }}
@@ -62,7 +63,7 @@ jobs:
name: Build PyPi package
needs: init
runs-on: ubuntu-latest
if: needs.init.outputs.publish == 'true'
if: github.repository_owner == 'home-assistant' && needs.init.outputs.publish == 'true'
steps:
- name: Checkout the repository
uses: actions/checkout@v2.4.0
@@ -75,8 +76,10 @@ jobs:
- name: Build package
shell: bash
run: |
pip install twine wheel
python setup.py sdist bdist_wheel
# Remove dist, build, and homeassistant.egg-info
# when build locally for testing!
pip install twine build
python -m build
- name: Upload package
shell: bash
@@ -88,6 +91,7 @@ jobs:
build_base:
name: Build ${{ matrix.arch }} base core image
if: github.repository_owner == 'home-assistant'
needs: init
runs-on: ubuntu-latest
strategy:
@@ -118,13 +122,13 @@ jobs:
echo "${{ github.sha }};${{ github.ref }};${{ github.event_name }};${{ github.actor }}" > rootfs/OFFICIAL_IMAGE
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
uses: docker/login-action@v1.12.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v1.10.0
uses: docker/login-action@v1.12.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
@@ -143,6 +147,7 @@ jobs:
build_machine:
name: Build ${{ matrix.machine }} machine core image
if: github.repository_owner == 'home-assistant'
needs: ["init", "build_base"]
runs-on: ubuntu-latest
strategy:
@@ -182,13 +187,13 @@ jobs:
fi
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
uses: docker/login-action@v1.12.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v1.10.0
uses: docker/login-action@v1.12.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
@@ -206,6 +211,7 @@ jobs:
publish_ha:
name: Publish version files
if: github.repository_owner == 'home-assistant'
needs: ["init", "build_machine"]
runs-on: ubuntu-latest
steps:
@@ -238,6 +244,7 @@ jobs:
publish_container:
name: Publish meta container
if: github.repository_owner == 'home-assistant'
needs: ["init", "build_base"]
runs-on: ubuntu-latest
steps:
@@ -245,13 +252,13 @@ jobs:
uses: actions/checkout@v2.4.0
- name: Login to DockerHub
uses: docker/login-action@v1.10.0
uses: docker/login-action@v1.12.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v1.10.0
uses: docker/login-action@v1.12.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
+111 -19
View File
@@ -10,10 +10,13 @@ on:
pull_request: ~
env:
CACHE_VERSION: 3
DEFAULT_PYTHON: 3.8
CACHE_VERSION: 5
PIP_CACHE_VERSION: 1
DEFAULT_PYTHON: 3.9
PRE_COMMIT_CACHE: ~/.cache/pre-commit
PIP_CACHE: /tmp/pip-cache
SQLALCHEMY_WARN_20: 1
PYTHONASYNCIODEBUG: 1
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
@@ -33,6 +36,7 @@ jobs:
tests_glob: ${{ steps.info.outputs.tests_glob }}
test_groups: ${{ steps.info.outputs.test_groups }}
test_group_count: ${{ steps.info.outputs.test_group_count }}
requirements: ${{ steps.core.outputs.requirements }}
runs-on: ubuntu-latest
steps:
- name: Check out code from GitHub
@@ -129,6 +133,7 @@ jobs:
prepare-base:
name: Prepare base dependencies
runs-on: ubuntu-latest
timeout-minutes: 20
outputs:
python-key: ${{ steps.generate-python-key.outputs.key }}
pre-commit-key: ${{ steps.generate-pre-commit-key.outputs.key }}
@@ -147,6 +152,11 @@ jobs:
hashFiles('requirements.txt') }}-${{
hashFiles('requirements_test.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}"
- name: Generate partial pip restore key
id: generate-pip-key
run: >-
echo "::set-output name=key::base-pip-${{ env.PIP_CACHE_VERSION }}-$(
date -u '+%Y-%m-%dT%H:%M:%s')"
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.7
@@ -164,13 +174,24 @@ jobs:
# ${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements.txt') }}-${{ hashFiles('requirements_test.txt') }}-
# ${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements.txt') }}-
# ${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-venv-${{ env.CACHE_VERSION }}-
- name: Restore pip wheel cache
if: steps.cache-venv.outputs.cache-hit != 'true'
uses: actions/cache@v2.1.7
with:
path: ${{ env.PIP_CACHE }}
key: >-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-${{
steps.generate-pip-key.outputs.key }}
restore-keys: |
${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-pip-${{ env.PIP_CACHE_VERSION }}-
- name: Create Python virtual environment
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
python -m venv venv
. venv/bin/activate
pip install -U "pip<20.3" setuptools
pip install -r requirements.txt -r requirements_test.txt
python --version
pip install --cache-dir=$PIP_CACHE -U "pip<20.3" setuptools wheel
pip install --cache-dir=$PIP_CACHE -r requirements.txt -r requirements_test.txt
- name: Generate partial pre-commit restore key
id: generate-pre-commit-key
run: >-
@@ -238,7 +259,8 @@ jobs:
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual black --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/* --show-diff-on-failure
shopt -s globstar
pre-commit run --hook-stage manual black --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/**/* --show-diff-on-failure
lint-flake8:
name: Check flake8
@@ -290,7 +312,8 @@ jobs:
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual flake8 --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/*
shopt -s globstar
pre-commit run --hook-stage manual flake8 --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/**/*
lint-isort:
name: Check isort
@@ -380,7 +403,8 @@ jobs:
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual pyupgrade --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/* --show-diff-on-failure
shopt -s globstar
pre-commit run --hook-stage manual pyupgrade --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/**/* --show-diff-on-failure
- name: Register yamllint problem matcher
run: |
@@ -436,7 +460,8 @@ jobs:
shell: bash
run: |
. venv/bin/activate
pre-commit run --hook-stage manual bandit --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/* --show-diff-on-failure
shopt -s globstar
pre-commit run --hook-stage manual bandit --files {homeassistant,tests}/components/${{ needs.changes.outputs.integrations_glob }}/**/* --show-diff-on-failure
hassfest:
name: Check hassfest
@@ -444,7 +469,7 @@ jobs:
needs: prepare-tests
strategy:
matrix:
python-version: [3.8]
python-version: [3.9]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
@@ -498,9 +523,10 @@ jobs:
prepare-tests:
name: Prepare tests for Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
matrix:
python-version: [3.8, 3.9]
python-version: [3.9]
outputs:
python-key: ${{ steps.generate-python-key.outputs.key }}
container: homeassistant/ci-azure:${{ matrix.python-version }}
@@ -514,6 +540,11 @@ jobs:
hashFiles('requirements_test.txt') }}-${{
hashFiles('requirements_all.txt') }}-${{
hashFiles('homeassistant/package_constraints.txt') }}"
- name: Generate partial pip restore key
id: generate-pip-key
run: >-
echo "::set-output name=key::pip-${{ env.PIP_CACHE_VERSION }}-$(
date -u '+%Y-%m-%dT%H:%M:%s')"
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.7
@@ -531,6 +562,16 @@ jobs:
# ${{ runner.os }}-${{ matrix.python-version }}-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements_test.txt') }}-${{ hashFiles('requirements_all.txt') }}-
# ${{ runner.os }}-${{ matrix.python-version }}-venv-${{ env.CACHE_VERSION }}-${{ hashFiles('requirements_test.txt') }}-
# ${{ runner.os }}-${{ matrix.python-version }}-venv-${{ env.CACHE_VERSION }}-
- name: Restore pip wheel cache
if: steps.cache-venv.outputs.cache-hit != 'true'
uses: actions/cache@v2.1.7
with:
path: ${{ env.PIP_CACHE }}
key: >-
${{ runner.os }}-${{ matrix.python-version }}-${{
steps.generate-pip-key.outputs.key }}
restore-keys: |
${{ runner.os }}-${{ matrix.python-version }}-pip-${{ env.PIP_CACHE_VERSION }}-
- name: Create full Python ${{ matrix.python-version }} virtual environment
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -540,20 +581,22 @@ jobs:
python -m venv venv
. venv/bin/activate
pip install -U "pip<20.3" setuptools wheel
pip install -r requirements_all.txt
pip install -r requirements_test.txt
python --version
pip install --cache-dir=$PIP_CACHE -U "pip<20.3" setuptools wheel
pip install --cache-dir=$PIP_CACHE -r requirements_all.txt
pip install --cache-dir=$PIP_CACHE -r requirements_test.txt
pip install -e .
pylint:
name: Check pylint
runs-on: ubuntu-latest
timeout-minutes: 20
needs:
- changes
- prepare-tests
strategy:
matrix:
python-version: [3.8]
python-version: [3.9]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
@@ -577,12 +620,14 @@ jobs:
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
python --version
pylint homeassistant
- name: Run pylint (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
python --version
pylint homeassistant/components/${{ needs.changes.outputs.integrations_glob }}
mypy:
@@ -593,7 +638,7 @@ jobs:
- prepare-tests
strategy:
matrix:
python-version: [3.8]
python-version: [3.9]
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
@@ -617,14 +662,48 @@ jobs:
if: needs.changes.outputs.test_full_suite == 'true'
run: |
. venv/bin/activate
python --version
mypy homeassistant
- name: Run mypy (partially)
if: needs.changes.outputs.test_full_suite == 'false'
shell: bash
run: |
. venv/bin/activate
python --version
mypy homeassistant/components/${{ needs.changes.outputs.integrations_glob }}
pip-check:
runs-on: ubuntu-latest
if: needs.changes.outputs.requirements == 'true'
needs:
- changes
- prepare-tests
strategy:
fail-fast: false
matrix:
python-version: [3.9]
name: Run pip check ${{ matrix.python-version }}
container: homeassistant/ci-azure:${{ matrix.python-version }}
steps:
- name: Check out code from GitHub
uses: actions/checkout@v2.4.0
- name: Restore full Python ${{ matrix.python-version }} virtual environment
id: cache-venv
uses: actions/cache@v2.1.7
with:
path: venv
key: ${{ runner.os }}-${{ matrix.python-version }}-${{
needs.prepare-tests.outputs.python-key }}
- name: Fail job if Python cache restore failed
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
echo "Failed to restore Python virtual environment from cache"
exit 1
- name: Run pip check
run: |
. venv/bin/activate
./script/pip_check $PIP_CACHE
pytest:
runs-on: ubuntu-latest
if: needs.changes.outputs.test_full_suite == 'true' || needs.changes.outputs.tests_glob
@@ -641,7 +720,7 @@ jobs:
fail-fast: false
matrix:
group: ${{ fromJson(needs.changes.outputs.test_groups) }}
python-version: [3.8, 3.9]
python-version: [3.9]
name: >-
Run tests Python ${{ matrix.python-version }} (${{ matrix.group }})
container: homeassistant/ci-azure:${{ matrix.python-version }}
@@ -675,8 +754,10 @@ jobs:
echo "::add-matcher::.github/workflows/matchers/pytest-slow.json"
- name: Run pytest (fully)
if: needs.changes.outputs.test_full_suite == 'true'
timeout-minutes: 45
run: |
. venv/bin/activate
python --version
python3 -X dev -m pytest \
-qq \
--timeout=9 \
@@ -691,9 +772,18 @@ jobs:
-p no:sugar \
tests
- name: Run pytest (partially)
if: needs.changes.outputs.test_full_suite == 'false' && matrix.python-version != '3.8'
if: needs.changes.outputs.test_full_suite == 'false'
timeout-minutes: 10
shell: bash
run: |
. venv/bin/activate
python --version
if [[ ! -f "tests/components/${{ matrix.group }}/__init__.py" ]]; then
echo "::error:: missing file tests/components/${{ matrix.group }}/__init__.py"
exit 1
fi
python3 -X dev -m pytest \
-qq \
--timeout=9 \
@@ -708,9 +798,11 @@ jobs:
-p no:sugar \
tests/components/${{ matrix.group }}
- name: Run pytest (partially); no coverage
if: needs.changes.outputs.test_full_suite == 'false' && matrix.python-version == '3.8'
if: needs.changes.outputs.test_full_suite == 'false'
timeout-minutes: 10
run: |
. venv/bin/activate
python --version
python3 -X dev -m pytest \
-qq \
--timeout=9 \
@@ -722,7 +814,7 @@ jobs:
-p no:sugar \
tests/components/${{ matrix.group }}
- name: Upload coverage artifact
uses: actions/upload-artifact@v2.2.4
uses: actions/upload-artifact@v2.3.1
with:
name: coverage-${{ matrix.python-version }}-${{ matrix.group }}
path: coverage.xml
+1
View File
@@ -7,6 +7,7 @@ on:
jobs:
lock:
if: github.repository_owner == 'home-assistant'
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v3
+3 -2
View File
@@ -12,11 +12,12 @@ on:
- "**strings.json"
env:
DEFAULT_PYTHON: 3.8
DEFAULT_PYTHON: 3.9
jobs:
upload:
name: Upload
if: github.repository_owner == 'home-assistant'
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
@@ -35,7 +36,7 @@ jobs:
download:
name: Download
needs: upload
if: github.event_name == 'schedule' || github.event_name == 'workflow_dispatch'
if: github.repository_owner == 'home-assistant' && (github.event_name == 'schedule' || github.event_name == 'workflow_dispatch')
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
+12 -5
View File
@@ -16,6 +16,7 @@ on:
jobs:
init:
name: Initialize wheels builder
if: github.repository_owner == 'home-assistant'
runs-on: ubuntu-latest
outputs:
architectures: ${{ steps.info.outputs.architectures }}
@@ -42,22 +43,27 @@ jobs:
echo "GRPC_PYTHON_BUILD_SYSTEM_OPENSSL=true"
echo "GRPC_PYTHON_BUILD_WITH_CYTHON=true"
echo "GRPC_PYTHON_DISABLE_LIBC_COMPATIBILITY=true"
# GRPC on armv7 needs -lexecinfo (issue #56669) since home assistant installs
# execinfo-dev when building wheels. The setup.py does not have an option for
# adding a single LDFLAG so copy all relevant linux flags here (as of 1.43.0)
echo "GRPC_PYTHON_LDFLAGS=-lpthread -Wl,-wrap,memcpy -static-libgcc -lexecinfo"
) > .env_file
- name: Upload env_file
uses: actions/upload-artifact@v2.2.4
uses: actions/upload-artifact@v2.3.1
with:
name: env_file
path: ./.env_file
- name: Upload requirements_diff
uses: actions/upload-artifact@v2.2.4
uses: actions/upload-artifact@v2.3.1
with:
name: requirements_diff
path: ./requirements_diff.txt
core:
name: Build wheels with ${{ matrix.tag }} (${{ matrix.arch }}) for core
if: github.repository_owner == 'home-assistant'
needs: init
runs-on: ubuntu-latest
strategy:
@@ -81,7 +87,7 @@ jobs:
name: requirements_diff
- name: Build wheels
uses: home-assistant/wheels@2021.07.0
uses: home-assistant/wheels@2022.01.2
with:
tag: ${{ matrix.tag }}
arch: ${{ matrix.arch }}
@@ -98,6 +104,7 @@ jobs:
integrations:
name: Build wheels with ${{ matrix.tag }} (${{ matrix.arch }}) for integrations
if: github.repository_owner == 'home-assistant'
needs: init
runs-on: ubuntu-latest
strategy:
@@ -150,7 +157,7 @@ jobs:
done
- name: Build wheels
uses: home-assistant/wheels@2021.07.0
uses: home-assistant/wheels@2022.01.2
with:
tag: ${{ matrix.tag }}
arch: ${{ matrix.arch }}
@@ -160,7 +167,7 @@ jobs:
env-file: true
apk: "build-base;cmake;git;linux-headers;libexecinfo-dev;bluez-dev;libffi-dev;openssl-dev;glib-dev;eudev-dev;libxml2-dev;libxslt-dev;libpng-dev;libjpeg-turbo-dev;tiff-dev;autoconf;automake;cups-dev;gmp-dev;mpfr-dev;mpc1-dev;ffmpeg-dev;gammu-dev;cargo"
pip: "Cython;numpy;scikit-build"
skip-binary: aiohttp
skip-binary: aiohttp,grpcio
constraints: "homeassistant/package_constraints.txt"
requirements-diff: 'requirements_diff.txt'
requirements: "requirements_all.txt"
+21 -8
View File
@@ -1,11 +1,11 @@
repos:
- repo: https://github.com/asottile/pyupgrade
rev: v2.29.0
rev: v2.31.0
hooks:
- id: pyupgrade
args: [--py38-plus]
args: [--py39-plus]
- repo: https://github.com/psf/black
rev: 21.11b1
rev: 21.12b0
hooks:
- id: black
args:
@@ -13,11 +13,11 @@ repos:
- --quiet
files: ^((homeassistant|script|tests)/.+)?[^/]+\.py$
- repo: https://github.com/codespell-project/codespell
rev: v2.0.0
rev: v2.1.0
hooks:
- id: codespell
args:
- --ignore-words-list=hass,alot,datas,dof,dur,ether,farenheit,hist,iff,ines,ist,lightsensor,mut,nd,pres,referer,ser,serie,te,technik,ue,uint,visability,wan,wanna,withing,iam,incomfort,ba,haa
- --ignore-words-list=hass,alot,datas,dof,dur,ether,farenheit,hist,iff,iif,ines,ist,lightsensor,mut,nd,pres,referer,rime,ser,serie,te,technik,ue,uint,visability,wan,wanna,withing,iam,incomfort,ba,haa
- --skip="./.*,*.csv,*.json"
- --quiet-level=2
exclude_types: [csv, json]
@@ -32,7 +32,7 @@ repos:
- flake8-docstrings==1.6.0
- pydocstyle==6.1.1
- flake8-comprehensions==3.7.0
- flake8-noqa==1.2.0
- flake8-noqa==1.2.1
- mccabe==0.6.1
files: ^(homeassistant|script|tests)/.+\.py$
- repo: https://github.com/PyCQA/bandit
@@ -95,17 +95,30 @@ repos:
types: [python]
require_serial: true
files: ^homeassistant/.+\.py$
- id: pylint
name: pylint
entry: script/run-in-env.sh pylint -j 0
language: script
types: [python]
files: ^homeassistant/.+\.py$
- id: gen_requirements_all
name: gen_requirements_all
entry: script/run-in-env.sh python3 -m script.gen_requirements_all
pass_filenames: false
language: script
types: [text]
files: ^(homeassistant/.+/manifest\.json|\.pre-commit-config\.yaml)$
files: ^(homeassistant/.+/manifest\.json|setup\.cfg|\.pre-commit-config\.yaml|script/gen_requirements_all\.py)$
- id: hassfest
name: hassfest
entry: script/run-in-env.sh python3 -m script.hassfest
pass_filenames: false
language: script
types: [text]
files: ^(homeassistant/.+/(manifest|strings)\.json|\.coveragerc|homeassistant/.+/services\.yaml)$
files: ^(homeassistant/.+/(manifest|strings)\.json|\.coveragerc|\.strict-typing|homeassistant/.+/services\.yaml|script/hassfest/.+\.py)$
- id: hassfest-metadata
name: hassfest-metadata
entry: script/run-in-env.sh python3 -m script.hassfest -p metadata
pass_filenames: false
language: script
types: [text]
files: ^(script/hassfest/.+\.py|homeassistant/const\.py$|setup\.cfg)$
+47
View File
@@ -2,7 +2,31 @@
# If component is fully covered with type annotations, please add it here
# to enable strict mypy checks.
# Stict typing is enabled by default for core files.
# Add it here to add 'disallow_any_generics'.
# --- Only for core file! ---
homeassistant.exceptions
homeassistant.core
homeassistant.loader
homeassistant.requirements
homeassistant.runner
homeassistant.setup
homeassistant.auth.auth_store
homeassistant.auth.providers.*
homeassistant.helpers.area_registry
homeassistant.helpers.condition
homeassistant.helpers.discovery
homeassistant.helpers.entity_values
homeassistant.helpers.reload
homeassistant.helpers.script_variables
homeassistant.helpers.translation
homeassistant.util.color
homeassistant.util.process
homeassistant.util.unit_system
# --- Add components below this line ---
homeassistant.components
homeassistant.components.abode.*
homeassistant.components.acer_projector.*
homeassistant.components.accuweather.*
homeassistant.components.actiontec.*
@@ -17,6 +41,7 @@ homeassistant.components.ambee.*
homeassistant.components.ambient_station.*
homeassistant.components.amcrest.*
homeassistant.components.ampio.*
homeassistant.components.aseko_pool_live.*
homeassistant.components.automation.*
homeassistant.components.binary_sensor.*
homeassistant.components.bluetooth_tracker.*
@@ -24,12 +49,14 @@ homeassistant.components.bmw_connected_drive.*
homeassistant.components.bond.*
homeassistant.components.braviatv.*
homeassistant.components.brother.*
homeassistant.components.browser.*
homeassistant.components.button.*
homeassistant.components.calendar.*
homeassistant.components.camera.*
homeassistant.components.canary.*
homeassistant.components.cover.*
homeassistant.components.crownstone.*
homeassistant.components.cpuspeed.*
homeassistant.components.device_automation.*
homeassistant.components.device_tracker.*
homeassistant.components.devolo_home_control.*
@@ -60,10 +87,12 @@ homeassistant.components.group.*
homeassistant.components.guardian.*
homeassistant.components.history.*
homeassistant.components.homeassistant.triggers.event
homeassistant.components.homewizard.*
homeassistant.components.http.*
homeassistant.components.huawei_lte.*
homeassistant.components.hyperion.*
homeassistant.components.image_processing.*
homeassistant.components.input_button.*
homeassistant.components.input_select.*
homeassistant.components.integration.*
homeassistant.components.iqvia.*
@@ -71,11 +100,13 @@ homeassistant.components.jellyfin.*
homeassistant.components.jewish_calendar.*
homeassistant.components.knx.*
homeassistant.components.kraken.*
homeassistant.components.lametric.*
homeassistant.components.lcn.*
homeassistant.components.light.*
homeassistant.components.local_ip.*
homeassistant.components.lock.*
homeassistant.components.lookin.*
homeassistant.components.luftdaten.*
homeassistant.components.mailbox.*
homeassistant.components.media_player.*
homeassistant.components.modbus.*
@@ -89,15 +120,20 @@ homeassistant.components.nest.*
homeassistant.components.netatmo.*
homeassistant.components.network.*
homeassistant.components.nfandroidtv.*
homeassistant.components.nissan_leaf.*
homeassistant.components.no_ip.*
homeassistant.components.notify.*
homeassistant.components.notion.*
homeassistant.components.number.*
homeassistant.components.oncue.*
homeassistant.components.onewire.*
homeassistant.components.open_meteo.*
homeassistant.components.openuv.*
homeassistant.components.overkiz.*
homeassistant.components.persistent_notification.*
homeassistant.components.pi_hole.*
homeassistant.components.proximity.*
homeassistant.components.pvoutput.*
homeassistant.components.rainmachine.*
homeassistant.components.rdw.*
homeassistant.components.recollect_waste.*
@@ -109,16 +145,21 @@ homeassistant.components.renault.*
homeassistant.components.ridwell.*
homeassistant.components.rituals_perfume_genie.*
homeassistant.components.rpi_power.*
homeassistant.components.rtsp_to_webrtc.*
homeassistant.components.samsungtv.*
homeassistant.components.scene.*
homeassistant.components.select.*
homeassistant.components.sensor.*
homeassistant.components.senseme.*
homeassistant.components.shelly.*
homeassistant.components.simplisafe.*
homeassistant.components.slack.*
homeassistant.components.smhi.*
homeassistant.components.sonos.media_player
homeassistant.components.ssdp.*
homeassistant.components.stookalert.*
homeassistant.components.statistics.*
homeassistant.components.steamist.*
homeassistant.components.stream.*
homeassistant.components.sun.*
homeassistant.components.surepetcare.*
@@ -135,8 +176,11 @@ homeassistant.components.tplink.*
homeassistant.components.tolo.*
homeassistant.components.tractive.*
homeassistant.components.tradfri.*
homeassistant.components.trafikverket_train.*
homeassistant.components.trafikverket_weatherstation.*
homeassistant.components.tts.*
homeassistant.components.twentemilieu.*
homeassistant.components.unifiprotect.*
homeassistant.components.upcloud.*
homeassistant.components.uptime.*
homeassistant.components.uptimerobot.*
@@ -148,7 +192,10 @@ homeassistant.components.wallbox.*
homeassistant.components.water_heater.*
homeassistant.components.watttime.*
homeassistant.components.weather.*
homeassistant.components.webostv.*
homeassistant.components.websocket_api.*
homeassistant.components.wemo.*
homeassistant.components.whois.*
homeassistant.components.zodiac.*
homeassistant.components.zeroconf.*
homeassistant.components.zone.*
+18 -7
View File
@@ -16,9 +16,7 @@
"label": "Pytest",
"type": "shell",
"command": "pytest --timeout=10 tests",
"dependsOn": [
"Install all Test Requirements"
],
"dependsOn": ["Install all Test Requirements"],
"group": {
"kind": "test",
"isDefault": true
@@ -47,9 +45,7 @@
"label": "Pylint",
"type": "shell",
"command": "pylint homeassistant",
"dependsOn": [
"Install all Requirements"
],
"dependsOn": ["Install all Requirements"],
"group": {
"kind": "test",
"isDefault": true
@@ -64,7 +60,7 @@
"label": "Code Coverage",
"detail": "Generate code coverage report for a given integration.",
"type": "shell",
"command": "pytest ./tests/components/${input:integrationName}/ --cov=homeassistant.components.${input:integrationName} --cov-report term-missing --durations-min=1 --durations=0",
"command": "pytest ./tests/components/${input:integrationName}/ --cov=homeassistant.components.${input:integrationName} --cov-report term-missing --durations-min=1 --durations=0 --numprocesses=auto",
"group": {
"kind": "test",
"isDefault": true
@@ -116,6 +112,21 @@
"panel": "new"
},
"problemMatcher": []
},
{
"label": "Compile translations",
"detail": "In order to test changes to translation files, the translation strings must be compiled into Home Assistant's translation directories.",
"type": "shell",
"command": "python3 -m script.translations develop --integration ${input:integrationName}",
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"reveal": "always",
"panel": "new"
},
"problemMatcher": []
}
],
"inputs": [
+513 -30
View File
File diff suppressed because it is too large Load Diff
+1
View File
@@ -17,6 +17,7 @@ RUN \
libswresample-dev \
libavfilter-dev \
libpcap-dev \
libturbojpeg0 \
git \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
-1
View File
@@ -1,4 +1,3 @@
include README.rst
include LICENSE.md
graft homeassistant
recursive-exclude * *.py[co]
+1 -1
View File
@@ -8,7 +8,7 @@ coverage:
threshold: 0.09
config-flows:
target: auto
threshold: 0
threshold: 1
paths:
- homeassistant/components/*/config_flow.py
patch:
Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 151 KiB

+27 -155
View File
@@ -4,16 +4,21 @@ from __future__ import annotations
import argparse
import faulthandler
import os
import platform
import subprocess
import sys
import threading
from homeassistant.const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
from .const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
FAULT_LOG_FILENAME = "home-assistant.log.fault"
def validate_os() -> None:
"""Validate that Home Assistant is running in a supported operating system."""
if not sys.platform.startswith(("darwin", "linux")):
print("Home Assistant only supports Linux, OSX and Windows using WSL")
sys.exit(1)
def validate_python() -> None:
"""Validate that the right Python version is running."""
if sys.version_info[:3] < REQUIRED_PYTHON_VER:
@@ -27,7 +32,7 @@ def validate_python() -> None:
def ensure_config_path(config_dir: str) -> None:
"""Validate the configuration directory."""
# pylint: disable=import-outside-toplevel
import homeassistant.config as config_util
from . import config as config_util
lib_dir = os.path.join(config_dir, "deps")
@@ -61,10 +66,11 @@ def ensure_config_path(config_dir: str) -> None:
def get_arguments() -> argparse.Namespace:
"""Get parsed passed in arguments."""
# pylint: disable=import-outside-toplevel
import homeassistant.config as config_util
from . import config as config_util
parser = argparse.ArgumentParser(
description="Home Assistant: Observe, Control, Automate."
description="Home Assistant: Observe, Control, Automate.",
epilog=f"If restart is requested, exits with code {RESTART_EXIT_CODE}",
)
parser.add_argument("--version", action="version", version=__version__)
parser.add_argument(
@@ -91,12 +97,6 @@ def get_arguments() -> argparse.Namespace:
parser.add_argument(
"-v", "--verbose", action="store_true", help="Enable verbose logging to file."
)
parser.add_argument(
"--pid-file",
metavar="path_to_pid_file",
default=None,
help="Path to PID file useful for running as daemon",
)
parser.add_argument(
"--log-rotate-days",
type=int,
@@ -112,122 +112,32 @@ def get_arguments() -> argparse.Namespace:
parser.add_argument(
"--log-no-color", action="store_true", help="Disable color logs"
)
parser.add_argument(
"--runner",
action="store_true",
help=f"On restart exit with code {RESTART_EXIT_CODE}",
)
parser.add_argument(
"--script", nargs=argparse.REMAINDER, help="Run one of the embedded scripts"
)
if os.name == "posix":
parser.add_argument(
"--daemon", action="store_true", help="Run Home Assistant as daemon"
)
parser.add_argument(
"--ignore-os-check",
action="store_true",
help="Skips validation of operating system",
)
arguments = parser.parse_args()
if os.name != "posix" or arguments.debug or arguments.runner:
setattr(arguments, "daemon", False)
return arguments
def daemonize() -> None:
"""Move current process to daemon process."""
# Create first fork
if os.fork() > 0:
sys.exit(0)
# Decouple fork
os.setsid()
# Create second fork
if os.fork() > 0:
sys.exit(0)
# redirect standard file descriptors to devnull
# pylint: disable=consider-using-with
infd = open(os.devnull, encoding="utf8")
outfd = open(os.devnull, "a+", encoding="utf8")
sys.stdout.flush()
sys.stderr.flush()
os.dup2(infd.fileno(), sys.stdin.fileno())
os.dup2(outfd.fileno(), sys.stdout.fileno())
os.dup2(outfd.fileno(), sys.stderr.fileno())
def check_pid(pid_file: str) -> None:
"""Check that Home Assistant is not already running."""
# Check pid file
try:
with open(pid_file, encoding="utf8") as file:
pid = int(file.readline())
except OSError:
# PID File does not exist
return
# If we just restarted, we just found our own pidfile.
if pid == os.getpid():
return
try:
os.kill(pid, 0)
except OSError:
# PID does not exist
return
print("Fatal Error: Home Assistant is already running.")
sys.exit(1)
def write_pid(pid_file: str) -> None:
"""Create a PID File."""
pid = os.getpid()
try:
with open(pid_file, "w", encoding="utf8") as file:
file.write(str(pid))
except OSError:
print(f"Fatal Error: Unable to write pid file {pid_file}")
sys.exit(1)
def closefds_osx(min_fd: int, max_fd: int) -> None:
"""Make sure file descriptors get closed when we restart.
We cannot call close on guarded fds, and we cannot easily test which fds
are guarded. But we can set the close-on-exec flag on everything we want to
get rid of.
"""
# pylint: disable=import-outside-toplevel
from fcntl import F_GETFD, F_SETFD, FD_CLOEXEC, fcntl
for _fd in range(min_fd, max_fd):
try:
val = fcntl(_fd, F_GETFD)
if not val & FD_CLOEXEC:
fcntl(_fd, F_SETFD, val | FD_CLOEXEC)
except OSError:
pass
def cmdline() -> list[str]:
"""Collect path and arguments to re-execute the current hass instance."""
if os.path.basename(sys.argv[0]) == "__main__.py":
modulepath = os.path.dirname(sys.argv[0])
os.environ["PYTHONPATH"] = os.path.dirname(modulepath)
return [sys.executable] + [arg for arg in sys.argv if arg != "--daemon"]
return [sys.executable, "-m", "homeassistant"] + list(sys.argv[1:])
return [arg for arg in sys.argv if arg != "--daemon"]
return sys.argv
def try_to_restart() -> None:
"""Attempt to clean up state and start a new Home Assistant instance."""
# Things should be mostly shut down already at this point, now just try
# to clean up things that may have been left behind.
sys.stderr.write("Home Assistant attempting to restart.\n")
# Count remaining threads, ideally there should only be one non-daemonized
# thread left (which is us). Nothing we really do with it, but it might be
# useful when debugging shutdown/restart issues.
def check_threads() -> None:
"""Check if there are any lingering threads."""
try:
nthreads = sum(
thread.is_alive() and not thread.daemon for thread in threading.enumerate()
@@ -241,64 +151,27 @@ def try_to_restart() -> None:
except AssertionError:
sys.stderr.write("Failed to count non-daemonic threads.\n")
# Try to not leave behind open filedescriptors with the emphasis on try.
try:
max_fd = os.sysconf("SC_OPEN_MAX")
except ValueError:
max_fd = 256
if platform.system() == "Darwin":
closefds_osx(3, max_fd)
else:
os.closerange(3, max_fd)
# Now launch into a new instance of Home Assistant. If this fails we
# fall through and exit with error 100 (RESTART_EXIT_CODE) in which case
# systemd will restart us when RestartForceExitStatus=100 is set in the
# systemd.service file.
sys.stderr.write("Restarting Home Assistant\n")
args = cmdline()
os.execv(args[0], args)
def main() -> int:
"""Start Home Assistant."""
validate_python()
# Run a simple daemon runner process on Windows to handle restarts
if os.name == "nt" and "--runner" not in sys.argv:
nt_args = cmdline() + ["--runner"]
while True:
try:
subprocess.check_call(nt_args)
sys.exit(0)
except KeyboardInterrupt:
sys.exit(0)
except subprocess.CalledProcessError as exc:
if exc.returncode != RESTART_EXIT_CODE:
sys.exit(exc.returncode)
args = get_arguments()
if not args.ignore_os_check:
validate_os()
if args.script is not None:
# pylint: disable=import-outside-toplevel
from homeassistant import scripts
from . import scripts
return scripts.run(args.script)
config_dir = os.path.abspath(os.path.join(os.getcwd(), args.config))
ensure_config_path(config_dir)
# Daemon functions
if args.pid_file:
check_pid(args.pid_file)
if args.daemon:
daemonize()
if args.pid_file:
write_pid(args.pid_file)
# pylint: disable=import-outside-toplevel
from homeassistant import runner
from . import runner
runtime_conf = runner.RuntimeConfig(
config_dir=config_dir,
@@ -321,8 +194,7 @@ def main() -> int:
if os.path.getsize(fault_file_name) == 0:
os.remove(fault_file_name)
if exit_code == RESTART_EXIT_CODE and not args.runner:
try_to_restart()
check_threads()
return exit_code
+3 -3
View File
@@ -6,7 +6,7 @@ from typing import Any
import async_timeout
from homeassistant.helpers.frame import report
from .helpers.frame import report
def timeout(
@@ -17,7 +17,7 @@ def timeout(
loop = asyncio.get_running_loop()
else:
report(
"called async_timeout.timeout with loop keyword argument. The loop keyword argument is deprecated and calls will fail after Home Assistant 2022.2",
"called async_timeout.timeout with loop keyword argument. The loop keyword argument is deprecated and calls will fail after Home Assistant 2022.3",
error_if_core=False,
)
if delay is not None:
@@ -30,7 +30,7 @@ def timeout(
def current_task(loop: asyncio.AbstractEventLoop) -> asyncio.Task[Any] | None:
"""Backwards compatible current_task."""
report(
"called async_timeout.current_task. The current_task call is deprecated and calls will fail after Home Assistant 2022.2; use asyncio.current_task instead",
"called async_timeout.current_task. The current_task call is deprecated and calls will fail after Home Assistant 2022.3; use asyncio.current_task instead",
error_if_core=False,
)
return asyncio.current_task()
+5 -4
View File
@@ -3,8 +3,9 @@ from __future__ import annotations
import asyncio
from collections import OrderedDict
from collections.abc import Mapping
from datetime import timedelta
from typing import Any, Dict, Mapping, Optional, Tuple, cast
from typing import Any, Optional, cast
import jwt
@@ -21,9 +22,9 @@ from .providers import AuthProvider, LoginFlow, auth_provider_from_config
EVENT_USER_ADDED = "user_added"
EVENT_USER_REMOVED = "user_removed"
_MfaModuleDict = Dict[str, MultiFactorAuthModule]
_ProviderKey = Tuple[str, Optional[str]]
_ProviderDict = Dict[_ProviderKey, AuthProvider]
_MfaModuleDict = dict[str, MultiFactorAuthModule]
_ProviderKey = tuple[str, Optional[str]]
_ProviderDict = dict[_ProviderKey, AuthProvider]
class InvalidAuthError(Exception):
+8 -5
View File
@@ -8,17 +8,20 @@ import hmac
from logging import getLogger
from typing import Any
from homeassistant.auth.const import ACCESS_TOKEN_EXPIRATION
from homeassistant.core import HomeAssistant, callback
from homeassistant.util import dt as dt_util
from . import models
from .const import GROUP_ID_ADMIN, GROUP_ID_READ_ONLY, GROUP_ID_USER
from .permissions import PermissionLookup, system_policies
from .const import (
ACCESS_TOKEN_EXPIRATION,
GROUP_ID_ADMIN,
GROUP_ID_READ_ONLY,
GROUP_ID_USER,
)
from .permissions import system_policies
from .permissions.models import PermissionLookup
from .permissions.types import PolicyType
# mypy: disallow-any-generics
STORAGE_VERSION = 1
STORAGE_KEY = "auth"
GROUP_NAME_ADMIN = "Administrators"
+2 -2
View File
@@ -133,7 +133,7 @@ async def auth_mfa_module_from_config(
module = await _load_mfa_module(hass, module_name)
try:
config = module.CONFIG_SCHEMA(config) # type: ignore
config = module.CONFIG_SCHEMA(config)
except vol.Invalid as err:
_LOGGER.error(
"Invalid configuration for multi-factor module %s: %s",
@@ -168,7 +168,7 @@ async def _load_mfa_module(hass: HomeAssistant, module_name: str) -> types.Modul
# https://github.com/python/mypy/issues/1424
await requirements.async_process_requirements(
hass, module_path, module.REQUIREMENTS # type: ignore
hass, module_path, module.REQUIREMENTS
)
processed.add(module_name)
+2 -2
View File
@@ -7,7 +7,7 @@ from __future__ import annotations
import asyncio
from collections import OrderedDict
import logging
from typing import Any, Dict
from typing import Any
import attr
import voluptuous as vol
@@ -86,7 +86,7 @@ class NotifySetting:
target: str | None = attr.ib(default=None)
_UsersDict = Dict[str, NotifySetting]
_UsersDict = dict[str, NotifySetting]
@MULTI_FACTOR_AUTH_MODULES.register("notify")
+11 -1
View File
@@ -8,13 +8,23 @@ import voluptuous as vol
from .const import CAT_ENTITIES
from .entities import ENTITY_POLICY_SCHEMA, compile_entities
from .merge import merge_policies # noqa: F401
from .merge import merge_policies
from .models import PermissionLookup
from .types import PolicyType
from .util import test_all
POLICY_SCHEMA = vol.Schema({vol.Optional(CAT_ENTITIES): ENTITY_POLICY_SCHEMA})
__all__ = [
"POLICY_SCHEMA",
"merge_policies",
"PermissionLookup",
"PolicyType",
"AbstractPermissions",
"PolicyPermissions",
"OwnerPermissions",
]
class AbstractPermissions:
"""Default permissions class."""
+2 -1
View File
@@ -1,5 +1,6 @@
"""Common code for permissions."""
from typing import Mapping, Union
from collections.abc import Mapping
from typing import Union
# MyPy doesn't support recursion yet. So writing it out as far as we need.
+3 -2
View File
@@ -1,15 +1,16 @@
"""Helpers to deal with permissions."""
from __future__ import annotations
from collections.abc import Callable
from functools import wraps
from typing import Callable, Dict, Optional, cast
from typing import Optional, cast
from .const import SUBCAT_ALL
from .models import PermissionLookup
from .types import CategoryType, SubCategoryDict, ValueType
LookupFunc = Callable[[PermissionLookup, SubCategoryDict, str], Optional[ValueType]]
SubCatLookupType = Dict[str, LookupFunc]
SubCatLookupType = dict[str, LookupFunc]
def lookup_all(
+2 -5
View File
@@ -22,8 +22,6 @@ from ..auth_store import AuthStore
from ..const import MFA_SESSION_EXPIRATION
from ..models import Credentials, RefreshToken, User, UserMeta
# mypy: disallow-any-generics
_LOGGER = logging.getLogger(__name__)
DATA_REQS = "auth_prov_reqs_processed"
@@ -142,7 +140,7 @@ async def auth_provider_from_config(
module = await load_auth_provider_module(hass, provider_name)
try:
config = module.CONFIG_SCHEMA(config) # type: ignore
config = module.CONFIG_SCHEMA(config)
except vol.Invalid as err:
_LOGGER.error(
"Invalid configuration for auth provider %s: %s",
@@ -174,8 +172,7 @@ async def load_auth_provider_module(
elif provider in processed:
return module
# https://github.com/python/mypy/issues/1424
reqs = module.REQUIREMENTS # type: ignore
reqs = module.REQUIREMENTS
await requirements.async_process_requirements(
hass, f"auth provider {provider}", reqs
)
@@ -16,8 +16,6 @@ from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
CONF_ARGS = "args"
CONF_META = "meta"
@@ -18,8 +18,6 @@ from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
STORAGE_VERSION = 1
STORAGE_KEY = "auth_provider.homeassistant"
@@ -14,8 +14,6 @@ from homeassistant.exceptions import HomeAssistantError
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
USER_SCHEMA = vol.Schema(
{
vol.Required("username"): str,
@@ -19,8 +19,6 @@ import homeassistant.helpers.config_validation as cv
from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from ..models import Credentials, UserMeta
# mypy: disallow-any-generics
AUTH_PROVIDER_TYPE = "legacy_api_password"
CONF_API_PASSWORD = "api_password"
@@ -14,7 +14,7 @@ from ipaddress import (
ip_address,
ip_network,
)
from typing import Any, Dict, List, Union, cast
from typing import Any, Union, cast
import voluptuous as vol
@@ -27,8 +27,6 @@ from . import AUTH_PROVIDER_SCHEMA, AUTH_PROVIDERS, AuthProvider, LoginFlow
from .. import InvalidAuthError
from ..models import Credentials, RefreshToken, UserMeta
# mypy: disallow-any-generics
IPAddress = Union[IPv4Address, IPv6Address]
IPNetwork = Union[IPv4Network, IPv6Network]
@@ -76,12 +74,12 @@ class TrustedNetworksAuthProvider(AuthProvider):
@property
def trusted_networks(self) -> list[IPNetwork]:
"""Return trusted networks."""
return cast(List[IPNetwork], self.config[CONF_TRUSTED_NETWORKS])
return cast(list[IPNetwork], self.config[CONF_TRUSTED_NETWORKS])
@property
def trusted_users(self) -> dict[IPNetwork, Any]:
"""Return trusted users per network."""
return cast(Dict[IPNetwork, Any], self.config[CONF_TRUSTED_USERS])
return cast(dict[IPNetwork, Any], self.config[CONF_TRUSTED_USERS])
@property
def trusted_proxies(self) -> list[IPNetwork]:
+1 -1
View File
@@ -14,7 +14,7 @@ class StrEnum(str, Enum):
"""Create a new StrEnum instance."""
if not isinstance(value, str):
raise TypeError(f"{value!r} is not a string")
return super().__new__(cls, value, *args, **kwargs) # type: ignore[call-overload,no-any-return]
return super().__new__(cls, value, *args, **kwargs)
def __str__(self) -> str:
"""Return self.value."""
+7 -3
View File
@@ -1,14 +1,18 @@
"""Block I/O being done in asyncio."""
"""Block blocking calls being done in asyncio."""
from http.client import HTTPConnection
import time
from homeassistant.util.async_ import protect_loop
from .util.async_ import protect_loop
def enable() -> None:
"""Enable the detection of I/O in the event loop."""
"""Enable the detection of blocking calls in the event loop."""
# Prevent urllib3 and requests doing I/O in event loop
HTTPConnection.putrequest = protect_loop(HTTPConnection.putrequest) # type: ignore
# Prevent sleeping in event loop. Non-strict since 2022.02
time.sleep = protect_loop(time.sleep, strict=False)
# Currently disabled. pytz doing I/O when getting timezone.
# Prevent files being opened inside the event loop
# builtins.open = protect_loop(builtins.open)
+15 -15
View File
@@ -15,27 +15,28 @@ from typing import TYPE_CHECKING, Any
import voluptuous as vol
import yarl
from homeassistant import config as conf_util, config_entries, core, loader
from homeassistant.components import http
from homeassistant.const import (
from . import config as conf_util, config_entries, core, loader
from .components import http, persistent_notification
from .const import (
REQUIRED_NEXT_PYTHON_HA_RELEASE,
REQUIRED_NEXT_PYTHON_VER,
SIGNAL_BOOTSTRAP_INTEGRATONS,
)
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers import area_registry, device_registry, entity_registry
from homeassistant.helpers.dispatcher import async_dispatcher_send
from homeassistant.helpers.typing import ConfigType
from homeassistant.setup import (
from .exceptions import HomeAssistantError
from .helpers import area_registry, device_registry, entity_registry
from .helpers.dispatcher import async_dispatcher_send
from .helpers.typing import ConfigType
from .setup import (
DATA_SETUP,
DATA_SETUP_STARTED,
DATA_SETUP_TIME,
async_set_domains_to_be_loaded,
async_setup_component,
)
from homeassistant.util.async_ import gather_with_concurrency
import homeassistant.util.dt as dt_util
from homeassistant.util.logging import async_activate_log_queue_handler
from homeassistant.util.package import async_get_user_site, is_virtual_env
from .util import dt as dt_util
from .util.async_ import gather_with_concurrency
from .util.logging import async_activate_log_queue_handler
from .util.package import async_get_user_site, is_virtual_env
if TYPE_CHECKING:
from .runner import RuntimeConfig
@@ -49,7 +50,6 @@ DATA_LOGGING = "logging"
LOG_SLOW_STARTUP_INTERVAL = 60
SLOW_STARTUP_CHECK_INTERVAL = 1
SIGNAL_BOOTSTRAP_INTEGRATONS = "bootstrap_integrations"
STAGE_1_TIMEOUT = 120
STAGE_2_TIMEOUT = 300
@@ -255,8 +255,8 @@ async def async_from_config_dict(
f"{'.'.join(str(x) for x in REQUIRED_NEXT_PYTHON_VER[:2])}."
)
_LOGGER.warning(msg)
hass.components.persistent_notification.async_create(
msg, "Python version", "python_version"
persistent_notification.async_create(
hass, msg, "Python version", "python_version"
)
return hass
+50 -57
View File
@@ -1,14 +1,17 @@
"""Support for the Abode Security System."""
from __future__ import annotations
from functools import partial
from abodepy import Abode
from abodepy import Abode, AbodeAutomation as AbodeAuto
from abodepy.devices import AbodeDevice as AbodeDev
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
import abodepy.helpers.timeline as TIMELINE
from requests.exceptions import ConnectTimeout, HTTPError
import voluptuous as vol
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_ATTRIBUTION,
ATTR_DATE,
ATTR_DEVICE_ID,
ATTR_ENTITY_ID,
@@ -18,14 +21,12 @@ from homeassistant.const import (
EVENT_HOMEASSISTANT_STOP,
Platform,
)
from homeassistant.core import Event, HomeAssistant, ServiceCall
from homeassistant.exceptions import ConfigEntryAuthFailed, ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers import config_validation as cv, entity
from homeassistant.helpers.dispatcher import dispatcher_send
from homeassistant.helpers.entity import DeviceInfo, Entity
from .const import ATTRIBUTION, DEFAULT_CACHEDB, DOMAIN, LOGGER
CONF_POLLING = "polling"
from .const import ATTRIBUTION, CONF_POLLING, DEFAULT_CACHEDB, DOMAIN, LOGGER
SERVICE_SETTINGS = "change_setting"
SERVICE_CAPTURE_IMAGE = "capture_image"
@@ -43,7 +44,7 @@ ATTR_APP_TYPE = "app_type"
ATTR_EVENT_BY = "event_by"
ATTR_VALUE = "value"
CONFIG_SCHEMA = cv.deprecated(DOMAIN)
CONFIG_SCHEMA = cv.removed(DOMAIN, raise_if_present=False)
CHANGE_SETTING_SCHEMA = vol.Schema(
{vol.Required(ATTR_SETTING): cv.string, vol.Required(ATTR_VALUE): cv.string}
@@ -68,25 +69,25 @@ PLATFORMS = [
class AbodeSystem:
"""Abode System class."""
def __init__(self, abode, polling):
def __init__(self, abode: Abode, polling: bool) -> None:
"""Initialize the system."""
self.abode = abode
self.polling = polling
self.entity_ids = set()
self.entity_ids: set[str | None] = set()
self.logout_listener = None
async def async_setup_entry(hass, config_entry):
async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Set up Abode integration from a config entry."""
username = config_entry.data.get(CONF_USERNAME)
password = config_entry.data.get(CONF_PASSWORD)
polling = config_entry.data.get(CONF_POLLING)
username = entry.data[CONF_USERNAME]
password = entry.data[CONF_PASSWORD]
polling = entry.data[CONF_POLLING]
cache = hass.config.path(DEFAULT_CACHEDB)
# For previous config entries where unique_id is None
if config_entry.unique_id is None:
if entry.unique_id is None:
hass.config_entries.async_update_entry(
config_entry, unique_id=config_entry.data[CONF_USERNAME]
entry, unique_id=entry.data[CONF_USERNAME]
)
try:
@@ -102,7 +103,7 @@ async def async_setup_entry(hass, config_entry):
hass.data[DOMAIN] = AbodeSystem(abode, polling)
hass.config_entries.async_setup_platforms(config_entry, PLATFORMS)
hass.config_entries.async_setup_platforms(entry, PLATFORMS)
await setup_hass_events(hass)
await hass.async_add_executor_job(setup_hass_services, hass)
@@ -111,15 +112,13 @@ async def async_setup_entry(hass, config_entry):
return True
async def async_unload_entry(hass, config_entry):
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Unload a config entry."""
hass.services.async_remove(DOMAIN, SERVICE_SETTINGS)
hass.services.async_remove(DOMAIN, SERVICE_CAPTURE_IMAGE)
hass.services.async_remove(DOMAIN, SERVICE_TRIGGER_AUTOMATION)
unload_ok = await hass.config_entries.async_unload_platforms(
config_entry, PLATFORMS
)
unload_ok = await hass.config_entries.async_unload_platforms(entry, PLATFORMS)
await hass.async_add_executor_job(hass.data[DOMAIN].abode.events.stop)
await hass.async_add_executor_job(hass.data[DOMAIN].abode.logout)
@@ -130,22 +129,22 @@ async def async_unload_entry(hass, config_entry):
return unload_ok
def setup_hass_services(hass):
def setup_hass_services(hass: HomeAssistant) -> None:
"""Home Assistant services."""
def change_setting(call):
def change_setting(call: ServiceCall) -> None:
"""Change an Abode system setting."""
setting = call.data.get(ATTR_SETTING)
value = call.data.get(ATTR_VALUE)
setting = call.data[ATTR_SETTING]
value = call.data[ATTR_VALUE]
try:
hass.data[DOMAIN].abode.set_setting(setting, value)
except AbodeException as ex:
LOGGER.warning(ex)
def capture_image(call):
def capture_image(call: ServiceCall) -> None:
"""Capture a new image."""
entity_ids = call.data.get(ATTR_ENTITY_ID)
entity_ids = call.data[ATTR_ENTITY_ID]
target_entities = [
entity_id
@@ -157,9 +156,9 @@ def setup_hass_services(hass):
signal = f"abode_camera_capture_{entity_id}"
dispatcher_send(hass, signal)
def trigger_automation(call):
def trigger_automation(call: ServiceCall) -> None:
"""Trigger an Abode automation."""
entity_ids = call.data.get(ATTR_ENTITY_ID)
entity_ids = call.data[ATTR_ENTITY_ID]
target_entities = [
entity_id
@@ -184,10 +183,10 @@ def setup_hass_services(hass):
)
async def setup_hass_events(hass):
async def setup_hass_events(hass: HomeAssistant) -> None:
"""Home Assistant start and stop callbacks."""
def logout(event):
def logout(event: Event) -> None:
"""Logout of Abode."""
if not hass.data[DOMAIN].polling:
hass.data[DOMAIN].abode.events.stop()
@@ -203,10 +202,10 @@ async def setup_hass_events(hass):
)
def setup_abode_events(hass):
def setup_abode_events(hass: HomeAssistant) -> None:
"""Event callbacks."""
def event_callback(event, event_json):
def event_callback(event: str, event_json: dict[str, str]) -> None:
"""Handle an event callback from Abode."""
data = {
ATTR_DEVICE_ID: event_json.get(ATTR_DEVICE_ID, ""),
@@ -245,21 +244,17 @@ def setup_abode_events(hass):
)
class AbodeEntity(Entity):
class AbodeEntity(entity.Entity):
"""Representation of an Abode entity."""
def __init__(self, data):
_attr_attribution = ATTRIBUTION
def __init__(self, data: AbodeSystem) -> None:
"""Initialize Abode entity."""
self._data = data
self._available = True
self._attr_should_poll = data.polling
@property
def available(self):
"""Return the available state."""
return self._available
async def async_added_to_hass(self):
async def async_added_to_hass(self) -> None:
"""Subscribe to Abode connection status updates."""
await self.hass.async_add_executor_job(
self._data.abode.events.add_connection_status_callback,
@@ -269,29 +264,29 @@ class AbodeEntity(Entity):
self.hass.data[DOMAIN].entity_ids.add(self.entity_id)
async def async_will_remove_from_hass(self):
async def async_will_remove_from_hass(self) -> None:
"""Unsubscribe from Abode connection status updates."""
await self.hass.async_add_executor_job(
self._data.abode.events.remove_connection_status_callback, self.unique_id
)
def _update_connection_status(self):
def _update_connection_status(self) -> None:
"""Update the entity available property."""
self._available = self._data.abode.events.connected
self._attr_available = self._data.abode.events.connected
self.schedule_update_ha_state()
class AbodeDevice(AbodeEntity):
"""Representation of an Abode device."""
def __init__(self, data, device):
def __init__(self, data: AbodeSystem, device: AbodeDev) -> None:
"""Initialize Abode device."""
super().__init__(data)
self._device = device
self._attr_name = device.name
self._attr_unique_id = device.device_uuid
async def async_added_to_hass(self):
async def async_added_to_hass(self) -> None:
"""Subscribe to device events."""
await super().async_added_to_hass()
await self.hass.async_add_executor_job(
@@ -300,22 +295,21 @@ class AbodeDevice(AbodeEntity):
self._update_callback,
)
async def async_will_remove_from_hass(self):
async def async_will_remove_from_hass(self) -> None:
"""Unsubscribe from device events."""
await super().async_will_remove_from_hass()
await self.hass.async_add_executor_job(
self._data.abode.events.remove_all_device_callbacks, self._device.device_id
)
def update(self):
def update(self) -> None:
"""Update device state."""
self._device.refresh()
@property
def extra_state_attributes(self):
def extra_state_attributes(self) -> dict[str, str]:
"""Return the state attributes."""
return {
ATTR_ATTRIBUTION: ATTRIBUTION,
"device_id": self._device.device_id,
"battery_low": self._device.battery_low,
"no_response": self._device.no_response,
@@ -323,16 +317,16 @@ class AbodeDevice(AbodeEntity):
}
@property
def device_info(self) -> DeviceInfo:
def device_info(self) -> entity.DeviceInfo:
"""Return device registry information for this entity."""
return DeviceInfo(
return entity.DeviceInfo(
identifiers={(DOMAIN, self._device.device_id)},
manufacturer="Abode",
model=self._device.type,
name=self._device.name,
)
def _update_callback(self, device):
def _update_callback(self, device: AbodeDev) -> None:
"""Update the device state."""
self.schedule_update_ha_state()
@@ -340,17 +334,16 @@ class AbodeDevice(AbodeEntity):
class AbodeAutomation(AbodeEntity):
"""Representation of an Abode automation."""
def __init__(self, data, automation):
def __init__(self, data: AbodeSystem, automation: AbodeAuto) -> None:
"""Initialize for Abode automation."""
super().__init__(data)
self._automation = automation
self._attr_name = automation.name
self._attr_unique_id = automation.automation_id
self._attr_extra_state_attributes = {
ATTR_ATTRIBUTION: ATTRIBUTION,
"type": "CUE automation",
}
def update(self):
def update(self) -> None:
"""Update automation state."""
self._automation.refresh()
@@ -1,25 +1,33 @@
"""Support for Abode Security System alarm control panels."""
from __future__ import annotations
from abodepy.devices.alarm import AbodeAlarm as AbodeAl
import homeassistant.components.alarm_control_panel as alarm
from homeassistant.components.alarm_control_panel.const import (
SUPPORT_ALARM_ARM_AWAY,
SUPPORT_ALARM_ARM_HOME,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_ATTRIBUTION,
STATE_ALARM_ARMED_AWAY,
STATE_ALARM_ARMED_HOME,
STATE_ALARM_DISARMED,
)
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AbodeDevice
from .const import ATTRIBUTION, DOMAIN
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN
ICON = "mdi:security"
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode alarm control panel device."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
async_add_entities(
[AbodeAlarm(data, await hass.async_add_executor_job(data.abode.get_alarm))]
)
@@ -31,37 +39,35 @@ class AbodeAlarm(AbodeDevice, alarm.AlarmControlPanelEntity):
_attr_icon = ICON
_attr_code_arm_required = False
_attr_supported_features = SUPPORT_ALARM_ARM_HOME | SUPPORT_ALARM_ARM_AWAY
_device: AbodeAl
@property
def state(self):
def state(self) -> str | None:
"""Return the state of the device."""
if self._device.is_standby:
state = STATE_ALARM_DISARMED
elif self._device.is_away:
state = STATE_ALARM_ARMED_AWAY
elif self._device.is_home:
state = STATE_ALARM_ARMED_HOME
else:
state = None
return state
return STATE_ALARM_DISARMED
if self._device.is_away:
return STATE_ALARM_ARMED_AWAY
if self._device.is_home:
return STATE_ALARM_ARMED_HOME
return None
def alarm_disarm(self, code=None):
def alarm_disarm(self, code: str | None = None) -> None:
"""Send disarm command."""
self._device.set_standby()
def alarm_arm_home(self, code=None):
def alarm_arm_home(self, code: str | None = None) -> None:
"""Send arm home command."""
self._device.set_home()
def alarm_arm_away(self, code=None):
def alarm_arm_away(self, code: str | None = None) -> None:
"""Send arm away command."""
self._device.set_away()
@property
def extra_state_attributes(self):
def extra_state_attributes(self) -> dict[str, str]:
"""Return the state attributes."""
return {
ATTR_ATTRIBUTION: ATTRIBUTION,
"device_id": self._device.device_id,
"battery_backup": self._device.battery,
"cellular_backup": self._device.is_cellular,
+21 -11
View File
@@ -1,18 +1,26 @@
"""Support for Abode Security System binary sensors."""
from typing import cast
from abodepy.devices.binary_sensor import AbodeBinarySensor as ABBinarySensor
import abodepy.helpers.constants as CONST
from homeassistant.components.binary_sensor import (
DEVICE_CLASS_WINDOW,
BinarySensorDeviceClass,
BinarySensorEntity,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AbodeDevice
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode binary sensor devices."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
device_types = [
CONST.TYPE_CONNECTIVITY,
@@ -33,14 +41,16 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeBinarySensor(AbodeDevice, BinarySensorEntity):
"""A binary sensor implementation for Abode device."""
@property
def is_on(self):
"""Return True if the binary sensor is on."""
return self._device.is_on
_device: ABBinarySensor
@property
def device_class(self):
def is_on(self) -> bool:
"""Return True if the binary sensor is on."""
return cast(bool, self._device.is_on)
@property
def device_class(self) -> str:
"""Return the class of the binary sensor."""
if self._device.get_value("is_window") == "1":
return DEVICE_CLASS_WINDOW
return self._device.generic_type
return BinarySensorDeviceClass.WINDOW
return cast(str, self._device.generic_type)
+26 -17
View File
@@ -2,25 +2,32 @@
from __future__ import annotations
from datetime import timedelta
from typing import Any, cast
import abodepy.helpers.constants as CONST
from abodepy.devices import CONST, AbodeDevice as AbodeDev
from abodepy.devices.camera import AbodeCamera as AbodeCam
import abodepy.helpers.timeline as TIMELINE
import requests
from requests.models import Response
from homeassistant.components.camera import Camera
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import Event, HomeAssistant
from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.util import Throttle
from . import AbodeDevice
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN, LOGGER
MIN_TIME_BETWEEN_UPDATES = timedelta(seconds=90)
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode camera devices."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
entities = []
for device in data.abode.get_devices(generic_type=CONST.TYPE_CAMERA):
@@ -32,14 +39,16 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeCamera(AbodeDevice, Camera):
"""Representation of an Abode camera."""
def __init__(self, data, device, event):
_device: AbodeCam
def __init__(self, data: AbodeSystem, device: AbodeDev, event: Event) -> None:
"""Initialize the Abode device."""
AbodeDevice.__init__(self, data, device)
Camera.__init__(self)
self._event = event
self._response = None
self._response: Response | None = None
async def async_added_to_hass(self):
async def async_added_to_hass(self) -> None:
"""Subscribe Abode events."""
await super().async_added_to_hass()
@@ -52,17 +61,17 @@ class AbodeCamera(AbodeDevice, Camera):
signal = f"abode_camera_capture_{self.entity_id}"
self.async_on_remove(async_dispatcher_connect(self.hass, signal, self.capture))
def capture(self):
def capture(self) -> bool:
"""Request a new image capture."""
return self._device.capture()
return cast(bool, self._device.capture())
@Throttle(MIN_TIME_BETWEEN_UPDATES)
def refresh_image(self):
def refresh_image(self) -> None:
"""Find a new image on the timeline."""
if self._device.refresh_image():
self.get_image()
def get_image(self):
def get_image(self) -> None:
"""Attempt to download the most recent capture."""
if self._device.image_url:
try:
@@ -86,21 +95,21 @@ class AbodeCamera(AbodeDevice, Camera):
return None
def turn_on(self):
def turn_on(self) -> None:
"""Turn on camera."""
self._device.privacy_mode(False)
def turn_off(self):
def turn_off(self) -> None:
"""Turn off camera."""
self._device.privacy_mode(True)
def _capture_callback(self, capture):
def _capture_callback(self, capture: Any) -> None:
"""Update the image with the device then refresh device."""
self._device.update_image_location(capture)
self.get_image()
self.schedule_update_ha_state()
@property
def is_on(self):
def is_on(self) -> bool:
"""Return true if on."""
return self._device.is_on
return cast(bool, self._device.is_on)
+31 -17
View File
@@ -1,5 +1,8 @@
"""Config flow for the Abode Security System component."""
from __future__ import annotations
from http import HTTPStatus
from typing import Any, cast
from abodepy import Abode
from abodepy.exceptions import AbodeAuthenticationException, AbodeException
@@ -9,11 +12,11 @@ import voluptuous as vol
from homeassistant import config_entries
from homeassistant.const import CONF_PASSWORD, CONF_USERNAME
from homeassistant.data_entry_flow import FlowResult
from .const import DEFAULT_CACHEDB, DOMAIN, LOGGER
from .const import CONF_POLLING, DEFAULT_CACHEDB, DOMAIN, LOGGER
CONF_MFA = "mfa_code"
CONF_POLLING = "polling"
class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
@@ -21,7 +24,7 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
VERSION = 1
def __init__(self):
def __init__(self) -> None:
"""Initialize."""
self.data_schema = {
vol.Required(CONF_USERNAME): str,
@@ -31,13 +34,13 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
vol.Required(CONF_MFA): str,
}
self._cache = None
self._mfa_code = None
self._password = None
self._polling = False
self._username = None
self._cache: str | None = None
self._mfa_code: str | None = None
self._password: str | None = None
self._polling: bool = False
self._username: str | None = None
async def _async_abode_login(self, step_id):
async def _async_abode_login(self, step_id: str) -> FlowResult:
"""Handle login with Abode."""
self._cache = self.hass.config.path(DEFAULT_CACHEDB)
errors = {}
@@ -47,7 +50,7 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
Abode, self._username, self._password, True, False, False, self._cache
)
except (AbodeException, ConnectTimeout, HTTPError) as ex:
except AbodeException as ex:
if ex.errcode == MFA_CODE_REQUIRED[0]:
return await self.async_step_mfa()
@@ -59,6 +62,9 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
else:
errors = {"base": "cannot_connect"}
except (ConnectTimeout, HTTPError):
errors = {"base": "cannot_connect"}
if errors:
return self.async_show_form(
step_id=step_id, data_schema=vol.Schema(self.data_schema), errors=errors
@@ -66,7 +72,7 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
return await self._async_create_entry()
async def _async_abode_mfa_login(self):
async def _async_abode_mfa_login(self) -> FlowResult:
"""Handle multi-factor authentication (MFA) login with Abode."""
try:
# Create instance to access login method for passing MFA code
@@ -89,7 +95,7 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
return await self._async_create_entry()
async def _async_create_entry(self):
async def _async_create_entry(self) -> FlowResult:
"""Create the config entry."""
config_data = {
CONF_USERNAME: self._username,
@@ -109,9 +115,13 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
return self.async_abort(reason="reauth_successful")
return self.async_create_entry(title=self._username, data=config_data)
return self.async_create_entry(
title=cast(str, self._username), data=config_data
)
async def async_step_user(self, user_input=None):
async def async_step_user(
self, user_input: dict[str, Any] | None = None
) -> FlowResult:
"""Handle a flow initialized by the user."""
if self._async_current_entries():
return self.async_abort(reason="single_instance_allowed")
@@ -126,7 +136,9 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
return await self._async_abode_login(step_id="user")
async def async_step_mfa(self, user_input=None):
async def async_step_mfa(
self, user_input: dict[str, Any] | None = None
) -> FlowResult:
"""Handle a multi-factor authentication (MFA) flow."""
if user_input is None:
return self.async_show_form(
@@ -137,13 +149,15 @@ class AbodeFlowHandler(config_entries.ConfigFlow, domain=DOMAIN):
return await self._async_abode_mfa_login()
async def async_step_reauth(self, config):
async def async_step_reauth(self, config: dict[str, Any]) -> FlowResult:
"""Handle reauthorization request from Abode."""
self._username = config[CONF_USERNAME]
return await self.async_step_reauth_confirm()
async def async_step_reauth_confirm(self, user_input=None):
async def async_step_reauth_confirm(
self, user_input: dict[str, Any] | None = None
) -> FlowResult:
"""Handle reauthorization flow."""
if user_input is None:
return self.async_show_form(
+1
View File
@@ -7,3 +7,4 @@ DOMAIN = "abode"
ATTRIBUTION = "Data provided by goabode.com"
DEFAULT_CACHEDB = "abodepy_cache.pickle"
CONF_POLLING = "polling"
+16 -6
View File
@@ -1,15 +1,23 @@
"""Support for Abode Security System covers."""
from typing import Any
from abodepy.devices.cover import AbodeCover as AbodeCV
import abodepy.helpers.constants as CONST
from homeassistant.components.cover import CoverEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AbodeDevice
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode cover devices."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
entities = []
@@ -22,15 +30,17 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeCover(AbodeDevice, CoverEntity):
"""Representation of an Abode cover."""
_device: AbodeCV
@property
def is_closed(self):
def is_closed(self) -> bool:
"""Return true if cover is closed, else False."""
return not self._device.is_open
def close_cover(self, **kwargs):
def close_cover(self, **kwargs: Any) -> None:
"""Issue close command to cover."""
self._device.close_cover()
def open_cover(self, **kwargs):
def open_cover(self, **kwargs: Any) -> None:
"""Issue open command to cover."""
self._device.open_cover()
+29 -16
View File
@@ -1,6 +1,10 @@
"""Support for Abode Security System lights."""
from math import ceil
from __future__ import annotations
from math import ceil
from typing import Any
from abodepy.devices.light import AbodeLight as AbodeLT
import abodepy.helpers.constants as CONST
from homeassistant.components.light import (
@@ -12,18 +16,23 @@ from homeassistant.components.light import (
SUPPORT_COLOR_TEMP,
LightEntity,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from homeassistant.util.color import (
color_temperature_kelvin_to_mired,
color_temperature_mired_to_kelvin,
)
from . import AbodeDevice
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode light devices."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
entities = []
@@ -36,7 +45,9 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeLight(AbodeDevice, LightEntity):
"""Representation of an Abode light."""
def turn_on(self, **kwargs):
_device: AbodeLT
def turn_on(self, **kwargs: Any) -> None:
"""Turn on the light."""
if ATTR_COLOR_TEMP in kwargs and self._device.is_color_capable:
self._device.set_color_temp(
@@ -56,40 +67,42 @@ class AbodeLight(AbodeDevice, LightEntity):
self._device.switch_on()
def turn_off(self, **kwargs):
def turn_off(self, **kwargs: Any) -> None:
"""Turn off the light."""
self._device.switch_off()
@property
def is_on(self):
def is_on(self) -> bool:
"""Return true if device is on."""
return self._device.is_on
return bool(self._device.is_on)
@property
def brightness(self):
def brightness(self) -> int | None:
"""Return the brightness of the light."""
if self._device.is_dimmable and self._device.has_brightness:
brightness = int(self._device.brightness)
# Abode returns 100 during device initialization and device refresh
if brightness == 100:
return 255
# Convert Abode brightness (0-99) to Home Assistant brightness (0-255)
return ceil(brightness * 255 / 99.0)
return 255 if brightness == 100 else ceil(brightness * 255 / 99.0)
return None
@property
def color_temp(self):
def color_temp(self) -> int | None:
"""Return the color temp of the light."""
if self._device.has_color:
return color_temperature_kelvin_to_mired(self._device.color_temp)
return None
@property
def hs_color(self):
def hs_color(self) -> tuple[float, float] | None:
"""Return the color of the light."""
_hs = None
if self._device.has_color:
return self._device.color
_hs = self._device.color
return _hs
@property
def supported_features(self):
def supported_features(self) -> int:
"""Flag supported features."""
if self._device.is_dimmable and self._device.is_color_capable:
return SUPPORT_BRIGHTNESS | SUPPORT_COLOR | SUPPORT_COLOR_TEMP
+17 -7
View File
@@ -1,15 +1,23 @@
"""Support for the Abode Security System locks."""
from typing import Any
from abodepy.devices.lock import AbodeLock as AbodeLK
import abodepy.helpers.constants as CONST
from homeassistant.components.lock import LockEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AbodeDevice
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode lock devices."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
entities = []
@@ -22,15 +30,17 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeLock(AbodeDevice, LockEntity):
"""Representation of an Abode lock."""
def lock(self, **kwargs):
_device: AbodeLK
def lock(self, **kwargs: Any) -> None:
"""Lock the device."""
self._device.lock()
def unlock(self, **kwargs):
def unlock(self, **kwargs: Any) -> None:
"""Unlock the device."""
self._device.unlock()
@property
def is_locked(self):
def is_locked(self) -> bool:
"""Return true if device is on."""
return self._device.is_locked
return bool(self._device.is_locked)
+31 -17
View File
@@ -1,40 +1,46 @@
"""Support for Abode Security System sensors."""
from __future__ import annotations
import abodepy.helpers.constants as CONST
from typing import cast
from homeassistant.components.sensor import SensorEntity, SensorEntityDescription
from homeassistant.const import (
DEVICE_CLASS_HUMIDITY,
DEVICE_CLASS_ILLUMINANCE,
DEVICE_CLASS_TEMPERATURE,
from abodepy.devices.sensor import CONST, AbodeSensor as AbodeSense
from homeassistant.components.sensor import (
SensorDeviceClass,
SensorEntity,
SensorEntityDescription,
)
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AbodeDevice
from . import AbodeDevice, AbodeSystem
from .const import DOMAIN
SENSOR_TYPES: tuple[SensorEntityDescription, ...] = (
SensorEntityDescription(
key=CONST.TEMP_STATUS_KEY,
name="Temperature",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
),
SensorEntityDescription(
key=CONST.HUMI_STATUS_KEY,
name="Humidity",
device_class=DEVICE_CLASS_HUMIDITY,
device_class=SensorDeviceClass.HUMIDITY,
),
SensorEntityDescription(
key=CONST.LUX_STATUS_KEY,
name="Lux",
device_class=DEVICE_CLASS_ILLUMINANCE,
device_class=SensorDeviceClass.ILLUMINANCE,
),
)
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode sensor devices."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
entities = []
@@ -54,7 +60,14 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeSensor(AbodeDevice, SensorEntity):
"""A sensor implementation for Abode devices."""
def __init__(self, data, device, description: SensorEntityDescription):
_device: AbodeSense
def __init__(
self,
data: AbodeSystem,
device: AbodeSense,
description: SensorEntityDescription,
) -> None:
"""Initialize a sensor for an Abode device."""
super().__init__(data, device)
self.entity_description = description
@@ -68,11 +81,12 @@ class AbodeSensor(AbodeDevice, SensorEntity):
self._attr_native_unit_of_measurement = device.lux_unit
@property
def native_value(self):
def native_value(self) -> float | None:
"""Return the state of the sensor."""
if self.entity_description.key == CONST.TEMP_STATUS_KEY:
return self._device.temp
return cast(float, self._device.temp)
if self.entity_description.key == CONST.HUMI_STATUS_KEY:
return self._device.humidity
return cast(float, self._device.humidity)
if self.entity_description.key == CONST.LUX_STATUS_KEY:
return self._device.lux
return cast(float, self._device.lux)
return None
+26 -15
View File
@@ -1,10 +1,17 @@
"""Support for Abode Security System switches."""
import abodepy.helpers.constants as CONST
from __future__ import annotations
from typing import Any, cast
from abodepy.devices.switch import CONST, AbodeSwitch as AbodeSW
from homeassistant.components.switch import SwitchEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant
from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from . import AbodeAutomation, AbodeDevice
from . import AbodeAutomation, AbodeDevice, AbodeSystem
from .const import DOMAIN
DEVICE_TYPES = [CONST.TYPE_SWITCH, CONST.TYPE_VALVE]
@@ -12,11 +19,13 @@ DEVICE_TYPES = [CONST.TYPE_SWITCH, CONST.TYPE_VALVE]
ICON = "mdi:robot"
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant, entry: ConfigEntry, async_add_entities: AddEntitiesCallback
) -> None:
"""Set up Abode switch devices."""
data = hass.data[DOMAIN]
data: AbodeSystem = hass.data[DOMAIN]
entities = []
entities: list[SwitchEntity] = []
for device_type in DEVICE_TYPES:
for device in data.abode.get_devices(generic_type=device_type):
@@ -31,18 +40,20 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AbodeSwitch(AbodeDevice, SwitchEntity):
"""Representation of an Abode switch."""
def turn_on(self, **kwargs):
_device: AbodeSW
def turn_on(self, **kwargs: Any) -> None:
"""Turn on the device."""
self._device.switch_on()
def turn_off(self, **kwargs):
def turn_off(self, **kwargs: Any) -> None:
"""Turn off the device."""
self._device.switch_off()
@property
def is_on(self):
def is_on(self) -> bool:
"""Return true if device is on."""
return self._device.is_on
return cast(bool, self._device.is_on)
class AbodeAutomationSwitch(AbodeAutomation, SwitchEntity):
@@ -50,28 +61,28 @@ class AbodeAutomationSwitch(AbodeAutomation, SwitchEntity):
_attr_icon = ICON
async def async_added_to_hass(self):
async def async_added_to_hass(self) -> None:
"""Set up trigger automation service."""
await super().async_added_to_hass()
signal = f"abode_trigger_automation_{self.entity_id}"
self.async_on_remove(async_dispatcher_connect(self.hass, signal, self.trigger))
def turn_on(self, **kwargs):
def turn_on(self, **kwargs: Any) -> None:
"""Enable the automation."""
if self._automation.enable(True):
self.schedule_update_ha_state()
def turn_off(self, **kwargs):
def turn_off(self, **kwargs: Any) -> None:
"""Disable the automation."""
if self._automation.enable(False):
self.schedule_update_ha_state()
def trigger(self):
def trigger(self) -> None:
"""Trigger the automation."""
self._automation.trigger()
@property
def is_on(self):
def is_on(self) -> bool:
"""Return True if the automation is enabled."""
return self._automation.is_enabled
return bool(self._automation.is_enabled)
@@ -3,6 +3,11 @@
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2",
"invalid_auth": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03b7 \u03b1\u03c5\u03b8\u03b5\u03bd\u03c4\u03b9\u03ba\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7"
},
"step": {
"reauth_confirm": {
"title": "\u03a3\u03c5\u03bc\u03c0\u03bb\u03b7\u03c1\u03ce\u03c3\u03c4\u03b5 \u03c4\u03b1 \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03ae\u03c2 \u03c3\u03b1\u03c2 \u03c3\u03c4\u03bf Abode"
}
}
}
}
@@ -19,14 +19,14 @@
"reauth_confirm": {
"data": {
"password": "Password",
"username": "E-mail"
"username": "Email"
},
"title": "Inserisci le tue informazioni di accesso Abode"
},
"user": {
"data": {
"password": "Password",
"username": "E-mail"
"username": "Email"
},
"title": "Inserisci le tue informazioni di accesso Abode"
}
@@ -3,7 +3,7 @@ from __future__ import annotations
from datetime import timedelta
import logging
from typing import Any, Dict
from typing import Any
from accuweather import AccuWeather, ApiError, InvalidApiKeyError, RequestsExceededError
from aiohttp import ClientSession
@@ -63,7 +63,7 @@ async def update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None:
await hass.config_entries.async_reload(entry.entry_id)
class AccuWeatherDataUpdateCoordinator(DataUpdateCoordinator[Dict[str, Any]]):
class AccuWeatherDataUpdateCoordinator(DataUpdateCoordinator[dict[str, Any]]):
"""Class to manage fetching AccuWeather data API."""
def __init__(
+11 -12
View File
@@ -3,7 +3,7 @@ from __future__ import annotations
from typing import Final
from homeassistant.components.sensor import SensorStateClass
from homeassistant.components.sensor import SensorDeviceClass, SensorStateClass
from homeassistant.components.weather import (
ATTR_CONDITION_CLEAR_NIGHT,
ATTR_CONDITION_CLOUDY,
@@ -22,7 +22,6 @@ from homeassistant.components.weather import (
)
from homeassistant.const import (
CONCENTRATION_PARTS_PER_CUBIC_METER,
DEVICE_CLASS_TEMPERATURE,
LENGTH_FEET,
LENGTH_INCHES,
LENGTH_METERS,
@@ -123,21 +122,21 @@ FORECAST_SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureMax",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel Temperature Max",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureMin",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel Temperature Min",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureShadeMax",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel Temperature Shade Max",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -145,7 +144,7 @@ FORECAST_SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureShadeMin",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel Temperature Shade Min",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -215,7 +214,7 @@ FORECAST_SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
AccuWeatherSensorDescription(
key="ApparentTemperature",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="Apparent Temperature",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -241,7 +240,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
),
AccuWeatherSensorDescription(
key="DewPoint",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="Dew Point",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -250,7 +249,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
),
AccuWeatherSensorDescription(
key="RealFeelTemperature",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel Temperature",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -258,7 +257,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
),
AccuWeatherSensorDescription(
key="RealFeelTemperatureShade",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="RealFeel Temperature Shade",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -291,7 +290,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
),
AccuWeatherSensorDescription(
key="WetBulbTemperature",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="Wet Bulb Temperature",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -300,7 +299,7 @@ SENSOR_TYPES: Final[tuple[AccuWeatherSensorDescription, ...]] = (
),
AccuWeatherSensorDescription(
key="WindChillTemperature",
device_class=DEVICE_CLASS_TEMPERATURE,
device_class=SensorDeviceClass.TEMPERATURE,
name="Wind Chill Temperature",
unit_metric=TEMP_CELSIUS,
unit_imperial=TEMP_FAHRENHEIT,
@@ -3,9 +3,9 @@ from __future__ import annotations
from typing import Any, cast
from homeassistant.components.sensor import SensorEntity
from homeassistant.components.sensor import SensorDeviceClass, SensorEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import CONF_NAME, DEVICE_CLASS_TEMPERATURE
from homeassistant.const import CONF_NAME
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.device_registry import DeviceEntryType
from homeassistant.helpers.entity import DeviceInfo
@@ -107,7 +107,7 @@ class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
def native_value(self) -> StateType:
"""Return the state."""
if self.forecast_day is not None:
if self.entity_description.device_class == DEVICE_CLASS_TEMPERATURE:
if self.entity_description.device_class == SensorDeviceClass.TEMPERATURE:
return cast(float, self._sensor_data["Value"])
if self.entity_description.key == "UVIndex":
return cast(int, self._sensor_data["Value"])
@@ -117,7 +117,7 @@ class AccuWeatherSensor(CoordinatorEntity, SensorEntity):
return round(self._sensor_data[self._unit_system]["Value"])
if self.entity_description.key == "PressureTendency":
return cast(str, self._sensor_data["LocalizedText"].lower())
if self.entity_description.device_class == DEVICE_CLASS_TEMPERATURE:
if self.entity_description.device_class == SensorDeviceClass.TEMPERATURE:
return cast(float, self._sensor_data[self._unit_system]["Value"])
if self.entity_description.key == "Precipitation":
return cast(float, self._sensor_data[self._unit_system]["Value"])
@@ -0,0 +1,24 @@
{
"config": {
"step": {
"user": {
"description": "\u0391\u03bd \u03c7\u03c1\u03b5\u03b9\u03ac\u03b6\u03b5\u03c3\u03c4\u03b5 \u03b2\u03bf\u03ae\u03b8\u03b5\u03b9\u03b1 \u03bc\u03b5 \u03c4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7, \u03c1\u03af\u03be\u03c4\u03b5 \u03bc\u03b9\u03b1 \u03bc\u03b1\u03c4\u03b9\u03ac \u03b5\u03b4\u03ce: https://www.home-assistant.io/integrations/accuweather/\n\n\u039f\u03c1\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf\u03b9 \u03b1\u03b9\u03c3\u03b8\u03b7\u03c4\u03ae\u03c1\u03b5\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03bf\u03b9 \u03b1\u03c0\u03cc \u03c0\u03c1\u03bf\u03b5\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae. \u039c\u03c0\u03bf\u03c1\u03b5\u03af\u03c4\u03b5 \u03bd\u03b1 \u03c4\u03bf\u03c5\u03c2 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c3\u03c4\u03bf \u03bc\u03b7\u03c4\u03c1\u03ce\u03bf \u03bf\u03bd\u03c4\u03bf\u03c4\u03ae\u03c4\u03c9\u03bd \u03bc\u03b5\u03c4\u03ac \u03c4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7\u03c2.\n\u0397 \u03c0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b7\u03bc\u03ad\u03bd\u03b7 \u03b1\u03c0\u03cc \u03c0\u03c1\u03bf\u03b5\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae. \u039c\u03c0\u03bf\u03c1\u03b5\u03af\u03c4\u03b5 \u03bd\u03b1 \u03c4\u03b7\u03bd \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c3\u03c4\u03b9\u03c2 \u03b5\u03c0\u03b9\u03bb\u03bf\u03b3\u03ad\u03c2 \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7\u03c2.",
"title": "AccuWeather"
}
}
},
"options": {
"step": {
"user": {
"data": {
"forecast": "\u03a0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd"
}
}
}
},
"system_health": {
"info": {
"remaining_requests": "\u03a5\u03c0\u03bf\u03bb\u03b5\u03b9\u03c0\u03cc\u03bc\u03b5\u03bd\u03b1 \u03b5\u03c0\u03b9\u03c4\u03c1\u03b5\u03c0\u03cc\u03bc\u03b5\u03bd\u03b1 \u03b1\u03b9\u03c4\u03ae\u03bc\u03b1\u03c4\u03b1"
}
}
}
@@ -34,7 +34,7 @@
},
"system_health": {
"info": {
"can_reach_server": "AccuWeather\u30b5\u30fc\u30d0\u30fc\u306b\u5230\u9054",
"can_reach_server": "AccuWeather\u30b5\u30fc\u30d0\u30fc\u3078\u306e\u30a2\u30af\u30bb\u30b9",
"remaining_requests": "\u6b8b\u308a\u306e\u8a31\u53ef\u3055\u308c\u305f\u30ea\u30af\u30a8\u30b9\u30c8"
}
}
@@ -10,7 +10,7 @@
"step": {
"user": {
"data": {
"api_key": "API Key",
"api_key": "Chave da API",
"latitude": "Latitude",
"longitude": "Longitude",
"name": "Nome"
@@ -5,13 +5,13 @@
},
"error": {
"cannot_connect": "\u9023\u7dda\u5931\u6557",
"invalid_api_key": "API \u5bc6\u9470\u7121\u6548",
"requests_exceeded": "\u5df2\u8d85\u904e Accuweather API \u5141\u8a31\u7684\u8acb\u6c42\u6b21\u6578\u3002\u5fc5\u9808\u7b49\u5019\u6216\u8b8a\u66f4 API \u5bc6\u9470\u3002"
"invalid_api_key": "API \u91d1\u9470\u7121\u6548",
"requests_exceeded": "\u5df2\u8d85\u904e Accuweather API \u5141\u8a31\u7684\u8acb\u6c42\u6b21\u6578\u3002\u5fc5\u9808\u7b49\u5019\u6216\u8b8a\u66f4 API \u91d1\u9470\u3002"
},
"step": {
"user": {
"data": {
"api_key": "API \u5bc6\u9470",
"api_key": "API \u91d1\u9470",
"latitude": "\u7def\u5ea6",
"longitude": "\u7d93\u5ea6",
"name": "\u540d\u7a31"
@@ -27,7 +27,7 @@
"data": {
"forecast": "\u5929\u6c23\u9810\u5831"
},
"description": "\u7531\u65bc AccuWeather API \u5bc6\u9470\u514d\u8cbb\u7248\u672c\u9650\u5236\uff0c\u7576\u958b\u555f\u5929\u6c23\u9810\u5831\u6642\u3001\u6578\u64da\u6703\u6bcf 80 \u5206\u9418\u66f4\u65b0\u4e00\u6b21\uff0c\u800c\u975e 40 \u5206\u9418\u3002",
"description": "\u7531\u65bc AccuWeather API \u91d1\u9470\u514d\u8cbb\u7248\u672c\u9650\u5236\uff0c\u7576\u958b\u555f\u5929\u6c23\u9810\u5831\u6642\u3001\u6578\u64da\u6703\u6bcf 80 \u5206\u9418\u66f4\u65b0\u4e00\u6b21\uff0c\u800c\u975e 40 \u5206\u9418\u3002",
"title": "AccuWeather \u9078\u9805"
}
}
@@ -62,6 +62,9 @@ class AccuWeatherEntity(CoordinatorEntity, WeatherEntity):
"""Initialize."""
super().__init__(coordinator)
self._unit_system = API_METRIC if coordinator.is_metric else API_IMPERIAL
self._attr_wind_speed_unit = self.coordinator.data["Wind"]["Speed"][
self._unit_system
]["Unit"]
self._attr_name = name
self._attr_unique_id = coordinator.location_key
self._attr_temperature_unit = (
@@ -53,7 +53,7 @@ def setup_platform(
hass: HomeAssistant,
config: ConfigType,
add_entities: AddEntitiesCallback,
discovery_info: DiscoveryInfoType,
discovery_info: DiscoveryInfoType | None = None,
) -> None:
"""Connect with serial port and return Acer Projector."""
serial_port = config[CONF_FILENAME]
+5 -11
View File
@@ -1,7 +1,7 @@
"""The Rollease Acmeda Automate integration."""
from homeassistant import config_entries, core
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import Platform
from homeassistant.core import HomeAssistant
from .const import DOMAIN
from .hub import PulseHub
@@ -11,26 +11,20 @@ CONF_HUBS = "hubs"
PLATFORMS = [Platform.COVER, Platform.SENSOR]
async def async_setup_entry(
hass: core.HomeAssistant, config_entry: config_entries.ConfigEntry
):
async def async_setup_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool:
"""Set up Rollease Acmeda Automate hub from a config entry."""
hub = PulseHub(hass, config_entry)
if not await hub.async_setup():
return False
hass.data.setdefault(DOMAIN, {})
hass.data[DOMAIN][config_entry.entry_id] = hub
hass.data.setdefault(DOMAIN, {})[config_entry.entry_id] = hub
hass.config_entries.async_setup_platforms(config_entry, PLATFORMS)
return True
async def async_unload_entry(
hass: core.HomeAssistant, config_entry: config_entries.ConfigEntry
):
async def async_unload_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool:
"""Unload a config entry."""
hub = hass.data[DOMAIN][config_entry.entry_id]
+11 -3
View File
@@ -1,4 +1,6 @@
"""Support for Acmeda Roller Blinds."""
from __future__ import annotations
from homeassistant.components.cover import (
ATTR_POSITION,
SUPPORT_CLOSE,
@@ -11,19 +13,25 @@ from homeassistant.components.cover import (
SUPPORT_STOP_TILT,
CoverEntity,
)
from homeassistant.core import callback
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .base import AcmedaBase
from .const import ACMEDA_HUB_UPDATE, DOMAIN
from .helpers import async_add_acmeda_entities
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant,
config_entry: ConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up the Acmeda Rollers from a config entry."""
hub = hass.data[DOMAIN][config_entry.entry_id]
current = set()
current: set[int] = set()
@callback
def async_add_acmeda_covers():
+11 -3
View File
@@ -1,13 +1,21 @@
"""Helper functions for Acmeda Pulse."""
from homeassistant.core import callback
from __future__ import annotations
from homeassistant.config_entries import ConfigEntry
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.device_registry import async_get_registry as get_dev_reg
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import DOMAIN, LOGGER
@callback
def async_add_acmeda_entities(
hass, entity_class, config_entry, current, async_add_entities
hass: HomeAssistant,
entity_class: type,
config_entry: ConfigEntry,
current: set[int],
async_add_entities: AddEntitiesCallback,
):
"""Add any new entities."""
hub = hass.data[DOMAIN][config_entry.entry_id]
@@ -26,7 +34,7 @@ def async_add_acmeda_entities(
async_add_entities(new_items)
async def update_devices(hass, config_entry, api):
async def update_devices(hass: HomeAssistant, config_entry: ConfigEntry, api):
"""Tell hass that device info has been updated."""
dev_registry = await get_dev_reg(hass)
+14 -6
View File
@@ -1,19 +1,27 @@
"""Support for Acmeda Roller Blind Batteries."""
from homeassistant.components.sensor import SensorEntity
from homeassistant.const import DEVICE_CLASS_BATTERY, PERCENTAGE
from homeassistant.core import callback
from __future__ import annotations
from homeassistant.components.sensor import SensorDeviceClass, SensorEntity
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import PERCENTAGE
from homeassistant.core import HomeAssistant, callback
from homeassistant.helpers.dispatcher import async_dispatcher_connect
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .base import AcmedaBase
from .const import ACMEDA_HUB_UPDATE, DOMAIN
from .helpers import async_add_acmeda_entities
async def async_setup_entry(hass, config_entry, async_add_entities):
async def async_setup_entry(
hass: HomeAssistant,
config_entry: ConfigEntry,
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up the Acmeda Rollers from a config entry."""
hub = hass.data[DOMAIN][config_entry.entry_id]
current = set()
current: set[int] = set()
@callback
def async_add_acmeda_sensors():
@@ -33,7 +41,7 @@ async def async_setup_entry(hass, config_entry, async_add_entities):
class AcmedaBattery(AcmedaBase, SensorEntity):
"""Representation of a Acmeda cover device."""
device_class = DEVICE_CLASS_BATTERY
device_class = SensorDeviceClass.BATTERY
_attr_native_unit_of_measurement = PERCENTAGE
@property
@@ -0,0 +1,12 @@
{
"config": {
"step": {
"user": {
"data": {
"id": "\u0391\u03bd\u03b1\u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03cc \u03ba\u03b5\u03bd\u03c4\u03c1\u03b9\u03ba\u03bf\u03cd \u03c5\u03c0\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03c4\u03ae"
},
"title": "\u0395\u03c0\u03b9\u03bb\u03ad\u03be\u03c4\u03b5 \u03ad\u03bd\u03b1\u03bd \u03ba\u03cc\u03bc\u03b2\u03bf \u03b3\u03b9\u03b1 \u03c0\u03c1\u03bf\u03c3\u03b8\u03ae\u03ba\u03b7"
}
}
}
}
@@ -6,7 +6,7 @@
"step": {
"user": {
"data": {
"id": "Gazdag\u00e9p azonos\u00edt\u00f3"
"id": "G\u00e9p azonos\u00edt\u00f3"
},
"title": "V\u00e1lassza ki a hozz\u00e1adni k\u00edv\u00e1nt hubot"
}
@@ -8,7 +8,7 @@
"data": {
"id": "ID host"
},
"title": "Scegliere un hub da aggiungere"
"title": "Scegli un hub da aggiungere"
}
}
}
+15
View File
@@ -17,3 +17,18 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
"""Unload a config entry."""
return await hass.config_entries.async_unload_platforms(entry, PLATFORMS)
async def async_migrate_entry(hass: HomeAssistant, config_entry: ConfigEntry) -> bool:
"""Migrate old entry."""
# convert title and unique_id to string
if config_entry.version == 1:
if isinstance(config_entry.unique_id, int):
hass.config_entries.async_update_entry(
config_entry,
unique_id=str(config_entry.unique_id),
title=str(config_entry.title),
)
return True
+51 -1
View File
@@ -4,6 +4,7 @@ from __future__ import annotations
from typing import Any
from adax import Adax
from adax_local import Adax as AdaxLocal
from homeassistant.components.climate import ClimateEntity
from homeassistant.components.climate.const import (
@@ -14,7 +15,10 @@ from homeassistant.components.climate.const import (
from homeassistant.config_entries import ConfigEntry
from homeassistant.const import (
ATTR_TEMPERATURE,
CONF_IP_ADDRESS,
CONF_PASSWORD,
CONF_TOKEN,
CONF_UNIQUE_ID,
PRECISION_WHOLE,
TEMP_CELSIUS,
)
@@ -23,7 +27,7 @@ from homeassistant.helpers.aiohttp_client import async_get_clientsession
from homeassistant.helpers.entity import DeviceInfo
from homeassistant.helpers.entity_platform import AddEntitiesCallback
from .const import ACCOUNT_ID, DOMAIN
from .const import ACCOUNT_ID, CONNECTION_TYPE, DOMAIN, LOCAL
async def async_setup_entry(
@@ -32,6 +36,17 @@ async def async_setup_entry(
async_add_entities: AddEntitiesCallback,
) -> None:
"""Set up the Adax thermostat with config flow."""
if entry.data.get(CONNECTION_TYPE) == LOCAL:
adax_data_handler = AdaxLocal(
entry.data[CONF_IP_ADDRESS],
entry.data[CONF_TOKEN],
websession=async_get_clientsession(hass, verify_ssl=False),
)
async_add_entities(
[LocalAdaxDevice(adax_data_handler, entry.data[CONF_UNIQUE_ID])], True
)
return
adax_data_handler = Adax(
entry.data[ACCOUNT_ID],
entry.data[CONF_PASSWORD],
@@ -107,3 +122,38 @@ class AdaxDevice(ClimateEntity):
self._attr_hvac_mode = HVAC_MODE_OFF
self._attr_icon = "mdi:radiator-off"
return
class LocalAdaxDevice(ClimateEntity):
"""Representation of a heater."""
_attr_hvac_modes = [HVAC_MODE_HEAT]
_attr_hvac_mode = HVAC_MODE_HEAT
_attr_max_temp = 35
_attr_min_temp = 5
_attr_supported_features = SUPPORT_TARGET_TEMPERATURE
_attr_target_temperature_step = PRECISION_WHOLE
_attr_temperature_unit = TEMP_CELSIUS
def __init__(self, adax_data_handler, unique_id):
"""Initialize the heater."""
self._adax_data_handler = adax_data_handler
self._attr_unique_id = unique_id
self._attr_device_info = DeviceInfo(
identifiers={(DOMAIN, unique_id)},
manufacturer="Adax",
)
async def async_set_temperature(self, **kwargs):
"""Set new target temperature."""
temperature = kwargs.get(ATTR_TEMPERATURE)
if temperature is None:
return
await self._adax_data_handler.set_target_temperature(temperature)
async def async_update(self) -> None:
"""Get the latest data."""
data = await self._adax_data_handler.get_status()
self._attr_target_temperature = data["target_temperature"]
self._attr_current_temperature = data["current_temperature"]
self._attr_available = self._attr_current_temperature is not None
+110 -39
View File
@@ -5,69 +5,140 @@ import logging
from typing import Any
import adax
import adax_local
import voluptuous as vol
from homeassistant import config_entries
from homeassistant.const import CONF_PASSWORD
from homeassistant.core import HomeAssistant
from homeassistant.const import (
CONF_IP_ADDRESS,
CONF_PASSWORD,
CONF_TOKEN,
CONF_UNIQUE_ID,
)
from homeassistant.data_entry_flow import FlowResult
from homeassistant.exceptions import HomeAssistantError
from homeassistant.helpers.aiohttp_client import async_get_clientsession
from .const import ACCOUNT_ID, DOMAIN
_LOGGER = logging.getLogger(__name__)
STEP_USER_DATA_SCHEMA = vol.Schema(
{vol.Required(ACCOUNT_ID): int, vol.Required(CONF_PASSWORD): str}
from .const import (
ACCOUNT_ID,
CLOUD,
CONNECTION_TYPE,
DOMAIN,
LOCAL,
WIFI_PSWD,
WIFI_SSID,
)
async def validate_input(hass: HomeAssistant, data: dict[str, Any]) -> None:
"""Validate the user input allows us to connect."""
account_id = data[ACCOUNT_ID]
password = data[CONF_PASSWORD].replace(" ", "")
token = await adax.get_adax_token(
async_get_clientsession(hass), account_id, password
)
if token is None:
_LOGGER.info("Adax: Failed to login to retrieve token")
raise CannotConnect
_LOGGER = logging.getLogger(__name__)
class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN):
"""Handle a config flow for Adax."""
VERSION = 1
VERSION = 2
async def async_step_user(
self, user_input: dict[str, Any] | None = None
) -> FlowResult:
async def async_step_user(self, user_input=None):
"""Handle the initial step."""
data_schema = vol.Schema(
{
vol.Required(CONNECTION_TYPE, default=CLOUD): vol.In(
(
CLOUD,
LOCAL,
)
)
}
)
if user_input is None:
return self.async_show_form(
step_id="user", data_schema=STEP_USER_DATA_SCHEMA
step_id="user",
data_schema=data_schema,
)
if user_input[CONNECTION_TYPE] == LOCAL:
return await self.async_step_local()
return await self.async_step_cloud()
async def async_step_local(self, user_input=None):
"""Handle the local step."""
data_schema = vol.Schema(
{vol.Required(WIFI_SSID): str, vol.Required(WIFI_PSWD): str}
)
if user_input is None:
return self.async_show_form(
step_id="local",
data_schema=data_schema,
)
wifi_ssid = user_input[WIFI_SSID].replace(" ", "")
wifi_pswd = user_input[WIFI_PSWD].replace(" ", "")
configurator = adax_local.AdaxConfig(wifi_ssid, wifi_pswd)
try:
device_configured = await configurator.configure_device()
except adax_local.HeaterNotAvailable:
return self.async_abort(reason="heater_not_available")
except adax_local.HeaterNotFound:
return self.async_abort(reason="heater_not_found")
except adax_local.InvalidWifiCred:
return self.async_abort(reason="invalid_auth")
if not device_configured:
return self.async_show_form(
step_id="local",
data_schema=data_schema,
errors={"base": "cannot_connect"},
)
unique_id = str(configurator.mac_id)
await self.async_set_unique_id(unique_id)
self._abort_if_unique_id_configured()
return self.async_create_entry(
title=unique_id,
data={
CONF_IP_ADDRESS: configurator.device_ip,
CONF_TOKEN: configurator.access_token,
CONF_UNIQUE_ID: unique_id,
CONNECTION_TYPE: LOCAL,
},
)
async def async_step_cloud(
self, user_input: dict[str, Any] | None = None
) -> FlowResult:
"""Handle the cloud step."""
data_schema = vol.Schema(
{vol.Required(ACCOUNT_ID): int, vol.Required(CONF_PASSWORD): str}
)
if user_input is None:
return self.async_show_form(step_id="cloud", data_schema=data_schema)
errors = {}
await self.async_set_unique_id(user_input[ACCOUNT_ID])
await self.async_set_unique_id(str(user_input[ACCOUNT_ID]))
self._abort_if_unique_id_configured()
try:
await validate_input(self.hass, user_input)
except CannotConnect:
account_id = user_input[ACCOUNT_ID]
password = user_input[CONF_PASSWORD].replace(" ", "")
token = await adax.get_adax_token(
async_get_clientsession(self.hass), account_id, password
)
if token is None:
_LOGGER.info("Adax: Failed to login to retrieve token")
errors["base"] = "cannot_connect"
else:
return self.async_create_entry(
title=user_input[ACCOUNT_ID], data=user_input
return self.async_show_form(
step_id="cloud",
data_schema=data_schema,
errors=errors,
)
return self.async_show_form(
step_id="user", data_schema=STEP_USER_DATA_SCHEMA, errors=errors
return self.async_create_entry(
title=str(user_input[ACCOUNT_ID]),
data={
ACCOUNT_ID: account_id,
CONF_PASSWORD: password,
CONNECTION_TYPE: CLOUD,
},
)
class CannotConnect(HomeAssistantError):
"""Error to indicate we cannot connect."""
+5
View File
@@ -2,4 +2,9 @@
from typing import Final
ACCOUNT_ID: Final = "account_id"
CLOUD = "Cloud"
CONNECTION_TYPE = "connection_type"
DOMAIN: Final = "adax"
LOCAL = "Local"
WIFI_SSID = "wifi_ssid"
WIFI_PSWD = "wifi_pswd"
+2 -2
View File
@@ -4,10 +4,10 @@
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/adax",
"requirements": [
"adax==0.2.0"
"adax==0.2.0", "Adax-local==0.1.3"
],
"codeowners": [
"@danielhiversen"
],
"iot_class": "cloud_polling"
"iot_class": "local_polling"
}
+17 -1
View File
@@ -2,6 +2,19 @@
"config": {
"step": {
"user": {
"data": {
"connection_type": "Select connection type"
},
"description": "Select connection type. Local requires heaters with bluetooth"
},
"local": {
"data": {
"wifi_ssid": "Wi-Fi SSID",
"wifi_pswd": "Wi-Fi Password"
},
"description": "Reset the heater by pressing + and OK until display shows 'Reset'. Then press and hold OK button on the heater until the blue led starts blinking before pressing Submit. Configuring heater might take some minutes."
},
"cloud": {
"data": {
"account_id": "Account ID",
"password": "[%key:common::config_flow::data::password%]"
@@ -12,7 +25,10 @@
"cannot_connect": "[%key:common::config_flow::error::cannot_connect%]"
},
"abort": {
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]"
"already_configured": "[%key:common::config_flow::abort::already_configured_device%]",
"heater_not_available": "Heater not available. Try to reset the heater by pressing + and OK for some seconds.",
"heater_not_found": "Heater not found. Try to move the heater closer to Home Assistant computer.",
"invalid_auth": "[%key:common::config_flow::error::invalid_auth%]"
}
}
}
@@ -1,13 +1,25 @@
{
"config": {
"abort": {
"already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e"
"already_configured": "\u0423\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e\u0442\u043e \u0432\u0435\u0447\u0435 \u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u043e",
"invalid_auth": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435"
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435",
"invalid_auth": "\u041d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u044f\u0432\u0430\u043d\u0435"
},
"step": {
"cloud": {
"data": {
"password": "\u041f\u0430\u0440\u043e\u043b\u0430"
}
},
"local": {
"data": {
"wifi_pswd": "Wi-Fi \u043f\u0430\u0440\u043e\u043b\u0430",
"wifi_ssid": "Wi-Fi SSID"
}
},
"user": {
"data": {
"host": "\u0425\u043e\u0441\u0442",
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "El dispositiu ja est\u00e0 configurat"
"already_configured": "El dispositiu ja est\u00e0 configurat",
"heater_not_available": "Escalfador no disponible. Intenta reiniciar l'escalfador prement '+' i 'OK' durant uns segons.",
"heater_not_found": "No s'ha trobat l'escalfador. Intenta apropar-lo a l'ordinador amb Home Assistant.",
"invalid_auth": "Autenticaci\u00f3 inv\u00e0lida"
},
"error": {
"cannot_connect": "Ha fallat la connexi\u00f3",
"invalid_auth": "Autenticaci\u00f3 inv\u00e0lida"
},
"step": {
"cloud": {
"data": {
"account_id": "ID del compte",
"password": "Contrasenya"
}
},
"local": {
"data": {
"wifi_pswd": "Contrasenya Wi-Fi",
"wifi_ssid": "SSID Wi-Fi"
},
"description": "Reinicia l'escalfador prement '+' i 'OK' fins que la pantalla mostri 'Reset'. A continuaci\u00f3 i abans de fer clic a Envia, mant\u00e9 premut el bot\u00f3 'OK' fins que el led blau comenci a parpellejar. La configuraci\u00f3 de l'escalfador pot trigar uns minuts."
},
"user": {
"data": {
"account_id": "ID del compte",
"connection_type": "Selecciona el tipus de connexi\u00f3",
"host": "Amfitri\u00f3",
"password": "Contrasenya"
}
},
"description": "Selecciona el tipus de connexi\u00f3. La local necessita escalfadors amb Bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Za\u0159\u00edzen\u00ed je ji\u017e nastaveno"
"already_configured": "Za\u0159\u00edzen\u00ed je ji\u017e nastaveno",
"heater_not_available": "Oh\u0159\u00edva\u010d nen\u00ed k dispozici. Zkuste resetovat oh\u0159\u00edva\u010d stisknut\u00edm tla\u010d\u00edtek + a OK na n\u011bkolik sekund.",
"heater_not_found": "Oh\u0159\u00edva\u010d nenalezen. Zkuste p\u0159em\u00edstit oh\u0159\u00edva\u010d bl\u00ed\u017ee k po\u010d\u00edta\u010di Home Assistant.",
"invalid_auth": "Neplatn\u00e9 ov\u011b\u0159en\u00ed"
},
"error": {
"cannot_connect": "Nepoda\u0159ilo se p\u0159ipojit",
"invalid_auth": "Neplatn\u00e9 ov\u011b\u0159en\u00ed"
},
"step": {
"cloud": {
"data": {
"account_id": "ID \u00fa\u010dtu",
"password": "Heslo"
}
},
"local": {
"data": {
"wifi_pswd": "Heslo Wi-Fi",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "Resetujte oh\u0159\u00edva\u010d stisknut\u00edm + a OK, dokud se nezobraz\u00ed \"Reset\". Pot\u00e9 stiskn\u011bte a podr\u017ete tla\u010d\u00edtko OK na oh\u0159\u00edva\u010di, dokud modr\u00e1 led dioda neza\u010dne blikat, ne\u017e stisknete tla\u010d\u00edtko Odeslat. Konfigurace oh\u0159\u00edva\u010de m\u016f\u017ee trvat n\u011bkolik minut."
},
"user": {
"data": {
"account_id": "ID \u00fa\u010dtu",
"connection_type": "Vyberte typ p\u0159ipojen\u00ed",
"host": "Hostitel",
"password": "Heslo"
}
},
"description": "Vyberte typ p\u0159ipojen\u00ed. Lok\u00e1ln\u00ed vy\u017eaduje oh\u0159\u00edva\u010de s bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Ger\u00e4t ist bereits konfiguriert"
"already_configured": "Ger\u00e4t ist bereits konfiguriert",
"heater_not_available": "Heizger\u00e4t nicht verf\u00fcgbar. Versuche das Heizger\u00e4t zur\u00fcckzusetzen, indem du + und OK einige Sekunden lang dr\u00fcckst.",
"heater_not_found": "Heizger\u00e4t nicht gefunden. Versuche das Heizger\u00e4t n\u00e4her an den Home Assistant-Computer zu bringen.",
"invalid_auth": "Ung\u00fcltige Authentifizierung"
},
"error": {
"cannot_connect": "Verbindung fehlgeschlagen",
"invalid_auth": "Ung\u00fcltige Authentifizierung"
},
"step": {
"cloud": {
"data": {
"account_id": "Konto-ID",
"password": "Passwort"
}
},
"local": {
"data": {
"wifi_pswd": "WLAN Passwort",
"wifi_ssid": "WLAN SSID"
},
"description": "Setze das Heizger\u00e4t zur\u00fcck, indem du + und OK dr\u00fcckst, bis auf dem Display \"Reset\" angezeigt wird. Halte dann die OK-Taste am Heizger\u00e4t gedr\u00fcckt, bis die blaue LED zu blinken beginnt, und dr\u00fccke dann auf Senden. Das Konfigurieren des Heizger\u00e4ts kann einige Minuten dauern."
},
"user": {
"data": {
"account_id": "Konto-ID",
"connection_type": "Verbindungstyp ausw\u00e4hlen",
"host": "Host",
"password": "Passwort"
}
},
"description": "Verbindungstyp ausw\u00e4hlen. Lokal erfordert Heizungen mit Bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Device is already configured"
"already_configured": "Device is already configured",
"heater_not_available": "Heater not available. Try to reset the heater by pressing + and OK for some seconds.",
"heater_not_found": "Heater not found. Try to move the heater closer to Home Assistant computer.",
"invalid_auth": "Invalid authentication"
},
"error": {
"cannot_connect": "Failed to connect",
"invalid_auth": "Invalid authentication"
},
"step": {
"cloud": {
"data": {
"account_id": "Account ID",
"password": "Password"
}
},
"local": {
"data": {
"wifi_pswd": "Wi-Fi Password",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "Reset the heater by pressing + and OK until display shows 'Reset'. Then press and hold OK button on the heater until the blue led starts blinking before pressing Submit. Configuring heater might take some minutes."
},
"user": {
"data": {
"account_id": "Account ID",
"connection_type": "Select connection type",
"host": "Host",
"password": "Password"
}
},
"description": "Select connection type. Local requires heaters with bluetooth"
}
}
}
@@ -0,0 +1,12 @@
{
"config": {
"step": {
"user": {
"data": {
"connection_type": "Seleccione el tipo de conexi\u00f3n"
},
"description": "Seleccione el tipo de conexi\u00f3n. Local requiere calentadores con bluetooth"
}
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "El dispositivo ya est\u00e1 configurado"
"already_configured": "El dispositivo ya est\u00e1 configurado",
"heater_not_available": "Calentador no disponible. Intente restablecer el calentador pulsando + y OK durante algunos segundos.",
"heater_not_found": "No se encuentra el calefactor. Intente acercar el calefactor al ordenador del Asistente de Hogar.",
"invalid_auth": "Autenticaci\u00f3n no v\u00e1lida"
},
"error": {
"cannot_connect": "No se pudo conectar",
"invalid_auth": "Autenticaci\u00f3n no v\u00e1lida"
},
"step": {
"cloud": {
"data": {
"account_id": "ID de la cuenta",
"password": "Contrase\u00f1a"
}
},
"local": {
"data": {
"wifi_pswd": "Contrase\u00f1a Wi-Fi",
"wifi_ssid": "SSID Wi-Fi"
},
"description": "Reinicie el calentador presionando + y OK hasta que la pantalla muestre 'Reiniciar'. Luego presione y mantenga presionado el bot\u00f3n OK en el calentador hasta que el LED azul comience a parpadear antes de presionar Enviar. La configuraci\u00f3n del calentador puede llevar algunos minutos."
},
"user": {
"data": {
"account_id": "ID de la cuenta",
"connection_type": "Seleccione el tipo de conexi\u00f3n",
"host": "Host",
"password": "Contrase\u00f1a"
}
},
"description": "Seleccione el tipo de conexi\u00f3n. Local requiere calentadores con bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Seade on juba h\u00e4\u00e4lestatud"
"already_configured": "Seade on juba h\u00e4\u00e4lestatud",
"heater_not_available": "K\u00fctteseade pole saadaval. Proovi k\u00fctteseadet l\u00e4htestada, vajutades m\u00f5ne sekundi jooksul + ja OK.",
"heater_not_found": "K\u00fctteseadet ei leitud. Proovi viia k\u00fctteseade Home Assistanti arvutile l\u00e4hemale.",
"invalid_auth": "Tuvastamine nurjus"
},
"error": {
"cannot_connect": "\u00dchendamine nurjus",
"invalid_auth": "Tuvastamise viga"
},
"step": {
"cloud": {
"data": {
"account_id": "Konto ID",
"password": "Salas\u00f5na"
}
},
"local": {
"data": {
"wifi_pswd": "Wi-Fi salas\u00f5na",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "L\u00e4htesta k\u00fctteseade, vajutades + ja OK kuni ekraanil kuvatakse \"Reset\". Seej\u00e4rel vajuta ja hoia kerisel nuppu OK kuni sinine led hakkab vilkuma enne nupu Edasta vajutamist. K\u00fctteseadme konfigureerimine v\u00f5ib v\u00f5tta aega m\u00f5ni minut."
},
"user": {
"data": {
"account_id": "Konto ID",
"connection_type": "Vali \u00fchenduse t\u00fc\u00fcp",
"host": "Host",
"password": "Salas\u00f5na"
}
},
"description": "Vali \u00fchenduse t\u00fc\u00fcp. Kohalik n\u00f5uab bluetoothiga k\u00fctteseadmeid"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "L'appareil est d\u00e9j\u00e0 configur\u00e9"
"already_configured": "L'appareil est d\u00e9j\u00e0 configur\u00e9",
"heater_not_available": "Chauffage non disponible. Essayez de r\u00e9initialiser le chauffage en appuyant sur + et OK pendant quelques secondes.",
"heater_not_found": "Chauffage introuvable. Essayez de rapprocher le radiateur de l'ordinateur Home Assistant.",
"invalid_auth": "Authentification invalide"
},
"error": {
"cannot_connect": "\u00c9chec de connexion",
"invalid_auth": "Authentification invalide"
},
"step": {
"cloud": {
"data": {
"account_id": "Identifiant de compte",
"password": "Mot der passe"
}
},
"local": {
"data": {
"wifi_pswd": "Mot de passe WiFi",
"wifi_ssid": "identifiant Wifi"
},
"description": "R\u00e9initialisez le radiateur en appuyant sur + et OK jusqu'\u00e0 ce que l'\u00e9cran affiche \u00ab\u00a0Reset\u00a0\u00bb. Appuyez ensuite sur le bouton OK du radiateur et maintenez-le enfonc\u00e9 jusqu'\u00e0 ce que le voyant bleu commence \u00e0 clignoter avant d'appuyer sur Soumettre. La configuration du chauffage peut prendre quelques minutes."
},
"user": {
"data": {
"account_id": "identifiant de compte",
"connection_type": "S\u00e9lectionner le type de connexion",
"host": "H\u00f4te",
"password": "Mot de passe"
}
},
"description": "S\u00e9lectionnez le type de connexion. Local n\u00e9cessite des radiateurs avec Bluetooth"
}
}
}
@@ -1,13 +1,19 @@
{
"config": {
"abort": {
"already_configured": "\u05ea\u05e6\u05d5\u05e8\u05ea \u05d4\u05d4\u05ea\u05e7\u05df \u05db\u05d1\u05e8 \u05e0\u05e7\u05d1\u05e2\u05d4"
"already_configured": "\u05ea\u05e6\u05d5\u05e8\u05ea \u05d4\u05d4\u05ea\u05e7\u05df \u05db\u05d1\u05e8 \u05e0\u05e7\u05d1\u05e2\u05d4",
"invalid_auth": "\u05d0\u05d9\u05de\u05d5\u05ea \u05dc\u05d0 \u05d7\u05d5\u05e7\u05d9"
},
"error": {
"cannot_connect": "\u05d4\u05d4\u05ea\u05d7\u05d1\u05e8\u05d5\u05ea \u05e0\u05db\u05e9\u05dc\u05d4",
"invalid_auth": "\u05d0\u05d9\u05de\u05d5\u05ea \u05dc\u05d0 \u05d7\u05d5\u05e7\u05d9"
},
"step": {
"cloud": {
"data": {
"password": "\u05e1\u05d9\u05e1\u05de\u05d4"
}
},
"user": {
"data": {
"account_id": "\u05de\u05d6\u05d4\u05d4 \u05d7\u05e9\u05d1\u05d5\u05df",
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Az eszk\u00f6z m\u00e1r konfigur\u00e1lva van"
"already_configured": "Az eszk\u00f6z m\u00e1r konfigur\u00e1lva van",
"heater_not_available": "A f\u0171t\u0151berendez\u00e9s nem \u00e1ll rendelkez\u00e9sre. Pr\u00f3b\u00e1lja meg gy\u00e1ri \u00e1llapotba vissza\u00e1ll\u00edtani a + \u00e9s az OK gomb nyomvatart\u00e1s\u00e1val n\u00e9h\u00e1ny m\u00e1sodpercig.",
"heater_not_found": "A f\u0171t\u0151berendez\u00e9s nem tal\u00e1lhat\u00f3. Pr\u00f3b\u00e1lja meg k\u00f6zelebb helyezni a Home Assistant sz\u00e1m\u00edt\u00f3g\u00e9phez.",
"invalid_auth": "\u00c9rv\u00e9nytelen hiteles\u00edt\u00e9s"
},
"error": {
"cannot_connect": "Nem siker\u00fclt csatlakozni",
"invalid_auth": "\u00c9rv\u00e9nytelen hiteles\u00edt\u00e9s"
},
"step": {
"cloud": {
"data": {
"account_id": "Fi\u00f3k ID",
"password": "Jelsz\u00f3"
}
},
"local": {
"data": {
"wifi_pswd": "WiFi jelsz\u00f3",
"wifi_ssid": "WiFi ssid"
},
"description": "\u00c1ll\u00edtsa vissza a f\u0171t\u0151berendez\u00e9st a + \u00e9s az OK gomb nyomvatart\u00e1s\u00e1val, m\u00edg a kijelz\u0151n a \"Reset\" (Vissza\u00e1ll\u00edt\u00e1s) felirat nem jelenik meg. Ezut\u00e1n nyomja meg \u00e9s tartsa lenyomva a f\u0171t\u0151berendez\u00e9s OK gombj\u00e1t, am\u00edg a k\u00e9k led villogni nem kezd, majd nyomja meg a K\u00fcld\u00e9s gombot. A f\u0171t\u0151berendez\u00e9s konfigur\u00e1l\u00e1sa n\u00e9h\u00e1ny percet vehet ig\u00e9nybe."
},
"user": {
"data": {
"account_id": "Fi\u00f3k ID",
"connection_type": "V\u00e1lassza ki a kapcsolat t\u00edpus\u00e1t",
"host": "C\u00edm",
"password": "Jelsz\u00f3"
}
},
"description": "V\u00e1lassza ki a kapcsolat t\u00edpus\u00e1t. A Helyi kapcsolathoz bluetooth-os f\u0171t\u0151berendez\u00e9sekre van sz\u00fcks\u00e9g"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Perangkat sudah dikonfigurasi"
"already_configured": "Perangkat sudah dikonfigurasi",
"heater_not_available": "Pemanas tidak tersedia. Cobalah untuk mengatur ulang pemanas dengan menekan + dan OK selama beberapa detik.",
"heater_not_found": "Pemanas tidak ditemukan. Coba dekatkan pemanas ke komputer Home Assistant.",
"invalid_auth": "Autentikasi tidak valid"
},
"error": {
"cannot_connect": "Gagal terhubung",
"invalid_auth": "Autentikasi tidak valid"
},
"step": {
"cloud": {
"data": {
"account_id": "ID Akun",
"password": "Kata Sandi"
}
},
"local": {
"data": {
"wifi_pswd": "Kata sandi Wi-Fi",
"wifi_ssid": "SSID Wi-Fi"
},
"description": "Atur ulang pemanas dengan menekan + dan OK hingga muncul tampilan 'Reset'. Kemudian tekan dan tahan tombol OK pada pemanas sampai led biru mulai berkedip sebelum menekan Submit. Mengonfigurasi pemanas mungkin memerlukan waktu beberapa menit."
},
"user": {
"data": {
"account_id": "ID Akun",
"connection_type": "Pilih jenis koneksi",
"host": "Host",
"password": "Kata Sandi"
}
},
"description": "Pilih jenis koneksi. Lokal membutuhkan pemanas dengan bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Il dispositivo \u00e8 gi\u00e0 configurato"
"already_configured": "Il dispositivo \u00e8 gi\u00e0 configurato",
"heater_not_available": "Riscaldatore non disponibile. Prova a ripristinare il riscaldatore premendo + e OK per alcuni secondi.",
"heater_not_found": "Riscaldatore non trovato. Prova ad avvicinare il riscaldatore al computer Home Assistant.",
"invalid_auth": "Autenticazione non valida"
},
"error": {
"cannot_connect": "Impossibile connettersi",
"invalid_auth": "Autenticazione non valida"
},
"step": {
"cloud": {
"data": {
"account_id": "ID account",
"password": "Password"
}
},
"local": {
"data": {
"wifi_pswd": "Password Wi-Fi",
"wifi_ssid": "SSID Wi-Fi"
},
"description": "Ripristina il riscaldatore premendo + e OK finch\u00e9 il display non mostra 'Reset'. Quindi premi e tieni premuto il pulsante OK sul riscaldatore fino a quando il led blu inizia a lampeggiare prima di premere Invia. La configurazione del riscaldatore potrebbe richiedere alcuni minuti."
},
"user": {
"data": {
"account_id": "ID account",
"connection_type": "Seleziona il tipo di connessione",
"host": "Host",
"password": "Password"
}
},
"description": "Seleziona il tipo di connessione. Locale richiede riscaldatori con bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "\u30c7\u30d0\u30a4\u30b9\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059"
"already_configured": "\u30c7\u30d0\u30a4\u30b9\u306f\u3059\u3067\u306b\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u307e\u3059",
"heater_not_available": "\u30d2\u30fc\u30bf\u30fc\u306f\u5229\u7528\u3067\u304d\u307e\u305b\u3093\u3002\u6570\u79d2\u9593\u3001+ \u3068 OK \u3092\u62bc\u3057\u3066\u30d2\u30fc\u30bf\u30fc\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002",
"heater_not_found": "\u30d2\u30fc\u30bf\u30fc\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002\u30d2\u30fc\u30bf\u30fc\u3092Home Assistant\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30fc\u306b\u8fd1\u3065\u3051\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002",
"invalid_auth": "\u7121\u52b9\u306a\u8a8d\u8a3c"
},
"error": {
"cannot_connect": "\u63a5\u7d9a\u306b\u5931\u6557\u3057\u307e\u3057\u305f",
"invalid_auth": "\u7121\u52b9\u306a\u8a8d\u8a3c"
},
"step": {
"cloud": {
"data": {
"account_id": "\u30a2\u30ab\u30a6\u30f3\u30c8ID",
"password": "\u30d1\u30b9\u30ef\u30fc\u30c9"
}
},
"local": {
"data": {
"wifi_pswd": "Wifi\u30d1\u30b9\u30ef\u30fc\u30c9",
"wifi_ssid": "Wifi ssid"
},
"description": "\u30c7\u30a3\u30b9\u30d7\u30ec\u30a4\u306b\u3001 'Reset ' \u3068\u8868\u793a\u3055\u308c\u308b\u307e\u3067 + \u3068 OK \u3092\u62bc\u3057\u3066\u3001\u30d2\u30fc\u30bf\u30fc\u3092\u30ea\u30bb\u30c3\u30c8\u3057\u307e\u3059\u3002\u305d\u306e\u5f8c\u3001\u30d2\u30fc\u30bf\u30fc\u306eOK\u30dc\u30bf\u30f3\u3092\u9752\u306eLED\u304c\u70b9\u6ec5\u3057\u59cb\u3081\u308b\u307e\u3067\u62bc\u3057\u7d9a\u3051\u3066\u304b\u3089\u3001Submit\u3092\u62bc\u3057\u307e\u3059\u3002\u30d2\u30fc\u30bf\u30fc\u306e\u8a2d\u5b9a\u306b\u306f\u6570\u5206\u304b\u304b\u308b\u5834\u5408\u304c\u3042\u308a\u307e\u3059\u3002"
},
"user": {
"data": {
"account_id": "\u30a2\u30ab\u30a6\u30f3\u30c8ID",
"connection_type": "\u63a5\u7d9a\u30bf\u30a4\u30d7\u306e\u9078\u629e",
"host": "\u30db\u30b9\u30c8",
"password": "\u30d1\u30b9\u30ef\u30fc\u30c9"
}
},
"description": "\u63a5\u7d9a\u30bf\u30a4\u30d7\u3092\u9078\u629e\u3057\u307e\u3059\u3002\u30ed\u30fc\u30ab\u30eb\u306b\u306fBluetooth\u4ed8\u304d\u306e\u30d2\u30fc\u30bf\u30fc\u304c\u5fc5\u8981\u3067\u3059"
}
}
}
@@ -0,0 +1,29 @@
{
"config": {
"abort": {
"heater_not_available": "\u0160ildytuvas nepasiekiamas. Pabandykite i\u0161 naujo nustatyti \u0161ildytuv\u0105 paspausdami + ir OK kelias sekundes.",
"heater_not_found": "\u0160ildytuvas nerastas. Pabandykite \u0161ildytuv\u0105 laikyti ar\u010diau Home Assistant serverio"
},
"step": {
"cloud": {
"data": {
"account_id": "Paskyros ID",
"password": "Slapta\u017eodis"
}
},
"local": {
"data": {
"wifi_pswd": "Wifi slapta\u017eodis",
"wifi_ssid": "Wifi ssid"
},
"description": "I\u0161 naujo nustatykite \u0161ildytuv\u0105 spausdami + ir OK, kol ekrane pasirodys \u201eReset\u201c. Tada paspauskite ir palaikykite OK mygtuk\u0105 ant \u0161ildytuvo, kol prad\u0117s mirks\u0117ti m\u0117lyna lemput\u0117, prie\u0161 paspausdami Patvirtinti. \u0160ildytuvo konfig\u016bravimas gali u\u017etrukti kelet\u0105 minu\u010di\u0173."
},
"user": {
"data": {
"connection_type": "Pasirinkite ry\u0161io tip\u0105"
},
"description": "Pasirinkite ry\u0161io tip\u0105. Vietiniams reikalingi \u0161ildytuvai su \u201eBluetooth\u201c."
}
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Apparaat is al geconfigureerd"
"already_configured": "Apparaat is al geconfigureerd",
"heater_not_available": "Verwarming niet aanwezig. Probeer de kachel te resetten door enkele seconden op + en OK te drukken.",
"heater_not_found": "Verwarming niet gevonden. Probeer de verwarming dichter bij de Home Assistant-computer te plaatsen.",
"invalid_auth": "Ongeldige authenticatie"
},
"error": {
"cannot_connect": "Kan geen verbinding maken",
"invalid_auth": "Ongeldige authenticatie"
},
"step": {
"cloud": {
"data": {
"account_id": "Account ID",
"password": "Wachtwoord"
}
},
"local": {
"data": {
"wifi_pswd": "Wi-Fi Wachtwoord",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "Reset de kachel door op + en OK te drukken totdat het display 'Reset' toont. Houd vervolgens de OK-knop op de verwarming ingedrukt totdat de blauwe led begint te knipperen voordat u op Verzenden drukt. Het configureren van de verwarming kan enkele minuten duren."
},
"user": {
"data": {
"account_id": "Account ID",
"connection_type": "Selecteer verbindingstype",
"host": "Host",
"password": "Wachtwoord"
}
},
"description": "Selecteer verbindingstype. Lokaal vereist verwarming met bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Enheten er allerede konfigurert"
"already_configured": "Enheten er allerede konfigurert",
"heater_not_available": "Varmeapparat ikke tilgjengelig. Pr\u00f8v \u00e5 tilbakestille varmeapparatet ved \u00e5 trykke p\u00e5 + og OK i noen sekunder.",
"heater_not_found": "Fant ikke varmeovn. Pr\u00f8v \u00e5 flytte varmeren n\u00e6rmere Home Assistant-datamaskinen.",
"invalid_auth": "Ugyldig godkjenning"
},
"error": {
"cannot_connect": "Tilkobling mislyktes",
"invalid_auth": "Ugyldig godkjenning"
},
"step": {
"cloud": {
"data": {
"account_id": "Konto-ID",
"password": "Passord"
}
},
"local": {
"data": {
"wifi_pswd": "Wi-Fi-passord",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "Tilbakestill varmeren ved \u00e5 trykke p\u00e5 + og OK til displayet viser 'Tilbakestill'. Trykk deretter p\u00e5 og hold inne OK-knappen p\u00e5 varmeren til den bl\u00e5 lampen begynner \u00e5 blinke f\u00f8r du trykker p\u00e5 Send. Det kan ta noen minutter \u00e5 konfigurere varmeapparatet."
},
"user": {
"data": {
"account_id": "Konto-ID",
"connection_type": "Velg tilkoblingstype",
"host": "Vert",
"password": "Passord"
}
},
"description": "Velg tilkoblingstype. Lokalt krever varmeovner med bluetooth"
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Urz\u0105dzenie jest ju\u017c skonfigurowane"
"already_configured": "Urz\u0105dzenie jest ju\u017c skonfigurowane",
"heater_not_available": "Grzejnik niedost\u0119pny. Spr\u00f3buj go zresetowa\u0107, naciskaj\u0105c + i OK przez kilka sekund.",
"heater_not_found": "Nie znaleziono grzejnika. Spr\u00f3buj przesun\u0105\u0107 grzejnik bli\u017cej komputera z Home Assistant.",
"invalid_auth": "Niepoprawne uwierzytelnienie"
},
"error": {
"cannot_connect": "Nie mo\u017cna nawi\u0105za\u0107 po\u0142\u0105czenia",
"invalid_auth": "Niepoprawne uwierzytelnienie"
},
"step": {
"cloud": {
"data": {
"account_id": "Identyfikator konta",
"password": "Has\u0142o"
}
},
"local": {
"data": {
"wifi_pswd": "Has\u0142o WiFi",
"wifi_ssid": "SSID WiFi"
},
"description": "Zresetuj grzejnik, naciskaj\u0105c + i OK, a\u017c na wy\u015bwietlaczu pojawi si\u0119 \u201eReset\u201d. Nast\u0119pnie naci\u015bnij i przytrzymaj przycisk OK na grzejniku, a\u017c niebieska dioda zacznie miga\u0107 przed naci\u015bni\u0119ciem przycisku \"Zatwierd\u017a\". Konfiguracja grzejnika mo\u017ce zaj\u0105\u0107 kilka minut."
},
"user": {
"data": {
"account_id": "Identyfikator konta",
"connection_type": "Wybierz typ po\u0142\u0105czenia",
"host": "Nazwa hosta lub adres IP",
"password": "Has\u0142o"
}
},
"description": "Wybierz typ po\u0142\u0105czenia. \"Lokalny\" wymaga grzejnik\u00f3w z bluetooth."
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "\u042d\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0443\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0432 Home Assistant."
"already_configured": "\u042d\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0443\u0436\u0435 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u043e \u0432 Home Assistant.",
"heater_not_available": "\u041d\u0430\u0433\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c \u0435\u0433\u043e, \u043d\u0430\u0436\u0430\u0432 \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434 \u043a\u043d\u043e\u043f\u043a\u0438 + \u0438 \u041e\u041a.",
"heater_not_found": "\u041d\u0430\u0433\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u043d\u0430\u0439\u0434\u0435\u043d. \u041f\u043e\u043f\u0440\u043e\u0431\u0443\u0439\u0442\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043e\u0431\u043e\u0433\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044c \u0431\u043b\u0438\u0436\u0435 \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443 Home Assistant.",
"invalid_auth": "\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438."
},
"error": {
"cannot_connect": "\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f.",
"invalid_auth": "\u041e\u0448\u0438\u0431\u043a\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438."
},
"step": {
"cloud": {
"data": {
"account_id": "ID \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438",
"password": "\u041f\u0430\u0440\u043e\u043b\u044c"
}
},
"local": {
"data": {
"wifi_pswd": "\u041f\u0430\u0440\u043e\u043b\u044c Wi-Fi",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "\u0421\u0431\u0440\u043e\u0441\u044c\u0442\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043d\u0430\u0433\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044f, \u043d\u0430\u0436\u0438\u043c\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0438 + \u0438 OK, \u043f\u043e\u043a\u0430 \u043d\u0430 \u0434\u0438\u0441\u043f\u043b\u0435\u0435 \u043d\u0435 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u043d\u0430\u0434\u043f\u0438\u0441\u044c 'Reset'. \u0417\u0430\u0442\u0435\u043c \u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u0438 \u0443\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0439\u0442\u0435 \u043a\u043d\u043e\u043f\u043a\u0443 OK \u043d\u0430 \u043d\u0430\u0433\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u0435, \u043f\u043e\u043a\u0430 \u0441\u0438\u043d\u0438\u0439 \u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u043d\u0435 \u043d\u0430\u0447\u043d\u0435\u0442 \u043c\u0438\u0433\u0430\u0442\u044c, \u043f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043d\u0430\u0436\u043c\u0438\u0442\u0435 \u0437\u0434\u0435\u0441\u044c '\u041f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044c'. \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u043d\u0430\u0433\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u043d\u044f\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043c\u0438\u043d\u0443\u0442."
},
"user": {
"data": {
"account_id": "ID \u0443\u0447\u0451\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438",
"connection_type": "\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0438\u043f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f",
"host": "\u0425\u043e\u0441\u0442",
"password": "\u041f\u0430\u0440\u043e\u043b\u044c"
}
},
"description": "\u0412\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0438\u043f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f. \u0414\u043b\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u0431\u043e\u0433\u0440\u0435\u0432\u0430\u0442\u0435\u043b\u0438 \u0441 Bluetooth."
}
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "Cihaz zaten yap\u0131land\u0131r\u0131lm\u0131\u015f"
"already_configured": "Cihaz zaten yap\u0131land\u0131r\u0131lm\u0131\u015f",
"heater_not_available": "Is\u0131t\u0131c\u0131 mevcut de\u011fil. + ve OK tu\u015flar\u0131na birka\u00e7 saniye basarak \u0131s\u0131t\u0131c\u0131y\u0131 s\u0131f\u0131rlamay\u0131 deneyin.",
"heater_not_found": "Is\u0131t\u0131c\u0131 bulunamad\u0131. Is\u0131t\u0131c\u0131y\u0131 Home Assistant bilgisayar\u0131na yakla\u015ft\u0131rmay\u0131 deneyin.",
"invalid_auth": "Ge\u00e7ersiz kimlik do\u011frulama"
},
"error": {
"cannot_connect": "Ba\u011flanma hatas\u0131",
"invalid_auth": "Ge\u00e7ersiz kimlik do\u011frulama"
},
"step": {
"cloud": {
"data": {
"account_id": "Hesap Kimli\u011fi",
"password": "Parola"
}
},
"local": {
"data": {
"wifi_pswd": "Kablosuz a\u011f parolas\u0131",
"wifi_ssid": "Wifi A\u011f Ad\u0131"
},
"description": "Ekranda 'S\u0131f\u0131rla' g\u00f6r\u00fcnene kadar + ve OK tu\u015flar\u0131na basarak \u0131s\u0131t\u0131c\u0131y\u0131 s\u0131f\u0131rlay\u0131n. Ard\u0131ndan G\u00f6nder'e basmadan \u00f6nce mavi led yan\u0131p s\u00f6nmeye ba\u015flayana kadar \u0131s\u0131t\u0131c\u0131daki OK d\u00fc\u011fmesini bas\u0131l\u0131 tutun. Is\u0131t\u0131c\u0131y\u0131 yap\u0131land\u0131rmak birka\u00e7 dakika s\u00fcrebilir."
},
"user": {
"data": {
"account_id": "Hesap Kimli\u011fi",
"host": "Ana bilgisayar",
"connection_type": "Ba\u011flant\u0131 t\u00fcr\u00fcn\u00fc se\u00e7in",
"host": "Sunucu",
"password": "Parola"
}
},
"description": "Ba\u011flant\u0131 t\u00fcr\u00fcn\u00fc se\u00e7in. Yerel Bluetooth'lu \u0131s\u0131t\u0131c\u0131lar gerektirir"
}
}
}
@@ -1,11 +1,27 @@
{
"config": {
"abort": {
"invalid_auth": "\u65e0\u6548\u7684\u6388\u6743"
},
"error": {
"cannot_connect": "\u8fde\u63a5\u5931\u8d25"
},
"step": {
"cloud": {
"data": {
"account_id": "\u5e10\u6237ID",
"password": "\u5bc6\u7801"
}
},
"local": {
"data": {
"wifi_pswd": "Wi-Fi \u5bc6\u7801",
"wifi_ssid": "Wi-Fi \u540d\u79f0 (SSID)"
}
},
"user": {
"data": {
"connection_type": "\u9009\u62e9\u8fde\u63a5\u7c7b\u578b",
"password": "\u5bc6\u7801"
}
}
@@ -1,19 +1,37 @@
{
"config": {
"abort": {
"already_configured": "\u88dd\u7f6e\u5df2\u7d93\u8a2d\u5b9a\u5b8c\u6210"
"already_configured": "\u88dd\u7f6e\u5df2\u7d93\u8a2d\u5b9a\u5b8c\u6210",
"heater_not_available": "\u627e\u4e0d\u5230\u52a0\u71b1\u5668\uff0c\u8acb\u8a66\u8457\u6309\u4f4f + \u8207 OK \u5e7e\u79d2\u9032\u884c\u91cd\u7f6e\u3002",
"heater_not_found": "\u627e\u4e0d\u5230\u52a0\u71b1\u5668\uff0c\u8acb\u8a66\u8457\u5c07\u52a0\u71b1\u5668\u5f80 Home Assistant \u4f3a\u670d\u5668\u9760\u8fd1\u3002",
"invalid_auth": "\u9a57\u8b49\u78bc\u7121\u6548"
},
"error": {
"cannot_connect": "\u9023\u7dda\u5931\u6557",
"invalid_auth": "\u9a57\u8b49\u78bc\u7121\u6548"
},
"step": {
"cloud": {
"data": {
"account_id": "\u5e33\u865f ID",
"password": "\u5bc6\u78bc"
}
},
"local": {
"data": {
"wifi_pswd": "Wi-Fi \u5bc6\u78bc",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "\u6309\u4f4f + \u8207 OK \u9032\u884c\u52a0\u71b1\u5668\u91cd\u7f6e\u3001\u76f4\u5230\u986f\u793a 'Reset'\u3002\u63a5\u8457\u6309\u4f4f\u52a0\u71b1\u5668\u4e0a\u7684 OK \u6309\u9215\u3001\u76f4\u5230\u85cd\u8272 LED \u71c8\u958b\u59cb\u9583\u720d\uff0c\u518d\u6309\u4e0b\u9001\u51fa\u3002\u52a0\u71b1\u5668\u8a2d\u5b9a\u53ef\u80fd\u9700\u8981\u5e7e\u5206\u9418\u6642\u9593\u3002"
},
"user": {
"data": {
"account_id": "\u5e33\u865f ID",
"connection_type": "\u9078\u64c7\u9023\u7dda\u985e\u578b",
"host": "\u4e3b\u6a5f\u7aef",
"password": "\u5bc6\u78bc"
}
},
"description": "\u9078\u64c7\u9023\u7dda\u985e\u578b\u3002\u672c\u5730\u7aef\u5c07\u9700\u8981\u5177\u5099\u85cd\u82bd\u52a0\u71b1\u5668"
}
}
}
+11 -15
View File
@@ -18,7 +18,7 @@ from homeassistant.const import (
CONF_VERIFY_SSL,
Platform,
)
from homeassistant.core import HomeAssistant
from homeassistant.core import HomeAssistant, ServiceCall
from homeassistant.exceptions import ConfigEntryNotReady
from homeassistant.helpers import config_validation as cv
from homeassistant.helpers.aiohttp_client import async_get_clientsession
@@ -72,31 +72,27 @@ async def async_setup_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
hass.config_entries.async_setup_platforms(entry, PLATFORMS)
async def add_url(call) -> None:
async def add_url(call: ServiceCall) -> None:
"""Service call to add a new filter subscription to AdGuard Home."""
await adguard.filtering.add_url(
allowlist=False, name=call.data.get(CONF_NAME), url=call.data.get(CONF_URL)
allowlist=False, name=call.data[CONF_NAME], url=call.data[CONF_URL]
)
async def remove_url(call) -> None:
async def remove_url(call: ServiceCall) -> None:
"""Service call to remove a filter subscription from AdGuard Home."""
await adguard.filtering.remove_url(allowlist=False, url=call.data.get(CONF_URL))
await adguard.filtering.remove_url(allowlist=False, url=call.data[CONF_URL])
async def enable_url(call) -> None:
async def enable_url(call: ServiceCall) -> None:
"""Service call to enable a filter subscription in AdGuard Home."""
await adguard.filtering.enable_url(allowlist=False, url=call.data.get(CONF_URL))
await adguard.filtering.enable_url(allowlist=False, url=call.data[CONF_URL])
async def disable_url(call) -> None:
async def disable_url(call: ServiceCall) -> None:
"""Service call to disable a filter subscription in AdGuard Home."""
await adguard.filtering.disable_url(
allowlist=False, url=call.data.get(CONF_URL)
)
await adguard.filtering.disable_url(allowlist=False, url=call.data[CONF_URL])
async def refresh(call) -> None:
async def refresh(call: ServiceCall) -> None:
"""Service call to refresh the filter subscriptions in AdGuard Home."""
await adguard.filtering.refresh(
allowlist=False, force=call.data.get(CONF_FORCE)
)
await adguard.filtering.refresh(allowlist=False, force=call.data[CONF_FORCE])
hass.services.async_register(
DOMAIN, SERVICE_ADD_URL, add_url, schema=SERVICE_ADD_URL_SCHEMA
@@ -80,8 +80,8 @@ class AdGuardHomeFlowHandler(ConfigFlow, domain=DOMAIN):
adguard = AdGuardHome(
user_input[CONF_HOST],
port=user_input[CONF_PORT],
username=username, # type:ignore[arg-type]
password=password, # type:ignore[arg-type]
username=username,
password=password,
tls=user_input[CONF_SSL],
verify_ssl=user_input[CONF_VERIFY_SSL],
session=session,
@@ -3,7 +3,7 @@
"name": "AdGuard Home",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/adguard",
"requirements": ["adguardhome==0.5.0"],
"requirements": ["adguardhome==0.5.1"],
"codeowners": ["@frenck"],
"iot_class": "local_polling"
}
@@ -4,7 +4,7 @@
"existing_instance_updated": "\u0410\u043a\u0442\u0443\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 \u0441\u044a\u0449\u0435\u0441\u0442\u0432\u0443\u0432\u0430\u0449\u0430\u0442\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f."
},
"error": {
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0445 \u043f\u0440\u0438 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
"cannot_connect": "\u041d\u0435\u0443\u0441\u043f\u0435\u0448\u043d\u043e \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435"
},
"step": {
"hassio_confirm": {
@@ -2,6 +2,15 @@
"config": {
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2"
},
"step": {
"hassio_confirm": {
"description": "\u0398\u03ad\u03bb\u03b5\u03c4\u03b5 \u03bd\u03b1 \u03c1\u03c5\u03b8\u03bc\u03af\u03c3\u03b5\u03c4\u03b5 \u03c4\u03b9\u03c2 \u03c0\u03b1\u03c1\u03b1\u03bc\u03ad\u03c4\u03c1\u03bf\u03c5\u03c2 \u03c4\u03bf\u03c5 Home Assistant \u03ce\u03c3\u03c4\u03b5 \u03bd\u03b1 \u03c3\u03c5\u03bd\u03b4\u03ad\u03b5\u03c4\u03b1\u03b9 \u03bc\u03b5 \u03c4\u03bf AdGuard Home \u03c0\u03bf\u03c5 \u03c0\u03b1\u03c1\u03ad\u03c7\u03b5\u03c4\u03b1\u03b9 \u03b1\u03c0\u03cc \u03c4\u03bf \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf: {addon};",
"title": "AdGuard Home \u03bc\u03ad\u03c3\u03c9 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf\u03c5 Home Assistant"
},
"user": {
"description": "\u03a1\u03c5\u03b8\u03bc\u03af\u03c3\u03c4\u03b5 \u03c4\u03bf AdGuard Home \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03b5\u03c0\u03b9\u03c4\u03c1\u03ad\u03c8\u03b5\u03c4\u03b5 \u03c4\u03b7\u03bd \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03cd\u03b8\u03b7\u03c3\u03b7 \u03ba\u03b1\u03b9 \u03c4\u03bf\u03bd \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf."
}
}
}
}
@@ -9,8 +9,8 @@
},
"step": {
"hassio_confirm": {
"description": "Szeretn\u00e9 be\u00e1ll\u00edtani Home Assistantot AdGuard Home-hoz val\u00f3 csatlakoz\u00e1shoz, {addon} kieg\u00e9sz\u00edt\u0151 \u00e1ltal?",
"title": "Az AdGuard Home a Home Assistant kieg\u00e9sz\u00edt\u0151 seg\u00edts\u00e9g\u00e9vel"
"description": "Szeretn\u00e9 be\u00e1ll\u00edtani Home Assistantot AdGuard Home-hoz val\u00f3 csatlakoz\u00e1shoz, {addon} b\u0151v\u00edtm\u00e9ny \u00e1ltal?",
"title": "Az AdGuard Home a Home Assistant b\u0151v\u00edtm\u00e9nnyel"
},
"user": {
"data": {
@@ -19,7 +19,7 @@
"port": "Porta",
"ssl": "Utilizza un certificato SSL",
"username": "Nome utente",
"verify_ssl": "Verificare il certificato SSL"
"verify_ssl": "Verifica il certificato SSL"
},
"description": "Configura l'istanza di AdGuard Home per consentire il monitoraggio e il controllo."
}
@@ -9,7 +9,7 @@
},
"step": {
"hassio_confirm": {
"description": "\u30a2\u30c9\u30aa\u30f3 {addon} \u304c\u3001\u63d0\u4f9b\u3059\u308bAdGuard Home\u306b\u63a5\u7d9a\u3059\u308b\u3088\u3046\u306bHome Assistant\u3092\u8a2d\u5b9a\u3057\u307e\u3059\u304b\uff1f",
"description": "\u30a2\u30c9\u30aa\u30f3: {addon} \u306b\u3088\u3063\u3066\u63d0\u4f9b\u3055\u308c\u308b\u3001AdGuard Home\u306b\u63a5\u7d9a\u3059\u308b\u3088\u3046\u306bHome Assistant\u306e\u8a2d\u5b9a\u3092\u3057\u307e\u3059\u304b\uff1f",
"title": "Home Assistant\u30a2\u30c9\u30aa\u30f3\u7d4c\u7531\u306eAdGuard Home"
},
"user": {
@@ -14,7 +14,7 @@
},
"user": {
"data": {
"host": "Ana bilgisayar",
"host": "Sunucu",
"password": "Parola",
"port": "Port",
"ssl": "SSL sertifikas\u0131 kullan\u0131r",

Some files were not shown because too many files have changed in this diff Show More