Compare commits

..

1118 Commits

Author SHA1 Message Date
Paulus Schoutsen a7c67e6cde Bumped version to 2022.3.0b3 2022-02-25 10:01:16 -08:00
Paulus Schoutsen b767f83dc6 Adjust serializing resolved media (#67240) 2022-02-25 10:01:06 -08:00
Martin Hjelmare b3db4133c8 Fix zwave_js migration luminance sensor (#67234) 2022-02-25 10:01:05 -08:00
Franck Nijhof d9195434de Move Phone Modem reject call deprecation warning (#67223) 2022-02-25 10:01:04 -08:00
Franck Nijhof 2c075a00c7 Add support for 8-gang switches to Tuya (#67218) 2022-02-25 10:01:03 -08:00
Raman Gupta 549756218b Don't add extra entities for zwave_js controller (#67209)
* Don't add extra entities for zwave_js controller

* Revert reformat of controller_state

* fix indentation issues

* fix indentation issues
2022-02-25 10:01:02 -08:00
Avi Miller 921a011391 Bump the Twinkly dependency to fix the excessive debug output (#67207) 2022-02-25 10:01:02 -08:00
Paulus Schoutsen 51771707fb Add media source support to Kodi (#67203) 2022-02-25 10:01:01 -08:00
jjlawren 73eff0dde4 Adjust Sonos visibility checks (#67196) 2022-02-25 10:01:00 -08:00
martijnvanduijneveldt 53632cc9e5 Fix nanoleaf white flashing when using scenes (#67168) 2022-02-25 10:00:59 -08:00
Mark Dietzer b572d10e42 Fix Twitch component to use new API (#67153)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-25 10:00:58 -08:00
kevdliu 6fcdd3b411 Take Abode camera snapshot before fetching latest image (#67150)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-02-25 10:00:57 -08:00
Paulus Schoutsen 3372bdfc0f Bumped version to 2022.3.0b2 2022-02-24 20:57:23 -08:00
Zack Barett 18087caf85 20220224.0 (#67204) 2022-02-24 20:57:16 -08:00
Paulus Schoutsen 9e7cbb011c Bump aiohue to 4.3.0 (#67202) 2022-02-24 20:57:15 -08:00
Paulus Schoutsen 694fb2ddde Move media_source to after_deps (#67195) 2022-02-24 20:57:15 -08:00
J. Nick Koston 32566085c8 Fix ElkM1 systems that do not use password authentication (#67194) 2022-02-24 20:57:14 -08:00
J. Nick Koston 3c0cd126dd Move camera to after deps for HomeKit (#67190) 2022-02-24 20:57:13 -08:00
Franck Nijhof 596f3110ba Fix MQTT config entry deprecation warnings (#67174) 2022-02-24 20:57:13 -08:00
Paulus Schoutsen 37ebeae83b Bumped version to 2022.3.0b1 2022-02-23 22:16:27 -08:00
Keilin Bickar 70f9196e8f SleepIQ Dependency update (#67154) 2022-02-23 22:16:16 -08:00
Gage Benne 25933e1186 Bump pydexcom to 0.2.3 (#67152) 2022-02-23 22:16:16 -08:00
Robert Hillis f40f25473c Bump aiopyarr to 22.2.2 (#67149) 2022-02-23 22:16:15 -08:00
J. Nick Koston f0383782f9 Use compact encoding for JSON websocket messages (#67148)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-23 22:16:14 -08:00
Paulus Schoutsen 0cd4f74d73 Allow get_states to recover (#67146) 2022-02-23 22:16:13 -08:00
Paulus Schoutsen 6a31cd9279 Fix SQL sensor (#67144) 2022-02-23 22:16:12 -08:00
jjlawren 3550a92629 Fix Sonos radio metadata processing with missing data (#67141) 2022-02-23 22:16:11 -08:00
Paulus Schoutsen b0d043c55b Media source to verify domain to avoid KeyError (#67137) 2022-02-23 22:16:11 -08:00
soluga b21d954e50 Don't try to resolve state if native_value is Null (#67134) 2022-02-23 22:16:10 -08:00
Franck Nijhof 75eed17c0b Bumped version to 2022.3.0b0 2022-02-23 21:15:32 +01:00
Bram Kragten 3ca918d454 Update frontend to 20220223.0 (#67130) 2022-02-23 21:14:01 +01:00
Marc Mueller ec980a574b Improve typing [util.decorator] (#67087) 2022-02-23 20:58:42 +01:00
Robert Svensson 46c2bd0eb0 Tweak UniFi client tracker (#67129) 2022-02-23 09:26:46 -10:00
Erik Montnemery eb4bc273af Improve Tasmota device removal (#66811) 2022-02-23 20:21:28 +01:00
Raman Gupta 9fe61f9e7f Add zwave_js light support for HSM-200 V1 (#67089)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-23 20:18:42 +01:00
Joakim Plate 9906717e33 Use opt in device removal for rfxtrx (#58252) 2022-02-23 20:17:48 +01:00
Martin Hjelmare 2dd14f8e94 Add mysensors remove device support (#67128) 2022-02-23 10:59:12 -08:00
Mick Vleeshouwer cb070f3138 Fix RTS device delays in Overkiz integration (#67124) 2022-02-23 10:46:08 -08:00
Maximilian 731f9ca7e0 Fix missing nina start value (#66869) 2022-02-23 10:45:10 -08:00
Lars e22f8496c0 Allow sending telegram stickers from sticker packs (#57482) 2022-02-23 10:42:17 -08:00
R0nd f4aefdbf0b Support setting volume in lg_netcast media_player (#58126)
Co-authored-by: Artem Draft <Drafteed@users.noreply.github.com>
2022-02-23 19:20:52 +01:00
zvldz 8c69194695 Add telegram message_tag, disable_notification, parse_mode (#63604)
Co-authored-by: root <zvldz@users.noreply.github.com>
2022-02-23 19:19:01 +01:00
sophof 79d267f8d7 Fix derivative integration showing unexpected spikes (#65528) 2022-02-23 10:16:12 -08:00
Mick Vleeshouwer 2a697bdf41 Add support for Atlantic Electrical Heater in Overkiz integration (#67045)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-23 19:15:04 +01:00
Milan Meulemans a54e3ca1f8 Add Nanoleaf Swipe Device Trigger (#66195) 2022-02-23 10:10:30 -08:00
Jonathan Keljo a08165a8d7 Create greeneye_monitor entities when monitor connects (#66710) 2022-02-23 10:09:12 -08:00
Kevin Stillhammer 93fab1f996 Cleanup Waze_travel_time_sensor_tests (#67047) 2022-02-23 09:59:42 -08:00
epenet e37402e1d5 Import tag (#64539)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-23 09:55:31 -08:00
Paulus Schoutsen 3380a15bbb Mobile app: Drop descriptive emoji name support (#67120) 2022-02-23 18:54:27 +01:00
J. Nick Koston c243247e35 Remove effects from WiZ wall dimmer switches (#67097) 2022-02-23 18:38:18 +01:00
patagona facf22c2dd Correctly handle missing mpd albumart (#66771)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-23 18:21:20 +01:00
Francois Chagnon 87593fa3ec Add Humidifier support to zwave_js (#65847) 2022-02-23 18:01:45 +01:00
jjlawren cfd763db40 Refactor Sonos media metadata handling (#66840)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-23 08:58:00 -08:00
Marc Mueller 8b7639940e Fix type issues [mobile_app] (#67091) 2022-02-23 08:47:54 -08:00
Joakim Sørensen 49aabcb2ac Add homeassistant to partial backup service (#67117) 2022-02-23 08:38:52 -08:00
epenet 419e683526 Add Remote Engine Start status to Renault integration (#67028)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-23 08:14:58 -08:00
Robert Hillis eb80abf89e Add Phone Modem call reject button (#66742)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-23 17:05:21 +01:00
Robert Hillis 8befb3b905 Deprecate yaml config for fritzbox callmonitor (#61762)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-23 15:22:50 +01:00
Marc Mueller 0a6e30e4b9 Improve sonos ConfigFlow registration (#67110) 2022-02-23 15:21:46 +01:00
David F. Mulcahey f82d1a88e8 Bump ZHA quirks to 0.0.67 (#67109) 2022-02-23 08:24:46 -05:00
Joakim Sørensen 834f1403c6 Bump pyhaversion from 21.11.1 to 22.02.0 (#67108) 2022-02-23 13:37:27 +01:00
Joakim Sørensen d97da2fd49 Bump awesomeversion from 22.1.0 to 22.2.0 (#67107) 2022-02-23 13:37:07 +01:00
Robert Svensson dd88a05cb4 Make type checking pass for deCONZ init, gateway and services (#66054)
* Type and enable type checking for init, config_flow, diagnostics, gateway and services

* Fix import

* Fix review comment
2022-02-23 13:10:35 +01:00
Franck Nijhof 3afadf8adb Revert "Block peer certs on supervisor" (#67104) 2022-02-23 12:32:07 +01:00
Jan Bouwhuis 8dbb184ed5 Add MQTT publish ACK timeout test (#67062) 2022-02-23 12:30:13 +01:00
Jan Bouwhuis 845bf80e72 Mqtt improve test coverage (#66279)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-23 12:29:32 +01:00
Timothy Kist 6a5215dc0e Allow multidict 6.0.2+ to fix ZHA, gTTS and other integrations (#67046) 2022-02-23 12:25:54 +01:00
J. Nick Koston e1989e2858 Enable strict typing for powerwall (#65577) 2022-02-23 12:15:31 +01:00
Matthias Lohr 34bae4dcd4 Add timer sensors for TOLO (#66938) 2022-02-23 12:08:47 +01:00
Matthias Lohr 6c922e1fdb Add number platform to tolo integration (#66799) 2022-02-23 12:08:28 +01:00
Ryan Fleming 9db2d8768b Add tools to octoprint when the printer comes back online (#59666)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-23 11:59:28 +01:00
Marc Mueller 4fecd5d8af Fix type issues [fireservicerota] (#67094)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-23 11:53:02 +01:00
Marc Mueller 0e54bd448a Remove unused attribute [litterrobot] (#67106) 2022-02-23 11:31:31 +01:00
Poltorak Serguei c59115bb4f Add suggested area to the Z-Wave.Me integration (#66986)
* Add Z-Wave.Me Device Info

* fix

* fix

* small fix

Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
2022-02-23 10:18:33 +01:00
Marc Mueller b6572d1cab Fix type issues [geniushub] (#67095) 2022-02-23 09:55:26 +01:00
Paulus Schoutsen 459e6c273b Track hidden items in media source (#67096) 2022-02-23 09:51:01 +01:00
Erik Montnemery c879bf295b Deprecate manual MQTT configuration available in config flow (#66247) 2022-02-23 09:41:44 +01:00
Martin Hjelmare 93247d7933 Use RequestError in tradfri (#67101) 2022-02-23 09:34:32 +01:00
Marc Mueller c11663344d Fix type issues [firmata] (#67093) 2022-02-23 08:57:06 +01:00
Marc Mueller 636d791b37 Fix type issues [litterrobot] (#67092) 2022-02-23 08:44:35 +01:00
Paulus Schoutsen fda3877852 Improved local media ID handling (#67083) 2022-02-23 08:39:54 +01:00
Simone Chemelli c76d2c4283 Fritz device_trackers for non mesh devices (#67006) 2022-02-22 16:35:48 -08:00
Michael b8590fde40 Improve tests of Fritz!Tools (part1) (#66972) 2022-02-22 16:35:22 -08:00
jjlawren 1658d530e1 Add Plex scan_clients button, enable autoscan (#67055)
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2022-02-22 16:34:48 -08:00
J. Nick Koston d5a2381f07 Add diagnostics support to lutron_caseta (#67079) 2022-02-22 16:31:41 -08:00
GitHub Action bdcdf52225 [ci skip] Translation update 2022-02-23 00:20:00 +00:00
Simone Chemelli 0c9be633f5 Fix missing uptime sensor in some Fritz scenarios (#67073)
* Fix missing uptime sensor in some Fritz scenarios

* apply review comment
2022-02-23 01:02:12 +01:00
Mick Vleeshouwer 5e938ea61b Bump PyOverkiz and improve code quality (late review) (#67075) 2022-02-22 14:00:14 -10:00
Marcel van der Veldt cb190a7b17 Add (basic) diagnostics support for Hue integration (#67074)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-22 15:44:02 -08:00
Michael 1274078f1b Fix naming of device entities created by Fritz!Tools (#67076) 2022-02-22 15:39:19 -08:00
Paulus Schoutsen 7d4f5a68d6 Bump frontend to 20220222.0 (#67078) 2022-02-22 15:33:38 -08:00
Paulus Schoutsen be09ca3a71 Add source name to radio browser media source (#67077) 2022-02-23 00:11:02 +01:00
Paulus Schoutsen 938b64081b Block peer certs on supervisor (#66837)
Co-authored-by: Pascal Vizeli <pvizeli@syshack.ch>
Co-authored-by: Mike Degatano <michael.degatano@gmail.com>
2022-02-22 13:59:40 -08:00
Paulus Schoutsen 756e711850 Add a new validate config WS command (#67057) 2022-02-22 22:28:37 +01:00
Paulus Schoutsen c2e62e4d9f Re-org device automations (#67064)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-02-22 13:15:16 -08:00
J. Nick Koston 9950e543df Add newly discovered samsungtv OUI (#67059) 2022-02-22 20:15:35 +01:00
Shay Levy db8620dac6 Bump aioshelly to 1.0.10 (#67056) 2022-02-22 20:32:39 +02:00
Mick Vleeshouwer 30c9b8ee56 Improve code quality for Overkiz integration (#67060) 2022-02-22 08:32:23 -10:00
epenet a60c37cdb8 Expose Samsung wrapper as async (#67042)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-22 08:31:16 -10:00
Thibaut d25a46d68d Add low speed Overkiz cover (#66750) 2022-02-22 08:01:19 -10:00
Chris Talkington f30681dae7 Use aiopyarr for sonarr (#65349) 2022-02-22 09:33:10 -08:00
Simone Chemelli c14912471d Bump pyuptimerobot to 22.2.0 (#67041) 2022-02-22 19:14:48 +02:00
Kevin Stillhammer dbb8806b31 Use length_util conversion (#67049) 2022-02-22 19:06:23 +02:00
Martin Hjelmare d96c2df6a8 Bump pyicloud to 1.0.0 (#67037) 2022-02-22 16:25:46 +01:00
G Johansson 2a2f245ae8 Add mac address as connection for Sensibo devices (#67035) 2022-02-22 15:13:22 +01:00
G Johansson a4a5057b0b Improve code quality moon (#66461)
* Code quality moon

* Fix review comments
2022-02-22 15:59:59 +02:00
Joakim Sørensen 633e7e90ac Deprecate the updater integration (#67038) 2022-02-22 14:46:46 +01:00
Marc Mueller 995f4fbfda Upgrade pwmled to 1.6.10 (#67034) 2022-02-22 14:45:05 +01:00
epenet b6d8a82e7d Add Dacia as supported brand to Renault (#67029)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-22 14:43:02 +01:00
Marc Mueller 8eb7507482 Cleanup after setup.py removal (#67036) 2022-02-22 14:32:55 +01:00
G Johansson b57a7ce6a3 Bump pysensibo to v1.0.7 (#67032) 2022-02-22 14:31:49 +01:00
epenet c3dc936b54 Cleanup Renault tests (#67030)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-22 14:21:38 +01:00
Pascal Winters 3dd31acc33 Bump PySwitchbot to 0.13.3 (#67025) 2022-02-22 14:17:50 +01:00
Raman Gupta a12d6aa6ff Log error when using zwave_js 'refresh_value' on ping button/node status sensor (#66847)
* Raise when using 'zwave_js.refresh_value' on ping button

* Revert test change

* block till done

* Switch from raising an exception to logging an error for both the ping button and node status sensor

* missed commit
2022-02-22 12:03:01 +01:00
Sjoerd 909de62bd4 Add the ICAO 24-bit address to the OpenSky sensor events (#66114) 2022-02-22 11:31:21 +01:00
Franck Nijhof 0042fd5199 Fix nightly builder (#67022) 2022-02-22 11:27:38 +01:00
Ville Skyttä 09e16fa3dc Add service info for upcloud entities (#61740) 2022-02-22 10:39:09 +01:00
jjlawren df9e92b4b8 Add log message when Plex library section not found (#66820) 2022-02-22 10:35:19 +01:00
Erik Montnemery 31867d54b6 Add Google Cast groups to device registry (#66805) 2022-02-22 10:26:41 +01:00
J. Nick Koston f69571f164 Add support for climate fan and oscillate mode to HomeKit (#66463) 2022-02-22 09:58:31 +01:00
J. Nick Koston 0b813f8600 Add configuration_url to lookin (#67021) 2022-02-22 09:50:59 +01:00
epenet 92b5bcffb6 Bump renault-api to 0.1.9 (#67016)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-22 09:16:02 +01:00
Keilin Bickar 7f5304b6c2 Add Switch entity to SleepIQ (#66966)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-21 21:53:04 -10:00
Paulus Schoutsen e0ff7dc2e7 Fix radio browser on Sonos (#67017) 2022-02-22 08:51:41 +01:00
Raman Gupta 98c00c0255 Bump zwave-js-server-python to 0.35.1 (#67014) 2022-02-22 08:44:03 +01:00
Paulus Schoutsen 7c7a86242e Allow supported brands in manifests (#67015) 2022-02-22 08:42:57 +01:00
Kevin Stillhammer 010e6cb4ba waze_travel_time: always resolve zones (#66162) 2022-02-21 23:17:49 -08:00
Kevin Stillhammer a17650550f google_travel_time: always resolve zones (#66165) 2022-02-21 23:17:18 -08:00
Kevin Stillhammer 6ec0e3811a Waze travel time sensor tests (#66558) 2022-02-21 23:15:35 -08:00
Kevin Stillhammer 2cba9b3d7e Cleanup_google_travel_time_tests (#66868) 2022-02-21 23:05:12 -08:00
J. Nick Koston d554a82875 Add diagnostics support to flux_led (#67012) 2022-02-21 22:53:41 -08:00
Mike Degatano a51d9012ad Fix MQTT lights tests using STATE_OFF (#67011) 2022-02-21 22:52:31 -08:00
Franck Nijhof 23fdf9eef8 Use selectors in Open-Meteo configuration flow (#67004) 2022-02-22 01:29:58 +01:00
GitHub Action 102ae9f0e3 [ci skip] Translation update 2022-02-22 00:17:23 +00:00
Sebastian Lövdahl 744a2013cd Improve Vallox filter remaining time sensor (#66763) 2022-02-21 13:17:54 -10:00
Michael Chisholm b19bf9b147 Add dlna_dms integration to support DLNA Digital Media Servers (#66437) 2022-02-21 15:14:08 -08:00
rubenverhoef 95de1dd446 Additional MQTT light command templates (#63361)
Co-authored-by: jbouwh <jan@jbsoft.nl>
2022-02-22 00:00:49 +01:00
jan iversen 8741ff0684 Diferentiate between attr_name and entity_id in Modbus tests (#66999) 2022-02-21 14:56:31 -08:00
corneyl 137793c067 Add sensors for next Picnic deliveries (#66474) 2022-02-21 23:45:30 +01:00
Keilin Bickar e6af7847fc Add Multi factor authentication support for Sense (#66498)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-21 12:05:12 -10:00
Shay Levy ba2bc975f4 Fix Shelly event handling (#67000) 2022-02-21 23:03:22 +01:00
Mick Vleeshouwer d45921622a Update pyoverkiz to 1.3.6 (#66997) 2022-02-21 23:57:28 +02:00
G Johansson d15acaf747 Implement number platform for Sensibo (#66898) 2022-02-21 11:50:50 -10:00
Matthias Alphart 0606b4a843 add apparent and reactive power DeviceClass (#65938) 2022-02-21 21:35:24 +01:00
epenet d49029e9fc Add door and lock status to Renault integration (#66698)
* Add coordinator for lock status

* Add fixture for lock status

* Add lock status binary sensor

* Add to test constants

* Adjust conftest

* Fix inverted state

* Add door status

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-21 20:07:43 +01:00
Diogo Gomes 9ed4bcf965 Add unique_id to the filter component (#65010)
* Optional manually defined uniqueid

* move to _attr
2022-02-21 21:00:09 +02:00
Mick Vleeshouwer 2456d8a401 Remember user and hub after input in ConfigFlow (#66608) 2022-02-21 20:56:20 +02:00
jjlawren 76149876ab Enable fallback polling for Sonos microphone binary_sensor (#66299) 2022-02-21 19:46:20 +01:00
Franck Nijhof 3644740786 Extend Plugwise DeviceInfo (#66619) 2022-02-21 19:45:04 +01:00
J. Nick Koston 4811b510eb Ensure WiZ can still setup with old firmwares (#66968) 2022-02-21 19:42:54 +01:00
Mick Vleeshouwer 5af4068583 Fix binary sensor translations for carbon_monoxide (#66891)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-21 10:34:38 -08:00
J. Nick Koston 9a5eec561a Only set require_restart on config entry reload if its not recoverable (#66994) 2022-02-21 10:27:23 -08:00
jan iversen cb877adb6a Allow multiread in modbus binary_sensor (#59886) 2022-02-21 10:22:50 -08:00
jan iversen 0f580af1d3 Correct switch verify to handle discret_read in Modbus (#66890) 2022-02-21 19:15:03 +01:00
Paulus Schoutsen 8080aab98e Allow deleting files from media source (#66975) 2022-02-21 19:14:42 +01:00
Diogo Gomes abaf284ef2 Cast string back to datetime in Sensor Filter (#65396) 2022-02-21 19:14:23 +01:00
Robert Hillis 14a7ee5d0b Deprecate "wanted" sensor in radarr (#63818)
* Remove invalid "wanted" sensor from radarr

* uno mas
2022-02-21 10:12:09 -08:00
javicalle cd38878a4c Restore states for RFLink binary_sensors (#65716) 2022-02-21 19:11:05 +01:00
Robert Hillis 7947866962 Refactor tests for modem_callerid (#59691)
* Refactor tests for modem_callerid

* uno mas

* uno mas

* uno mas
2022-02-21 10:08:19 -08:00
J. Nick Koston f2f2a08966 Add support for auto target fan state in HomeKit fans (#66383) 2022-02-21 19:08:09 +01:00
Teemu R 16cc2b790b Create LED switches for tplink dimmers (#66839) 2022-02-21 19:02:11 +01:00
Allen Porter c6114f2631 Simplify nest placeholder image loading and share across all cameras (#66580) 2022-02-21 19:01:04 +01:00
Mike Degatano 8ea6cbc257 Support variables in templates with timeout (#66990) 2022-02-21 09:56:20 -08:00
avee87 0dfc4ec9be Rename manual alarm integrations (#66979) 2022-02-21 18:24:02 +01:00
Maximilian 75b5ef45d8 Fix nina warnings in city states (#65914) 2022-02-21 18:22:54 +01:00
Franck Nijhof d839febbe7 Add Radio Browser integration (#66950) 2022-02-21 09:13:02 -08:00
Michael 660fb393f0 Enable sensors based on wan scenario in Fritz!Tools (#66944) 2022-02-21 18:03:38 +01:00
J. Nick Koston 7b334d1755 Add additional WiZ OUIs (#66991) 2022-02-21 18:02:09 +01:00
uvjustin 4efada7db0 Allow stream log level to change at runtime (#66153) 2022-02-21 17:58:15 +01:00
Igor Pakhomov a4ba511276 Add aditional sensors for dmaker.airfresh.a1/t2017 to xiaomi_miio (#66370) 2022-02-21 17:56:34 +01:00
Marc Mueller 5c5f9418ee Remove setup.py (#66023) 2022-02-21 17:53:58 +01:00
J. Nick Koston a82d4d1b7b Add support for dual head WiZ devices (#66955) 2022-02-21 17:50:42 +01:00
starkillerOG fe1229a7d9 Motion blinds add VerticalBlindLeft support (#66961) 2022-02-21 17:42:52 +01:00
Jonathan Keljo 4b28025a71 Bump greeneye_monitor to v3.0.3 (#66973) 2022-02-21 17:06:07 +01:00
Franck Nijhof f412dd4b8d Merge branch 'master' into dev 2022-02-21 16:15:23 +01:00
Garrett b560909b31 Bump to subarulink 0.4.2 (#66403) 2022-02-21 13:09:36 +01:00
epenet 39c1209e1c Bump samsungtvws to 1.7.0 (#66978)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-21 12:42:54 +01:00
Erik Montnemery c496748125 Add WS API for removing a config entry from a device (#66188)
* Add WS API for removing a config entry from a device

* Address review comments

* Address review comments

* Remove entity cleanup from ConfigEntries

* Update + add tests

* Improve comments in test

* Add negative test

* Refactor according to review comments

* Add back async_remove_config_entry_device

* Remove unnecessary error handling

* Simplify error handling
2022-02-21 10:11:18 +01:00
Julien 7a39c769f0 Fix typo in const.py (#66856) 2022-02-21 09:50:14 +01:00
epenet 3b146d8e9b Use hass.add_job in samsungtv (#66976)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-21 09:11:29 +01:00
Dave T 865159781f Use new enums in vizio tests (#62710)
* Use new enums in vizio tests

* Code review: revert wrong conftest changes

* Code review: Revert incorrect removal of vizio const

* Reinstate wrongly reverted files

* Fix double line

* Fix new test after rebase
2022-02-21 08:28:56 +01:00
GitHub Action f921856f5f [ci skip] Translation update 2022-02-21 00:17:31 +00:00
Tom 620b653d76 Plugwise bump module version to fix heating-state and OnOff devices (#66936) 2022-02-20 20:45:19 +01:00
rikroe 8c96f1457d Bump bimmer_connected to 0.8.11 (#66951)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-02-20 19:17:08 +02:00
Klaas Schoute 7c8f4a4262 Update Pure Energie integration (#66946)
* Remove service entry_type

* Set raise on progress
2022-02-20 16:58:21 +01:00
dewdrop dbb2c64d86 Fix broken aftership sensor after pyaftership 21.11.0 bump (#66855)
* Fix update to pyaftership 21.11.0

Variable name collision and a missing property access was causing this sensor to always return zero elements.

* Move subscripting out of awaited statement
2022-02-20 15:33:19 +01:00
Shay Levy efd0e898f9 Bump aiowebostv to 0.1.3 (#66942) 2022-02-20 16:25:33 +02:00
Michael Chisholm 3d5790aaad Avoid accessing hass.data in test_play_media_didl_metadata (#66939) 2022-02-20 14:14:53 +01:00
Aidan Timson 5b28e2d983 Add discussions sensors to GitHub (#66937) 2022-02-20 13:32:24 +01:00
Joakim Sørensen 2d52aca9eb Add Latest Tag sensor to GitHub integration (#66932) 2022-02-20 13:00:01 +01:00
G Johansson 3cbbf90f23 Bump pysensibo to v1.0.6 (#66930) 2022-02-20 12:32:12 +01:00
Joakim Sørensen bce033cfc7 Enable all GitHub sensors by default (#66931) 2022-02-20 12:06:27 +01:00
Joakim Sørensen 9f57ce504b Use GraphQL for GitHub integration (#66928) 2022-02-20 11:59:11 +01:00
jan iversen 4ca339c5b1 Set slave default to 0, as already documented in Modbus (#66921) 2022-02-20 11:56:38 +01:00
Raman Gupta 6e5ae3e2e4 Add zwave_js.event automation trigger (#62828)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-20 11:53:03 +01:00
Franck Nijhof ddedaf6f70 Introduce const file in LaMetric (#66929) 2022-02-20 11:47:36 +01:00
Hans Oischinger 94a0f1c7b3 Add service configuration URL for vicare (#66927) 2022-02-20 11:47:05 +01:00
Joakim Sørensen 48dd77f341 Bump aiogithubapi from 22.2.0 to 22.2.3 (#66924) 2022-02-20 12:25:04 +02:00
Paulus Schoutsen 833cba71d7 Bump frontend to 20220220.0 (#66919) 2022-02-19 22:13:52 -08:00
Raman Gupta 10ad97a5e2 Improve zwave_js notification event handling (#66790) 2022-02-19 21:15:54 -08:00
Erik Montnemery c582aecc10 Deduplicate code in cast media_player (#66815)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-19 21:14:31 -08:00
Simone Chemelli f0fbc7bb2c Fritz: fix unbound topology (#66877)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-19 21:07:40 -08:00
Michael Chisholm 3c15fe8587 Add media browser support to dlna_dmr (#66425) 2022-02-19 21:07:38 -08:00
jan iversen 6a7872fc1b Remove async_setup_component() from tests (#66905) 2022-02-19 21:00:14 -08:00
Allen Porter f3add292d5 Update nest climate set_temperature to allow hvac_mode (#66909) 2022-02-19 20:57:29 -08:00
J. Nick Koston e9ca7c2516 Add support for WiZ diagnostics (#66817) 2022-02-19 20:54:12 -08:00
GitHub Action c4cc6ca0ba [ci skip] Translation update 2022-02-20 00:20:09 +00:00
Chris Talkington 273b8de994 Update rokuecp to 0.14.1 (#66894) 2022-02-19 16:42:57 -06:00
Austin Mroczek 82950dc037 bump total_connect_client to 2022.2.1 (#66907) 2022-02-19 22:53:52 +02:00
G Johansson 1c9f05e6d8 Bump pysensibo to v1.0.5 (#66906) 2022-02-19 22:52:33 +02:00
René Klomp 496583bca5 Prefix sma sensor name (#65234)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-19 20:27:06 +01:00
James Taylor 27038fda27 Update RSS feed template (#62966) 2022-02-19 13:26:42 -06:00
J. Nick Koston a58fd87964 Bump aiodiscover to 1.4.8 (#66892) 2022-02-19 20:26:33 +01:00
jjlawren 69ce03465d Proxy Plex thumbnail images in media browser (#66702)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-19 20:25:33 +01:00
Teemu R 88b7a9fccc Enable consumable sensors per default for xiaomi_miio vacuums (#66843)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-19 20:22:49 +01:00
jingsno e8fc4cc627 Fix Mill Gen1 Climate Control (#66899)
Fixes Mill Gen1 Climate Control, so it correctly returns the current status of the heating element.
2022-02-19 19:21:10 +01:00
G Johansson 6464ab8356 Bump pysensibo to 1.0.4 (#66886) 2022-02-19 12:00:49 -06:00
Keilin Bickar d59dbbe859 Create button entities for SleepIQ (#66849) 2022-02-19 11:54:52 -06:00
Rob Wolinski 18f26d312a Update srpenergy dependency to 1.3.6 (#66821) 2022-02-19 18:08:27 +01:00
Klaas Schoute 6c2d6fde66 Add Pure Energie integration (#66846) 2022-02-19 17:53:25 +01:00
Shay Levy 5359050afc Add Shelly gen2 error sensors (#66825) 2022-02-19 18:51:01 +02:00
J. Nick Koston 8f0b6eac41 Fix yeelight config flow ip update and timeout (#66883) 2022-02-19 17:24:50 +01:00
Marc Mueller 45d8d04c40 Use assignment expressions [other] (#66882) 2022-02-19 17:22:51 +01:00
Marc Mueller 4f20a8023b Use assignment expressions [A-I] (#66880) 2022-02-19 17:21:26 +01:00
Marc Mueller 6e49b0e122 Use assignment expressions [K-Z] (#66881) 2022-02-19 17:19:46 +01:00
jan iversen d76687d672 Add support for INT8 and UINT8 in Modbus (#66889) 2022-02-19 17:17:29 +01:00
Marc Mueller 596644d715 Fix typo [recorder] (#66879) 2022-02-19 16:04:20 +01:00
J. Nick Koston a18d4c51ff Ensure dhcp can still discover new devices from device trackers (#66822)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-19 09:01:34 -06:00
Marc Mueller c46728c2b2 Fix modbus typing (#66872) 2022-02-19 15:48:05 +01:00
Marc Mueller 3770f4da5c Fix braviatv typing (#66871) 2022-02-19 15:46:22 +01:00
Anil Daoud 6cd3b45b74 Kaiterra type issue (#66867) 2022-02-19 15:44:18 +01:00
Greg Sheremeta bcec4a5827 typo fix networrk --> network (#66878) 2022-02-19 15:30:07 +01:00
Marc Mueller 728dfa2581 Don't run pytest CI jobs on push to forks (#66870) 2022-02-19 15:18:40 +01:00
Joakim Sørensen 8e39ba387d Add missing hass argument in async_request_config call (#66864) 2022-02-19 13:22:00 +02:00
Simon Hansen 52ca1a3d47 Code enhancements for ISS (#66813)
* Code enhancements for ISS

* Assert options
2022-02-19 11:38:10 +01:00
Raman Gupta 4ff1f5c788 Create zwave_js ping button at the right time (#66848)
* Create zwave_js ping button at the right time

* fix tests
2022-02-19 11:16:14 +01:00
GitHub Action fd24d9b1ad [ci skip] Translation update 2022-02-19 00:19:24 +00:00
Paulus Schoutsen 1bbc1f5f55 Validate in split_entity_id (#66835) 2022-02-18 16:11:17 -08:00
J. Nick Koston 3bf2be1765 Startup with an emergency self signed cert if the ssl certificate cannot be loaded (#66707) 2022-02-18 16:08:26 -08:00
Paulus Schoutsen 0269ad4738 Bump hass-nabucasa to 0.53.1 (#66845) 2022-02-18 16:04:54 -08:00
Keilin Bickar aa00bd9b96 Add SleepIQ device type (#66833)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-18 17:42:35 -06:00
Marc Mueller 1ad023a63f Add type ignore error codes [auth] (#66774) 2022-02-18 23:29:56 +01:00
Erik Montnemery ec67dcb620 Add support for validating and serializing selectors (#66565)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-18 14:24:08 -08:00
bvweerd 2ca6ec0290 Fix eq3btsmart setting HVAC modes (#66394)
* Partly reverse preset incompatibility

It seems like some presets are unsupported by the native climate control of Home Assistant core. This change reverts the previous preset changes causing issues. It worked perfect with simple-thermostat custom lovelace card.

* Remove priority of preset above HVAC mode 

If a preset was available of the given command, the hvac mode change was ignored. This can result in HVAC settings are ignored. By removing the check for a preset, the preset does not supersede the HVAC mode anymore

* Revert "Partly reverse preset incompatibility"

This reverts commit 10fdc8eef457c369a042c631376ed33f29d0d8bf.
2022-02-18 23:19:18 +01:00
jjlawren 3bfc6cc756 Bump SoCo to 0.26.3 (#66834) 2022-02-18 15:55:55 -06:00
epenet 3aa18ea5d8 Add installed apps to samsungtv sources (#66752)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-18 13:33:49 -08:00
jjlawren cfd908218d Initialize AlarmDecoder binary_sensor state as off instead of unknown (#65926) 2022-02-18 13:32:04 -08:00
G Johansson abc73ff2e1 Improve code quality workday (#66446)
* Code quality workday

* Modify from review

* Modify from review 2

* Fix mypy
2022-02-18 23:04:19 +02:00
Paulus Schoutsen c95a72d2ad Merge pull request #66829 from home-assistant/rc 2022-02-18 12:52:13 -08:00
Franck Nijhof fa8238bc04 Downgrade log warning->info for unregistered webhook message (#66830) 2022-02-18 12:43:25 -08:00
Mathew Verdouw 48e3f9584b Add broadlink lb2 support (#63530)
* Update const.py

* Update to support LB2 version smart bulbs in Broadlink integration

* Update const.py

Added Space.

* Update updater.py

Updated so that LB2 lights use the LB1 update manager.
2022-02-18 21:39:29 +01:00
Paulus Schoutsen d3bb622a3c Bump hass-nabucasa to 0.53.0 (#66826) 2022-02-18 11:53:02 -08:00
Paulus Schoutsen 15ca244c3c Bumped version to 2022.2.9 2022-02-18 11:51:56 -08:00
Paulus Schoutsen 474cf4be04 Bump aiohue to 4.2.1 (#66823) 2022-02-18 11:51:50 -08:00
Shay Levy ef85afde6d Handle default notify data in webostv (#66770) 2022-02-18 11:51:49 -08:00
Shay Levy 480de899fb Fix webostv notify service (#66760) 2022-02-18 11:51:49 -08:00
Tom Harris def8e933d7 Bump pyinsteon to 1.0.16 (#66759) 2022-02-18 11:51:37 -08:00
epenet 6ebf520a0c Ensure new samsungtv token is updated in the config_entry (#66731)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-18 11:50:39 -08:00
Sascha Sander 86aad35e77 Correct current temperature for tuya thermostats (#66715)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-18 11:50:38 -08:00
Paulus Schoutsen 7f9017316b Bump frontend to 20220203.1 (#66827) 2022-02-18 11:43:29 -08:00
Paulus Schoutsen 90d6172fd0 Bump aiohue to 4.2.1 (#66823) 2022-02-18 11:40:56 -08:00
Jeef 92834cfd7a Dependency Bump on Intellifire Lib (#66814) 2022-02-18 21:12:40 +02:00
Keilin Bickar a367d2be40 Modernize Sleepiq and add new entities (#66336)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-18 12:50:44 -06:00
Kevin Stillhammer beb30a1ff1 Add google_travel_time sensor tests (#66568)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-18 10:21:28 -08:00
Jonathan Keljo 011c645ee2 Silence sisyphus chatty logging from dependencies (#66711) 2022-02-18 10:03:03 -08:00
Jeef 2d2101528c Intellifire Diagnostic Sensors (#66597) 2022-02-18 18:31:23 +01:00
Marc Mueller 30e2411761 Add type ignore error codes [last ones] (#66816) 2022-02-18 18:15:57 +01:00
Erik Montnemery fcf774ecfc Small cleanup of MQTT mixins (#66812) 2022-02-18 16:51:14 +01:00
Erik Montnemery faf854190d Add support for removing Google Cast devices (#66808) 2022-02-18 16:25:28 +01:00
Erik Montnemery f1648960f5 Improve cleanup of Google Cast entities (#66801) 2022-02-18 15:05:14 +01:00
Sascha Sander 9389d1e561 Correct current temperature for tuya thermostats (#66715)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-18 15:00:49 +01:00
Martin Hjelmare 56d45c49e9 Clean webostv notify (#66803)
* Replace conf with attr

* Test notify service without data parameter

* Clean kwargs access

* Replace icon constant

* Use data from notify
2022-02-18 15:03:05 +02:00
Erik Montnemery ba6d1976df Improve MQTT device removal (#66766)
* Improve MQTT device removal

* Update homeassistant/components/mqtt/mixins.py

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

* Adjust tests

* Improve test coverage

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-18 13:45:25 +01:00
Marc Mueller cb1efa54bb Add workflow_dispatch ci trigger (#66697) 2022-02-18 11:54:44 +01:00
Erik Montnemery 2abcd7cd94 Correct state restoring for MQTT temperature sensors (#66741)
* Correct state restoring for MQTT temperature sensors

* Adjust test

* Adjust test
2022-02-18 11:35:44 +01:00
Marc Mueller bfb1abd3a2 Add type ignore error codes [helpers] (#66776) 2022-02-18 11:31:37 +01:00
Marc Mueller 0188e8b319 Add type ignore error codes [util] (#66777) 2022-02-18 11:30:59 +01:00
Joakim Sørensen 0ac9376ee4 Add list to async_delay_save typing (#66795) 2022-02-18 11:07:14 +01:00
Teemu R 046c0ae61b Bump python-miio dependency to 0.5.10 (#66782) 2022-02-18 10:44:31 +01:00
Marc Mueller cb736eaeaf Add type ignore error codes [recorder] (#66780) 2022-02-18 10:37:38 +01:00
Andre Lengwenus c8ae0d3bbe Bump pypck to 0.7.14 (#66794) 2022-02-18 10:37:00 +01:00
Teemu R 483545eeaa Bump python-songpal dependency to 0.14 (#66769)
* Bump python-songpal dependency to 0.14

* Fix tests

* pip_check -1

Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-02-18 11:31:46 +02:00
dependabot[bot] 2b807bd07d Bump docker/login-action from 1.12.0 to 1.13.0 (#66788)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-18 09:53:38 +01:00
Marc Mueller 67e94f2b4b Add type ignore error codes [N-Z] (#66779) 2022-02-18 09:41:12 +01:00
Marc Mueller d7170f43c3 Add type ignore error codes [A-L] (#66778) 2022-02-18 09:38:15 +01:00
Erik Montnemery 98982c86e4 Add MQTT diagnostics (#66730)
* Add MQTT diagnostics

* Redact device tracker location

* Adjust tests

* Address comments from code review
2022-02-18 09:28:49 +01:00
Simone Chemelli 4f2be58fe4 Fix wifi switches name for Fritz (#66529) 2022-02-18 00:13:36 -08:00
Dave T 7e3d87a146 Increase helpers.frame test coverage (#65137)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-18 00:05:38 -08:00
Franck Nijhof e26488b1ca Add config flow to MJPEG IP Camera (#66607) 2022-02-18 00:03:41 -08:00
Raman Gupta 82ebb7047f Bump zwave-js-server-python to 0.35.0 (#66785)
* Bump zwave-js-server-python to 0.35.0

* Remove support for new event type which should go in a separate PR
2022-02-18 02:36:27 -05:00
Allen Porter 703d01e772 Bump grpcio to 1.44.0 (#66787) 2022-02-17 23:12:05 -08:00
Marc Mueller ac50248938 Add type ignore error codes [other] (#66781) 2022-02-17 23:10:25 -08:00
Marc Mueller 8d2fb72cc3 Add type ignore error codes [core] (#66773) 2022-02-17 23:09:22 -08:00
Allen Porter 58551ec66d Update nest camera tests to use common test fixture (#66192) 2022-02-17 23:08:29 -08:00
J. Nick Koston 736a1ca0a3 Fix merge conflict resolution error in flux_led (#66775) 2022-02-17 20:14:08 -06:00
GitHub Action 8b557884b7 [ci skip] Translation update 2022-02-18 00:24:29 +00:00
J. Nick Koston 64277058b5 Ensure lutron caseta imports set the unique id (#66754) 2022-02-18 00:03:20 +01:00
Shay Levy 90a0d5518d Handle default notify data in webostv (#66770) 2022-02-17 23:46:18 +01:00
Erik Montnemery cd00464285 Remove use of hass.helpers from MQTT (#66757)
* Remove use of hass.helpers from MQTT

* Tweak
2022-02-17 23:18:03 +01:00
Marc Mueller 1a247f7d1b Improve device_automation typing (#66621) 2022-02-17 22:08:43 +01:00
epenet 8bf19655f1 Fix samsung mocks (#66765)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-17 13:04:48 -08:00
Tom Harris d7619d2302 Bump pyinsteon to 1.0.16 (#66759) 2022-02-17 12:52:06 -08:00
epenet 92ce255293 Ensure new samsungtv token is updated in the config_entry (#66731)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-17 12:49:01 -08:00
epenet 6d0a06c57a Add type hints in samsungtv tests (#66632)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-17 12:47:58 -08:00
Felipe Santos 44befe5f11 Fix Twilio webhook content type (#66561) 2022-02-17 21:38:31 +01:00
Andre Richter d6100abc7c Remove deprecated way of setting fan preset in Vallox (#66655) 2022-02-17 21:06:35 +01:00
Vaclav 0bebf14e45 Bump holidays to 0.13 (#66612) 2022-02-17 20:59:50 +01:00
Tom dacc2b1ab0 Plugwise update Zigbee addressing fixture data to 64bits (#66761) 2022-02-17 20:58:06 +01:00
Shay Levy e79348f952 Fix webostv notify service (#66760) 2022-02-17 20:13:09 +01:00
Erik Montnemery 750b48dcaf Use pylint disable-next in MQTT (#66758) 2022-02-17 11:12:12 -08:00
Chris Talkington 9d5dc2ce24 Improve roku play media handling (#66429)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-17 10:19:01 -08:00
Marc Mueller cdd5d22b38 Remove ThreadPoolExecutor shutdown backport (#66735) 2022-02-17 10:39:33 -06:00
Tom f8d38a1025 Plugwise: Update fixtures (#66749) 2022-02-17 17:03:18 +01:00
Franck Nijhof bcc5ce142f Fix trigger of full CI on dependency bumps (#66738) 2022-02-17 16:19:51 +01:00
Franck Nijhof 276fd4f42c Add Python 3.10 to CI (#59729) 2022-02-17 14:58:24 +01:00
Nenad Bogojevic 7012375bf1 Bump withings-api 2.3.2->2.4.0 (#66723) 2022-02-17 14:18:33 +01:00
Franck Nijhof de24d00a1c Use min/max/step from thermostat in Plugwise (#66618) 2022-02-17 14:11:47 +01:00
Franck Nijhof 1a9fda96c3 Revert "Update google-cloud-texttospeech to 2.10.0" (#66736) 2022-02-17 14:05:07 +01:00
Jan Bouwhuis 83846bb5cc MQTT climate preset_modes rework (#66062)
* MQTT climate preset_modes rework

* Set deprection date to 2022.9 (6 months)

* add valid_preset_mode_configuration for discovery

* Update deprecation date
2022-02-17 13:51:35 +01:00
Erik Montnemery 4236764fd5 Don't allow creating or updating input_select with duplicates (#66718)
* Don't allow creating or updating input_select with duplicates

* Simplify error message

* Improve error message
2022-02-17 13:11:49 +01:00
epenet a9aefb66b5 Add device info to samsungtv diagnostics (#66728)
* Add device-info to samsungtv diagnostics

* Adjust tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-17 12:35:02 +01:00
Franck Nijhof 72fad87aef Update google-cloud-texttospeech to 2.10.0 (#66726) 2022-02-17 12:06:49 +01:00
Raman Gupta a1b81b2de4 Add inclusion state to zwave_js/network_status WS API cmd (#65398) 2022-02-17 11:38:20 +01:00
Eduard van Valkenburg 42b5ce184c Brunt package to 1.2.0 (#66722) 2022-02-17 11:03:22 +01:00
starkillerOG 714daebfb9 Netgear add reboot button (#65706)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-02-17 09:41:21 +01:00
Rob Borkowski a131b78a70 Bump pyeconet version for Gen 5 Water Heater Support (#66691)
* Bump pyeconet version for Gen 5 Water Heater Support

* Update requirements files
2022-02-16 21:40:24 -06:00
Brett Adams bcdd823849 Bump Advantage Air to 0.3.1 (#66699) 2022-02-16 21:15:19 -06:00
GitHub Action 855076fed9 [ci skip] Translation update 2022-02-17 00:14:03 +00:00
Erik Montnemery f89de613d9 Improve MQTT binary_sensor test (#66688) 2022-02-17 00:06:42 +01:00
Paulus Schoutsen e3a2b51f03 Merge pull request #66686 from home-assistant/rc 2022-02-16 14:55:42 -08:00
Brett Adams bccfaceedb Code Quality improvements for Aussie Broadband (#65408)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-16 23:38:05 +01:00
Erik Montnemery ebe7c95e4f Correct MQTT binary_sensor and sensor state restoring (#66690) 2022-02-16 14:07:38 -08:00
Erik Montnemery be0ef5ad6c Correct MQTT binary_sensor and sensor state restoring (#66690) 2022-02-16 14:07:21 -08:00
epenet 2687f61428 Fix slow samsungtv test (#66696) 2022-02-16 16:04:50 -06:00
Franck Nijhof 58742f8be6 Update plugwise 0.16.5 (#66684) 2022-02-16 22:35:51 +01:00
Erik Montnemery eaf73318e1 Remove duplicated options from input_select (#66680) 2022-02-16 22:04:49 +01:00
Paulus Schoutsen 413e317c65 Bumped version to 2022.2.8 2022-02-16 12:50:42 -08:00
epenet 0138caa277 Fix side_effect patching in samsungtv tests (#66651)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 12:40:11 -08:00
Franck Nijhof 21b4835542 Add current temp fallback in Tuya climate (#66664) 2022-02-16 12:37:42 -08:00
Sascha Sander d977d12920 Fix scaling of numeric Tuya values (#66644)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-16 12:36:46 -08:00
epenet 69238189fb Fix token refresh in samsungtv (#66533) 2022-02-16 12:28:09 -08:00
epenet 2d33e435b9 Fix token refresh in samsungtv (#66533) 2022-02-16 12:28:01 -08:00
epenet d83fdae11e Fix SamsungTVWS mocking in samsungtv tests (#66650)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 12:27:42 -08:00
epenet 9eca1c236d Cleanup samsungtv tests (#66570)
* Drop unused init method

* Add type hints to media_player tests

* Adjust test_init

* Adjust media_player

* Add type hints to conftest

* Use Mock in test_media_player

* Use lowercase in test_init

* Use relative import in diagnostics

* Add type hints to config_flow

* Adjust coveragerc

* Make gethostbyname autouse

* Cleanup gethostbyname and remote fixtures

* Drop unused fixtures

* Undo type hints and usefixtures on media_player

* Undo type hints and usefixtures in test_init

* Undo type hints in conftest

* Undo usefixtures in test_config_flow

* Format

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 12:27:41 -08:00
epenet f5ca88b6e4 Add tests for samsungtv diagnostics (#66563)
* Add tests for samsungtv diagnostics

* Adjust coveragerc

* Adjust type hints

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 12:27:40 -08:00
Marcel van der Veldt ab55e3f1ff Fix last_activated timestamp on Hue scenes (#66679) 2022-02-16 12:20:37 -08:00
Paulus Schoutsen 75cca28448 Cloud to avoid setting up Alexa/Google during setup phase (#66676) 2022-02-16 12:20:37 -08:00
Maciej Bieniek 54667b891a Fix type of value in MQTT binary sensor (#66675) 2022-02-16 12:20:35 -08:00
Franck Nijhof 2ad34f2689 Do not pass client session to Brunt (#66671) 2022-02-16 12:20:34 -08:00
Paulus Schoutsen e1ed15f2ba Bump aiohue to 4.2.0 (#66670) 2022-02-16 12:20:33 -08:00
Craig J. Midwinter 3168d75703 Bump pysher to 1.0.7 (#59445)
* Fix Goalfeed integration

See https://github.com/deepbrook/Pysher/issues/62

* update requirements

* Update pysher, remove websocket-client requirement for goalfeed integration
2022-02-16 12:19:18 -08:00
Marcel van der Veldt 8357dc0f3f Fix last_activated timestamp on Hue scenes (#66679) 2022-02-16 12:18:38 -08:00
Bram Kragten ef34f070ee Allow metadata in service call data (#66672)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Erik <erik@montnemery.com>
2022-02-16 21:13:36 +01:00
epenet 14e48bac3a Fix SamsungTVWS mocking in samsungtv tests (#66650)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 12:13:11 -08:00
Maciej Bieniek 41c43fe639 Fix type of value in MQTT binary sensor (#66675) 2022-02-16 12:11:50 -08:00
Franck Nijhof 88482d73e3 Do not pass client session to Brunt (#66671) 2022-02-16 12:11:01 -08:00
Paulus Schoutsen 499081df86 Cloud to avoid setting up Alexa/Google during setup phase (#66676) 2022-02-16 12:10:26 -08:00
Craig J. Midwinter b42676370c Bump pysher to 1.0.7 (#59445)
* Fix Goalfeed integration

See https://github.com/deepbrook/Pysher/issues/62

* update requirements

* Update pysher, remove websocket-client requirement for goalfeed integration
2022-02-16 19:43:02 +01:00
Paulus Schoutsen 0b541978c7 Bump aiohue to 4.2.0 (#66670) 2022-02-16 09:24:01 -08:00
J. Nick Koston 0ec89ae5da Teach _async_abort_entries_match about entry options (#66662) 2022-02-16 18:15:31 +01:00
J. Nick Koston 65999227ae Fix missing effects on dimmable WiZ bulbs (#66665) 2022-02-16 18:11:31 +01:00
Robert Svensson dd9b14d5c9 Add Button platform to deCONZ integration (#65700)
* Improve scene platform

* Add button platform, tests and fix tests affected by new entities existing

* Remove unnused property

* Bump dependency to v87
2022-02-16 17:55:30 +01:00
Bram Kragten a9390908ea Keep TTS media browser params in identifier (#66663)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-16 08:54:57 -08:00
Franck Nijhof 39cf250a8e Add current temp fallback in Tuya climate (#66664) 2022-02-16 17:41:43 +01:00
Paulus Schoutsen cd5b69d02e Add Google local indicator (#66610) 2022-02-16 07:54:59 -08:00
Tobias Sauerwein 3d1cad9f67 Improve handling of cloud hook registration (#65664)
Signed-off-by: cgtobi <cgtobi@gmail.com>
2022-02-16 16:42:45 +01:00
Diogo Gomes de2734bd0e add entity_category (#66377) 2022-02-16 16:34:21 +01:00
epenet 3b87c01af9 Fix try_connect in samsungtv (#66653)
* Fix try_connect in samsungtv

* Use try...else

* Adjust try...else

* Undo try...else

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 16:17:11 +01:00
epenet 0911eb1fba Add epenet to samsungtv codeowners (#66654)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 16:12:07 +01:00
Mike Fugate 0bd0b4766e Refactor sleepiq as async with config flow (#64850)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-16 08:51:29 -06:00
Sascha Sander dbc445c2fa Fix scaling of numeric Tuya values (#66644)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-16 14:33:08 +01:00
Franck Nijhof 4051e2f518 Fix Plugwise auto HVAC mode (#66639)
* Fix Plugwise auto hvac mode

* Clean up set HVAC
2022-02-16 13:22:21 +01:00
Milan Meulemans 19d8b8a6ff Add binary sensor platform to Aseko (#66643) 2022-02-16 13:06:11 +01:00
J. Nick Koston 470936a63a Enable dhcp flows for samsungtv registered devices (#66589) 2022-02-16 13:01:44 +01:00
Erik Montnemery dcb3fc49c9 Include changes in EVENT_DEVICE_REGISTRY_UPDATED (#66641) 2022-02-16 12:29:08 +01:00
J. Nick Koston 21f2c664d9 Enable dhcp flows for elkm1 registered devices (#66583) 2022-02-16 12:13:16 +01:00
tschnilo b322c6dafc Add vicare sensors (#63339)
* Add sensors

for:
- solar collector 
- power consumption

* Update sensor.py

* Update sensor.py

* Update sensor.py

* Update sensor.py
2022-02-16 12:11:37 +01:00
J. Nick Koston fd96d81563 Enable dhcp flows for flux_led registered devices (#66585) 2022-02-16 12:09:00 +01:00
J. Nick Koston e0cee22b8a Switch ezviz to use integration discovery (#66579) 2022-02-16 12:07:36 +01:00
J. Nick Koston 38b9bea9a3 Switch tplink to use integration discovery (#66575) 2022-02-16 12:06:58 +01:00
J. Nick Koston 59cb1444a5 Enable dhcp flows for broadlink registered devices (#66582) 2022-02-16 12:04:46 +01:00
J. Nick Koston ce4daab833 Enable dhcp flows for goalzero registered devices (#66586) 2022-02-16 11:59:57 +01:00
epenet cf5652737a Cleanup samsungtv tests (#66570)
* Drop unused init method

* Add type hints to media_player tests

* Adjust test_init

* Adjust media_player

* Add type hints to conftest

* Use Mock in test_media_player

* Use lowercase in test_init

* Use relative import in diagnostics

* Add type hints to config_flow

* Adjust coveragerc

* Make gethostbyname autouse

* Cleanup gethostbyname and remote fixtures

* Drop unused fixtures

* Undo type hints and usefixtures on media_player

* Undo type hints and usefixtures in test_init

* Undo type hints in conftest

* Undo usefixtures in test_config_flow

* Format

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 09:29:52 +01:00
Raman Gupta d29acadebd Fix zwave_js device condition bug (#66626) 2022-02-15 23:05:12 -05:00
Paulus Schoutsen e33671db60 Merge pull request #66624 from home-assistant/rc 2022-02-15 19:59:26 -08:00
jjlawren 7d2e42d026 Backport #66399 to rc (#66625) 2022-02-15 18:02:45 -08:00
Paulus Schoutsen 6aa99d1063 Bumped version to 2022.2.7 2022-02-15 17:47:46 -08:00
Marcel van der Veldt de96d21ea9 Bump aiohue to version 4.1.2 (#66609) 2022-02-15 17:47:41 -08:00
Allen Porter 7bb14aae23 Override and disable nest stream unavailable behavior (#66571) 2022-02-15 17:47:41 -08:00
Franck Nijhof 8b39866bb7 Fix Tuya Covers without state in their control data point (#66564) 2022-02-15 17:47:40 -08:00
Joakim Plate addc6bce63 Add fallback for serialnumber (#66553) 2022-02-15 17:47:39 -08:00
J. Nick Koston 104f56a01d Fix flux_led turn on with slow responding devices (#66527) 2022-02-15 17:47:39 -08:00
epenet 6472cb8721 Revert "Fix raspihats callbacks (#64122)" (#66517)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-15 17:47:38 -08:00
epenet 5cccac7a19 Fix access to hass.data in hdmi-cec (#66504)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-15 17:47:37 -08:00
Diogo Gomes 96cbae5393 Fix utility meter restore state (#66490)
* Address #63874

* avoid setting _last_period to None

* name is always set in discovery

* ValueError never happens only DecimalException

* async_tariff_change tracks state change - state machine will not pass a None

* test we only reset one utility_meter

* test corrupted restored state

* pretty sure _current_tariff doesn't change from init until here

* missing assert

* Revert "async_tariff_change tracks state change - state machine will not pass a None"

This reverts commit 24fc04a964139e5cfecbfa20f91e2d30ab145d77.

* address review comment

* always a Decimal
2022-02-15 17:47:36 -08:00
Brett Adams e5e3ab377d Bump Advantage Air 0.3.0 (#66488) 2022-02-15 17:47:15 -08:00
Brett Adams f46fbcc9eb Bump Advantage Air to 0.2.6 (#65849) 2022-02-15 17:46:14 -08:00
Shay Levy aad9992c9a Increase switcher_kis timeouts (#66465) 2022-02-15 17:44:32 -08:00
Allen Porter 398f60c3d0 Reset the stream backoff timeout when the url updates (#66426)
Reset the stream backoff timeout when the url updates, meant to improve the retry behavior
for nest cameras. The problem is the nest url updates faster than the stream reset time
so the wait timeout never resets if there is a temporarily problem with the new url. In particular
this *may* help with the flaky cloud nest urls, but seems more correct otherwise.
2022-02-15 17:44:31 -08:00
Raman Gupta 312c31afda revert change in vizio logic to fix bug (#66424) 2022-02-15 17:44:30 -08:00
Dave T d315890c61 Fix missing refactors of EntityCategory.XXX (#66379)
* Fix missing refactors of EntityCategory.XXX

* Fix entity_category refactor for homewizard
2022-02-15 17:40:58 -08:00
Simone Chemelli 51dd3c88e9 Fix mesh role for Fritz old devices (#66369) 2022-02-15 17:40:58 -08:00
uSlackr 23a68f5d49 Correct modbus address limits (#66367) 2022-02-15 17:40:57 -08:00
Marcel van der Veldt 8f4ec89be6 Bump aiohue to version 4.1.2 (#66609) 2022-02-15 17:26:13 -08:00
J. Nick Koston dad4cdb45d Enable dhcp flows for isy994 registered devices (#66588) 2022-02-15 18:46:09 -06:00
J. Nick Koston 6a690b41b1 Enable dhcp flows for screenlogic registered devices (#66591) 2022-02-15 18:45:53 -06:00
J. Nick Koston 6b7eea5454 Enable dhcp flows for senseme registered devices (#66590) 2022-02-15 18:45:41 -06:00
J. Nick Koston 7c508c2a44 Enable dhcp flows for hunterdouglas_powerview registered devices (#66587) 2022-02-16 01:30:52 +01:00
J. Nick Koston 491f8d0f0b Enable dhcp flows for steamist registered devices (#66593) 2022-02-16 01:26:17 +01:00
J. Nick Koston 99568b133f Switch flux_led to use integration discovery (#66574) 2022-02-16 01:25:43 +01:00
GitHub Action 208671418e [ci skip] Translation update 2022-02-16 00:14:09 +00:00
J. Nick Koston 6ae2331805 Switch senseme to use integration discovery (#66576) 2022-02-16 00:47:01 +01:00
Franck Nijhof dd9992bfd6 Update plugwise 0.16.4 (#66613) 2022-02-15 23:29:30 +01:00
J. Nick Koston d79d775d92 Switch elkm1 to use integration discovery (#66572) 2022-02-15 23:18:55 +01:00
J. Nick Koston b28754e5fe Switch steamist to use integration discovery (#66578) 2022-02-15 23:18:13 +01:00
J. Nick Koston c6a4139716 Enable dhcp flows for emonitor registered devices (#66584) 2022-02-15 23:17:06 +01:00
J. Nick Koston 6134a224dd Enable dhcp flows for wiz registered devices (#66595) 2022-02-15 23:14:52 +01:00
J. Nick Koston d64ef2ba73 Deduplicate flux_led title and CONF_NAME (#66598) 2022-02-15 22:44:35 +01:00
Allen Porter 734fdf7bff Override and disable nest stream unavailable behavior (#66571) 2022-02-15 13:43:31 -08:00
Joakim Plate bc856ea24d Add fallback for serialnumber (#66553) 2022-02-15 13:42:18 -08:00
Mick Vleeshouwer 98ae7e106c Always create a new session in ConfigFlow in Overkiz integration (#66602) 2022-02-15 14:46:52 -06:00
Mick Vleeshouwer 5568531f74 Improve exception catching and handling in Overkiz integration (#66604) 2022-02-15 14:44:53 -06:00
J. Nick Koston c5ae43144d Enable dhcp flows for axis registered devices (#66581)
References:
https://github.com/home-assistant/developers.home-assistant/pull/1212
https://github.com/home-assistant/core/pull/66528

I am doing these one at a time to make sure codeowners are aware
and do not glance over the PR because it has a lot of integrations
in it
2022-02-15 21:32:10 +01:00
Mick Vleeshouwer 30528e0de0 Add extra entity descriptions to Overkiz integration (#66093) 2022-02-15 14:24:33 -06:00
J. Nick Koston 9f1c58cda3 Enable dhcp flows for tplink registered devices (#66592)
References:
https://github.com/home-assistant/developers.home-assistant/pull/1212
https://github.com/home-assistant/core/pull/66528

I am doing these one at a time to make sure codeowners are aware
and do not glance over the PR because it has a lot of integrations
in it
2022-02-15 20:33:45 +01:00
J. Nick Koston f069a37f7d Allow integrations to request dhcp discovery flows for registered devices (#66528) 2022-02-15 11:02:52 -06:00
J. Nick Koston 2b43293363 Switch unifiprotect to use integration discovery (#66569)
Backstory: https://github.com/home-assistant/core/pull/65752#discussion_r800068914
2022-02-15 17:02:33 +01:00
Joakim Sørensen 0d2712e436 Add binary_sensor to Version integration (#66539)
* Add binary_sensor to version integration

* Add test to check we not create for local

* Move _attr_icon to sensor

* Update homeassistant/components/version/binary_sensor.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-15 16:39:34 +01:00
Eduard van Valkenburg af4e37339a Add Connectivity sensor to SIA (#64305)
* implemented connectivity sensor

* further cleanup off update code

* cleanup and tighter behaviour for attributes

* added seperate connectivity class to binary sensor

* callbacks and keys

* redid name and unique_id logic, non-breaking result

* using entry more in inits

* Fix import

* fix ping_interval in sia_entity_base

* added ping_interval default to next

* fixed next

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-15 15:53:38 +01:00
Franck Nijhof 430162fa5f Fix Tuya Covers without state in their control data point (#66564) 2022-02-15 15:25:36 +01:00
Franck Nijhof cbdbb66475 Fix integrations building on top of mjpeg (#66557) 2022-02-15 15:24:52 +01:00
epenet 52ebe58b14 Add tests for samsungtv diagnostics (#66563)
* Add tests for samsungtv diagnostics

* Adjust coveragerc

* Adjust type hints

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-15 16:24:13 +02:00
Franck Nijhof 00221f1d66 Cleanup and strict typing for MJPEG integration (#66526) 2022-02-15 12:32:14 +01:00
Pascal Vizeli 389653dc01 Add a asset name for CAS / official_image (#66276) 2022-02-15 11:19:28 +01:00
Jeef c5dfe2b5a8 Bump intellifire4py to 0.9.8 (#66531) 2022-02-15 11:04:26 +01:00
Josh Soref 02e2150270 Fix econet spelling (#64254)
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-02-15 10:53:35 +01:00
Robert Hillis 7eed4af6ae Use enums in vizio (#61996)
Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2022-02-15 10:51:55 +01:00
Erik Montnemery 2538af4b06 Add workaround for python bug to HAQueueHandler (#66541) 2022-02-15 10:49:14 +01:00
Franck Nijhof cb03db8df4 Replace discord.py with nextcord (#66540)
* Replace discord.py with nextcord

* Typing tweak

* Another pip check decrease :)
2022-02-15 10:37:41 +01:00
Amos Yuen 23a22d1860 Override iotawatt coordinator request_refresh_debouncer to allow updates every 5s (#64892)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-15 09:55:13 +01:00
Robert Svensson 1bc936ca8d Improve Deconz sensors (#65259) 2022-02-15 08:32:56 +01:00
J. Nick Koston 334a8ab13f Fix missing abort strings in wiz (#66538) 2022-02-15 08:24:35 +01:00
Allen Porter 572fa7d055 Update nest camera to pull still images from stream component (#66427)
* Update nest to use stream thumbnail when it exists

* Update nest camera to always pull still image from stream

Update nest camera to always pull the still iamge from the stream component,
removing the use of the separate ffmpeg call, and removing use of the nest event
image. Image for events can now be pulled using the media source APIs, rather
than relying on the camera snapshot.

* Simplify a comment

* Remove more unused variables

* Simplify comments, image, and test code

* Remove assertions for placeholder images
2022-02-14 21:45:09 -08:00
Paulus Schoutsen 94980399cf Bump hass-nabucas to 0.52.1 (#66536) 2022-02-14 20:46:32 -08:00
Brett Adams 6b6f50e28b Bump pyaussiebb in Aussie Broadband (#65754)
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-02-14 21:02:40 -06:00
Diogo Gomes b211a1faa7 Fix utility meter restore state (#66490)
* Address #63874

* avoid setting _last_period to None

* name is always set in discovery

* ValueError never happens only DecimalException

* async_tariff_change tracks state change - state machine will not pass a None

* test we only reset one utility_meter

* test corrupted restored state

* pretty sure _current_tariff doesn't change from init until here

* missing assert

* Revert "async_tariff_change tracks state change - state machine will not pass a None"

This reverts commit 24fc04a964139e5cfecbfa20f91e2d30ab145d77.

* address review comment

* always a Decimal
2022-02-15 02:16:30 +01:00
Franck Nijhof 4dbd9b21b7 Adjust Plugwise debouncer to not refresh immediately (#66521) 2022-02-15 01:47:39 +01:00
Paulus Schoutsen 6d10bd094f Bump frontend to 20220214.0 (#66535) 2022-02-14 16:23:37 -08:00
GitHub Action d69d0e8817 [ci skip] Translation update 2022-02-15 00:14:48 +00:00
epenet b51866b1c4 Revert "Fix raspihats callbacks (#64122)" (#66517)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-15 01:12:34 +01:00
EtienneMD ffe821a1f7 Fix HVAC modes for zha Stelpro fan heater (#66293) 2022-02-14 23:06:48 +01:00
Jarod Wilson f81b6d61b9 Create unique_id for sleepiq sensors (#65227) 2022-02-14 23:01:15 +01:00
Mick Vleeshouwer 74a304cac7 Overkiz/address cover feedback (#65043) 2022-02-14 22:38:41 +01:00
G Johansson 759b01bb40 Improve code quality season (#66449) 2022-02-14 22:34:33 +01:00
Raman Gupta 152dbfd2fe Add button entity to ping zwave_js node (#66129)
* Add button entity to ping zwave_js node

* Fix docstring

* Fix docstrings

* Fix and simplify tests

* Fix name

* Update homeassistant/components/zwave_js/button.py

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

* Update homeassistant/components/zwave_js/services.py

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

* Update homeassistant/components/zwave_js/button.py

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

* Update homeassistant/components/zwave_js/button.py

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

* Update homeassistant/components/zwave_js/button.py

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

* review comments

* Update homeassistant/components/zwave_js/button.py

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

* Update homeassistant/components/zwave_js/button.py

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

* Remove self.client line

* Add callback to remove entity

* Add extra dispatch signal on replacement

* Combine signals for valueless entities

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-14 15:38:22 -05:00
Raman Gupta 113c3149c4 Improve zwave_js device automation strings for config parameters (#66428)
* Improve zwave_js device automation strings for config parameters

* rename things to be more clear

* Match config file format
2022-02-14 15:14:02 -05:00
Simon Hansen 7cb0ce0eec Move config option to OptionsFlow in iss (#65303)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-14 21:07:50 +01:00
Erik Montnemery 5be5a014f3 Adjust Sonos for updated Spotify media browsing (#66508) 2022-02-14 20:15:09 +01:00
J. Nick Koston 09e59e5887 Fix flux_led turn on with slow responding devices (#66527) 2022-02-14 20:14:45 +01:00
Marc Mueller 9c5e0fc5e0 Fix auth type comment (#66522) 2022-02-14 20:10:18 +01:00
Maikel Punie 2bcc21ecbb Add velbus diagnostics (#65426) 2022-02-14 19:25:14 +01:00
Keilin Bickar 2bc2f85b1b Support for lock domain in esphome (#65280) 2022-02-14 18:31:46 +01:00
Marc Mueller 3b3e12aaa2 Fix translation typing (#66516) 2022-02-14 09:23:12 -08:00
uSlackr b6a3b012bb Correct modbus address limits (#66367) 2022-02-14 18:17:19 +01:00
Marc Mueller ab67ba20f5 Update pylint plugin to validate _async_has_devices (#66512) 2022-02-14 18:10:50 +01:00
Paulus Schoutsen 8456c6416e Add a media source to TTS (#66483) 2022-02-14 08:54:12 -08:00
J. Nick Koston 013d227113 Ensure WiZ cleans up on shutdown and failed setup (#66520) 2022-02-14 17:32:34 +01:00
J. Nick Koston 9691128e96 Fix ImportError when discovery deps change (#66518) 2022-02-14 17:12:24 +01:00
Paulus Schoutsen fec8c2ab82 Add support for MJPEG cameras to camera media source (#66499) 2022-02-14 17:04:19 +01:00
J. Nick Koston 63cb79ec29 Add support for setting the effect speed in WiZ (#66457) 2022-02-14 16:49:43 +01:00
J. Nick Koston 445ad1d592 Add test coverage for WiZ lights and switches (#66387) 2022-02-14 16:31:26 +01:00
Bart Janssens 4522a5698c Fix vicare program presets (#66476) 2022-02-14 15:42:40 +01:00
Paulus Schoutsen 707f112f51 Improve raised exception consistency for media source (#66497) 2022-02-14 15:41:53 +01:00
Marc Mueller 80394e3de6 Improve util.async_ typing (#66510) 2022-02-14 15:41:09 +01:00
Marc Mueller 94cfc89df9 Improve DiscoveryFlowHandler typing (#66511) 2022-02-14 15:28:52 +01:00
Franck Nijhof 45251e6936 Update sentry-dsk to 1.5.5 (#66515) 2022-02-14 15:23:20 +01:00
Erik Montnemery 795d249c8c Small improvement of cast test (#66513) 2022-02-14 15:06:33 +01:00
Paulus Schoutsen 4c5d64762b Fix cast turn on image (#66500) 2022-02-14 14:38:46 +01:00
Shay Levy db73ce92fa Increase switcher_kis timeouts (#66465) 2022-02-14 14:30:04 +01:00
J. Nick Koston 00d7fdd274 Add WiZ occupancy sensor support (#66231) 2022-02-14 14:25:15 +01:00
Marc Mueller b2ee7cebc9 Improve setup_time typing (#66509) 2022-02-14 14:24:58 +01:00
Erik Montnemery dbd26c7faf Support browsing multiple Spotify accounts (#66256)
* Support browsing multiple Spotify accounts

* Fix rebase mistakes

* Address review comments

* Return root spotify node with config entries as children

* Add util to get spotify URI for media browser URL

* Only support browsing spotify with config entry specified
2022-02-14 13:59:11 +01:00
Marc Mueller 370832f527 Fix http typing (#66506) 2022-02-14 13:40:31 +01:00
Brett Adams 5a02bae63e Bump Advantage Air 0.3.0 (#66488) 2022-02-14 13:16:05 +01:00
Marc Mueller c9d99ad76d Add missing dataclass decorator [fivem] (#66505) 2022-02-14 12:51:52 +01:00
epenet 211b5b02df Fix access to hass.data in hdmi-cec (#66504)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-14 12:43:36 +01:00
Shay Levy 5c5bb4835e Enable assumed state in webostv media player (#66486) 2022-02-14 11:14:57 +01:00
epenet 0a7b1dec7d Adjust type hint in core add_job (#66503)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-14 11:13:10 +01:00
Ryan Fleming 35b343de9e Octoprint buttons (#66368) 2022-02-14 11:05:06 +01:00
Tobias Sauerwein 71540a924b Update requirements_test.txt (#66481) 2022-02-14 09:51:22 +02:00
Raman Gupta 051bf173dc revert change in vizio logic to fix bug (#66424) 2022-02-14 09:49:19 +02:00
GitHub Action ad0cb4831e [ci skip] Translation update 2022-02-14 00:15:30 +00:00
Shay Levy fe077b6990 Use shorthand attributes in webostv (#66418) 2022-02-13 23:47:37 +02:00
Daniel Hjelseth Høyer 36120c77f8 Reduce update_interval for Opengarage (#66478) 2022-02-13 15:41:46 -06:00
Joshua Roys bc2cc42955 Don't abort zeroconf discovery for IPv6-only devices (#66455) 2022-02-13 15:24:23 -06:00
J. Nick Koston ffcac67d99 Add is_ipv4_address and is_ipv6_address utils (#66472) 2022-02-13 15:23:11 -06:00
J. Nick Koston 2bdf55465a Bump pywizlight to 0.5.8 (#66448) 2022-02-13 14:29:34 -06:00
Jc2k 40c6832cc1 Update homekit_controller to use the new typed discovery data (#66462) 2022-02-13 12:45:30 -06:00
Erik Montnemery d40a830b89 Remove entities when config entry is removed from device (#66385)
* Remove entities when config entry is removed from device

* Update tests/helpers/test_entity_registry.py

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

* Don't remove entities not connected to a config entry

* Update homeassistant/helpers/entity_registry.py

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

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-13 17:23:30 +01:00
Allen Porter b016259206 Reset the stream backoff timeout when the url updates (#66426)
Reset the stream backoff timeout when the url updates, meant to improve the retry behavior
for nest cameras. The problem is the nest url updates faster than the stream reset time
so the wait timeout never resets if there is a temporarily problem with the new url. In particular
this *may* help with the flaky cloud nest urls, but seems more correct otherwise.
2022-02-13 07:09:37 -08:00
Aidan Timson ac3c5db989 Handle NoneType error in OVO integration (#66439) 2022-02-13 16:37:18 +02:00
Austin Mroczek b4c487376f bump total_connect_client to 2022.2 (#66408) 2022-02-13 10:05:20 +02:00
Jc2k b8a8485e91 Replace use of deprecated APIs in aiohomekit (#66409) 2022-02-12 23:17:55 -06:00
Allen Porter 0a128d006f Improve stream robustness by always retrying worker (#66417)
Improve stream robustness by always retrying in the worker on failure, rather than only when
keepalive is enabled.

This will make cloud cameras like nest more robust, since they have a tendency to be flaky. This
is also needed to improve client side retry behavior because when the client attempts to retry,
the stream token is already revoked because the worker stopped.

The worker will still idle timeout if no streams are present, so it won't go on forever if no
frontend is viewing the stream.
2022-02-12 20:59:11 -08:00
GitHub Action 203bda203d [ci skip] Translation update 2022-02-13 00:16:41 +00:00
Robert Svensson ac11a9b7ff Revert Amcrest change (#66412) 2022-02-12 23:08:23 +01:00
Allen Porter 2e54daa61f Redact stream url credentials in debug logging (#66407) 2022-02-12 14:03:26 -08:00
Simone Chemelli e069074f9e Fix mesh role for Fritz old devices (#66369) 2022-02-12 13:58:35 -08:00
Franck Nijhof 10c7725a90 Fix Spotify session token refresh (#66390) 2022-02-12 13:53:15 -08:00
Marc Mueller 1053314a30 Fix error decorator [sonos] (#66399) 2022-02-12 13:51:53 -08:00
kpine a7e5f38a3e Add is_controller_node flag to WS node status (#66404) 2022-02-12 22:08:39 +01:00
G Johansson a8304392b5 Code quality file (#65258) 2022-02-12 11:49:37 -06:00
Marc Mueller 7806494816 Fix typing [roku] (#66397) 2022-02-12 17:44:47 +01:00
corneyl 17a732197b Add Picnic re-auth flow (#62938)
* Add re-auth handler for Picnic

* Extracted authentication part so right form/errors can be shown during re-auth flow

* Add tests for Picnic's re-authentication flow

* Simplify re-auth flow by using the same step as step_user

* Use user step also for re-auth flow instead of having an authenticate step

* Add check for when re-auth is done with different account

* Remove unnecessary else in Picnic config flow

* Fix the step id in the translation strings file
2022-02-12 08:15:36 -08:00
Franck Nijhof ba83648d27 Fix Spotify session token refresh (#66386) 2022-02-12 17:13:32 +01:00
nklebedev 840d33f271 Fix typo in ebusd WaterPressure const (#66355) 2022-02-12 17:09:51 +01:00
Sébastien RAMAGE 491e2e5978 Update zigpy-zigate to 0.8.0 (#66289) 2022-02-12 17:05:30 +01:00
Joshua Roys e5ef192f1a Specify specific Nanoleaf models in the manifest (#66326) 2022-02-12 09:56:38 -06:00
G Johansson d61d1bf494 Implement diagnostics for yale_smart_alarm (#65085) 2022-02-12 08:42:30 -06:00
G Johansson 6d20e68e6d Code quality scrape (#65441) 2022-02-12 08:28:54 -06:00
Dave T 62d49dcf98 Fix missing refactors of EntityCategory.XXX (#66379)
* Fix missing refactors of EntityCategory.XXX

* Fix entity_category refactor for homewizard
2022-02-12 16:22:21 +02:00
G Johansson 89b0d602d6 Bump yalesmartalarmclient to v0.3.8 (#66381) 2022-02-12 15:20:55 +01:00
G Johansson 3771c154fa Improve code quality command_line (#65333) 2022-02-12 08:19:37 -06:00
G Johansson db6969739f Improve code quality telnet (#65239) 2022-02-12 08:15:28 -06:00
G Johansson 8da150bd71 Improve code quality sql (#65321) 2022-02-12 08:13:01 -06:00
Jc2k 65ce2108d3 Stop homekit_controller using backend specific API's (#66375) 2022-02-12 08:12:27 -06:00
Jc2k 95e4ea8fcd Simplify the homekit_controller unignore journey (#66353) 2022-02-12 13:16:05 +00:00
Brett Adams 5e5659d758 Add Diagnostics (#65755) 2022-02-12 07:08:41 -06:00
G Johansson 1b27011320 Fix supported features sensibo (#65895)
* Fix features not available

* Partial revert

* Apply active features

* Fix from review
2022-02-12 12:48:48 +01:00
Allen Porter b2f5ab2008 Publish Nest Motion/Person events with optional user defined zone information (#66187)
Publish Nest events with zone information if present. User defined zones are configured
in the Google Home app, and are published with Motion/Person event.
2022-02-11 21:22:53 -08:00
Chris Talkington f344ea7bbb Add select platform to roku (#66133) 2022-02-11 20:52:31 -06:00
J. Nick Koston 578456bbb5 Fix uncaught exception during WiZ discovery during firmware update (#66358) 2022-02-11 20:42:41 -06:00
GitHub Action 366609ea44 [ci skip] Translation update 2022-02-12 00:16:37 +00:00
Sander Jochems 202ee0cd3d Add device info to Solax (#65244) 2022-02-11 18:04:50 -06:00
G Johansson 9610fa5979 Code cleanup yale_smart_alarm (#65081) 2022-02-11 18:04:04 -06:00
Jeef d479949ca2 Add a base class for Intellifire entities (#65077)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-02-11 18:01:38 -06:00
J. Nick Koston 13af2728c2 Fix zwave_me zeroconf mocking (#66356) 2022-02-11 17:13:57 -06:00
J. Nick Koston a6742eff34 Add button to wake august locks from deep sleep (#66343) 2022-02-11 17:13:35 -06:00
PanicRide 0797533016 New amcrest binary sensor to monitor doorbell button (#66302)
* New binary sensor to monitor doorbell button

* New binary sensor to monitor doorbell button
2022-02-11 23:58:26 +01:00
Joshua Roys 9134e5c844 Get discovered zeroconf IPv6 addresses (#65462) 2022-02-11 16:46:17 -06:00
Igor Pakhomov 2ffb46dc93 Initial xiaomi_miio support for dmaker.airfresh.a1/t2017 (#66331)
* Initial support for dmaker.airfresh.a1/t2017

* fix typo
2022-02-11 23:28:22 +01:00
J. Nick Koston cc0fb5d9db Add dhcp discovery to Sensibo for non-HomeKit devices (#66350) 2022-02-11 16:27:00 -06:00
J. Nick Koston f8fec3d990 Add additional oui to blink (#66348) 2022-02-11 16:26:39 -06:00
J. Nick Koston 018975bbb9 Add additional OUI for G3 wifi cameras to unifiprotect (#66349) 2022-02-11 16:26:11 -06:00
Paulus Schoutsen fc2d30c993 Merge pull request #66351 from home-assistant/rc 2022-02-11 14:11:43 -08:00
Paulus Schoutsen cb7f7dff72 Bumped version to 2022.2.6 2022-02-11 13:31:16 -08:00
J. Nick Koston c254598331 Add unique id to lutron caseta config entry when missing (#66346) 2022-02-11 13:30:42 -08:00
Franck Nijhof 646c56e0e9 Fix CPUSpeed with missing info (#66339) 2022-02-11 13:30:42 -08:00
Franck Nijhof f3a3ff28f2 Fix PVOutput when no data is available (#66338) 2022-02-11 13:30:41 -08:00
Allen Porter 087f443368 Fix nest streams that get stuck broken (#66334) 2022-02-11 13:30:40 -08:00
epenet fcee1ff865 Fix raspihats initialization (#66330)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-11 13:30:39 -08:00
J. Nick Koston 6084b323df Reduce number of parallel api calls to august (#66328) 2022-02-11 13:30:39 -08:00
starkillerOG 6857562e9e bump motionblinds to 0.5.12 (#66323) 2022-02-11 13:30:38 -08:00
starkillerOG aef2588f9c bump motionblinds to 0.5.11 (#65988) 2022-02-11 13:30:37 -08:00
Joakim Sørensen 27c5460feb Add guard for invalid EntityCategory value (#66316) 2022-02-11 13:29:07 -08:00
Allen Porter 60b4600019 Bump google-nest-sdm to 1.7.1 (minor patch) (#66304) 2022-02-11 13:26:51 -08:00
Allen Porter 27752f7ad3 Bump google-nest-sdm to 1.7.0 (#66145) 2022-02-11 13:26:51 -08:00
Allen Porter 669c99474b Bump python-nest to 4.2.0 for python 3.10 fixes (#66090) 2022-02-11 13:26:50 -08:00
J. Nick Koston 76872e3789 Fix august token refresh when data contains characters outside of latin1 (#66303)
* WIP

* bump version

* bump
2022-02-11 13:25:01 -08:00
Joakim Plate 2594500452 Correct philips_js usage of the overloaded coordinator (#66287) 2022-02-11 13:25:00 -08:00
uvjustin 65c8363323 Catch ConnectionResetError when writing MJPEG in camera (#66245) 2022-02-11 13:24:59 -08:00
ufodone dfcad3a13d Disable zone bypass switch feature (#66243)
* Add configuration option to disable the creation of zone bypass switches

* Removed temporary workaround and bumped pyenvisalink version to pick up the correct fix.

* Remove zone bypass configuration option and disable zone bypass switches per code review instructions.
2022-02-11 13:24:35 -08:00
Milan Meulemans 92bc780dd7 Bump aioaseko to 0.0.2 to fix issue (#66240) 2022-02-11 13:22:13 -08:00
Michael eb781060e8 bump py-synologydsm-api to 1.0.6 (#66226) 2022-02-11 13:22:13 -08:00
Maximilian a2e7897b1e Add missing nina warnings (#66211) 2022-02-11 13:22:12 -08:00
jjlawren 854308fec2 Handle more Sonos favorites in media browser (#66205) 2022-02-11 13:22:11 -08:00
Otto Winter 0199e8cc43 Bump aioesphomeapi from 10.8.1 to 10.8.2 (#66189) 2022-02-11 13:22:11 -08:00
Erik Montnemery 7cc9a4310d Fix controlling nested groups (#66176) 2022-02-11 13:22:10 -08:00
epenet 5976238126 Fix hdmi-cec initialization (#66172) 2022-02-11 13:22:09 -08:00
J. Nick Koston 43d57e7ae8 Add unique id to lutron caseta config entry when missing (#66346) 2022-02-11 13:19:57 -08:00
Allen Porter 24418417fd Fix nest streams that get stuck broken (#66334) 2022-02-11 13:17:19 -08:00
Franck Nijhof caedef5f1a Reduce Spotify API usage (#66315) 2022-02-11 13:16:41 -08:00
Stuart Clark 5743661f6e Upgrade OVO library to v1.2.0 (#66210) 2022-02-11 21:39:55 +01:00
Jc2k 0daf20c0cc Prepare for new aiohomekit lifecycle API (#66340) 2022-02-11 19:26:35 +00:00
Franck Nijhof 2f220b27d4 Fix CPUSpeed with missing info (#66339) 2022-02-11 19:38:55 +01:00
Franck Nijhof 8ff987d90c Fix PVOutput when no data is available (#66338) 2022-02-11 19:11:06 +01:00
epenet df994a1e84 Fix raspihats initialization (#66330)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-11 18:08:19 +01:00
J. Nick Koston 323af9f59c Reduce number of parallel api calls to august (#66328) 2022-02-11 18:07:32 +01:00
Franck Nijhof acf2033734 Use DataUpdateCoordinator for Spotify devices (#66314) 2022-02-11 18:04:49 +01:00
Franck Nijhof 57624347e6 Don't requests known Spotify playlist (#66313) 2022-02-11 17:53:25 +01:00
J. Nick Koston 768de8d515 Fix WiZ bulb being offline if kelvin limits cannot be obtained (#66305) 2022-02-11 09:33:39 -06:00
starkillerOG 212c3b7c10 bump motionblinds to 0.5.12 (#66323) 2022-02-11 16:49:54 +02:00
Shay Levy 89b20b9133 Fix webostv restored supported features turn on (#66318)
* Fix webostv restored supported features turn on

* Remove ternary operator expression
2022-02-11 16:48:36 +02:00
Joakim Sørensen 7a40ae13a4 Add guard for invalid EntityCategory value (#66316) 2022-02-11 14:57:45 +01:00
Maikel Punie 1c087f5c70 Bump velbusaio to 2022.2.4 (#66321) 2022-02-11 15:48:32 +02:00
Franck Nijhof 11a13aa0b8 Add heating and cooling binary sensors to Plugwise (#66317) 2022-02-11 13:36:27 +01:00
Stefán Jökull Sigurðarson 6c3b36a978 Add Icelandic to list of supported Azure languages (#66310)
It was missing, as it is a supported language as per the list here: https://docs.microsoft.com/en-us/azure/cognitive-services/speech-service/language-support#text-to-speech
2022-02-11 12:53:09 +01:00
ufodone 49a41ebe14 Disable zone bypass switch feature (#66243)
* Add configuration option to disable the creation of zone bypass switches

* Removed temporary workaround and bumped pyenvisalink version to pick up the correct fix.

* Remove zone bypass configuration option and disable zone bypass switches per code review instructions.
2022-02-11 11:38:50 +01:00
Erik Montnemery 335a918118 Create MQTT discovery flow when manual config is present (#66248)
* Create MQTT discovery flow when manual config is present

* Change to integration_discovery flow

* Add test

* Add default handler for integration_discovery
2022-02-11 10:31:51 +01:00
Jens Østergaard Nielsen a644baf3cd Prepare for Ihc config flow (#64852)
* Extracting group and extra  info from ihc products

* Make suggested area not optional

* Revert back to assignment expression :=

* Make auto setup show device info for all platforms

* Change code comment to #

* Add return typing

* Remove device_info key without value

* get_manual_configuration typings for everything

* Adding IHCController typings

* Remove "ihc" from unique id

* Remove device_info

* Separator in unique id

* Return typing on ihc_setup

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

* Update homeassistant/components/ihc/ihcdevice.py

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

* Update homeassistant/components/ihc/ihcdevice.py

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

* Raise ValueError instead of logging an error

* Update homeassistant/components/ihc/service_functions.py

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

* Catch up with dev

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-11 10:24:31 +01:00
J. Nick Koston 43671da7cf Fix august token refresh when data contains characters outside of latin1 (#66303)
* WIP

* bump version

* bump
2022-02-11 11:15:50 +02:00
Allen Porter 122ada718a Bump google-nest-sdm to 1.7.1 (minor patch) (#66304) 2022-02-11 11:13:00 +02:00
GitHub Action bed5002d61 [ci skip] Translation update 2022-02-11 00:14:55 +00:00
J. Nick Koston cb2e486f6e Guard against 0 value for color temp in WiZ when turning off (#66295) 2022-02-10 18:12:36 -06:00
Joakim Plate c1760683a0 Add diagnostics for philips_js (#66233)
* Add diagnostics for philips_js

* Update homeassistant/components/philips_js/diagnostics.py

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

* Update homeassistant/components/philips_js/diagnostics.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Also redact username/password

They are really not that secret, but seem logical.

* Redact unique id

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2022-02-10 22:11:40 +01:00
Joakim Plate ad09e875a6 Correct philips_js usage of the overloaded coordinator (#66287) 2022-02-10 21:59:42 +01:00
jjlawren 4d944e35fd Skip polling Sonos audio input sensor when idle (#66271) 2022-02-10 12:48:13 -08:00
Franck Nijhof c6f3c5da79 Type Spotify hass data (#66285) 2022-02-10 12:38:33 -08:00
J. Nick Koston c91a20537a Add discovery on network up to WiZ (#66144) 2022-02-10 12:30:18 -08:00
uvjustin c222be0958 Catch ConnectionResetError when writing MJPEG in camera (#66245) 2022-02-10 12:25:31 -08:00
jjlawren 9fa2bdd3fd Handle more Sonos favorites in media browser (#66205) 2022-02-10 12:25:07 -08:00
Paulus Schoutsen 854d7d4936 Fix shutil import for local source (#66286) 2022-02-10 12:23:41 -08:00
jjlawren e86c82e675 Tweak Sonos activity monitoring (#66207)
* Tweak Sonos activity monitoring

* Support new 'sleeping' vanish reason
* Check availability before last-ditch check
* Use short-timeout call for last-ditch check
* Adjust reboot logging message and severity

* Simplify activity check failure
2022-02-10 14:11:47 -06:00
Erik Montnemery fe38e6ba87 Drop MQTT import flow (#66160)
* Drop MQTT import flow

* Reload manually configured MQTT entities when config entry is setup

* Address review comments

* Actually remove the import flow
2022-02-10 21:09:57 +01:00
Franck Nijhof dc7ab40acd Add humidity sensor to Plugwise (#66280) 2022-02-10 20:54:09 +01:00
Franck Nijhof fbd6e9f498 Extend Plugwise climate support (#66278) 2022-02-10 20:53:14 +01:00
Franck Nijhof bd920aa43d Cleanup existing Plugwise tests and test fixtures (#66282)
* Cleanup existing Plugwise tests and test fixtures

* More cleanup
2022-02-10 20:41:30 +01:00
Aaron Bach e5eba88ecc Clean up unnecessary branch in SimpliSafe (#66268) 2022-02-10 10:13:26 -07:00
Franck Nijhof b8253b1b47 Plugwise HVAC/Preset mode fixes (#66273) 2022-02-10 18:10:21 +01:00
Franck Nijhof 18056325bb Add Flame State binary sensor to Plugwise (#66275) 2022-02-10 18:09:38 +01:00
Franck Nijhof 08ab00d3ab More cleanup in Plugwise sensor (#66274) 2022-02-10 18:09:24 +01:00
Franck Nijhof f5829173db More cleanup in Plugwise climate (#66257) 2022-02-10 17:13:22 +01:00
Jarod Wilson deb8185911 Add unique_id for decora_wifi lights (#66142)
I have some decora_wifi switches that I want to be able to move around
to different rooms within Home Assistant, and for that to be practical,
they need unique IDs, so here we are.

Signed-off-by: Jarod Wilson <jarodwilson@gmail.com>
2022-02-10 17:10:58 +01:00
Paulus Schoutsen dd48f1e6fc Allow uploading media to media folder (#66143) 2022-02-10 08:03:14 -08:00
J. Nick Koston 0fb2c78b6d Add RGBW/RGBWW support to WiZ (#66196) 2022-02-10 09:08:33 -06:00
Franck Nijhof 51e14cebe3 Remove Plugwise Auxiliary sensors (#66259) 2022-02-10 15:55:27 +01:00
Franck Nijhof 3896b4a31d Add additional switches to Plugwise (#66261) 2022-02-10 15:49:19 +01:00
Franck Nijhof 4cad29d7d4 More cleanup in Plugwise binary sensor (#66255) 2022-02-10 11:17:35 +01:00
Erik Montnemery f5fff95e8b Tweak constant config_entries.DISCOVERY_SOURCES (#66249) 2022-02-10 11:12:38 +01:00
epenet 47d6f75c17 Enable basic type checking in template (#66222)
* Fix binary_sensor

* Adjust button

* Adjust fan

* Adjust select

* Adjust template_entity

* Adjust trigger_entity

* Adjust weather

* Adjust init

* Adjust number

* Adjust None check
2022-02-10 10:59:54 +01:00
Franck Nijhof 8760cb035a More cleanup in Plugwise switch (#66254) 2022-02-10 10:17:37 +01:00
epenet ea325ef027 Enable basic type checking in demo platforms (#66212)
* Adjust type hints in demo platforms

* Adjust mypy config

* Adjust name
2022-02-10 10:05:58 +01:00
Franck Nijhof b3814aa4e6 Refactor Plugwise command handling (#66202) 2022-02-10 09:53:26 +01:00
Jan Bouwhuis 678e56b8b7 Mqtt move to .const (#65631) 2022-02-10 09:18:35 +01:00
epenet f17d66228c Enable basic type checking in demo init (#66218)
* Enable basic type checking in demo init

* Remove from mypy ignore list
2022-02-10 09:04:36 +01:00
Paulus Schoutsen e90143e5c9 Sort media sources (#66237)
* Sort media sources

* Flatten media sources and sort Cast children

* Only expand if possible
2022-02-10 09:03:29 +01:00
Daniel Hjelseth Høyer 3733aa9494 Add more sensors for users with Tibber Pulse (#66201)
* Tibber, Add stats and sensors for homes with real time meter

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

* Tibber stats

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

* Monthly peak hour
2022-02-10 08:47:34 +01:00
Raman Gupta 72acda81a7 Simplify get_unique_id helper function for zwave_js (#66221) 2022-02-10 08:46:32 +01:00
Michael 23e39d62d4 bump py-synologydsm-api to 1.0.6 (#66226) 2022-02-10 08:43:48 +01:00
Milan Meulemans 86cf5ec5c2 Bump aioaseko to 0.0.2 to fix issue (#66240) 2022-02-10 08:37:35 +01:00
j-a-n 243d003acc Add Moehlenhoff Alpha2 underfloor heating system integration (#42771)
* Add Moehlenhoff Alpha2 underfloor heating system integration

* isort changes

* flake8 changes

* Do not exclude config_flow.py

* pylint changes

* Add config_flow test

* correct requirements_test_all.txt

* more tests

* Update test description

* Test connection and catch TimeoutError in async_setup_entry

* Add version to manifest file

* Remove version from manifest file

* Replace tests.async_mock.patch by unittest.mock.patch

* Update moehlenhoff-alpha2 to version 1.0.1

* Update requirements for moehlenhoff-alpha2 1.0.1

* Update moehlenhoff-alpha2 to 1.0.2

* Use async_setup_platforms

* Use async_unload_platforms

* Separate connection and devices for each entry_id

* Use async_track_time_interval to schedule updates

* Check if input is valid before checking uniqueness

* Move Exception handling to validate_input

* Catch aiohttp.client_exceptions.ClientConnectorError

* Remove translation files

* Mock TimeoutError

* Fix data update

* Replace current callback implementation with ha dispatcher

* Return False in should_poll

* Remove unused argument

* Remove CONNECTION_CLASS

* Use _async_current_entries

* Call async_schedule_update_ha_state after data update

* Remove unneeded async_setup

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Remove unneeded async_setup_platform

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Set Schema attribute host required

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Remove unused Exception class

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Update manifest.json

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* pylint constructor return type None

* Replace properties by class variables

* use pass instead of return

* Remove unused sync update method

* remove property hvac_action

* remove pass

* rework exception handling

* Update homeassistant/components/moehlenhoff_alpha2/config_flow.py

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Correct indentation

* catch Exception in validate_input

* Replace HomeAssistantType with HomeAssistant

* Update to moehlenhoff-alpha2 1.0.3

* Allow to switch between heating and cooling mode

* Update moehlenhoff-alpha2 to version 1.0.4

* Update heatarea data after setting target temperature

* Support hvac_action

* Fix heatarea update with multiple bases

* Update data after setting preset mode

* Use custom preset modes like defined by device

* Fix config flow test

* Fix test_duplicate_error

* Rename property to extra_state_attributes

Rename property device_state_attributes to extra_state_attributes and
return lowercase keys in dict.

* Refactor using DataUpdateCoordinator

* Remove _attr_should_poll

* Raise HomeAssistantError on communication error

Catch HTTPError instead of broad except and reraise as HomeAssistantError

* Change DataUpdateCoordinator name to alpha2_base

* Refresh coordinator before setting data

* Raise ValueError on invalid heat area mode

* Rename heatarea to heat_area

* Set type annotation in class attribute

* Move coordinator to top

* Move exception handling to the coordinator

* Use heat_area_id directly

* Sore get_cooling() result into local var

* Add explanation of status attributes

and remove BLOCK_HC

* Fix pylint warnings

* from __future__ import annotations

* Use Platform Enum

* Move data handling to coordinator

* Remove property extra_state_attributes

* Add missing annotations

* Update moehlenhoff-alpha2 to version 1.1.2

* Rework tests based on the scaffold template

* Set also heat/cool/day/night temp with target temp

* Remove unneeded code from tests

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
2022-02-10 08:28:52 +01:00
Patrik Lindgren 543b49728a Fix tradfri device name (#66219) 2022-02-10 08:19:59 +01:00
jjlawren 9fd8428254 Sonos lock subscription actions (#66204)
* Move exception logging to helper

* Wrap subscription in lock

* Rewrite subscribe method to use new logging helper

* Mark entitites as unavailable sooner to avoid unnecessary polls

* Rename unclear method and update docstring

* Move lock to unsubscribe
2022-02-09 21:56:10 -06:00
GitHub Action 7d70b0a16b [ci skip] Translation update 2022-02-10 00:15:56 +00:00
Mick Vleeshouwer d7fcda01b8 Add siren platform to Overkiz (#65300) 2022-02-09 17:36:56 -06:00
jjlawren 47af256610 Schedule activity checks when using manual hosts (#65970) 2022-02-09 16:55:00 -06:00
Kevin Stillhammer 7a1bbb06be add @eifinger as waze_travel_time codeowner (#66214) 2022-02-09 23:30:29 +02:00
Kevin Stillhammer 604fe3f19b add @eifinger as google_travel_time_codeowner (#66215) 2022-02-09 23:29:39 +02:00
epenet cc5bb556c8 Move Freebox reboot service to a button entity (#65501)
* Add restart button to freebox

* Add warning

* restart => reboot

* Add button tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-09 22:20:24 +01:00
epenet f4aaa981a1 Adjust coverage to include all config flows (#66193)
* Adjust tradfri

* Adjust huawei_lte

* Adjust iqvia

* Adjust wiffi

* Adjust solarlog

* Adjust lifx

* Adjust doorbird

* Adjust rachio

* Adjust starline

* Adjust konnected

* Adjust ambient_station

* Adjust tado

* Adjust point

* Adjust daikin

* Adjust hangouts

* Adjust ifttt

* Adjust ios

* Adjust life360

* Adjust sms

* Adjust spider

* Adjust upnp

* Adjust hassfest
2022-02-09 22:19:29 +01:00
Franck Nijhof 8a09303c98 Extract Spotify media browsing into a module (#66175) 2022-02-09 22:03:15 +01:00
Paulus Schoutsen 3bce870c6d Add helper for media players to handle HA hosted media (#66120)
* Sonos to sign all HASS urls

* Don't sign if queries in url

* Extract media player hass URL handling to helper
2022-02-09 12:50:33 -08:00
Maximilian bd657e5dd7 Add missing nina warnings (#66211) 2022-02-09 21:08:46 +01:00
Stephan Traub a6013dc0de Update WiZ with IP address validation (#66117) 2022-02-09 12:53:32 -06:00
Erik Montnemery 83a10cca53 Enable basic type checking for config (#66197) 2022-02-09 19:09:55 +01:00
Franck Nijhof d4995624ee Refactor Plugwise notification binary sensor (#66159) 2022-02-09 18:08:28 +01:00
Franck Nijhof aa95150360 Add entity descriptions to Plugwise switch platform (#66174) 2022-02-09 17:56:07 +01:00
Otto Winter 1f4ee3c265 Bump aioesphomeapi from 10.8.1 to 10.8.2 (#66189) 2022-02-09 17:54:27 +01:00
epenet 567f07c96e Fix hdmi-cec initialization (#66172) 2022-02-09 07:52:32 -08:00
Erik Montnemery 3f7b7187ab Fix controlling nested groups (#66176) 2022-02-09 14:27:46 +01:00
Kevin Stillhammer a0119f7ed0 Resolve zones and return state in find_coordinates (#66081) 2022-02-09 10:43:20 +01:00
Franck Nijhof bc9ccf0e47 Add device availability to Plugwise (#66152) 2022-02-09 10:33:06 +01:00
Franck Nijhof 2f08372026 Correct Velbus button light entity category (#66156) 2022-02-09 10:31:58 +01:00
Richard Benson b90434e8d6 Bump amcrest to 1.9.4 (#66124)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-02-09 10:25:07 +01:00
Franck Nijhof d34c289691 Clean up unneeded preset variable in Plugwise climate (#66151) 2022-02-09 10:23:39 +01:00
Franck Nijhof 924bcdf269 Move Plugewise binary sensor icon state into entity description (#66148) 2022-02-09 10:15:20 +01:00
Michael 95aec44292 Fix system is loaded flag during reboot/shutdown of Synology DSM (#66125) 2022-02-09 10:02:21 +01:00
Maikel Punie d9e9820e21 Move the buttonlights to diagnostic entities (#65423) 2022-02-09 09:50:15 +01:00
Simone Chemelli bfc3c29c6a Change detection of router devices for Fritz (#65965) 2022-02-09 09:44:04 +01:00
Erik Montnemery da38d9ab80 Fix MQTT debug info (#66146) 2022-02-09 09:43:03 +01:00
Aaron Bach 83b7fac9a4 Bump simplisafe-python to 2022.02.1 (#66140) 2022-02-09 09:20:57 +01:00
Allen Porter 9446b39ae0 Bump google-nest-sdm to 1.7.0 (#66145) 2022-02-09 09:12:49 +01:00
Paulus Schoutsen e6e49dcb07 VLC Telnet to sign all HASS URLs (#66123) 2022-02-08 17:13:14 -08:00
Paulus Schoutsen f2843283bf Roku to sign all HASS urls (#66122) 2022-02-08 18:55:52 -06:00
GitHub Action fb96c31a27 [ci skip] Translation update 2022-02-09 00:23:56 +00:00
Duco Sebel f2fe091979 Allow HomeWizard devices with disabled api to show up in discovery (#65295) 2022-02-08 14:51:28 -08:00
Dave T 5ebc02cef6 Fix generic camera typo in attr_frame_interval (#65390) 2022-02-08 14:47:36 -08:00
Paulus Schoutsen 716a1e2a64 Add camera media source (#65977) 2022-02-08 14:32:02 -08:00
Franck Nijhof b216f6f448 Fix Plugwise notification sensor (#66116) 2022-02-08 14:12:22 -08:00
Franck Nijhof b9f21d4e07 Improve typing of Spotify (#66109)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-08 23:07:13 +01:00
Robert Svensson b012b79167 Adapt deCONZ number platform to align with updated design of binary sensor and sensor platforms (#65248)
* Adapt number to align with binary sensor and sensor platforms

* Make number tests easier to expand
2022-02-08 23:03:37 +01:00
Erik Montnemery 911e488d48 Fix ENTITY_CATEGORIES_SCHEMA (#66108)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-08 14:00:53 -08:00
Erik Montnemery 009b31941a Support restoring SensorEntity native_value (#66068) 2022-02-08 14:00:26 -08:00
Patrik Lindgren f8a84f0101 Add diagnostics for Tradfri platform (#66092)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-08 22:05:33 +01:00
epenet 86ab500afd Add Renault hvac sensors (#65993)
* Add hvac sensors to renault

* Adjust fixtures

* Adjust tests

* Use icon_fn

* Use lambda

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-08 22:02:45 +01:00
Erik Montnemery 55d8314093 Fix cleanup of MQTT debug info (#66104) 2022-02-08 12:49:25 -08:00
J. Nick Koston 07b3d23835 Improve wiz performance (#66105) 2022-02-08 21:34:52 +01:00
Sander Jochems d574e54fd8 Fivem code quality improvements (#66086)
* specify config type

* move coordinator outside try block

* rename gamename to game_name

* remove log in __init__

* Remove logging and minify update

* Add types to parameters

* Remove name from device

* Remove update listener

* Remove status icon

* Dont allow duplicate entries

* Use default translation string

* Remove online and port from coordinator
2022-02-08 20:42:55 +01:00
Franck Nijhof dad1dbeb6e Cleanup hass.data in Plugwise (#66096) 2022-02-08 21:17:49 +02:00
J. Nick Koston d62e9c2b92 Loosen wiz discovery matching (#66095) 2022-02-08 19:57:21 +01:00
Franck Nijhof 41a4d40b71 Reuse existing coordinator entity update in Plugwise platforms (#66079)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-08 19:54:10 +01:00
Ben Edmunds c93d389544 Bump async-upnp-client to 0.23.5 (#65922) 2022-02-08 20:27:16 +02:00
Franck Nijhof 1bc82e2f85 Use legacy pip resolver in machine builds (#66094) 2022-02-08 19:18:04 +01:00
jjlawren a7fd477c64 Refactor Sonos polling (#65722)
* Refactor Sonos polling

Explicitly rename fallback polling
Catch soco exceptions centrally where possible
Create SonosPollingEntity subclass
Remove unnecessary soco_error fixture argument
Remove unnecessary polling in update_volume()
Adjust log levels and wording
Set explicit timeout on library

* Adjust logging to use raised exceptions

* Simplify availabiliity checks when using built-in poller

* Fix typing for return values
2022-02-08 12:17:05 -06:00
Franck Nijhof 4efebcb86c Use upstream device information for Plugwise (#66074) 2022-02-08 19:08:01 +01:00
Mick Vleeshouwer 199c8fef40 Fix MyFox Camera Shutter entity in Overkiz integration (#66088) 2022-02-08 17:49:38 +01:00
Allen Porter 6f46d98308 Bump python-nest to 4.2.0 for python 3.10 fixes (#66090) 2022-02-08 08:40:06 -08:00
Franck Nijhof a500205545 Fix typo in base image tag (#66087) 2022-02-08 16:27:44 +01:00
Mick Vleeshouwer b6ad79e2b8 Update PyOverkiz to 1.3.4 (#66076) 2022-02-08 16:11:05 +01:00
Franck Nijhof 59c7af0f80 Update base image to 2022.02.0 (#66082) 2022-02-08 16:10:17 +01:00
Franck Nijhof 473834acd2 Add myself as codeowner to Plugwise (#66080) 2022-02-08 15:23:11 +01:00
Pablo Ovelleiro Corral 46b7b1ffb3 Increase timeout for InfluxDB v2 connections (#63885)
* Update influxdb timeout

* Update homeassistant/components/influxdb/const.py

Co-authored-by: Mike Degatano <michael.degatano@gmail.com>

Co-authored-by: Mike Degatano <michael.degatano@gmail.com>
2022-02-08 09:20:50 -05:00
AJ Schmidt 37525ae8c3 Remove AlarmDecoder Codeowner (#66078) 2022-02-08 15:14:33 +01:00
Tiernan 2df5060d80 Fix TOD incorrectly determining the state between sunrise and sunset (#65884)
* Fix TOD component incorrectly determining the state between sunrise and sunset (#30199)

* TOD fix

* Comment added

* Review

* Review

* Review

* Update time after day fix workaround for compatibility with
current version.
Only apply fix when using times and not when using sun events.
Add unit test for behaviour.

Co-authored-by: Nikolay Vasilchuk <Anonym.tsk@gmail.com>
2022-02-08 14:26:36 +01:00
Mick Vleeshouwer dcab9a19d6 Remove Overkiz switch platform todo and add 2 devices (#66069) 2022-02-08 14:05:35 +02:00
Eduard van Valkenburg f74706a265 Bump azure-eventhub to 5.7.0 (#66061) 2022-02-08 12:56:24 +01:00
Franck Nijhof 1fc717ed1c Add diagnostics support to Plugwise (#65982) 2022-02-08 12:43:45 +01:00
Franck Nijhof d12a392767 Update plugwise 0.16.2 (#65933) 2022-02-08 11:13:05 +01:00
Sander Jochems 0ea82bdbfb Fivem integration (#65089)
* Initial fivem integration setup

* Use licenseKey for unique ID

* Create FiveMServer class

* Create FiveMStatusBinarySensor

* Fix platform loading

* Create sensor platform

* Remove config flow tests

* Update manifest.json

* Use attr_ instead or properties in sensors.py

* Use entry_id as unique_id

* Move device info to _attr instead of property

* Register callback in FiveMEntity

* Create config flow tests

* Add loggin to fivem

* Use FiveM in config_flow

* Use update_coordinator instead of dispatcher

* Bump fivem-api to 0.1.2

* Remove leftovers

* More tests for config flow

* Add component files to .coveragerc

* Fix simple comments

* Add gamename check to config flow

* Use entity descriptions for sensors

* Move extra attributes to init

* Use [] instead of get() for server info

* Fix error in gamename test
2022-02-08 11:27:11 +02:00
Tobias Sauerwein 8b38fa58aa Bump pytest to 7.0.0 (#65981) 2022-02-08 10:03:27 +01:00
Maikel Punie a03d8179d0 Bump velbusaio to 2022.2.3 (#66055) 2022-02-08 09:48:42 +01:00
Raman Gupta 4076ca9641 Fix schema for zwave_js WS API (#66052) 2022-02-07 21:53:48 -08:00
Franck Nijhof 895aee3fb2 Add configuration_url to Plugwise discovery (#66047) 2022-02-08 03:00:41 +01:00
Franck Nijhof 379945860b Add configuration_url to Octoprint discovery (#66046) 2022-02-08 02:59:38 +01:00
Franck Nijhof 22e379cd54 Add support for mc devices to Tuya (#66044) 2022-02-08 02:56:32 +01:00
starkillerOG f9c81dd00b Lock Netgear api during setup (#66033) 2022-02-08 02:50:38 +01:00
Patrik Lindgren afd0005a31 Add sensor for filter time left on Tradfri fan platform (#65877)
* Add support for filter time left

* Fix test for fan platform

* Remove debug code

* Add unique id migration tool

* Convert to hours

* Fix tests

* Apply suggestions from code review

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

* Add comment, check migration

* Refactor migration helper

* Refactor migration helper

* Move definition of new unique id

* Return after warning

* Add test for unique id migration

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-08 02:21:22 +01:00
J. Nick Koston f943f30492 Add discovery support to elkm1 (#65205) 2022-02-07 16:25:26 -08:00
GitHub Action cf70ad10e8 [ci skip] Translation update 2022-02-08 00:15:56 +00:00
jjlawren 36cfa7786d Clean up Sonos unsubscribe/resubscribe exception handling and logging (#66025) 2022-02-07 16:00:57 -08:00
Erik Montnemery 33623c3fe8 Fix race in MQTT sensor and binary_sensor expire_after (#66040) 2022-02-07 15:47:23 -08:00
Erik Montnemery 39ed628cca Suppress unwanted error messages during recorder migration (#66004) 2022-02-07 15:46:40 -08:00
J. Nick Koston 95cc677ba6 Fix decoding discovery with old Magic Home firmwares (#66038) 2022-02-07 15:45:50 -08:00
J. Nick Koston 175812d9e1 Fix missing exception catch in august to prevent failed setup (#66045) 2022-02-07 15:45:40 -08:00
Paulus Schoutsen 95a890c6e1 Get_url to prefer external URL if SSL configured (#66039) 2022-02-07 15:44:02 -08:00
Erik Montnemery 7cc6770f83 Revert "Make idle chromecasts appear as idle instead of off" (#66005) 2022-02-07 20:24:30 +01:00
Franck Nijhof 4732e37005 Remove passing loop into sleep in SamsungTV (#66030) 2022-02-07 20:08:54 +01:00
J. Nick Koston 721d711762 Add firmware and hardware version to WiZ (#66017) 2022-02-07 19:23:08 +01:00
G Johansson 480ce84b8a Improve code quality filesize (#65240) 2022-02-07 11:59:06 -06:00
Erik Montnemery 910b1f1ec8 Speed up deletion of duplicated statistics (#66014) 2022-02-07 09:11:52 -08:00
J. Nick Koston ace74279f1 Move WiZ socket ident to upstream lib (#65958) 2022-02-07 17:44:52 +01:00
Vincent Le Bourlot d82899ed2f Add title placeholders to overkiz discovery (#65506)
* add gateway_id to the config flow context name.

* obfuscate gateway_id.

* replace const with homeassistant.const.

* Remove obfuscation of gateway_id.

* fix style.

* Add translatable title according to comments

* Update homeassistant/components/overkiz/strings.json

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-07 17:53:05 +02:00
Pedro Lamas ebbe1ff1a2 Cache webostv supported_features state (#65930)
* Cache webostv supported_features state

* Fixes typings

* Restore supported_features attribute on restart

* Reverts change on supported_features initial state

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

* Fixes tests

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-02-07 17:49:18 +02:00
J. Nick Koston 9c82dcdee7 Add push updates support to WiZ (#65987) 2022-02-07 16:46:00 +01:00
Poltorak Serguei 3c5a667d97 Add Z-Wave.Me integration (#65473)
* Add support of Z-Wave.Me Z-Way and RaZberry server (#61182)

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: LawfulChaos <kerbalspacema@gmail.com>

* Add switch platform to Z-Wave.Me integration (#64957)

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

* Add button platform to Z-Wave.Me integration (#65109)

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Fix button controller access (#65117)

* Add lock platform to Z-Wave.Me integration #65109 (#65114)

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Add sensor platform to Z-Wave.Me integration (#65132)

* Sensor Entity

* Sensor fixes

* Apply suggestions from code review

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

* Inline descriotion according to review proposal

* State Classes for sensor

* Generic sensor

* Generic sensor

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

* Add binary sensor platform to Z-Wave.Me integration (#65306)

* Binary Sensor Entity

* Update docstring

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

* Add Light Entity platform to Z-Wave.Me integration (#65331)

* Light Entity

* mypy fix

* Fixes, ZWaveMePlatforms enum

* Apply suggestions from code review

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

* Fixes

* Fixes

* Fixes

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

* Add Thermostat platform to Z-Wave.Me integration #65331 (#65371)

* Climate entity

* Climate entity

* Apply suggestions from code review

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

* Climate entity fix

* Clean up

* cleanup

* Import order fix

* Correct naming

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

* Correct zwave_me .coveragerc (#65491)

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

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: LawfulChaos <kerbalspacema@gmail.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-02-07 16:27:11 +01:00
Joakim Sørensen b1015296d9 Add diagnostics to Version integration (#65999)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-07 16:11:04 +01:00
Joakim Sørensen e226cfaeb2 Use strings directly instead of Enums in version config (#66007) 2022-02-07 16:04:18 +01:00
Franck Nijhof da3024e162 Upgrade to newer Python pip>=21.0 (#59769) 2022-02-07 15:12:04 +01:00
Milan Meulemans 78d2fbb402 Upgrade aionanoleaf to 0.2.0 (#66008) 2022-02-07 14:49:34 +01:00
epenet 486c068111 Allow None on Renault binary sensors (#65997)
* Enable None on renault binary sensors

* Adjust tests

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-07 15:06:40 +02:00
starkillerOG d81139377c Add Netgear allow/block switch (#65705)
* add allow/block switch

* keep api private

* typing

* change default to None

* retain None state

* change default to None
2022-02-07 12:00:02 +01:00
Franck Nijhof bd31cfbd40 Add secondary dimmer to dj in Tuya (#65990) 2022-02-07 11:15:28 +01:00
Joakim Sørensen 38f7213002 Add more tests to device registry updates (#65989) 2022-02-07 11:15:04 +01:00
Franck Nijhof 1ae809293f Add support for qjdcz to Tuya (#65985) 2022-02-07 11:14:48 +01:00
epenet 03ade194ab Trigger full CI run on pylint amends (#65430)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-07 10:58:30 +01:00
starkillerOG 791b700ac2 bump motionblinds to 0.5.11 (#65988) 2022-02-07 10:57:42 +01:00
rhpijnacker bb762d5b0f 100% code coverage for config_flow of dsmr component (#65238) 2022-02-07 10:48:33 +01:00
Chris Talkington f05caf451e Small cleanup of sonarr sensor platform (#65962) 2022-02-07 09:53:23 +01:00
Chris Talkington 18ac72f613 Reduce coordinator cooldown for roku (#65973) 2022-02-07 09:03:19 +01:00
jjlawren 211db79f11 Bump plexapi to 4.9.2 (#65972) 2022-02-07 09:56:24 +02:00
dependabot[bot] f5bdbb7727 Bump actions/setup-python from 2.3.1 to 2.3.2 (#65974)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-07 08:50:27 +01:00
Anders Melchiorsen 9e0926f943 Remove LIFX devices with no entities (#65964) 2022-02-07 08:19:32 +01:00
Chris Talkington 0321f208ff Address late review from #65814 for roku (#65967) 2022-02-06 19:13:01 -06:00
GitHub Action 2772437a2b [ci skip] Translation update 2022-02-07 00:14:20 +00:00
Marc Mueller 633aad3a60 Cycle pip wheel cache on dev version bump [CI] (#65791) 2022-02-07 00:25:22 +01:00
Teemu R fd7e2e76e7 Add tplink diagnostics (#65822) 2022-02-06 16:50:44 -06:00
Michael 4cd00a1a6f remove EntityCategory from home_mode switch (#65949) 2022-02-07 00:41:02 +02:00
Paulus Schoutsen f820806e3c Remove duplicate methods from Frtiz (#65956) 2022-02-06 14:38:26 -08:00
Teemu R f4ebb03bab Add tplink hardware version to device info (#65951)
* Add tplink hardware version to device info

* Update mocks

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-07 00:37:54 +02:00
Marc Mueller c28821aeca Remove unused temp_unit attr [sensibo] (#65953) 2022-02-07 00:34:23 +02:00
Michael dc65c621ed check wan access type (#65389) 2022-02-06 14:17:10 -08:00
ollo69 341d039252 Improve androidtv mac address handling and test coverage (#65749)
* Better mac addr handling and improve test coverage

* Apply suggested changes

* Apply more suggested changes
2022-02-06 14:15:50 -08:00
Sean Vig 50525e25b6 Fix Amcrest service calls (#65717)
Fixes #65522
Fixes #65647
2022-02-06 14:14:44 -08:00
Allen Porter ddd198de37 Fix legacy nest diagnostics to return empty rather than fail (#65824)
Fix legacy nest diangostics to return gracefully, rather than a TypError
by checking explicitiy for SDM in the config entry. Update diagnostics
to use the common nest test fixture, and extend with support for the
legacy nest config. Use the sdm test fixture in the existing legacy
tests so they all share the same config files.
2022-02-06 14:14:25 -08:00
Maciej Bieniek 6d37979e10 Fix wind speed unit (#65723) 2022-02-06 14:13:05 -08:00
J. Nick Koston 41f602c3df Fix loss of ability to control white channel in HomeKit on RGB&W lights (#65864)
* Fix loss of ability to control white channel in HomeKit on RGB&W lights

- Fix white channel missing from RGB/W lights

- Fix temp missing from RGB/CW lights

- Fixes #65529

* cover the missing case

* bright fix

* force brightness notify on color mode change as well
2022-02-06 14:12:30 -08:00
Milan Meulemans b1dcf7e0d8 Add DataUpdateCoordinator to Nanoleaf (#65950) 2022-02-06 16:11:52 -06:00
Michael 275d4b9770 Improve device shutdown and unload of Synology DSM integration (#65936)
* ignore errors during unload/logout

* automatic host update is an info, nut debug
2022-02-06 14:02:31 -08:00
J. Nick Koston 62da194340 Add diagnostics support to HomeKit (#65942)
* Add diagnostics support to HomeKit

* remove debug
2022-02-06 14:02:07 -08:00
Jens Østergaard Nielsen e7d725e810 Ihc integration, move manual setup out of init.py (#65087)
* Move manual setup out of init.py

* Type hints on additional parameters

* Complete missing  typings
2022-02-06 13:42:15 -08:00
Alex Yao 88309a26b7 Fix Yeelight Music Mode Rate Limits (#64891) 2022-02-06 15:34:27 -06:00
Diego Elio Pettenò c6aa526469 Support songpal wireless-only soundbar identifiers (#65330)
As shown in #64868, a number of newer models don't come wiht a macAddr
attributes, so for those fall back to the wireless address.

This could be hidden by the python-songpal library but for now this will
make it possible to have multiple modern songpal devices on the same
network.
2022-02-06 22:33:58 +01:00
Joakim Sørensen 63d3a47599 disabled_by can be None when updating devices (#65934) 2022-02-06 20:23:31 +01:00
Niels AD ccdf182d31 rfxtrx: Add command_on/command_off support for pt2262 switch entities (#65798) 2022-02-06 19:39:57 +01:00
Franck Nijhof c41ec6f941 SensorEntityDescriptions for Plugwise (#65898) 2022-02-06 12:19:57 -06:00
ollo69 900c793c3a Add diagnostics support for Nut (#65893) 2022-02-06 12:00:39 -06:00
Sander Huisman e7dfc89452 Add unique ID to InfluxDB sensor (#65518) 2022-02-06 18:40:37 +01:00
jjlawren b02a030336 Fix Spotify, Tidal, Apple Music playback on Sonos groups (#65838) 2022-02-06 18:37:23 +01:00
Christopher Masto 6d4df93bc7 Correct description of entity_globs (#65805) 2022-02-06 18:36:38 +01:00
Marc Mueller ac7e8c40a3 Remove homeassistant import [pylint plugin] (#65911) 2022-02-06 18:36:02 +01:00
M. Frister 9597ed3f8a Bump soco to 0.26.2 (#65919) 2022-02-06 18:17:41 +01:00
Franck Nijhof 34a636ef0b Extract Plugwise DataUpdateCoordinator into module (#65915) 2022-02-06 19:03:50 +02:00
Franck Nijhof 92856bab56 Add mbd Tuya light support (#65918) 2022-02-06 17:55:03 +01:00
Matthias Alphart e54c89dc0d Update xknx to 0.19.2 - fix TCP tunnelling (#65920) 2022-02-06 17:48:56 +01:00
Franck Nijhof 62a314015c BinarySensorEntityDescriptions for Plugwise (#65887) 2022-02-06 17:25:55 +01:00
J. Nick Koston 540f1c19d5 Fix Task exception was never retrieved when WiZ devices are offline (#65844) 2022-02-06 17:13:51 +01:00
ollo69 13699baa4d Remove deprecated yaml config from AsusWRT (#65904) 2022-02-06 17:03:04 +02:00
Franck Nijhof a0895f1bf2 Small cleanup in Plugwise switch (#65845) 2022-02-06 10:51:50 +01:00
ollo69 1c8a34c349 Clean-up AsusWRT setup entry (#65860) 2022-02-06 10:35:49 +02:00
Jeef 72601ccf32 feat: bumped version (#65863) 2022-02-06 10:32:04 +02:00
J. Nick Koston 66c9b95da8 Fix flash at turn on with newer 0x04 Magic Home models (#65836) 2022-02-05 22:49:37 -06:00
Chris Talkington 15e5f516d2 Update rokuecp to 0.13.1 (#65814) 2022-02-05 22:17:31 -06:00
GitHub Action 2da4d280b2 [ci skip] Translation update 2022-02-06 00:17:31 +00:00
starkillerOG 1269483923 Remove port from description (#65851) 2022-02-06 02:00:42 +02:00
Brett Adams f4eb7e31a4 Bump Advantage Air to 0.2.6 (#65849) 2022-02-06 01:49:26 +02:00
Franck Nijhof 131dbd6c8e Move Plugwise logger into constants (#65842) 2022-02-06 01:43:05 +02:00
Franck Nijhof a6e36a6eb9 Simplify unique ID handling in Plugwise (#65839) 2022-02-05 23:59:37 +01:00
Aidan Timson acb7e24852 Reduce System Bridge load on server (#65794) 2022-02-05 22:56:36 +01:00
J. Nick Koston 9dc158f5e0 Add support for picking discovered devices to WiZ (#65826)
* Add support for picking discovered devices

- Also fixes state not being written initially (it was not so
  obvious since the next coordinator update wrote it)

* store it

* store it

* order

* fixes

* more cleanups

* hints

* naming

* merge branches
2022-02-05 22:23:31 +01:00
Franck Nijhof b299f80feb Improve entry setup error logging for Plugwise (#65830) 2022-02-05 21:23:25 +01:00
dougiteixeira 52d7ca6b1c Complementing the Tuya Humidifier (jsq) category (#65276)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-05 20:31:20 +01:00
Franck Nijhof 87049283c1 Extract base entity class in Plugwise (#65821) 2022-02-05 19:09:37 +01:00
Franck Nijhof b0bb2d2453 Cleanup Plugwise config flow and tests (#65818) 2022-02-05 19:07:02 +01:00
J. Nick Koston 5621e20963 WiZ Cleanups part 3 (#65819)
* WiZ Cleanups part 3

- Sockets are now using the switch platform

* tweaks

* remove rgb colorcheck

* tweaks

* tweaks

* cover

* cover
2022-02-05 18:56:17 +01:00
Hans Oischinger f171ec4676 Add missing vicare state class (#65795) 2022-02-05 18:17:09 +01:00
J. Nick Koston 676edb610f Add coverage for color_rgbww_to_rgb, fix divzero case (#65721) 2022-02-05 10:59:32 -06:00
J. Nick Koston adbc0e5955 Prevent multiple dhcp flows from being started for the same device/domain (#65753) 2022-02-05 10:59:22 -06:00
J. Nick Koston 2bcd4f8f93 Add discovery support to WiZ Part 1 (#65752) 2022-02-05 10:36:44 -06:00
J. Nick Koston ff59f1ee51 Add INTEGRATION_DISCOVERY to DISCOVERY_SOURCES (#65811) 2022-02-05 10:36:04 -06:00
Ferdinand 854d56fc6d Fix the restart when the saj device is down (#65796) 2022-02-05 17:12:17 +01:00
Franck Nijhof 00e8d2bc3d Small cleanup in Plugwise climate (#65800) 2022-02-05 17:09:49 +01:00
David McClosky df0e98f428 Remove dmcc from codeowners in vlc_telnet (#65810) 2022-02-05 17:01:39 +01:00
Franck Nijhof 5c6d019d6b Remove options flow from Plugwise (#65808) 2022-02-05 16:46:50 +01:00
Shay Levy ae3b337d3e Bump aioshelly to 1.0.9 (#65803) 2022-02-05 16:44:05 +01:00
J. Nick Koston 342f5182b9 WiZ cleanups part 1 (#65746)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-05 09:23:19 -06:00
Franck Nijhof f3c5f9c972 Drop responses from test requirements (#65793) 2022-02-05 15:17:12 +01:00
Franck Nijhof d92ed3ff2b Update coverage to 6.3.1 (#65790) 2022-02-05 14:38:14 +01:00
Hans Oischinger 99fd16d675 Clean up vicare code (#65774)
* Clean up vicare code

Remove constants that were only used once
Remove _build_entity and use constructor directly

* Fix copy/paste issue
2022-02-05 14:26:44 +01:00
Franck Nijhof 9f8c0685e3 Small cleanup in Plugwise sensors (#65765) 2022-02-05 14:20:07 +01:00
Franck Nijhof fa09cf663e Update black to 22.1.0 (#65788) 2022-02-05 14:19:37 +01:00
Franck Nijhof 58409d0895 Update Pillow to 9.0.1 (#65779) 2022-02-05 14:19:24 +01:00
Franck Nijhof 6cf0d9d37a Update sentry-dsk to 1.5.4 (#65792) 2022-02-05 14:14:31 +01:00
Lars 3373b73329 Update pyfritzhome to 0.6.4 (#65777) 2022-02-05 14:10:07 +01:00
Franck Nijhof e386f4846d Update delijn to 1.0.0 (#65776)
* Update delijn to 1.0.0

* -1
2022-02-05 13:31:04 +01:00
Franck Nijhof efd7b2a978 Update apprise to 0.9.7 (#65780) 2022-02-05 13:28:32 +01:00
Patrik Lindgren daedbbb1ee Bump pytradfri to 9.0.0 (#65784)
* Bump pytradfri to 8.1.0

* Bump to 9.0.0

* Bump manifest
2022-02-05 13:25:50 +01:00
G Johansson 54e1e905b1 Add capabilities to sensibo coordinator data (#65775) 2022-02-05 13:00:56 +01:00
G Johansson 07edbc42a4 Bugfix temp step list out of range sensibo (#65782) 2022-02-05 12:53:27 +01:00
Franck Nijhof 5613a80d28 Add Heater (rs) support Tuya Climate (#65707) 2022-02-05 12:09:29 +01:00
Aidan Timson b1bf9b50d8 Fix OVO Energy NoneType error occurring for some users (#65714) 2022-02-05 11:46:52 +01:00
dougiteixeira bf0816d4c6 Add current temperature sensor for Tuya Fan (fs) (#65744) 2022-02-05 11:19:29 +01:00
Franck Nijhof 6871271e73 Small cleanup in Plugwise binary sensors (#65738) 2022-02-04 23:44:31 -08:00
Franck Nijhof 313387fda5 Remove deprecated GNTP integration (#65741) 2022-02-04 23:42:57 -08:00
Franck Nijhof e242796394 Remove deprecated format for date(time) sensors (#65734) 2022-02-04 23:42:29 -08:00
Aaron Bach fbe4d42729 Remove unnecessary TYPE_CHECKING declarations in SimpliSafe (#65750) 2022-02-04 23:41:40 -08:00
Aaron Bach 3387e8368b Add redacted subscription data to SimpliSafe diagnostics (#65751) 2022-02-04 23:41:12 -08:00
Aaron Bach b9b53bef00 Bump simplisafe-python to 2022.02.0 (#65748) 2022-02-04 23:39:01 -08:00
Paulus Schoutsen d753f4a2e7 Fix UPNP access to SSDP info (#65728) 2022-02-04 21:33:53 -08:00
Franck Nijhof 2f46382565 Remove async_timeout backcompat (#65732) 2022-02-04 21:33:31 -08:00
dougiteixeira 92842b796b Complementing the Tuya Air Purifier (kj) category (#65283)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-05 03:19:00 +01:00
Franck Nijhof b9d7d0cae2 Add diagnostics to issue form (#65715) 2022-02-05 02:34:46 +01:00
Stephan Traub 432d9a8f19 Introduce wiz integration for the WiZ Platform (#44779)
Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Jan Stienstra <65826735+j-stienstra@users.noreply.github.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-04 16:20:21 -08:00
GitHub Action d8830aa4e0 [ci skip] Translation update 2022-02-05 00:12:01 +00:00
Paulus Schoutsen 5da923c341 Protect state.as_dict from mutation (#65693) 2022-02-04 14:45:25 -08:00
Duco Sebel 0d3bbfc9a7 Fix homewizard_energy migration issues from #65594 (#65718) 2022-02-04 14:45:06 -08:00
Franck Nijhof 2370dda1f0 Depend on diagnostics in the frontend (#65710) 2022-02-04 11:47:01 -08:00
jjlawren 40857bda90 Use SSDP byebye to mark Sonos as offline (#65686) 2022-02-04 11:41:24 -08:00
ollo69 bebf5009d6 Add diagnostics support for Asuswrt (#65605)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-04 11:40:29 -08:00
J. Nick Koston 26ff6d2aa0 Fix warm/cold reversal in rgbww_to_color_temperature (#65677) 2022-02-04 11:36:30 -08:00
Erik Montnemery 1f8e8926fe Only remove duplicated statistics on error (#65653) 2022-02-04 11:31:12 -08:00
Jeff Irion fe05d6680c Bump androidtv to 0.0.63 (fix MAC issues) (#65615) 2022-02-04 20:13:08 +01:00
Paulus Schoutsen d279211f0c Fix tuya diagnostics mutating cached state objects (#65708) 2022-02-04 20:11:21 +01:00
Paulus Schoutsen 8574ee04ba Fix passing a string to device registry disabled_by (#65701) 2022-02-04 10:55:45 -08:00
Erik Montnemery 020953e943 Improve recorder migration for PostgreSQL when columns already exist (#65680) 2022-02-04 10:55:28 -08:00
Paulus Schoutsen 2a8797ae3f Move scene and button restore to internal hook (#65696) 2022-02-04 10:43:06 -08:00
Joakim Sørensen 8021b05448 Allow selecting own repositories (#65695) 2022-02-04 19:33:10 +01:00
Paulus Schoutsen a6caf3f579 Call out 3rd party containers more clearly (#65684) 2022-02-04 09:57:14 -08:00
Erik Montnemery 41ab12cb88 Don't use shared session during recorder migration (#65672) 2022-02-04 09:55:11 -08:00
jkuettner 42024c1ed3 Fix "vevent" KeyError in caldav component again (#65685)
* Fix "vevent" KeyError in caldav component again

* code formatting
2022-02-04 18:47:31 +01:00
starkillerOG 5519888dc1 Netgear add traffic sensors (#65645)
* add sensors

* use entity discription

* use lambda functions

* use seperate coordinators

* styling

* revieuw comments

* set proper default

* move api lock

* fix styling

* Update homeassistant/components/netgear/sensor.py

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

* Update homeassistant/components/netgear/sensor.py

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

* use coordinator data

* fix styling

* fix typing

* move typing

* fix lock

* Update homeassistant/components/netgear/sensor.py

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

* Update homeassistant/components/netgear/sensor.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-04 18:36:56 +01:00
Duco Sebel a97e69196c Add migration to migrate 'homewizard_energy' to 'homewizard' (#65594) 2022-02-04 09:12:35 -08:00
Erik Montnemery 8245ff7473 Log transmitted MQTT messages (#65550) 2022-02-04 17:35:32 +01:00
epenet a95988c970 Bump renault-api to 0.1.8 (#65670)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-04 16:30:57 +01:00
Erik Montnemery ac7662c82d Remove limit of amount of duplicated statistics (#65641) 2022-02-04 14:49:45 +01:00
Maikel Punie 2e594b5025 Bump velbusaio to 2022.2.2 (#65657) 2022-02-04 13:51:04 +01:00
Robert Svensson 96c4e33b24 Parametrize deCONZ binary sensors (#65012)
* Improve test coverage prior to improving deCONZ binary sensor platform

* Define all relevant binary sensors as DeconzBinarySensorDescription

* Fix review comment

* Allow providing extra update keys if sensor provides extra attributes

* Minor touch up of naming

* Remove duplicate assert
2022-02-04 12:58:07 +01:00
Franck Nijhof b7007b364a Add TRV (wkf) support to Tuya (#65649) 2022-02-04 12:34:15 +01:00
Stefan Agner 320df10a26 Use _attr_last_reset to set last_reset (#65648) 2022-02-04 11:40:38 +01:00
alexanv1 98a7125933 Fix Z-Wave lights (#65638)
* Fix Z-Wave lights

* Update tests
2022-02-04 10:50:24 +01:00
Thomas Schamm ff6969a255 Bumped boschshcpy 0.2.28 to 0.2.29 (#65328) 2022-02-04 09:51:34 +01:00
Paulus Schoutsen bc41028800 Some tweaks to the demo (#65623)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-02-04 09:49:47 +01:00
Paulus Schoutsen 777eba3bab Bump homematicip to 1.0.2 (#65620) 2022-02-04 09:18:10 +01:00
J. Nick Koston 7ab4214553 Bump flux_led to 0.28.20 (#65621) 2022-02-04 09:12:29 +01:00
Timo S d6693cdff9 Add fritz set guest wifi password service (#62892)
* Add a new service set_guest_wifi_password to the fritz integration.

* Remove unnecessary params defaults

* Remove default password length

* Add service schema, cleanup code

* Fix min password length in services.yaml

* Move schema to `services.py`, add typing

* Add default password length from upstream lib

* Remove None typing

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>

Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2022-02-04 08:57:14 +01:00
Raman Gupta c477378835 Raise when zwave_js device automation fails validation (#65610) 2022-02-04 02:50:47 +01:00
Shay Levy 5e577058bb Fix Shelly Plus i4 KeyError (#65604) 2022-02-03 16:19:36 -08:00
GitHub Action b2f0882e67 [ci skip] Translation update 2022-02-04 00:13:58 +00:00
J. Nick Koston 727743c4cd Fix lutron_caseta button events including area name in device name (#65601) 2022-02-04 00:44:19 +01:00
Diogo Gomes 189f1f8c25 Add kmtronic device_info (#65456)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-02-04 00:30:09 +01:00
G Johansson 24cd63973d Add back resolvers config flow dnsip (#65570) 2022-02-03 15:05:56 -08:00
jjlawren 8c0c4f9bca Log traceback in debug for Sonos unsubscribe errors (#65596) 2022-02-03 15:03:18 -08:00
G Johansson 718da64728 Improve code quality sensibo (#65503) 2022-02-03 16:34:01 -06:00
Paulus Schoutsen 157276f4e6 Add a Lovelace cast platform (#65401) 2022-02-03 13:43:23 -08:00
Franck Nijhof d3e36230cb Update pvo to 0.2.1 (#65584) 2022-02-03 13:37:10 -08:00
Michael 8432fe7bd6 Extend diagnostics data in Fritz!Tools (#65573) 2022-02-03 13:36:36 -08:00
Franck Nijhof 445c47c7a0 Guard against empty Tuya data types (#65571) 2022-02-03 21:46:05 +01:00
Michael 80102e1e84 Fix data update when guest client disappears in Fritz!Tools (#65564)
Co-authored-by: Simone Chemelli <simone.chemelli@gmail.com>
2022-02-03 12:32:36 -08:00
Bram Kragten 97c8427506 Update frontend to 20220203.0 (#65572) 2022-02-03 12:32:01 -08:00
Oxan van Leeuwen d22fc99294 Add device class to ESPHome switches (#64919)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-02-04 09:23:30 +13:00
Franck Nijhof a3d2a1a5e0 Add missing Tuya vacuum states (#65567) 2022-02-03 12:31:22 -07:00
epenet cc7680b0c3 Adjust pylint plugin to enforce diagnostics type hints (#64976)
* Adjust pylint plugin to enforce diagnostics type hints

* Adjust return_type

* Set return_type to UNDEFINED

* Use Any for the expected data

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 19:22:43 +01:00
J. Nick Koston b97cd3ce93 Do not update unifiprotect host from discovery if its not an ip (#65548) 2022-02-03 19:14:36 +01:00
J. Nick Koston 3d8d507ed9 Migrate powerwall from using ip address as unique id (#65257)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-03 18:39:57 +01:00
Aaron Bach 8d2fac09bb Remove deprecated Guardian entity_id service parameter (#65484) 2022-02-03 17:19:06 +01:00
mk-maddin efb6fd1569 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 08:18:58 -08:00
Aaron Bach 778cc6106a Remove deprecated SimpliSafe service_id service parameter (#65483) 2022-02-03 17:18:31 +01:00
Jc2k 714a952d73 Enable types from aiohomekit to be used by mypy for homekit_controller (#65433) 2022-02-03 10:18:03 -06:00
J. Nick Koston 6c38a6b569 Enable strict typing for isy994 (#65439)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-03 17:02:05 +01:00
Jan Bouwhuis 2f0d0998a2 Add Mqtt vacuum unknown state (#65311)
* Add Mqtt vacuum `unknown` status

* Update tests/components/mqtt/test_state_vacuum.py

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-03 16:50:39 +01:00
Jan Bouwhuis cf52357229 Add MQTT light unknown state support (#65308)
* Add MQTT light unknown sate support

* Update homeassistant/components/mqtt/light/schema_basic.py

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

* Update homeassistant/components/mqtt/light/schema_json.py

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

* Update homeassistant/components/mqtt/light/schema_template.py

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

* Update tests for default unknown state

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-03 16:49:57 +01:00
Jan Bouwhuis 2d011821ea Add MQTT humidifier unknown state support (#65302)
* Add MQTT humidifier unknown state support

* Update homeassistant/components/mqtt/humidifier.py

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

* Fix tests for changed default optimistic state

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-03 16:49:09 +01:00
Jan Bouwhuis 711bd7169e Add Mqtt Fan unknown state support (#65301)
* Add Mqtt Fan unknown state support

* Update homeassistant/components/mqtt/fan.py

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

* Adjust default state in tests

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-02-03 16:48:03 +01:00
Jan Bouwhuis 3d434dffc7 Add support Mqtt switch for unkown state (#65294)
* Mqtt switch allow unkown state

* correct type

* Update discovery tests

* Optimistic mode if not state_topic is configured.

* Default state UNKNOWN in optimistic mode

* fix discovery test
2022-02-03 16:47:24 +01:00
Jan Bouwhuis 63459feede Return current state if template throws (#65534) 2022-02-03 16:46:36 +01:00
G Johansson ca1e295662 Implement diagnostics for Sensibo (#65515) 2022-02-03 15:03:56 +01:00
Aaron Bach 82c4d344b2 Allow Flu Near You to re-attempt startup on error (#65481) 2022-02-03 14:31:15 +01:00
Eduard van Valkenburg 0ff93759d0 Fix SIA availability (#65509) 2022-02-03 14:29:12 +01:00
Aaron Bach 4946f271c9 Bump pytile to 2022.02.0 (#65482) 2022-02-03 14:26:30 +01:00
epenet f95183f6a8 Make mypy IGNORED_MODULES file specific (#65416)
* Make mypy IGNORED_MODULES file specific

* Adjust sonos type hints

* Remove legacy nest from IGNORED_MODULES

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 14:21:06 +01:00
epenet 8234625d30 Use Domain not Platform on test service calls (#65508)
* Adjust atag

* adjust broadlink

* Adjust onewire

* Adjust plex

* Adjust renault

* Adjust tasmota

* Adjust zha

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 14:16:35 +01:00
G Johansson 3f57adf475 Code quality custom service for sensibo (#65496) 2022-02-03 14:11:53 +01:00
Erik Montnemery 63680f0b36 Make util.async_.protect_loop name names (#65493) 2022-02-03 14:06:40 +01:00
Franck Nijhof 3e0856ccac Fix missing windspeed in Tuya climate (#65511) 2022-02-03 14:00:03 +01:00
jjlawren 770707f487 Fix vanished checks on old Sonos firmware (#65477) 2022-02-03 13:22:34 +01:00
starkillerOG 69a004a2f6 Netgear coordinator (#65255)
* implement coordinator

* fix styling

* fix async_uload_entry

* use async_config_entry_first_refresh

* use const

* fix black

* use KEY_ROUTER

* review comments

* fix black

* ensure the coordinator keeps updating

* fix flake8

* rework setup of entities using coordinator

* styling

* check for failed get_info call

* fix

* fix setup of entities

* simplify

* do not set unique_id and device_info on scanner entity

* Update homeassistant/components/netgear/sensor.py

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

* Update homeassistant/components/netgear/device_tracker.py

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

* Update homeassistant/components/netgear/router.py

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

* use entry_id instead of unique_id

* unused import

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-03 12:28:04 +01:00
Marc Mueller cd67ddbe26 Upgrade pwmled to 1.6.9 (#65465) 2022-02-03 12:16:53 +01:00
epenet 9fde84ab41 Remove freebox from mypy ignore list (#65126)
* Add type hints to freebox

* Remove freebox from mypy ignore list

* Adjust type hints

* Refactor FreeboxRouter setup/close

* Remove unnecessary assert

* Remove unused constant

* Rework unload routine

* Bring back close method

* Suppress NotOpenError

* Use async_on_unload on signal_device_new

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 10:01:41 +01:00
epenet c8504bd21d Add tests for pylint plugins (#65436)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 10:01:02 +01:00
epenet b587201654 Add update listener type hints to broadlink (#65413)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 10:00:30 +01:00
Erik Montnemery 23ee8adf59 Fix flaky homewizard test (#65490) 2022-02-03 09:23:32 +01:00
epenet 913d6f6ea1 Remove sonos media_player from strict typing (#65419)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 06:59:21 +01:00
epenet 8325188ed2 Remove nest legacy from mypy ignored modules (#65421)
* Remove nest legacy from mypy ignored modules

* Set type-ignore inside the files

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 06:57:44 +01:00
Erik Montnemery f3a89de71f Fix race when handling updated MQTT discovery data (#65415) 2022-02-02 17:12:22 -08:00
Jeff Irion 4e7cf19b5f Bump androidtv to 0.0.62 (#65440) 2022-02-02 17:08:19 -08:00
Maciej Bieniek 32be5576dc Get wind speed unit from AccuWeather data (#65425) 2022-02-02 17:07:12 -08:00
Aaron Bach 7909cff957 Fix unknown alarm websocket event error for restored SimpliSafe connections (#65457) 2022-02-02 17:06:24 -08:00
Aaron Bach 75e5079df3 Catch correct error during OpenUV startup (#65459) 2022-02-02 17:05:40 -08:00
Jesse Hills 6e36bdb907 Expose ESPHome project information in device information (#65466) 2022-02-02 17:05:12 -08:00
epenet 340146e5fb Add update listener type hints to coinbase (#65414)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-03 01:25:51 +01:00
GitHub Action 256ad084c5 [ci skip] Translation update 2022-02-03 00:14:18 +00:00
Colin Robbins 83fa4df641 Fix Shodan sensor (#65443) 2022-02-02 20:44:16 +01:00
epenet 494ef2f9b2 Adjust config_entry UpdateListenerType signature (#65410)
Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-02 09:56:34 -08:00
Tobias Sauerwein 81ad56b8ad Add events on cloud connect and disconnect (#65215)
* Add events on cloud connect and disconnect

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

* Use event capture helper

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

* Provide listener method instead of public event

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

* Add test for disconnect notification

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

* Apply suggestions from code review

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

* Use Enum

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

* Add module level api

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

* Apply suggestions from code review

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

* Clean up dead code

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

* Flake8

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

* Clean up

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-02 18:11:06 +01:00
Erik Montnemery fda0fbd115 Stringify MQTT payload in mqtt/debug/info WS response (#65429) 2022-02-02 18:08:48 +01:00
Erik Montnemery 5a34feb7de Don't warn on time.sleep injected by the debugger (#65420) 2022-02-02 08:58:14 -08:00
Stefan Agner c8e64358b1 Set last_reset for integrated entities in IoTaWatt (#65143)
* Set last_reset for integrated entities

For entities which integrate over time (like energy in watt hours) the
iotawattpy library uses the beginning of the year as start date by
default (using relative time specification "y", see [1]). Since
PR #56974 state class has been changed from TOTAL_INCREASING to TOTAL.
However, the relative start date of "y" causes the value to reset to
zero at the beginning of the year.

This fixes it by setting last_reset properly, which takes such resets
into account.

While at it, let's set the cycle to one day. This lowers the load on
IoTaWatt (fetching with start date beginning of the day seems to
response faster than beginning of the year).

[1]: https://docs.iotawatt.com/en/master/query.html#relative-time

* Update homeassistant/components/iotawatt/sensor.py
* Update homeassistant/components/iotawatt/coordinator.py

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-02 17:39:33 +01:00
J. Nick Koston 530fc8a9af Ensure unifiprotect discovery can be ignored (#65406) 2022-02-02 16:16:29 +01:00
Jan Bouwhuis 2c07330794 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 16:14:52 +01:00
Bram Kragten 9ce2e9e8f4 Update frontend to 20220202.0 (#65432) 2022-02-02 16:08:16 +01:00
Erik Montnemery 0eb2caabcf 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 15:06:27 +01:00
Maikel Punie 40c727df66 Bump velbus-aio to 2022.2.1 (#65422) 2022-02-02 14:38:19 +01:00
G Johansson 8448462720 Rewrite sensibo integration (#64753)
* Rewrite sensibo integration

* Fixing CI

* coordinator in untested

* Fix review comments

* Additional review fixes

* Fix all conversations

* Remove extra state attributes

* Restore assumed state service

* Fix async_assume_state
2022-02-02 13:09:42 +01:00
epenet a63e5c7ded Add type hints for config entry update listeners (#65412) 2022-02-02 03:36:04 -06:00
Erik Montnemery 627be81531 Import registries in MQTT mixins (#65411) 2022-02-02 10:32:11 +01:00
Josh Shoemaker 4a55d58d6d Bump aladdin_connect to 0.4 to fix integration for some users due to API changes (#65407) 2022-02-02 09:29:05 +01:00
jjlawren 4794625048 Detect battery-operated Sonos devices going offline (#65382) 2022-02-01 22:11:21 -06:00
jjlawren c80d6810b3 Fix Sonos diagnostics with offline device (#65393)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-01 22:10:53 -06:00
J. Nick Koston 3da60355a9 Bump lutron_caseta to 0.13.1 to fix setup when no button devices are present (#65400) 2022-02-01 19:19:24 -06:00
GitHub Action ff2f135f55 [ci skip] Translation update 2022-02-02 00:15:13 +00:00
J. Nick Koston 73189ead1f Handle brightness being None for senseme (#65372) 2022-02-01 14:51:28 -08:00
Pierre Ståhl e2935b55ae Fix disconnect bug in Apple TV integration (#65385) 2022-02-01 15:44:06 -06:00
Pierre Ståhl 476a694248 Sort Apple TV app list by name (#65386) 2022-02-01 15:30:28 -06:00
Tobias Sauerwein 3718d7fca8 Add Netatmo error logging when no public stations are available (#65298)
* Log error if public stations don't provide data

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

* Only log once

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

* Update homeassistant/components/netatmo/sensor.py

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

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-02-01 22:06:03 +02:00
Jc2k 9f5d77e0df Add missing type hints to homekit_controller (#65368) 2022-02-01 13:30:37 -06:00
Paulus Schoutsen aef6f49eff Bump frontend to 20220201.0 (#65380) 2022-02-01 09:58:23 -08:00
Michael 1b8252fa2f Fix wan_access switch for disconnected devices in Fritz!Tools (#65378) 2022-02-01 09:57:34 -08:00
Robert Svensson 69ac59ce73 Redact host address in UniFi diagnostics (#65379) 2022-02-01 09:52:56 -08:00
Bram Kragten c82aa1606a Allow removing keys from automation (#65374) 2022-02-01 09:45:08 -08:00
schreyack 3c0369ed59 Fix honeywell hold mode (#65327)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-01 09:11:09 -08:00
Martin Hjelmare 3697f5611c Fix tradfri coordinator error handling (#65204) 2022-02-01 09:09:51 -08:00
ZuluWhiskey 65ea54927d 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:05:50 -08:00
Allen Porter d3374ecd8e Add type hints for google calendar integration (#65353)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-01 17:28:32 +01:00
G Johansson 390d32c71b Fix options for dnsip (#65369) 2022-02-01 16:47:42 +01:00
fOmey d24fedbe97 Tuya fan natural wind mode (#65343) 2022-02-01 15:50:43 +01:00
Klaas Schoute 75a1f3207c Use dataclass asdict to convert to dict (#65365) 2022-02-01 14:44:40 +01:00
Jc2k dd5bcafab7 Enable mypy checks for homekit_controller (#65358) 2022-02-01 11:27:35 +00:00
Erik Montnemery ab17f8984b Improve CastProtocol (#65357)
* Improve CastProtocol

* Tweak
2022-02-01 10:47:12 +01:00
Jc2k 2a193e1016 Refactor platform loading in homekit_controller (#65338) 2022-02-01 07:38:42 +00:00
Paulus Schoutsen b05b4c4b38 Simplify unifi cleanup logic (#65345) 2022-02-01 07:22:12 +01:00
Allen Porter 88ed2f3b3e Improve google calendar test coverage to 97% (#65223)
* Improve google calendar test coverage to 97%

* Remove commented out code.

* Remove unnecessary (flaky) checks for token file persistence

* Remove mock code assertions

* Add debug logging to google calendar integration

* Increase alarm time to polling code to reduce flakes

* Setup every test in their own configuration directory

* Mock out filesystem calls to avoid disk dependencies

Update scope checking code to use Storage object rather than text file matching

* Update tests to check entity states when integration is loaded

* Mock out google service in multiple locations

* Update homeassistant/components/google/__init__.py

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

* Update homeassistant/components/google/__init__.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-01 03:14:49 +01:00
Paulus Schoutsen 5289935ac1 I zone, you zone, we zoning (#65344) 2022-01-31 17:04:46 -08:00
Martin Hjelmare d0412d65ac Remove stale tradfri devices (#65218) 2022-01-31 16:43:16 -08:00
GitHub Action 0be8060b69 [ci skip] Translation update 2022-02-01 00:18:49 +00:00
Simone Chemelli 86079375b9 Add diagnostics for SamsungTV (#65342) 2022-01-31 16:10:55 -08:00
Duco Sebel 103fe9e0ba Add HomeWizard diagnostics (#65297)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-31 16:08:58 -08:00
J. Nick Koston 3bb8de66d8 Bump zeroconf to 0.38.3 (#65341) 2022-01-31 16:08:42 -08:00
Paulus Schoutsen 47a5411525 Bump aiohue to 4.0.1 (#65340) 2022-01-31 15:58:52 -08:00
Paulus Schoutsen 31709b92ac Bump version tag on async_timeout warning (#65339) 2022-01-31 15:52:31 -08:00
Michael c9f38355f7 Improve debugging and error handling in Fritz!Tools (#65324) 2022-01-31 15:28:11 -08:00
J. Nick Koston 18ea3fb85a Prevent unifiprotect from being rediscovered on UDM-PROs (#65335) 2022-01-31 15:27:26 -08:00
J. Nick Koston c7eb676449 Fix guardian being rediscovered via dhcp (#65332) 2022-01-31 15:24:55 -08:00
Paulus Schoutsen bf138c4ffb Alexa to handle brightness and catch exceptions (#65322) 2022-01-31 15:01:46 -08:00
Chris Talkington 70da08499a Refactor sonarr tests (#64886) 2022-01-31 16:59:18 -06:00
Jc2k 0f88790303 Refactor homekit_controller to prepare for more typing information (#65329) 2022-01-31 16:48:16 -06:00
Simone Chemelli a9af29cbe0 Add diagnostics support to Fritz (#65334)
* Add diagnostics support to Fritz

* Temporary remove tests

* coveragerc
2022-01-31 23:43:46 +01:00
Simone Chemelli 17c41f4783 Introduce number platform for Shelly (#64207)
* Introduce number platform for Shelly

* coverage

* Rework based on review comment

* Improve logic around channel

* Remove unused value

* rebase

* Removed redundant properties

* Update homeassistant/components/shelly/number.py

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

* Remove channel workaround as currently not needed

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-31 22:14:59 +01:00
w35l3y 076faaa4a4 Add support to reprompt user (#65256) 2022-01-31 10:23:26 -08:00
Pascal Winters 0cfc7112fa Bump pyps4-2ndscreen to 1.3.1 (#65320) 2022-01-31 19:23:07 +01:00
jjlawren 48ae3bece8 Send notification to alert of Sonos networking issues (#65084)
* Send notification to alert of Sonos networking issues

* Add links to documentation
2022-01-31 19:21:21 +01:00
Franck Nijhof b7bf302ef8 Ensure PVOutput connection error is logged (#65319) 2022-01-31 18:42:49 +01:00
Franck Nijhof e5b6a58fab Update tailscale to 0.2.0 (#65318) 2022-01-31 09:17:35 -08:00
Franck Nijhof 441e81c02a Add diagnostics support to WLED (#65317) 2022-01-31 09:16:33 -08:00
Franck Nijhof ce6048e705 Fix missing expiration data in Whois information (#65313) 2022-01-31 09:15:13 -08:00
Jeff Irion 5891f65c7e Bump androidtv to 0.0.61 (#65315) 2022-01-31 18:09:17 +01:00
J. Nick Koston fab9c4aa20 Improve reliability of august setup with recent api changes (#65314) 2022-01-31 10:21:47 -06:00
Franck Nijhof ac32af7004 Update wled to 0.13.0 (#65312) 2022-01-31 18:08:21 +02:00
Franck Nijhof a3f5582010 Update adguard to 0.5.1 (#65305) 2022-01-31 16:31:02 +01:00
Jan Bouwhuis 4991f1a693 Use super() in mqtt siren init (#65291) 2022-01-31 13:16:45 +01:00
Mick Vleeshouwer 216ac65475 Bump pyoverkiz to 1.3.2 (#65293) 2022-01-31 13:08:43 +01:00
starkillerOG cc14acb178 Bump pynetgear to 0.9.1 (#65290) 2022-01-31 13:00:10 +01:00
Duco Sebel ade656a333 Fix HomeWizard unclosed clientsession error when closing Home Assistant (#65296) 2022-01-31 12:49:18 +01:00
fOmey 9b5757dff5 Tuya fan percentage fix (#65225) 2022-01-31 12:37:43 +01:00
Erik Montnemery 80da5c52ae Correct cast media browse filter for audio groups (#65288) 2022-01-31 11:45:48 +01:00
Erik Montnemery b0c36d7729 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 10:50:05 +01:00
Jan Bouwhuis 6fdaec0847 Add MQTT siren platform (#64440)
* Add mqtt siren draft

* fix tests

* Intergrate notify platform

* tests and fixes siren platform

* Add tests notify platform

* config parameters and abbreviations

* remove duplicate key

* undo move topic abbreviation

* Move const CONF_MESSAGE_COMMAND_TEMPLATE

* Remove notify service integration

* Rework

* Update homeassistant/components/mqtt/siren.py

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

* Publish JSON by default

* Allow unknown state - rename value_template

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-01-31 10:31:57 +01:00
Jan Bouwhuis bfaada34e2 Allow unknown state to be set (#65183) 2022-01-31 10:25:08 +01:00
Tobias Sauerwein f6b0f26783 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 11:07:50 +02:00
dependabot[bot] f82183f0e3 Bump home-assistant/builder from 2021.12.0 to 2022.01.0 (#65284)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-31 09:18:35 +01:00
Brett Adams 3536271fce Add diagnostics to Advantage Air (#65006)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-30 20:51:39 -08:00
J. Nick Koston 8c9bd6e790 Increase august timeout and make failure to sync at startup non-fatal (#65281) 2022-01-30 20:50:49 -08:00
J. Nick Koston 2f6bf08165 Fix senseme fan lights (#65217) 2022-01-30 20:24:42 -08:00
J. Nick Koston 7552404f70 Increase the timeout for flux_led directed discovery (#65222) 2022-01-30 20:21:54 -08:00
Brynley McDonald 99f56579a5 Fix flick_electric auth failures (#65274) 2022-01-30 20:21:15 -08:00
J. Nick Koston 6458e45ef0 Simplify whois value_fn (#65265) 2022-01-30 20:19:52 -08:00
J. Nick Koston 73bd8db273 Fix flux_led not generating unique ids when discovery fails (#65250) 2022-01-30 20:17:19 -08:00
Ville Skyttä 27d5be71dd Update python-typing-update config to py39plus (#65261) 2022-01-30 20:16:14 -08:00
Ville Skyttä 0673e96401 Update black target version to 3.9+ (#65260) 2022-01-30 20:15:50 -08:00
Ville Skyttä 40d871a1a3 Update readthedocs config (#65230)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-30 20:15:32 -08:00
Matthias Alphart d4370395e2 Update xknx to 0.19.1 (#65275) 2022-01-30 20:12:44 -08:00
J. Nick Koston 385f1f3dad Fix powerwall login retry when hitting rate limit (#65245) 2022-01-30 22:09:56 -06:00
Teemu R c985ebb3a7 Bump python-kasa to 0.4.1 for tplink integration (#64123)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-01-30 20:09:07 -06:00
GitHub Action ca7d4234e1 [ci skip] Translation update 2022-01-31 00:14:28 +00:00
Jc2k 58b8c30221 Improve homekit_controller tests (#65266) 2022-01-30 16:59:39 -06:00
Jc2k eb94fe1ca7 Use upstream constants when defining homekit service to platform mapping (#65272) 2022-01-30 16:59:01 -06:00
Aaron Bach 58f624a3da Add diagnostics to SimpliSafe (#65171)
* Add diagnostics to SimpliSafe

* Bump

* Cleanup
2022-01-30 15:37:56 -07:00
Jc2k cc94af2872 Remove deprecated helper functions from homekit_controller pairing flow (#65270) 2022-01-30 16:20:19 -06:00
Shay Levy 5999d08d72 Bump aiowebostv to 0.1.2 (#65267) 2022-01-31 00:04:00 +02:00
Stephan Uhle a4904bd9bc Add Edl21 unit of measurement mapping (#64926) 2022-01-30 23:01:20 +01:00
Jesse Hills 8b5e76b898 Fix comment typo in ESPHome diagnostics (#65268) 2022-01-30 23:53:46 +02:00
Michael ef74dab352 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 13:22:32 -08:00
Robert Svensson ac1b30a78d Better manage of nested lists (#65176) 2022-01-30 13:20:59 -08:00
J. Nick Koston 62fd31a1e7 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 13:19:04 -08:00
Patrik Lindgren 473abb1793 Flag Tradfri groups and YAML as deprecated (#65226) 2022-01-30 22:16:51 +01:00
jjlawren 2129972904 Add activity statistics to Sonos diagnostics (#65214) 2022-01-30 13:15:51 -08:00
Aaron Bach 78ad49325d Clean up SimpliSafe config flow tests (#65167)
* Clean up SimpliSafe config flow tests

* Cleanup
2022-01-30 13:12:01 -08:00
Joakim Sørensen 11ad1589fa Use .json.txt for diagnostics download filetype (#65236) 2022-01-30 13:09:36 -08:00
Ville Skyttä 872bc456a9 Clean up no longer needed Python 3.8 support code (#65231)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-30 15:07:07 -06:00
Shay Levy 9825111c8d Fix webostv live TV source missing when configuring sources (#65243) 2022-01-30 22:05:30 +01:00
josephnad 75b37bee3d Add homekit_controller support for ecobee vendor extensions (#60914)
Co-authored-by: josephnad <>
2022-01-30 15:02:47 -06:00
Dave T 0acfc7bbab Align config flow type hints to scaffold (#65157) 2022-01-30 20:26:28 +01:00
Ville Skyttä 6473edd88a Fix REQUIRED_NEXT_PYTHON_HA_RELEASE comment placement (#65251) 2022-01-30 19:09:51 +01:00
LJU dbbd239b80 Fix typo’s ISS (#65228)
Fix typo’s
2022-01-30 18:54:19 +01:00
J. Nick Koston 1d5a052df1 Fix debugpy blocking the event loop at startup (#65252) 2022-01-30 18:08:37 +01:00
GitHub Action 77ef86faee [ci skip] Translation update 2022-01-30 00:14:21 +00:00
Shay Levy caa5578134 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 00:15:49 +01:00
Robert Svensson 30440cd1ba Add logic to avoid creating the same scene multiple times (#65207) 2022-01-30 01:11:28 +02:00
Patrik Lindgren 3ca1b2fc6e Add air quality sensor for Tradfri air purifier (#65070)
* Add air quality sensor for Tradfri fan platform

* Refactor, use entity description

* Fix typo

* CHange init docstring

* Let lambda handle special case

* Remove unique id

* Apply suggestions from code review

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

* Refactor to constants, add mixin

* Rename lambda

* Update homeassistant/components/tradfri/sensor.py

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

* Update homeassistant/components/tradfri/sensor.py

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

* Update homeassistant/components/tradfri/sensor.py

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

* Replace lambda with function

* Refactor device init

* Remove fixture scope

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-29 23:55:05 +01:00
Marc Mueller be5ff87171 Rewrite pylint init-hook (#65193) 2022-01-29 23:47:40 +01:00
Aaron Bach cc6b0cc843 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-29 13:30:15 -07:00
Erik Montnemery d770a54881 Minor refactoring of cast media_player (#65125) 2022-01-29 16:13:59 +01:00
Robert Hillis 4a042e7d73 Bump pyefergy to 22.1.1 (#65156)
* Bump pyefergy to 22.1.0

* uno mas

* uno mas

* uno mas
2022-01-29 16:01:00 +02:00
Robert Svensson c25431750e Bump dependency to v31 which makes has_relay more robust (#65180) 2022-01-29 15:34:14 +02:00
Marvin Wichmann 98aa69fdaf 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-29 14:32:12 +01:00
starkillerOG 8bd7519ea5 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-29 14:01:46 +01:00
Simon Hansen 049fc8a945 Add config flow to ISS integration (#64987)
* Initial commit

* Wrong flowhandler name

* Add config flow tests

* Tests for config flow

* ...

* Add test for no coordinates

* ...

* Update homeassistant/components/iss/config_flow.py

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

* Update homeassistant/components/iss/config_flow.py

* Update homeassistant/components/iss/binary_sensor.py

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

* Add myself as codeowner

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-01-29 11:41:26 +02:00
Simone Chemelli 3cde472e43 Fix status for Fritz device tracker (#65152) 2022-01-28 21:14:51 -08:00
J. Nick Koston e85e91bdb0 Fix uncaught exception during isy994 dhcp discovery with ignored entry (#65165) 2022-01-28 21:14:30 -08:00
J. Nick Koston 0e6c554b70 Add additional blink OUIs to DHCP discovery (#65162) 2022-01-28 21:14:08 -08:00
J. Nick Koston 4d0dbeb2b5 Add additional roomba OUIs to DHCP discovery (#65161) 2022-01-28 21:13:54 -08:00
J. Nick Koston f585777e56 Add dhcp discovery to oncue (#65160) 2022-01-28 21:13:41 -08:00
J. Nick Koston de36e96481 Add OUI for KL430 tplink light strip to discovery (#65159) 2022-01-28 21:13:28 -08:00
Simone Chemelli 3da33679a2 Fritz tests cleanup (#65054) 2022-01-28 21:06:19 -08:00
Franck Nijhof 16db8e0802 Fix setting speed of Tuya fan (#65155) 2022-01-28 21:05:53 -08:00
J. Nick Koston 0755310258 Add loggers to zeroconf (#65168)
- The original PR excluded all zeroconf deps, and I forget to add it back
2022-01-28 20:21:05 -08:00
Marc Mueller c7cdee258e 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 20:18:09 -08:00
GitHub Action 5e62ff95b9 [ci skip] Translation update 2022-01-29 00:13:03 +00:00
Marc Mueller 783e26e8e4 Use isolated build environments (#65145) 2022-01-28 14:09:05 -08:00
Simone Chemelli 36427fe76c Fix excepton for SamsungTV getting device info (#65151) 2022-01-28 23:57:12 +02:00
J. Nick Koston 5b755b74fb Add loggers to integration manifest.json (#65083) 2022-01-28 13:37:53 -08:00
Allen Porter 956ceb6c68 Update nest diagnostics (#65141) 2022-01-28 21:50:38 +01:00
Dave T bf910229b6 Add test: warn entity_category assigned as str (#65142) 2022-01-28 21:46:57 +01:00
Marc Mueller 7d949a7665 Add dedicated pre-commit hook for mypy_config [hassfest] (#65092) 2022-01-28 19:46:17 +01:00
Allen Porter 0c9be604c2 Add diagnostics for rtsp_to_webrtc (#65138) 2022-01-28 09:07:41 -08:00
epenet d0d55db936 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 19:00:47 +02:00
Nenad Bogojevic 1a878b4024 Use new withings oauth2 refresh token endpoint (#65134) 2022-01-28 08:48:16 -08:00
Robert Svensson da355438aa Reconnect client service tried to connect even if device didn't exist (#65082) 2022-01-28 08:33:31 -08:00
Simone Chemelli f369cef32f Handle FritzInternalError exception for Fritz (#65124) 2022-01-28 08:32:46 -08:00
Shay Levy efbbef5922 Fix Shelly detached switches automation triggers (#65059) 2022-01-28 08:30:44 -08:00
Paulus Schoutsen cf6b3fc810 Add support for proxy-selected intent (#65094) 2022-01-28 08:16:28 -08:00
Marc Mueller 44572ff354 Move project_urls to setup.cfg (#65129) 2022-01-28 08:11:46 -08:00
Allen Porter 444a681729 Bump google-nest-sdm to 1.6.0 (diagnostics) (#65135) 2022-01-28 18:09:08 +02:00
Klaas Schoute 090a8a9439 Add diagnostics support to P1 Monitor (#65060)
* Add diagnostics to P1 Monitor

* Add test for diagnostics
2022-01-28 17:08:29 +02:00
Erik Montnemery dccc4eba76 Remove artifacts from black formatting (#65113)
* Remove artifacts from black formatting

* Tweak
2022-01-28 17:00:01 +02:00
starkillerOG 0b02870489 Goodwe - fix value errors (#65121) 2022-01-28 16:54:19 +02:00
Marc Mueller 75f39f9ca2 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 13:36:20 +01:00
Hans Oischinger a9cc35d6b6 Handle vicare I/O in executor (#65105)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-28 12:06:05 +01:00
Erik Montnemery c470733feb Fix cast support for browsing local media source (#65115) 2022-01-28 11:38:09 +01:00
Thibaut 65fb6f26f1 Check explicitly for None value in Overkiz integration (#65045) 2022-01-28 10:58:42 +01:00
Joakim Sørensen 0a2f57e4f8 Move netatmo dataclass registrations (#65052) 2022-01-28 10:51:32 +01:00
J. Nick Koston de7f1e793a Downgrade homekit linked humidity sensor error to debug (#65098)
Fixes #65015
2022-01-28 10:38:13 +02:00
Marc Mueller 86ed720335 Move install_requires to setup.cfg (#65095) 2022-01-27 22:34:18 -08:00
Shay Levy 631c4bf10f Fix Shelly 1/1PM external temperature sensor unavailable (#65096) 2022-01-27 22:33:12 -08:00
GitHub Action e591393f01 [ci skip] Translation update 2022-01-28 00:14:53 +00:00
Marvin Wichmann 62584b4813 Add tests for KNX diagnostic and expose (#64938)
* Add test for KNX diagnostic

* Add test for KNX expose

* Apply review suggestions
2022-01-27 23:03:20 +01:00
Jc2k f49cfe866a Support unpairing homekit accessories from homekit_controller (#65065) 2022-01-27 16:02:30 -06:00
G Johansson e92078cf50 Fix Yale optionsflow (#65072) 2022-01-27 21:01:30 +01:00
dougiteixeira 696b930b1c Complementing the Tuya Curtain (cl) category (#65023)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-27 20:41:13 +01:00
Paulus Schoutsen 8cf1109775 Bump frontend to 20220127.0 (#65075) 2022-01-27 11:22:53 -08:00
epenet d706a7bbde 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 20:19:28 +01:00
jjlawren 5a4eeaed56 Guard browsing Spotify if setup failed (#65074)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-01-27 11:10:19 -08:00
Hans Oischinger f8f8262963 Update PyVicare to 2.16.1 (#65073) 2022-01-27 19:41:50 +01:00
Simon Hansen c5787a5422 Fix typo in entity name for launchlibrary (#65048) 2022-01-27 10:02:10 -08:00
Erik Montnemery 30fd902764 Correct zone state (#65040)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-01-27 10:01:09 -08:00
Erik Montnemery 176eae701a Unset Alexa authorized flag in additional case (#65044) 2022-01-27 09:59:58 -08:00
Marc Mueller d8f167bbac Remove backports.zoneinfo dependency (#65069) 2022-01-27 09:59:27 -08:00
Jc2k a65694457a Allow homekit_controller to set Ecobee's mode (#65032) 2022-01-27 11:02:38 -06:00
Patrik Lindgren 70321ed795 Add battery sensor for Tradfri blinds (#65067) 2022-01-27 17:47:47 +01:00
Chris Talkington e0d970c739 Update rokuecp to 0.12.0 (#65030) 2022-01-27 10:43:23 -06:00
Jc2k 603d0fb068 Allow homekit_controller to customise Ecobee home/sleep/away thresholds (#65036) 2022-01-27 10:41:53 -06:00
Martin Hjelmare 3d461e9e1f Fix notify leaving zone blueprint (#65056) 2022-01-27 17:37:40 +01:00
Jc2k 9799965c62 Better names for energy related homekit_controller sensors (#65055) 2022-01-27 10:08:26 -06:00
Marc Mueller 3a45168b97 Improve proximity typing (#65053)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-27 17:05:08 +01:00
Marc Mueller c3967dec10 Fix vera typing (#65051) 2022-01-27 17:00:30 +01:00
alim4r ca469750ac Prometheus tests simulate entities (#64916) 2022-01-27 15:56:12 +01:00
Duco Sebel 4f3ce27560 Add flow_title for HomeWizard Energy (#65047) 2022-01-27 14:30:31 +01:00
Arjan van Balken f4ed28ab09 Update Arris TG2492LG dependency to 1.2.1 (#64999) 2022-01-27 11:48:37 +01:00
Patrik Lindgren 9d404b749a Implement coordinator class for Tradfri integration (#64166)
* Initial commit coordinator

* More coordinator implementation

* More coordinator implementation

* Allow integration reload

* Move API calls to try/catch block

* Move back fixture

* Remove coordinator test file

* Ensure unchanged file

* Ensure unchanged conftest.py file

* Remove coordinator key check

* Apply suggestions from code review

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

* Import RequestError

* Move async_setup_platforms to end of setup_entry

* Remove centralised handling of device data and device controllers

* Remove platform_type argument

* Remove exception

* Remove the correct exception

* Refactor coordinator error handling

* Apply suggestions from code review

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

* Remove platform type from base class

* Remove timeout context manager

* Refactor exception callback

* Simplify starting device observation

* Update test

* Move observe start into update method

* Remove await self.coordinator.async_request_refresh()

* Refactor cover.py

* Uncomment const.py

* Add back extra_state_attributes

* Update homeassistant/components/tradfri/coordinator.py

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

* Refactor switch platform

* Expose switch state

* Refactor sensor platform

* Put back accidentally deleted code

* Add set_hub_available

* Apply suggestions from code review

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

* Fix tests for fan platform

* Update homeassistant/components/tradfri/base_class.py

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

* Update homeassistant/components/tradfri/base_class.py

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

* Fix non-working tests

* Refresh sensor state

* Remove commented line

* Add group coordinator

* Add groups during setup

* Refactor light platform

* Fix tests

* Move outside of try...except

* Remove error handler

* Remove unneeded methods

* Update sensor

* Update .coveragerc

* Move signal

* Add signals for groups

* Fix signal

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-27 11:12:52 +01:00
Paulus Schoutsen 3daaed1056 Catch connection reset error (#65027) 2022-01-27 11:02:27 +01:00
Shay Levy fa62e7e142 Fix Shelly battery powered devices unavailable (#65031) 2022-01-27 11:00:38 +01:00
Joakim Sørensen b086c8d898 Set ping data to None instead of False (#65013) 2022-01-27 10:03:45 +01:00
Jan Bouwhuis 0cabf3e577 Fix MQTT climate action null warnings (#64658) 2022-01-27 08:41:27 +01:00
Marc Mueller f6c679699f Add plugin option [hassfest] (#65024) 2022-01-26 20:52:09 -08:00
J. Nick Koston 2325cacb04 Bump flux_led to fix push updates on newer devices (#65011) 2022-01-26 20:50:20 -08:00
Brandon Rothweiler dc1db463fc Bump pymazda to 0.3.2 (#65025) 2022-01-26 21:40:53 -06:00
GitHub Action dd4e5bb9c5 [ci skip] Translation update 2022-01-27 00:14:02 +00:00
Jesse Hills cb2f5b5ed5 Add diagnostics download to ESPHome (#65008) 2022-01-26 14:35:41 -08:00
Franck Nijhof 4925cf5aff Handle Tuya sendings strings instead of numeric values (#65009) 2022-01-26 14:05:01 -08:00
Franck Nijhof 0f63fb221c Bump version to 2022.3.0dev0 (#64996) 2022-01-26 20:53:09 +01:00
4529 changed files with 97780 additions and 22829 deletions
+7 -2
View File
@@ -64,6 +64,7 @@ components: &components
- homeassistant/components/group/*
- homeassistant/components/hassio/*
- homeassistant/components/homeassistant/**
- homeassistant/components/http/**
- homeassistant/components/image/*
- homeassistant/components/input_boolean/*
- homeassistant/components/input_button/*
@@ -75,6 +76,7 @@ components: &components
- homeassistant/components/logger/*
- homeassistant/components/lovelace/*
- homeassistant/components/media_source/*
- homeassistant/components/mjpeg/*
- homeassistant/components/mqtt/*
- homeassistant/components/network/*
- homeassistant/components/onboarding/*
@@ -101,6 +103,7 @@ components: &components
# Testing related files that affect the whole test/linting suite
tests: &tests
- codecov.yaml
- pylint/**
- requirements_test_pre_commit.txt
- requirements_test.txt
- tests/auth/**
@@ -111,6 +114,7 @@ tests: &tests
- tests/helpers/*
- tests/ignore_uncaught_exceptions.py
- tests/mock/*
- tests/pylint/*
- tests/scripts/*
- tests/test_util/*
- tests/testing_config/**
@@ -120,15 +124,16 @@ other: &other
- .github/workflows/*
- homeassistant/scripts/**
requirements:
requirements: &requirements
- .github/workflows/*
- homeassistant/package_constraints.txt
- requirements*.txt
- setup.py
- setup.cfg
any:
- *base_platforms
- *components
- *core
- *other
- *requirements
- *tests
+140 -36
View File
@@ -52,7 +52,9 @@ omit =
homeassistant/components/amazon_polly/*
homeassistant/components/amberelectric/__init__.py
homeassistant/components/ambiclimate/climate.py
homeassistant/components/ambient_station/*
homeassistant/components/ambient_station/__init__.py
homeassistant/components/ambient_station/binary_sensor.py
homeassistant/components/ambient_station/sensor.py
homeassistant/components/amcrest/*
homeassistant/components/ampio/*
homeassistant/components/android_ip_webcam/*
@@ -75,11 +77,13 @@ omit =
homeassistant/components/aruba/device_tracker.py
homeassistant/components/arwn/sensor.py
homeassistant/components/aseko_pool_live/__init__.py
homeassistant/components/aseko_pool_live/binary_sensor.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
homeassistant/components/asuswrt/diagnostics.py
homeassistant/components/asuswrt/router.py
homeassistant/components/aten_pe/*
homeassistant/components/atome/*
@@ -87,6 +91,7 @@ omit =
homeassistant/components/aurora/binary_sensor.py
homeassistant/components/aurora/const.py
homeassistant/components/aurora/sensor.py
homeassistant/components/aussie_broadband/diagnostics.py
homeassistant/components/avea/light.py
homeassistant/components/avion/light.py
homeassistant/components/azure_devops/__init__.py
@@ -189,7 +194,10 @@ omit =
homeassistant/components/crownstone/light.py
homeassistant/components/cups/sensor.py
homeassistant/components/currencylayer/sensor.py
homeassistant/components/daikin/*
homeassistant/components/daikin/__init__.py
homeassistant/components/daikin/climate.py
homeassistant/components/daikin/sensor.py
homeassistant/components/daikin/switch.py
homeassistant/components/danfoss_air/*
homeassistant/components/darksky/weather.py
homeassistant/components/ddwrt/device_tracker.py
@@ -222,7 +230,12 @@ omit =
homeassistant/components/dnsip/sensor.py
homeassistant/components/dominos/*
homeassistant/components/doods/*
homeassistant/components/doorbird/*
homeassistant/components/doorbird/__init__.py
homeassistant/components/doorbird/button.py
homeassistant/components/doorbird/camera.py
homeassistant/components/doorbird/entity.py
homeassistant/components/doorbird/logbook.py
homeassistant/components/doorbird/util.py
homeassistant/components/dovado/*
homeassistant/components/downloader/*
homeassistant/components/dsmr_reader/*
@@ -256,7 +269,14 @@ omit =
homeassistant/components/egardia/*
homeassistant/components/eight_sleep/*
homeassistant/components/eliqonline/sensor.py
homeassistant/components/elkm1/*
homeassistant/components/elkm1/__init__.py
homeassistant/components/elkm1/alarm_control_panel.py
homeassistant/components/elkm1/climate.py
homeassistant/components/elkm1/discovery.py
homeassistant/components/elkm1/light.py
homeassistant/components/elkm1/scene.py
homeassistant/components/elkm1/sensor.py
homeassistant/components/elkm1/switch.py
homeassistant/components/elmax/__init__.py
homeassistant/components/elmax/common.py
homeassistant/components/elmax/const.py
@@ -300,6 +320,7 @@ omit =
homeassistant/components/esphome/entry_data.py
homeassistant/components/esphome/fan.py
homeassistant/components/esphome/light.py
homeassistant/components/esphome/lock.py
homeassistant/components/esphome/number.py
homeassistant/components/esphome/select.py
homeassistant/components/esphome/sensor.py
@@ -339,6 +360,9 @@ omit =
homeassistant/components/firmata/sensor.py
homeassistant/components/firmata/switch.py
homeassistant/components/fitbit/*
homeassistant/components/fivem/__init__.py
homeassistant/components/fivem/binary_sensor.py
homeassistant/components/fivem/sensor.py
homeassistant/components/fixer/sensor.py
homeassistant/components/fjaraskupan/__init__.py
homeassistant/components/fjaraskupan/binary_sensor.py
@@ -370,13 +394,10 @@ omit =
homeassistant/components/freebox/router.py
homeassistant/components/freebox/sensor.py
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
@@ -400,20 +421,15 @@ omit =
homeassistant/components/glances/__init__.py
homeassistant/components/glances/const.py
homeassistant/components/glances/sensor.py
homeassistant/components/gntp/notify.py
homeassistant/components/goalfeed/*
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
homeassistant/components/google_travel_time/__init__.py
homeassistant/components/google_travel_time/helpers.py
homeassistant/components/google_travel_time/sensor.py
homeassistant/components/gpmdp/media_player.py
homeassistant/components/gpsd/sensor.py
homeassistant/components/greenwave/light.py
@@ -430,7 +446,11 @@ omit =
homeassistant/components/habitica/__init__.py
homeassistant/components/habitica/const.py
homeassistant/components/habitica/sensor.py
homeassistant/components/hangouts/*
homeassistant/components/hangouts/__init__.py
homeassistant/components/hangouts/hangouts_bot.py
homeassistant/components/hangouts/hangups_utils.py
homeassistant/components/hangouts/intents.py
homeassistant/components/hangouts/notify.py
homeassistant/components/harman_kardon_avr/media_player.py
homeassistant/components/harmony/const.py
homeassistant/components/harmony/data.py
@@ -471,7 +491,12 @@ omit =
homeassistant/components/horizon/media_player.py
homeassistant/components/hp_ilo/sensor.py
homeassistant/components/htu21d/sensor.py
homeassistant/components/huawei_lte/*
homeassistant/components/huawei_lte/__init__.py
homeassistant/components/huawei_lte/binary_sensor.py
homeassistant/components/huawei_lte/device_tracker.py
homeassistant/components/huawei_lte/notify.py
homeassistant/components/huawei_lte/sensor.py
homeassistant/components/huawei_lte/switch.py
homeassistant/components/hue/light.py
homeassistant/components/hunterdouglas_powerview/__init__.py
homeassistant/components/hunterdouglas_powerview/scene.py
@@ -497,7 +522,9 @@ omit =
homeassistant/components/izone/discovery.py
homeassistant/components/izone/__init__.py
homeassistant/components/idteck_prox/*
homeassistant/components/ifttt/*
homeassistant/components/ifttt/__init__.py
homeassistant/components/ifttt/alarm_control_panel.py
homeassistant/components/ifttt/const.py
homeassistant/components/iglo/light.py
homeassistant/components/ihc/*
homeassistant/components/imap/sensor.py
@@ -517,12 +544,17 @@ omit =
homeassistant/components/intellifire/coordinator.py
homeassistant/components/intellifire/binary_sensor.py
homeassistant/components/intellifire/sensor.py
homeassistant/components/intellifire/entity.py
homeassistant/components/incomfort/*
homeassistant/components/intesishome/*
homeassistant/components/ios/*
homeassistant/components/ios/__init__.py
homeassistant/components/ios/notify.py
homeassistant/components/ios/sensor.py
homeassistant/components/iperf3/*
homeassistant/components/iqvia/*
homeassistant/components/iqvia/__init__.py
homeassistant/components/iqvia/sensor.py
homeassistant/components/irish_rail_transport/sensor.py
homeassistant/components/iss/__init__.py
homeassistant/components/iss/binary_sensor.py
homeassistant/components/isy994/__init__.py
homeassistant/components/isy994/binary_sensor.py
@@ -569,7 +601,10 @@ omit =
homeassistant/components/kodi/const.py
homeassistant/components/kodi/media_player.py
homeassistant/components/kodi/notify.py
homeassistant/components/konnected/*
homeassistant/components/konnected/__init__.py
homeassistant/components/konnected/handlers.py
homeassistant/components/konnected/panel.py
homeassistant/components/konnected/switch.py
homeassistant/components/kostal_plenticore/__init__.py
homeassistant/components/kostal_plenticore/const.py
homeassistant/components/kostal_plenticore/helper.py
@@ -594,8 +629,13 @@ omit =
homeassistant/components/lcn/services.py
homeassistant/components/lg_netcast/media_player.py
homeassistant/components/lg_soundbar/media_player.py
homeassistant/components/life360/*
homeassistant/components/lifx/*
homeassistant/components/life360/__init__.py
homeassistant/components/life360/const.py
homeassistant/components/life360/device_tracker.py
homeassistant/components/life360/helpers.py
homeassistant/components/lifx/__init__.py
homeassistant/components/lifx/const.py
homeassistant/components/lifx/light.py
homeassistant/components/lifx_cloud/scene.py
homeassistant/components/lightwave/*
homeassistant/components/limitlessled/light.py
@@ -676,9 +716,15 @@ omit =
homeassistant/components/minio/*
homeassistant/components/mitemp_bt/sensor.py
homeassistant/components/mjpeg/camera.py
homeassistant/components/mjpeg/util.py
homeassistant/components/mochad/*
homeassistant/components/modbus/climate.py
homeassistant/components/modbus/binary_sensor.py
homeassistant/components/modem_callerid/button.py
homeassistant/components/modem_callerid/sensor.py
homeassistant/components/moehlenhoff_alpha2/__init__.py
homeassistant/components/moehlenhoff_alpha2/climate.py
homeassistant/components/moehlenhoff_alpha2/const.py
homeassistant/components/motion_blinds/__init__.py
homeassistant/components/motion_blinds/const.py
homeassistant/components/motion_blinds/cover.py
@@ -716,6 +762,7 @@ omit =
homeassistant/components/nad/media_player.py
homeassistant/components/nanoleaf/__init__.py
homeassistant/components/nanoleaf/button.py
homeassistant/components/nanoleaf/device_trigger.py
homeassistant/components/nanoleaf/diagnostics.py
homeassistant/components/nanoleaf/entity.py
homeassistant/components/nanoleaf/light.py
@@ -730,9 +777,11 @@ omit =
homeassistant/components/nest/legacy/*
homeassistant/components/netdata/sensor.py
homeassistant/components/netgear/__init__.py
homeassistant/components/netgear/button.py
homeassistant/components/netgear/device_tracker.py
homeassistant/components/netgear/router.py
homeassistant/components/netgear/sensor.py
homeassistant/components/netgear/switch.py
homeassistant/components/netgear_lte/*
homeassistant/components/netio/switch.py
homeassistant/components/neurio_energy/sensor.py
@@ -759,6 +808,7 @@ omit =
homeassistant/components/nuki/const.py
homeassistant/components/nuki/binary_sensor.py
homeassistant/components/nuki/lock.py
homeassistant/components/nut/diagnostics.py
homeassistant/components/nx584/alarm_control_panel.py
homeassistant/components/nzbget/coordinator.py
homeassistant/components/obihai/*
@@ -820,6 +870,8 @@ omit =
homeassistant/components/overkiz/__init__.py
homeassistant/components/overkiz/binary_sensor.py
homeassistant/components/overkiz/button.py
homeassistant/components/overkiz/climate.py
homeassistant/components/overkiz/climate_entities/*
homeassistant/components/overkiz/cover.py
homeassistant/components/overkiz/cover_entities/*
homeassistant/components/overkiz/coordinator.py
@@ -832,6 +884,7 @@ omit =
homeassistant/components/overkiz/scene.py
homeassistant/components/overkiz/select.py
homeassistant/components/overkiz/sensor.py
homeassistant/components/overkiz/siren.py
homeassistant/components/overkiz/switch.py
homeassistant/components/ovo_energy/__init__.py
homeassistant/components/ovo_energy/const.py
@@ -845,6 +898,7 @@ omit =
homeassistant/components/pcal9535a/*
homeassistant/components/pencom/switch.py
homeassistant/components/philips_js/__init__.py
homeassistant/components/philips_js/diagnostics.py
homeassistant/components/philips_js/light.py
homeassistant/components/philips_js/media_player.py
homeassistant/components/philips_js/remote.py
@@ -867,9 +921,13 @@ omit =
homeassistant/components/plaato/entity.py
homeassistant/components/plaato/sensor.py
homeassistant/components/plex/media_player.py
homeassistant/components/plex/view.py
homeassistant/components/plum_lightpad/light.py
homeassistant/components/pocketcasts/sensor.py
homeassistant/components/point/*
homeassistant/components/point/__init__.py
homeassistant/components/point/alarm_control_panel.py
homeassistant/components/point/binary_sensor.py
homeassistant/components/point/sensor.py
homeassistant/components/poolsense/__init__.py
homeassistant/components/poolsense/sensor.py
homeassistant/components/poolsense/binary_sensor.py
@@ -892,8 +950,15 @@ omit =
homeassistant/components/qrcode/image_processing.py
homeassistant/components/quantum_gateway/device_tracker.py
homeassistant/components/qvr_pro/*
homeassistant/components/rachio/*
homeassistant/components/rachio/__init__.py
homeassistant/components/rachio/binary_sensor.py
homeassistant/components/rachio/device.py
homeassistant/components/rachio/entity.py
homeassistant/components/rachio/switch.py
homeassistant/components/rachio/webhooks.py
homeassistant/components/radarr/sensor.py
homeassistant/components/radio_browser/__init__.py
homeassistant/components/radio_browser/media_source.py
homeassistant/components/radiotherm/climate.py
homeassistant/components/rainbird/*
homeassistant/components/raincloud/*
@@ -946,11 +1011,8 @@ omit =
homeassistant/components/russound_rnet/media_player.py
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
homeassistant/components/screenlogic/__init__.py
homeassistant/components/screenlogic/binary_sensor.py
homeassistant/components/screenlogic/climate.py
@@ -975,6 +1037,9 @@ omit =
homeassistant/components/senseme/switch.py
homeassistant/components/sensibo/__init__.py
homeassistant/components/sensibo/climate.py
homeassistant/components/sensibo/coordinator.py
homeassistant/components/sensibo/diagnostics.py
homeassistant/components/sensibo/number.py
homeassistant/components/serial/sensor.py
homeassistant/components/serial_pm/sensor.py
homeassistant/components/sesame/lock.py
@@ -987,6 +1052,7 @@ omit =
homeassistant/components/shelly/climate.py
homeassistant/components/shelly/entity.py
homeassistant/components/shelly/light.py
homeassistant/components/shelly/number.py
homeassistant/components/shelly/sensor.py
homeassistant/components/shelly/utils.py
homeassistant/components/sht31/sensor.py
@@ -1023,7 +1089,11 @@ omit =
homeassistant/components/smarthab/__init__.py
homeassistant/components/smarthab/cover.py
homeassistant/components/smarthab/light.py
homeassistant/components/sms/*
homeassistant/components/sms/__init__.py
homeassistant/components/sms/const.py
homeassistant/components/sms/gateway.py
homeassistant/components/sms/notify.py
homeassistant/components/sms/sensor.py
homeassistant/components/smtp/notify.py
homeassistant/components/snapcast/*
homeassistant/components/snmp/*
@@ -1032,7 +1102,8 @@ omit =
homeassistant/components/solaredge/coordinator.py
homeassistant/components/solaredge/sensor.py
homeassistant/components/solaredge_local/sensor.py
homeassistant/components/solarlog/*
homeassistant/components/solarlog/__init__.py
homeassistant/components/solarlog/sensor.py
homeassistant/components/solax/__init__.py
homeassistant/components/solax/sensor.py
homeassistant/components/soma/__init__.py
@@ -1054,21 +1125,34 @@ omit =
homeassistant/components/sonos/favorites.py
homeassistant/components/sonos/helpers.py
homeassistant/components/sonos/household_coordinator.py
homeassistant/components/sonos/media.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/*
homeassistant/components/spider/__init__.py
homeassistant/components/spider/climate.py
homeassistant/components/spider/sensor.py
homeassistant/components/spider/switch.py
homeassistant/components/splunk/*
homeassistant/components/spotify/__init__.py
homeassistant/components/spotify/browse_media.py
homeassistant/components/spotify/media_player.py
homeassistant/components/spotify/system_health.py
homeassistant/components/spotify/util.py
homeassistant/components/squeezebox/__init__.py
homeassistant/components/squeezebox/browse_media.py
homeassistant/components/squeezebox/media_player.py
homeassistant/components/starline/*
homeassistant/components/starline/__init__.py
homeassistant/components/starline/account.py
homeassistant/components/starline/binary_sensor.py
homeassistant/components/starline/device_tracker.py
homeassistant/components/starline/entity.py
homeassistant/components/starline/lock.py
homeassistant/components/starline/sensor.py
homeassistant/components/starline/switch.py
homeassistant/components/starlingbank/sensor.py
homeassistant/components/steam_online/sensor.py
homeassistant/components/stiebel_eltron/*
@@ -1118,7 +1202,12 @@ omit =
homeassistant/components/system_bridge/coordinator.py
homeassistant/components/system_bridge/sensor.py
homeassistant/components/systemmonitor/sensor.py
homeassistant/components/tado/*
homeassistant/components/tado/__init__.py
homeassistant/components/tado/binary_sensor.py
homeassistant/components/tado/climate.py
homeassistant/components/tado/device_tracker.py
homeassistant/components/tado/sensor.py
homeassistant/components/tado/water_heater.py
homeassistant/components/tank_utility/sensor.py
homeassistant/components/tankerkoenig/*
homeassistant/components/tapsaff/binary_sensor.py
@@ -1162,6 +1251,7 @@ omit =
homeassistant/components/tolo/climate.py
homeassistant/components/tolo/fan.py
homeassistant/components/tolo/light.py
homeassistant/components/tolo/number.py
homeassistant/components/tolo/select.py
homeassistant/components/tolo/sensor.py
homeassistant/components/tomato/device_tracker.py
@@ -1191,7 +1281,7 @@ omit =
homeassistant/components/tractive/switch.py
homeassistant/components/tradfri/__init__.py
homeassistant/components/tradfri/base_class.py
homeassistant/components/tradfri/config_flow.py
homeassistant/components/tradfri/coordinator.py
homeassistant/components/tradfri/cover.py
homeassistant/components/tradfri/fan.py
homeassistant/components/tradfri/light.py
@@ -1239,7 +1329,9 @@ omit =
homeassistant/components/upcloud/__init__.py
homeassistant/components/upcloud/binary_sensor.py
homeassistant/components/upcloud/switch.py
homeassistant/components/upnp/*
homeassistant/components/upnp/__init__.py
homeassistant/components/upnp/device.py
homeassistant/components/upnp/sensor.py
homeassistant/components/upc_connect/*
homeassistant/components/uscis/sensor.py
homeassistant/components/vallox/__init__.py
@@ -1253,6 +1345,7 @@ omit =
homeassistant/components/velbus/climate.py
homeassistant/components/velbus/const.py
homeassistant/components/velbus/cover.py
homeassistant/components/velbus/diagnostics.py
homeassistant/components/velbus/light.py
homeassistant/components/velbus/sensor.py
homeassistant/components/velbus/switch.py
@@ -1305,10 +1398,10 @@ omit =
homeassistant/components/watson_tts/tts.py
homeassistant/components/watttime/__init__.py
homeassistant/components/watttime/sensor.py
homeassistant/components/waze_travel_time/__init__.py
homeassistant/components/waze_travel_time/helpers.py
homeassistant/components/waze_travel_time/sensor.py
homeassistant/components/wiffi/*
homeassistant/components/wiffi/__init__.py
homeassistant/components/wiffi/binary_sensor.py
homeassistant/components/wiffi/sensor.py
homeassistant/components/wiffi/wiffi_strings.py
homeassistant/components/wirelesstag/*
homeassistant/components/wolflink/__init__.py
homeassistant/components/wolflink/sensor.py
@@ -1359,6 +1452,7 @@ omit =
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/diagnostics.py
homeassistant/components/yale_smart_alarm/entity.py
homeassistant/components/yale_smart_alarm/lock.py
homeassistant/components/yamaha_musiccast/__init__.py
@@ -1398,6 +1492,16 @@ omit =
homeassistant/components/zwave/util.py
homeassistant/components/zwave_js/discovery.py
homeassistant/components/zwave_js/sensor.py
homeassistant/components/zwave_me/__init__.py
homeassistant/components/zwave_me/binary_sensor.py
homeassistant/components/zwave_me/button.py
homeassistant/components/zwave_me/climate.py
homeassistant/components/zwave_me/helpers.py
homeassistant/components/zwave_me/light.py
homeassistant/components/zwave_me/lock.py
homeassistant/components/zwave_me/number.py
homeassistant/components/zwave_me/sensor.py
homeassistant/components/zwave_me/switch.py
[report]
# Regexes for lines to exclude from consideration
+11
View File
@@ -75,6 +75,17 @@ body:
attributes:
value: |
# Details
- type: textarea
attributes:
label: Diagnostics information
description: >-
Many integrations provide the ability to download diagnostic data
on the device page (and on the integration dashboard).
**It would really help if you could download the diagnostics data for the device you are having issues with,
and drag-and-drop that file into the textbox below.**
It generally allows pinpointing defects and thus resolving issues faster.
- type: textarea
attributes:
label: Example YAML snippet
+14 -14
View File
@@ -29,7 +29,7 @@ jobs:
fetch-depth: 0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -57,6 +57,7 @@ jobs:
uses: home-assistant/actions/helpers/codenotary@master
with:
source: file://${{ github.workspace }}/OFFICIAL_IMAGE
asset: OFFICIAL_IMAGE-${{ steps.version.outputs.version }}
token: ${{ secrets.CAS_TOKEN }}
build_python:
@@ -69,7 +70,7 @@ jobs:
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -103,7 +104,7 @@ jobs:
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
if: needs.init.outputs.channel == 'dev'
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -112,9 +113,8 @@ jobs:
shell: bash
run: |
python3 -m pip install packaging
python3 -m pip install .
python3 script/version_bump.py nightly
version="$(python setup.py -V)"
python3 -m pip install --use-deprecated=legacy-resolver .
version="$(python3 script/version_bump.py nightly)"
- name: Write meta info file
shell: bash
@@ -122,20 +122,20 @@ jobs:
echo "${{ github.sha }};${{ github.ref }};${{ github.event_name }};${{ github.actor }}" > rootfs/OFFICIAL_IMAGE
- name: Login to DockerHub
uses: docker/login-action@v1.12.0
uses: docker/login-action@v1.13.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v1.12.0
uses: docker/login-action@v1.13.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2021.12.0
uses: home-assistant/builder@2022.01.0
with:
args: |
$BUILD_ARGS \
@@ -187,20 +187,20 @@ jobs:
fi
- name: Login to DockerHub
uses: docker/login-action@v1.12.0
uses: docker/login-action@v1.13.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v1.12.0
uses: docker/login-action@v1.13.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build base image
uses: home-assistant/builder@2021.12.0
uses: home-assistant/builder@2022.01.0
with:
args: |
$BUILD_ARGS \
@@ -252,13 +252,13 @@ jobs:
uses: actions/checkout@v2.4.0
- name: Login to DockerHub
uses: docker/login-action@v1.12.0
uses: docker/login-action@v1.13.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container Registry
uses: docker/login-action@v1.12.0
uses: docker/login-action@v1.13.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
+39 -24
View File
@@ -8,10 +8,21 @@ on:
- rc
- master
pull_request: ~
workflow_dispatch:
inputs:
full:
description: 'Full run (regardless of changes)'
default: false
type: boolean
lint-only:
description: 'Skip pytest'
default: false
type: boolean
env:
CACHE_VERSION: 5
PIP_CACHE_VERSION: 1
CACHE_VERSION: 9
PIP_CACHE_VERSION: 3
HA_SHORT_VERSION: 2022.3
DEFAULT_PYTHON: 3.9
PRE_COMMIT_CACHE: ~/.cache/pre-commit
PIP_CACHE: /tmp/pip-cache
@@ -107,7 +118,8 @@ jobs:
if [[ "${{ github.ref }}" == "refs/heads/dev" ]] \
|| [[ "${{ github.ref }}" == "refs/heads/master" ]] \
|| [[ "${{ github.ref }}" == "refs/heads/rc" ]] \
|| [[ "${{ steps.core.outputs.any }}" == "true" ]];
|| [[ "${{ steps.core.outputs.any }}" == "true" ]] \
|| [[ "${{ github.event.inputs.full }}" == "true" ]];
then
test_groups="[1, 2, 3, 4, 5, 6]"
test_group_count=6
@@ -142,7 +154,7 @@ jobs:
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
id: python
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
with:
python-version: ${{ env.DEFAULT_PYTHON }}
- name: Generate partial Python venv restore key
@@ -155,8 +167,8 @@ jobs:
- 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')"
echo "::set-output name=key::base-pip-${{ env.PIP_CACHE_VERSION }}-${{
env.HA_SHORT_VERSION }}-$(date -u '+%Y-%m-%dT%H:%M:%s')"
- name: Restore base Python virtual environment
id: cache-venv
uses: actions/cache@v2.1.7
@@ -183,15 +195,15 @@ jobs:
${{ 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 }}-
${{ runner.os }}-${{ steps.python.outputs.python-version }}-base-pip-${{ env.PIP_CACHE_VERSION }}-${{ env.HA_SHORT_VERSION }}-
- name: Create Python virtual environment
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
python -m venv venv
. venv/bin/activate
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
pip install --cache-dir=$PIP_CACHE -U "pip>=21.0,<22.1" setuptools wheel
pip install --cache-dir=$PIP_CACHE -r requirements.txt -r requirements_test.txt --use-deprecated=legacy-resolver
- name: Generate partial pre-commit restore key
id: generate-pre-commit-key
run: >-
@@ -222,7 +234,7 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -272,7 +284,7 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -323,7 +335,7 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -365,7 +377,7 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -499,7 +511,7 @@ jobs:
- name: Check out code from GitHub
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
id: python
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -523,10 +535,10 @@ jobs:
prepare-tests:
name: Prepare tests for Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
timeout-minutes: 30
timeout-minutes: 60
strategy:
matrix:
python-version: [3.9]
python-version: ["3.9", "3.10"]
outputs:
python-key: ${{ steps.generate-python-key.outputs.key }}
container: homeassistant/ci-azure:${{ matrix.python-version }}
@@ -543,8 +555,8 @@ jobs:
- 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')"
echo "::set-output name=key::pip-${{ env.PIP_CACHE_VERSION }}-${{
env.HA_SHORT_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
@@ -571,7 +583,7 @@ jobs:
${{ runner.os }}-${{ matrix.python-version }}-${{
steps.generate-pip-key.outputs.key }}
restore-keys: |
${{ runner.os }}-${{ matrix.python-version }}-pip-${{ env.PIP_CACHE_VERSION }}-
${{ runner.os }}-${{ matrix.python-version }}-pip-${{ env.PIP_CACHE_VERSION }}-${{ env.HA_SHORT_VERSION }}-
- name: Create full Python ${{ matrix.python-version }} virtual environment
if: steps.cache-venv.outputs.cache-hit != 'true'
run: |
@@ -582,9 +594,9 @@ jobs:
python -m venv venv
. venv/bin/activate
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 --cache-dir=$PIP_CACHE -U "pip>=21.0,<22.1" setuptools wheel
pip install --cache-dir=$PIP_CACHE -r requirements_all.txt --use-deprecated=legacy-resolver
pip install --cache-dir=$PIP_CACHE -r requirements_test.txt --use-deprecated=legacy-resolver
pip install -e .
pylint:
@@ -706,7 +718,10 @@ jobs:
pytest:
runs-on: ubuntu-latest
if: needs.changes.outputs.test_full_suite == 'true' || needs.changes.outputs.tests_glob
if: |
(github.event_name != 'push' || github.event.repository.full_name == 'home-assistant/core')
&& github.event.inputs.lint-only != 'true'
&& (needs.changes.outputs.test_full_suite == 'true' || needs.changes.outputs.tests_glob)
needs:
- changes
- gen-requirements-all
@@ -720,7 +735,7 @@ jobs:
fail-fast: false
matrix:
group: ${{ fromJson(needs.changes.outputs.test_groups) }}
python-version: [3.9]
python-version: ["3.9", "3.10"]
name: >-
Run tests Python ${{ matrix.python-version }} (${{ matrix.group }})
container: homeassistant/ci-azure:${{ matrix.python-version }}
+2 -2
View File
@@ -24,7 +24,7 @@ jobs:
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
with:
python-version: ${{ env.DEFAULT_PYTHON }}
@@ -43,7 +43,7 @@ jobs:
uses: actions/checkout@v2.4.0
- name: Set up Python ${{ env.DEFAULT_PYTHON }}
uses: actions/setup-python@v2.3.1
uses: actions/setup-python@v2.3.2
with:
python-version: ${{ env.DEFAULT_PYTHON }}
+2 -1
View File
@@ -44,7 +44,7 @@ jobs:
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
# execinfo-dev when building wheels. The setuptools build setup 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
@@ -154,6 +154,7 @@ jobs:
sed -i "s|# face_recognition|face_recognition|g" ${requirement_file}
sed -i "s|# bme680|bme680|g" ${requirement_file}
sed -i "s|# python-gammu|python-gammu|g" ${requirement_file}
sed -i "s|# homeassistant-pyozw|homeassistant-pyozw|g" ${requirement_file}
done
- name: Build wheels
+12 -5
View File
@@ -5,7 +5,7 @@ repos:
- id: pyupgrade
args: [--py39-plus]
- repo: https://github.com/psf/black
rev: 21.12b0
rev: 22.1.0
hooks:
- id: black
args:
@@ -17,7 +17,7 @@ repos:
hooks:
- id: codespell
args:
- --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
- --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,pullrequests
- --skip="./.*,*.csv,*.json"
- --quiet-level=2
exclude_types: [csv, json]
@@ -78,7 +78,7 @@ repos:
- id: python-typing-update
stages: [manual]
args:
- --py38-plus
- --py39-plus
- --force
- --keep-updates
files: ^(homeassistant|tests|script)/.+\.py$
@@ -114,11 +114,18 @@ repos:
pass_filenames: false
language: script
types: [text]
files: ^(homeassistant/.+/(manifest|strings)\.json|\.coveragerc|\.strict-typing|homeassistant/.+/services\.yaml|script/hassfest/.+\.py)$
files: ^(homeassistant/.+/(manifest|strings)\.json|\.coveragerc|homeassistant/.+/services\.yaml|script/hassfest/(?!metadata|mypy_config).+\.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)$
files: ^(script/hassfest/metadata\.py|homeassistant/const\.py$|setup\.cfg)$
- id: hassfest-mypy-config
name: hassfest-mypy-config
entry: script/run-in-env.sh python3 -m script.hassfest -p mypy_config
pass_filenames: false
language: script
types: [text]
files: ^(script/hassfest/mypy_config\.py|\.strict-typing|mypy\.ini)$
+9 -5
View File
@@ -1,10 +1,14 @@
# .readthedocs.yml
version: 2
build:
image: latest
os: ubuntu-20.04
tools:
python: "3.9"
python:
version: 3.8
setup_py_install: true
requirements_file: requirements_docs.txt
install:
- method: setuptools
path: .
- requirements: requirements_docs.txt
+22 -1
View File
@@ -20,7 +20,9 @@ homeassistant.helpers.entity_values
homeassistant.helpers.reload
homeassistant.helpers.script_variables
homeassistant.helpers.translation
homeassistant.util.async_
homeassistant.util.color
homeassistant.util.decorator
homeassistant.util.process
homeassistant.util.unit_system
@@ -57,6 +59,11 @@ homeassistant.components.canary.*
homeassistant.components.cover.*
homeassistant.components.crownstone.*
homeassistant.components.cpuspeed.*
homeassistant.components.deconz
homeassistant.components.deconz.config_flow
homeassistant.components.deconz.diagnostics
homeassistant.components.deconz.gateway
homeassistant.components.deconz.services
homeassistant.components.device_automation.*
homeassistant.components.device_tracker.*
homeassistant.components.devolo_home_control.*
@@ -87,6 +94,14 @@ homeassistant.components.group.*
homeassistant.components.guardian.*
homeassistant.components.history.*
homeassistant.components.homeassistant.triggers.event
homeassistant.components.homekit_controller
homeassistant.components.homekit_controller.alarm_control_panel
homeassistant.components.homekit_controller.button
homeassistant.components.homekit_controller.const
homeassistant.components.homekit_controller.lock
homeassistant.components.homekit_controller.select
homeassistant.components.homekit_controller.storage
homeassistant.components.homekit_controller.utils
homeassistant.components.homewizard.*
homeassistant.components.http.*
homeassistant.components.huawei_lte.*
@@ -95,6 +110,7 @@ homeassistant.components.image_processing.*
homeassistant.components.input_button.*
homeassistant.components.input_select.*
homeassistant.components.integration.*
homeassistant.components.isy994.*
homeassistant.components.iqvia.*
homeassistant.components.jellyfin.*
homeassistant.components.jewish_calendar.*
@@ -109,6 +125,7 @@ homeassistant.components.lookin.*
homeassistant.components.luftdaten.*
homeassistant.components.mailbox.*
homeassistant.components.media_player.*
homeassistant.components.mjpeg.*
homeassistant.components.modbus.*
homeassistant.components.modem_callerid.*
homeassistant.components.media_source.*
@@ -132,8 +149,10 @@ homeassistant.components.openuv.*
homeassistant.components.overkiz.*
homeassistant.components.persistent_notification.*
homeassistant.components.pi_hole.*
homeassistant.components.powerwall.*
homeassistant.components.proximity.*
homeassistant.components.pvoutput.*
homeassistant.components.pure_energie.*
homeassistant.components.rainmachine.*
homeassistant.components.rdw.*
homeassistant.components.recollect_waste.*
@@ -144,6 +163,7 @@ homeassistant.components.remote.*
homeassistant.components.renault.*
homeassistant.components.ridwell.*
homeassistant.components.rituals_perfume_genie.*
homeassistant.components.roku.*
homeassistant.components.rpi_power.*
homeassistant.components.rtsp_to_webrtc.*
homeassistant.components.samsungtv.*
@@ -154,8 +174,8 @@ homeassistant.components.senseme.*
homeassistant.components.shelly.*
homeassistant.components.simplisafe.*
homeassistant.components.slack.*
homeassistant.components.sleepiq.*
homeassistant.components.smhi.*
homeassistant.components.sonos.media_player
homeassistant.components.ssdp.*
homeassistant.components.stookalert.*
homeassistant.components.statistics.*
@@ -196,6 +216,7 @@ homeassistant.components.webostv.*
homeassistant.components.websocket_api.*
homeassistant.components.wemo.*
homeassistant.components.whois.*
homeassistant.components.wiz.*
homeassistant.components.zodiac.*
homeassistant.components.zeroconf.*
homeassistant.components.zone.*
+2 -2
View File
@@ -88,7 +88,7 @@
{
"label": "Install all Requirements",
"type": "shell",
"command": "pip3 install -r requirements_all.txt",
"command": "pip3 install --use-deprecated=legacy-resolver -r requirements_all.txt",
"group": {
"kind": "build",
"isDefault": true
@@ -102,7 +102,7 @@
{
"label": "Install all Test Requirements",
"type": "shell",
"command": "pip3 install -r requirements_test_all.txt",
"command": "pip3 install --use-deprecated=legacy-resolver -r requirements_test_all.txt",
"group": {
"kind": "build",
"isDefault": true
+33 -11
View File
@@ -4,7 +4,7 @@
# https://github.com/blog/2392-introducing-code-owners
# Home Assistant Core
setup.py @home-assistant/core
setup.cfg @home-assistant/core
homeassistant/*.py @home-assistant/core
homeassistant/helpers/* @home-assistant/core
homeassistant/util/* @home-assistant/core
@@ -43,8 +43,6 @@ homeassistant/components/airtouch4/* @LonePurpleWolf
tests/components/airtouch4/* @LonePurpleWolf
homeassistant/components/airvisual/* @bachya
tests/components/airvisual/* @bachya
homeassistant/components/alarmdecoder/* @ajschmidt8
tests/components/alarmdecoder/* @ajschmidt8
homeassistant/components/alexa/* @home-assistant/cloud @ochlocracy
tests/components/alexa/* @home-assistant/cloud @ochlocracy
homeassistant/components/almond/* @gcampax @balloob
@@ -216,6 +214,8 @@ homeassistant/components/digital_ocean/* @fabaff
homeassistant/components/discogs/* @thibmaek
homeassistant/components/dlna_dmr/* @StevenLooman @chishm
tests/components/dlna_dmr/* @StevenLooman @chishm
homeassistant/components/dlna_dms/* @chishm
tests/components/dlna_dms/* @chishm
homeassistant/components/dnsip/* @gjohansson-ST
tests/components/dnsip/* @gjohansson-ST
homeassistant/components/doorbird/* @oblogic7 @bdraco @flacjacket
@@ -264,6 +264,7 @@ tests/components/enphase_envoy/* @gtdiehl
homeassistant/components/entur_public_transport/* @hfurubotten
homeassistant/components/environment_canada/* @gwww @michaeldavie
tests/components/environment_canada/* @gwww @michaeldavie
homeassistant/components/envisalink/* @ufodone
homeassistant/components/ephember/* @ttroy50
homeassistant/components/epson/* @pszafer
tests/components/epson/* @pszafer
@@ -287,6 +288,8 @@ homeassistant/components/fireservicerota/* @cyberjunky
tests/components/fireservicerota/* @cyberjunky
homeassistant/components/firmata/* @DaAwesomeP
tests/components/firmata/* @DaAwesomeP
homeassistant/components/fivem/* @Sander0542
tests/components/fivem/* @Sander0542
homeassistant/components/fixer/* @fabaff
homeassistant/components/fjaraskupan/* @elupus
tests/components/fjaraskupan/* @elupus
@@ -353,6 +356,8 @@ tests/components/goodwe/* @mletenay @starkillerOG
homeassistant/components/google_assistant/* @home-assistant/cloud
tests/components/google_assistant/* @home-assistant/cloud
homeassistant/components/google_cloud/* @lufton
homeassistant/components/google_travel_time/* @eifinger
tests/components/google_travel_time/* @eifinger
homeassistant/components/gpsd/* @fabaff
homeassistant/components/gree/* @cmroche
tests/components/gree/* @cmroche
@@ -467,6 +472,8 @@ tests/components/iqvia/* @bachya
homeassistant/components/irish_rail_transport/* @ttroy50
homeassistant/components/islamic_prayer_times/* @engrbm87
tests/components/islamic_prayer_times/* @engrbm87
homeassistant/components/iss/* @DurgNomis-drol
tests/components/iss/* @DurgNomis-drol
homeassistant/components/isy994/* @bdraco @shbatm
tests/components/isy994/* @bdraco @shbatm
homeassistant/components/izone/* @Swamp-Ig
@@ -570,6 +577,8 @@ homeassistant/components/modem_callerid/* @tkdrob
tests/components/modem_callerid/* @tkdrob
homeassistant/components/modern_forms/* @wonderslug
tests/components/modern_forms/* @wonderslug
homeassistant/components/moehlenhoff_alpha2/* @j-a-n
tests/components/moehlenhoff_alpha2/* @j-a-n
homeassistant/components/monoprice/* @etsinko @OnFreund
tests/components/monoprice/* @etsinko @OnFreund
homeassistant/components/moon/* @fabaff
@@ -710,8 +719,8 @@ homeassistant/components/plaato/* @JohNan
tests/components/plaato/* @JohNan
homeassistant/components/plex/* @jjlawren
tests/components/plex/* @jjlawren
homeassistant/components/plugwise/* @CoMPaTech @bouwew @brefra
tests/components/plugwise/* @CoMPaTech @bouwew @brefra
homeassistant/components/plugwise/* @CoMPaTech @bouwew @brefra @frenck
tests/components/plugwise/* @CoMPaTech @bouwew @brefra @frenck
homeassistant/components/plum_lightpad/* @ColinHarrington @prystupa
tests/components/plum_lightpad/* @ColinHarrington @prystupa
homeassistant/components/point/* @fredrike
@@ -731,6 +740,8 @@ tests/components/prosegur/* @dgomes
homeassistant/components/proxmoxve/* @jhollowe @Corbeno
homeassistant/components/ps4/* @ktnrg45
tests/components/ps4/* @ktnrg45
homeassistant/components/pure_energie/* @klaasnicolaas
tests/components/pure_energie/* @klaasnicolaas
homeassistant/components/push/* @dgomes
tests/components/push/* @dgomes
homeassistant/components/pvoutput/* @fabaff @frenck
@@ -746,6 +757,8 @@ homeassistant/components/qwikswitch/* @kellerza
tests/components/qwikswitch/* @kellerza
homeassistant/components/rachio/* @bdraco
tests/components/rachio/* @bdraco
homeassistant/components/radio_browser/* @frenck
tests/components/radio_browser/* @frenck
homeassistant/components/radiotherm/* @vinnyfuria
homeassistant/components/rainbird/* @konikvranik
homeassistant/components/raincloud/* @vanstinator
@@ -795,12 +808,13 @@ tests/components/ruckus_unleashed/* @gabe565
homeassistant/components/safe_mode/* @home-assistant/core
tests/components/safe_mode/* @home-assistant/core
homeassistant/components/saj/* @fredericvl
homeassistant/components/samsungtv/* @escoand @chemelli74
tests/components/samsungtv/* @escoand @chemelli74
homeassistant/components/samsungtv/* @escoand @chemelli74 @epenet
tests/components/samsungtv/* @escoand @chemelli74 @epenet
homeassistant/components/scene/* @home-assistant/core
tests/components/scene/* @home-assistant/core
homeassistant/components/schluter/* @prairieapps
homeassistant/components/scrape/* @fabaff
tests/components/scrape/* @fabaff
homeassistant/components/screenlogic/* @dieselrabbit @bdraco
tests/components/screenlogic/* @dieselrabbit @bdraco
homeassistant/components/script/* @home-assistant/core
@@ -842,6 +856,8 @@ homeassistant/components/sisyphus/* @jkeljo
homeassistant/components/sky_hub/* @rogerselwyn
homeassistant/components/slack/* @bachya
tests/components/slack/* @bachya
homeassistant/components/sleepiq/* @mfugate1 @kbickar
tests/components/sleepiq/* @mfugate1 @kbickar
homeassistant/components/slide/* @ualex73
homeassistant/components/sma/* @kellerza @rklomp
tests/components/sma/* @kellerza @rklomp
@@ -1030,8 +1046,8 @@ tests/components/vilfo/* @ManneW
homeassistant/components/vivotek/* @HarlemSquirrel
homeassistant/components/vizio/* @raman325
tests/components/vizio/* @raman325
homeassistant/components/vlc_telnet/* @rodripf @dmcc @MartinHjelmare
tests/components/vlc_telnet/* @rodripf @dmcc @MartinHjelmare
homeassistant/components/vlc_telnet/* @rodripf @MartinHjelmare
tests/components/vlc_telnet/* @rodripf @MartinHjelmare
homeassistant/components/volkszaehler/* @fabaff
homeassistant/components/volumio/* @OnFreund
tests/components/volumio/* @OnFreund
@@ -1044,6 +1060,8 @@ homeassistant/components/waqi/* @andrey-git
homeassistant/components/watson_tts/* @rutkai
homeassistant/components/watttime/* @bachya
tests/components/watttime/* @bachya
homeassistant/components/waze_travel_time/* @eifinger
tests/components/waze_travel_time/* @eifinger
homeassistant/components/weather/* @fabaff
tests/components/weather/* @fabaff
homeassistant/components/webostv/* @bendavid @thecode
@@ -1063,6 +1081,8 @@ tests/components/wilight/* @leofig-rj
homeassistant/components/wirelesstag/* @sergeymaysak
homeassistant/components/withings/* @vangorra
tests/components/withings/* @vangorra
homeassistant/components/wiz/* @sbidy
tests/components/wiz/* @sbidy
homeassistant/components/wled/* @frenck
tests/components/wled/* @frenck
homeassistant/components/wolflink/* @adamkrol93
@@ -1086,8 +1106,8 @@ homeassistant/components/yamaha_musiccast/* @vigonotion @micha91
tests/components/yamaha_musiccast/* @vigonotion @micha91
homeassistant/components/yandex_transport/* @rishatik92 @devbis
tests/components/yandex_transport/* @rishatik92 @devbis
homeassistant/components/yeelight/* @zewelor @shenxn @starkillerOG
tests/components/yeelight/* @zewelor @shenxn @starkillerOG
homeassistant/components/yeelight/* @zewelor @shenxn @starkillerOG @alexyao2015
tests/components/yeelight/* @zewelor @shenxn @starkillerOG @alexyao2015
homeassistant/components/yeelightsunflower/* @lindsaymarkward
homeassistant/components/yi/* @bachya
homeassistant/components/youless/* @gjong
@@ -1107,6 +1127,8 @@ homeassistant/components/zwave/* @home-assistant/z-wave
tests/components/zwave/* @home-assistant/z-wave
homeassistant/components/zwave_js/* @home-assistant/z-wave
tests/components/zwave_js/* @home-assistant/z-wave
homeassistant/components/zwave_me/* @lawfulchaos @Z-Wave-Me
tests/components/zwave_me/* @lawfulchaos @Z-Wave-Me
# Individual files
homeassistant/components/demo/weather @fabaff
+5 -4
View File
@@ -12,17 +12,18 @@ COPY requirements.txt homeassistant/
COPY homeassistant/package_constraints.txt homeassistant/homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements.txt
-r homeassistant/requirements.txt --use-deprecated=legacy-resolver
COPY requirements_all.txt homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements_all.txt
sed -i "s|# homeassistant-pyozw|homeassistant-pyozw|g" homeassistant/requirements_all.txt \
&& pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-r homeassistant/requirements_all.txt --use-deprecated=legacy-resolver
## Setup Home Assistant Core
COPY . homeassistant/
RUN \
pip3 install --no-cache-dir --no-index --only-binary=:all: --find-links "${WHEELS_LINKS}" \
-e ./homeassistant \
-e ./homeassistant --use-deprecated=legacy-resolver \
&& python3 -m compileall homeassistant/homeassistant
# Fix Bug with Alpine 3.14 and sqlite 3.35
+2 -2
View File
@@ -33,9 +33,9 @@ WORKDIR /workspaces
# Install Python dependencies from requirements
COPY requirements.txt ./
COPY homeassistant/package_constraints.txt homeassistant/package_constraints.txt
RUN pip3 install -r requirements.txt
RUN pip3 install -r requirements.txt --use-deprecated=legacy-resolver
COPY requirements_test.txt requirements_test_pre_commit.txt ./
RUN pip3 install -r requirements_test.txt
RUN pip3 install -r requirements_test.txt --use-deprecated=legacy-resolver
RUN rm -rf requirements.txt requirements_test.txt requirements_test_pre_commit.txt homeassistant/
# Set the default shell to bash instead of sh
+5 -5
View File
@@ -1,11 +1,11 @@
image: homeassistant/{arch}-homeassistant
shadow_repository: ghcr.io/home-assistant
build_from:
aarch64: ghcr.io/home-assistant/aarch64-homeassistant-base:2021.09.0
armhf: ghcr.io/home-assistant/armhf-homeassistant-base:2021.09.0
armv7: ghcr.io/home-assistant/armv7-homeassistant-base:2021.09.0
amd64: ghcr.io/home-assistant/amd64-homeassistant-base:2021.09.0
i386: ghcr.io/home-assistant/i386-homeassistant-base:2021.09.0
aarch64: ghcr.io/home-assistant/aarch64-homeassistant-base:2022.02.0
armhf: ghcr.io/home-assistant/armhf-homeassistant-base:2022.02.0
armv7: ghcr.io/home-assistant/armv7-homeassistant-base:2022.02.0
amd64: ghcr.io/home-assistant/amd64-homeassistant-base:2022.02.0
i386: ghcr.io/home-assistant/i386-homeassistant-base:2022.02.0
codenotary:
signer: notary@home-assistant.io
base_image: notary@home-assistant.io
-42
View File
@@ -1,42 +0,0 @@
"""Provide backwards compat for async_timeout."""
from __future__ import annotations
import asyncio
from typing import Any
import async_timeout
from .helpers.frame import report
def timeout(
delay: float | None, loop: asyncio.AbstractEventLoop | None = None
) -> async_timeout.Timeout:
"""Backwards compatible timeout context manager that warns with loop usage."""
if loop is None:
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.3",
error_if_core=False,
)
if delay is not None:
deadline: float | None = loop.time() + delay
else:
deadline = None
return async_timeout.Timeout(deadline, loop)
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.3; use asyncio.current_task instead",
error_if_core=False,
)
return asyncio.current_task()
def enable() -> None:
"""Enable backwards compat transitions."""
async_timeout.timeout = timeout
async_timeout.current_task = current_task # type: ignore[attr-defined]
+1 -1
View File
@@ -354,7 +354,7 @@ class AuthManager:
if provider is not None and hasattr(provider, "async_will_remove_credentials"):
# https://github.com/python/mypy/issues/1424
await provider.async_will_remove_credentials(credentials) # type: ignore
await provider.async_will_remove_credentials(credentials) # type: ignore[attr-defined]
await self._store.async_remove_credentials(credentials)
+4 -4
View File
@@ -16,7 +16,7 @@ from homeassistant.data_entry_flow import FlowResult
from homeassistant.exceptions import HomeAssistantError
from homeassistant.util.decorator import Registry
MULTI_FACTOR_AUTH_MODULES = Registry()
MULTI_FACTOR_AUTH_MODULES: Registry[str, type[MultiFactorAuthModule]] = Registry()
MULTI_FACTOR_AUTH_MODULE_SCHEMA = vol.Schema(
{
@@ -55,7 +55,7 @@ class MultiFactorAuthModule:
@property
def type(self) -> str:
"""Return type of the module."""
return self.config[CONF_TYPE] # type: ignore
return self.config[CONF_TYPE] # type: ignore[no-any-return]
@property
def name(self) -> str:
@@ -129,7 +129,7 @@ async def auth_mfa_module_from_config(
hass: HomeAssistant, config: dict[str, Any]
) -> MultiFactorAuthModule:
"""Initialize an auth module from a config."""
module_name = config[CONF_TYPE]
module_name: str = config[CONF_TYPE]
module = await _load_mfa_module(hass, module_name)
try:
@@ -142,7 +142,7 @@ async def auth_mfa_module_from_config(
)
raise
return MULTI_FACTOR_AUTH_MODULES[module_name](hass, config) # type: ignore
return MULTI_FACTOR_AUTH_MODULES[module_name](hass, config)
async def _load_mfa_module(hass: HomeAssistant, module_name: str) -> types.ModuleType:
+1 -1
View File
@@ -251,7 +251,7 @@ class NotifyAuthModule(MultiFactorAuthModule):
await self.async_notify(
code,
notify_setting.notify_service, # type: ignore
notify_setting.notify_service, # type: ignore[arg-type]
notify_setting.target,
)
+7 -7
View File
@@ -107,7 +107,7 @@ class TotpAuthModule(MultiFactorAuthModule):
ota_secret: str = secret or pyotp.random_base32()
self._users[user_id] = ota_secret # type: ignore
self._users[user_id] = ota_secret # type: ignore[index]
return ota_secret
async def async_setup_flow(self, user_id: str) -> SetupFlow:
@@ -136,7 +136,7 @@ class TotpAuthModule(MultiFactorAuthModule):
if self._users is None:
await self._async_load()
if self._users.pop(user_id, None): # type: ignore
if self._users.pop(user_id, None): # type: ignore[union-attr]
await self._async_save()
async def async_is_user_setup(self, user_id: str) -> bool:
@@ -144,7 +144,7 @@ class TotpAuthModule(MultiFactorAuthModule):
if self._users is None:
await self._async_load()
return user_id in self._users # type: ignore
return user_id in self._users # type: ignore[operator]
async def async_validate(self, user_id: str, user_input: dict[str, Any]) -> bool:
"""Return True if validation passed."""
@@ -161,7 +161,7 @@ class TotpAuthModule(MultiFactorAuthModule):
"""Validate two factor authentication code."""
import pyotp # pylint: disable=import-outside-toplevel
if (ota_secret := self._users.get(user_id)) is None: # type: ignore
if (ota_secret := self._users.get(user_id)) is None: # type: ignore[union-attr]
# even we cannot find user, we still do verify
# to make timing the same as if user was found.
pyotp.TOTP(DUMMY_SECRET).verify(code, valid_window=1)
@@ -182,8 +182,8 @@ class TotpSetupFlow(SetupFlow):
self._auth_module: TotpAuthModule = auth_module
self._user = user
self._ota_secret: str = ""
self._url = None # type Optional[str]
self._image = None # type Optional[str]
self._url: str | None = None
self._image: str | None = None
async def async_step_init(
self, user_input: dict[str, str] | None = None
@@ -218,7 +218,7 @@ class TotpSetupFlow(SetupFlow):
self._url,
self._image,
) = await hass.async_add_executor_job(
_generate_secret_and_qr_code, # type: ignore
_generate_secret_and_qr_code,
str(self._user.name),
)
+5 -5
View File
@@ -25,7 +25,7 @@ from ..models import Credentials, RefreshToken, User, UserMeta
_LOGGER = logging.getLogger(__name__)
DATA_REQS = "auth_prov_reqs_processed"
AUTH_PROVIDERS = Registry()
AUTH_PROVIDERS: Registry[str, type[AuthProvider]] = Registry()
AUTH_PROVIDER_SCHEMA = vol.Schema(
{
@@ -62,7 +62,7 @@ class AuthProvider:
@property
def type(self) -> str:
"""Return type of the provider."""
return self.config[CONF_TYPE] # type: ignore
return self.config[CONF_TYPE] # type: ignore[no-any-return]
@property
def name(self) -> str:
@@ -136,7 +136,7 @@ async def auth_provider_from_config(
hass: HomeAssistant, store: AuthStore, config: dict[str, Any]
) -> AuthProvider:
"""Initialize an auth provider from a config."""
provider_name = config[CONF_TYPE]
provider_name: str = config[CONF_TYPE]
module = await load_auth_provider_module(hass, provider_name)
try:
@@ -149,7 +149,7 @@ async def auth_provider_from_config(
)
raise
return AUTH_PROVIDERS[provider_name](hass, store, config) # type: ignore
return AUTH_PROVIDERS[provider_name](hass, store, config)
async def load_auth_provider_module(
@@ -250,7 +250,7 @@ class LoginFlow(data_entry_flow.FlowHandler):
auth_module, "async_initialize_login_mfa_step"
):
try:
await auth_module.async_initialize_login_mfa_step( # type: ignore
await auth_module.async_initialize_login_mfa_step( # type: ignore[attr-defined]
self.user.id
)
except HomeAssistantError:
@@ -120,7 +120,7 @@ class Data:
@property
def users(self) -> list[dict[str, str]]:
"""Return users."""
return self._data["users"] # type: ignore
return self._data["users"] # type: ignore[index,no-any-return]
def validate_login(self, username: str, password: str) -> None:
"""Validate a username and password.
+1 -1
View File
@@ -8,7 +8,7 @@ from .util.async_ import protect_loop
def enable() -> None:
"""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
HTTPConnection.putrequest = protect_loop(HTTPConnection.putrequest) # type: ignore[assignment]
# Prevent sleeping in event loop. Non-strict since 2022.02
time.sleep = protect_loop(time.sleep, strict=False)
+19 -9
View File
@@ -3,7 +3,7 @@ from __future__ import annotations
import asyncio
import contextlib
from datetime import datetime
from datetime import datetime, timedelta
import logging
import logging.handlers
import os
@@ -59,7 +59,7 @@ COOLDOWN_TIME = 60
MAX_LOAD_CONCURRENTLY = 6
DEBUGGER_INTEGRATIONS = {"debugpy"}
CORE_INTEGRATIONS = ("homeassistant", "persistent_notification")
CORE_INTEGRATIONS = {"homeassistant", "persistent_notification"}
LOGGING_INTEGRATIONS = {
# Set log levels
"logger",
@@ -69,7 +69,14 @@ LOGGING_INTEGRATIONS = {
# To record data
"recorder",
}
DISCOVERY_INTEGRATIONS = ("dhcp", "ssdp", "usb", "zeroconf")
STAGE_1_INTEGRATIONS = {
# We need to make sure discovery integrations
# update their deps before stage 2 integrations
# load them inadvertently before their deps have
# been updated which leads to using an old version
# of the dep, or worse (import errors).
*DISCOVERY_INTEGRATIONS,
# To make sure we forward data to other instances
"mqtt_eventstream",
# To provide account link implementations
@@ -151,8 +158,11 @@ async def async_setup_hass(
safe_mode = True
old_config = hass.config
old_logging = hass.data.get(DATA_LOGGING)
hass = core.HomeAssistant()
if old_logging:
hass.data[DATA_LOGGING] = old_logging
hass.config.skip_pip = old_config.skip_pip
hass.config.internal_url = old_config.internal_url
hass.config.external_url = old_config.external_url
@@ -314,7 +324,7 @@ def async_enable_logging(
logging.getLogger("aiohttp.access").setLevel(logging.WARNING)
sys.excepthook = lambda *args: logging.getLogger(None).exception(
"Uncaught exception", exc_info=args # type: ignore
"Uncaught exception", exc_info=args # type: ignore[arg-type]
)
threading.excepthook = lambda args: logging.getLogger(None).exception(
"Uncaught thread exception",
@@ -450,7 +460,7 @@ async def _async_set_up_integrations(
) -> None:
"""Set up all the integrations."""
hass.data[DATA_SETUP_STARTED] = {}
setup_time = hass.data[DATA_SETUP_TIME] = {}
setup_time: dict[str, timedelta] = hass.data.setdefault(DATA_SETUP_TIME, {})
watch_task = asyncio.create_task(_async_watch_pending_setups(hass))
@@ -459,9 +469,9 @@ async def _async_set_up_integrations(
# Resolve all dependencies so we know all integrations
# that will have to be loaded and start rightaway
integration_cache: dict[str, loader.Integration] = {}
to_resolve = domains_to_setup
to_resolve: set[str] = domains_to_setup
while to_resolve:
old_to_resolve = to_resolve
old_to_resolve: set[str] = to_resolve
to_resolve = set()
integrations_to_process = [
@@ -508,11 +518,11 @@ async def _async_set_up_integrations(
await async_setup_multi_components(hass, debuggers, config)
# calculate what components to setup in what stage
stage_1_domains = set()
stage_1_domains: set[str] = set()
# Find all dependencies of any dependency of any stage 1 integration that
# we plan on loading and promote them to stage 1
deps_promotion = STAGE_1_INTEGRATIONS
deps_promotion: set[str] = STAGE_1_INTEGRATIONS
while deps_promotion:
old_deps_promotion = deps_promotion
deps_promotion = set()
@@ -577,7 +587,7 @@ async def _async_set_up_integrations(
{
integration: timedelta.total_seconds()
for integration, timedelta in sorted(
setup_time.items(), key=lambda item: item[1].total_seconds() # type: ignore
setup_time.items(), key=lambda item: item[1].total_seconds()
)
},
)
+2
View File
@@ -88,6 +88,8 @@ class AbodeCamera(AbodeDevice, Camera):
self, width: int | None = None, height: int | None = None
) -> bytes | None:
"""Get a camera image."""
if not self.capture():
return None
self.refresh_image()
if self._response:
+2 -1
View File
@@ -8,5 +8,6 @@
"homekit": {
"models": ["Abode", "Iota"]
},
"iot_class": "cloud_push"
"iot_class": "cloud_push",
"loggers": ["abodepy", "lomond"]
}
@@ -1,11 +1,33 @@
{
"config": {
"abort": {
"reauth_successful": "\u039f \u03b5\u03ba \u03bd\u03ad\u03bf\u03c5 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2 \u03ae\u03c4\u03b1\u03bd \u03b5\u03c0\u03b9\u03c4\u03c5\u03c7\u03ae\u03c2",
"single_instance_allowed": "\u0388\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03c1\u03c5\u03b8\u03bc\u03b9\u03c3\u03c4\u03b5\u03af. \u039c\u03cc\u03bd\u03bf \u03bc\u03af\u03b1 \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae."
},
"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"
"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",
"invalid_mfa_code": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03bf\u03c2 \u03ba\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 MFA"
},
"step": {
"mfa": {
"data": {
"mfa_code": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 MFA (6 \u03c8\u03b7\u03c6\u03af\u03b1)"
},
"title": "\u0395\u03b9\u03c3\u03b1\u03b3\u03ac\u03b3\u03b5\u03c4\u03b5 \u03c4\u03bf\u03bd \u03ba\u03c9\u03b4\u03b9\u03ba\u03cc MFA \u03b3\u03b9\u03b1 \u03c4\u03bf Abode"
},
"reauth_confirm": {
"data": {
"password": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2",
"username": "Email"
},
"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"
},
"user": {
"data": {
"password": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2",
"username": "Email"
},
"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"
}
}
@@ -1,14 +1,34 @@
{
"config": {
"abort": {
"single_instance_allowed": "Somente uma \u00fanica configura\u00e7\u00e3o de Abode \u00e9 permitida."
"reauth_successful": "A reautentica\u00e7\u00e3o foi bem-sucedida",
"single_instance_allowed": "J\u00e1 configurado. Apenas uma configura\u00e7\u00e3o \u00e9 poss\u00edvel."
},
"error": {
"cannot_connect": "Falha ao conectar",
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida",
"invalid_mfa_code": "C\u00f3digo MFA inv\u00e1lido"
},
"step": {
"mfa": {
"data": {
"mfa_code": "C\u00f3digo MFA (6 d\u00edgitos)"
},
"title": "Digite seu c\u00f3digo MFA para Abode"
},
"reauth_confirm": {
"data": {
"password": "Senha",
"username": "Email"
},
"title": "Preencha as informa\u00e7\u00f5es de login da Abode"
},
"user": {
"data": {
"password": "Senha",
"username": "Endere\u00e7o de e-mail"
}
"username": "Email"
},
"title": "Preencha suas informa\u00e7\u00f5es de login Abode"
}
}
}
@@ -0,0 +1,22 @@
{
"config": {
"abort": {
"reauth_successful": "Op\u00e4tovn\u00e9 overenie bolo \u00faspe\u0161n\u00e9"
},
"error": {
"invalid_auth": "Neplatn\u00e9 overenie"
},
"step": {
"reauth_confirm": {
"data": {
"username": "Email"
}
},
"user": {
"data": {
"username": "Email"
}
}
}
}
}
@@ -2,7 +2,7 @@
"config": {
"abort": {
"reauth_successful": "\u041f\u043e\u0432\u0442\u043e\u0440\u043d\u0430 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u0444\u0456\u043a\u0430\u0446\u0456\u044f \u043f\u0440\u043e\u0439\u0448\u043b\u0430 \u0443\u0441\u043f\u0456\u0448\u043d\u043e",
"single_instance_allowed": "\u041d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u043d\u044f \u0432\u0436\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e. \u041c\u043e\u0436\u043d\u0430 \u0434\u043e\u0434\u0430\u0442\u0438 \u043b\u0438\u0448\u0435 \u043e\u0434\u043d\u0443 \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e."
"single_instance_allowed": "\u0412\u0436\u0435 \u043d\u0430\u043b\u0430\u0448\u0442\u043e\u0432\u0430\u043d\u043e. \u041c\u043e\u0436\u043b\u0438\u0432\u0430 \u043b\u0438\u0448\u0435 \u043e\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044f."
},
"error": {
"cannot_connect": "\u041d\u0435 \u0432\u0434\u0430\u043b\u043e\u0441\u044f \u043f\u0456\u0434'\u0454\u0434\u043d\u0430\u0442\u0438\u0441\u044f",
@@ -2,7 +2,7 @@
"config": {
"abort": {
"reauth_successful": "\u91cd\u65b0\u8a8d\u8b49\u6210\u529f",
"single_instance_allowed": "\u50c5\u80fd\u8a2d\u5b9a\u4e00\u7d44\u88dd\u7f6e\u3002"
"single_instance_allowed": "\u5df2\u7d93\u8a2d\u5b9a\u5b8c\u6210\u3001\u50c5\u80fd\u8a2d\u5b9a\u4e00\u7d44\u88dd\u7f6e\u3002"
},
"error": {
"cannot_connect": "\u9023\u7dda\u5931\u6557",
@@ -6,5 +6,6 @@
"codeowners": ["@bieniu"],
"config_flow": true,
"quality_scale": "platinum",
"iot_class": "cloud_polling"
"iot_class": "cloud_polling",
"loggers": ["accuweather"]
}
@@ -1,7 +1,21 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u0388\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03c1\u03c5\u03b8\u03bc\u03b9\u03c3\u03c4\u03b5\u03af. \u039c\u03cc\u03bd\u03bf \u03bc\u03af\u03b1 \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03c5\u03bd\u03b1\u03c4\u03ae."
},
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2",
"invalid_api_key": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03bf \u03ba\u03bb\u03b5\u03b9\u03b4\u03af API",
"requests_exceeded": "\u0388\u03c7\u03b5\u03b9 \u03be\u03b5\u03c0\u03b5\u03c1\u03b1\u03c3\u03c4\u03b5\u03af \u03bf \u03b5\u03c0\u03b9\u03c4\u03c1\u03b5\u03c0\u03cc\u03bc\u03b5\u03bd\u03bf\u03c2 \u03b1\u03c1\u03b9\u03b8\u03bc\u03cc\u03c2 \u03b1\u03b9\u03c4\u03ae\u03c3\u03b5\u03c9\u03bd \u03c0\u03c1\u03bf\u03c2 \u03c4\u03bf API \u03c4\u03bf\u03c5 Accuweather. \u03a0\u03c1\u03ad\u03c0\u03b5\u03b9 \u03bd\u03b1 \u03c0\u03b5\u03c1\u03b9\u03bc\u03ad\u03bd\u03b5\u03c4\u03b5 \u03ae \u03bd\u03b1 \u03b1\u03bb\u03bb\u03ac\u03be\u03b5\u03c4\u03b5 \u03c4\u03bf \u03ba\u03bb\u03b5\u03b9\u03b4\u03af API."
},
"step": {
"user": {
"data": {
"api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API",
"latitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03c0\u03bb\u03ac\u03c4\u03bf\u03c2",
"longitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2",
"name": "\u038c\u03bd\u03bf\u03bc\u03b1"
},
"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"
}
@@ -12,12 +26,15 @@
"user": {
"data": {
"forecast": "\u03a0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd"
}
},
"description": "\u039b\u03cc\u03b3\u03c9 \u03c4\u03c9\u03bd \u03c0\u03b5\u03c1\u03b9\u03bf\u03c1\u03b9\u03c3\u03bc\u03ce\u03bd \u03c4\u03b7\u03c2 \u03b4\u03c9\u03c1\u03b5\u03ac\u03bd \u03ad\u03ba\u03b4\u03bf\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 \u03ba\u03bb\u03b5\u03b9\u03b4\u03b9\u03bf\u03cd API \u03c4\u03bf\u03c5 AccuWeather, \u03cc\u03c4\u03b1\u03bd \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03b5\u03af\u03c4\u03b5 \u03c4\u03b7\u03bd \u03c0\u03c1\u03cc\u03b3\u03bd\u03c9\u03c3\u03b7 \u03ba\u03b1\u03b9\u03c1\u03bf\u03cd, \u03bf\u03b9 \u03b5\u03bd\u03b7\u03bc\u03b5\u03c1\u03ce\u03c3\u03b5\u03b9\u03c2 \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd \u03b8\u03b1 \u03c0\u03c1\u03b1\u03b3\u03bc\u03b1\u03c4\u03bf\u03c0\u03bf\u03b9\u03bf\u03cd\u03bd\u03c4\u03b1\u03b9 \u03ba\u03ac\u03b8\u03b5 80 \u03bb\u03b5\u03c0\u03c4\u03ac \u03b1\u03bd\u03c4\u03af \u03b3\u03b9\u03b1 \u03ba\u03ac\u03b8\u03b5 40 \u03bb\u03b5\u03c0\u03c4\u03ac.",
"title": "\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ad\u03c2 AccuWeather"
}
}
},
"system_health": {
"info": {
"can_reach_server": "\u03a0\u03c1\u03bf\u03c3\u03b5\u03b3\u03b3\u03af\u03c3\u03c4\u03b5 \u03c4\u03bf\u03bd \u03b4\u03b9\u03b1\u03ba\u03bf\u03bc\u03b9\u03c3\u03c4\u03ae AccuWeather",
"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"
}
}
@@ -1,12 +1,22 @@
{
"config": {
"abort": {
"single_instance_allowed": "J\u00e1 configurado. Apenas uma configura\u00e7\u00e3o \u00e9 poss\u00edvel."
},
"error": {
"cannot_connect": "Falha ao conectar",
"invalid_api_key": "Chave de API inv\u00e1lida",
"requests_exceeded": "O n\u00famero permitido de solicita\u00e7\u00f5es para a API Accuweather foi excedido. Voc\u00ea precisa esperar ou alterar a chave de API."
},
"step": {
"user": {
"data": {
"api_key": "Chave API",
"api_key": "Chave da API",
"latitude": "Latitude",
"longitude": "Longitude"
"longitude": "Longitude",
"name": "Nome"
},
"description": "Se precisar de ajuda com a configura\u00e7\u00e3o, d\u00ea uma olhada aqui: https://www.home-assistant.io/integrations/accuweather/ \n\nAlguns sensores n\u00e3o s\u00e3o ativados por padr\u00e3o. Voc\u00ea pode habilit\u00e1-los no registro da entidade ap\u00f3s a configura\u00e7\u00e3o da integra\u00e7\u00e3o.\nA previs\u00e3o do tempo n\u00e3o est\u00e1 habilitada por padr\u00e3o. Voc\u00ea pode habilit\u00e1-lo nas op\u00e7\u00f5es de integra\u00e7\u00e3o.",
"title": "AccuWeather"
}
}
@@ -17,8 +27,15 @@
"data": {
"forecast": "Previs\u00e3o do Tempo"
},
"description": "Devido \u00e0s limita\u00e7\u00f5es da vers\u00e3o gratuita da chave da API AccuWeather, quando voc\u00ea habilita a previs\u00e3o do tempo, as atualiza\u00e7\u00f5es de dados ser\u00e3o realizadas a cada 64 minutos em vez de a cada 32 minutos."
"description": "Devido \u00e0s limita\u00e7\u00f5es da vers\u00e3o gratuita da chave da API AccuWeather, quando voc\u00ea habilita a previs\u00e3o do tempo, as atualiza\u00e7\u00f5es de dados ser\u00e3o realizadas a cada 64 minutos em vez de a cada 32 minutos.",
"title": "Op\u00e7\u00f5es do AccuWeather"
}
}
},
"system_health": {
"info": {
"can_reach_server": "Alcance o servidor AccuWeather",
"remaining_requests": "Solicita\u00e7\u00f5es permitidas restantes"
}
}
}
@@ -0,0 +1,9 @@
{
"state": {
"accuweather__pressure_tendency": {
"falling": "\u03a0\u03c4\u03ce\u03c3\u03b7",
"rising": "\u0391\u03c5\u03be\u03b1\u03bd\u03cc\u03bc\u03b5\u03bd\u03b7",
"steady": "\u03a3\u03c4\u03b1\u03b8\u03b5\u03c1\u03ae"
}
}
}
@@ -0,0 +1,9 @@
{
"state": {
"accuweather__pressure_tendency": {
"falling": "Queda",
"rising": "Eleva\u00e7\u00e3o",
"steady": "Est\u00e1vel"
}
}
}
@@ -0,0 +1,17 @@
{
"config": {
"error": {
"invalid_api_key": "Neplatn\u00fd API k\u013e\u00fa\u010d"
},
"step": {
"user": {
"data": {
"api_key": "API k\u013e\u00fa\u010d",
"latitude": "Zemepisn\u00e1 \u0161\u00edrka",
"longitude": "Zemepisn\u00e1 d\u013a\u017eka",
"name": "N\u00e1zov"
}
}
}
}
}
@@ -1,7 +1,7 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u041d\u0430\u043b\u0430\u0448\u0442\u0443\u0432\u0430\u043d\u043d\u044f \u0432\u0436\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u043e. \u041c\u043e\u0436\u043d\u0430 \u0434\u043e\u0434\u0430\u0442\u0438 \u043b\u0438\u0448\u0435 \u043e\u0434\u043d\u0443 \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044e."
"single_instance_allowed": "\u0412\u0436\u0435 \u043d\u0430\u043b\u0430\u0448\u0442\u043e\u0432\u0430\u043d\u043e. \u041c\u043e\u0436\u043b\u0438\u0432\u0430 \u043b\u0438\u0448\u0435 \u043e\u0434\u043d\u0430 \u043a\u043e\u043d\u0444\u0456\u0433\u0443\u0440\u0430\u0446\u0456\u044f."
},
"error": {
"cannot_connect": "\u041d\u0435 \u0432\u0434\u0430\u043b\u043e\u0441\u044f \u043f\u0456\u0434'\u0454\u0434\u043d\u0430\u0442\u0438\u0441\u044f",
@@ -1,7 +1,7 @@
{
"config": {
"abort": {
"single_instance_allowed": "\u50c5\u80fd\u8a2d\u5b9a\u4e00\u7d44\u88dd\u7f6e\u3002"
"single_instance_allowed": "\u5df2\u7d93\u8a2d\u5b9a\u5b8c\u6210\u3001\u50c5\u80fd\u8a2d\u5b9a\u4e00\u7d44\u88dd\u7f6e\u3002"
},
"error": {
"cannot_connect": "\u9023\u7dda\u5931\u6557",
@@ -5,5 +5,6 @@
"documentation": "https://www.home-assistant.io/integrations/acmeda",
"requirements": ["aiopulse==0.4.3"],
"codeowners": ["@atmurray"],
"iot_class": "local_push"
"iot_class": "local_push",
"loggers": ["aiopulse"]
}
@@ -1,5 +1,8 @@
{
"config": {
"abort": {
"no_devices_found": "\u0394\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b1\u03bd \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ad\u03c2 \u03c3\u03c4\u03bf \u03b4\u03af\u03ba\u03c4\u03c5\u03bf"
},
"step": {
"user": {
"data": {
@@ -0,0 +1,9 @@
{
"config": {
"step": {
"user": {
"title": "Elija un concentrador para agregar"
}
}
}
}
@@ -0,0 +1,15 @@
{
"config": {
"abort": {
"no_devices_found": "Nenhum dispositivo encontrado na rede"
},
"step": {
"user": {
"data": {
"id": "ID do host"
},
"title": "Escolha um hub para adicionar"
}
}
}
}
+1 -2
View File
@@ -146,8 +146,7 @@ class LocalAdaxDevice(ClimateEntity):
async def async_set_temperature(self, **kwargs):
"""Set new target temperature."""
temperature = kwargs.get(ATTR_TEMPERATURE)
if temperature is None:
if (temperature := kwargs.get(ATTR_TEMPERATURE)) is None:
return
await self._adax_data_handler.set_target_temperature(temperature)
+2 -1
View File
@@ -9,5 +9,6 @@
"codeowners": [
"@danielhiversen"
],
"iot_class": "local_polling"
"iot_class": "local_polling",
"loggers": ["adax", "adax_local"]
}
@@ -0,0 +1,38 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af",
"heater_not_available": "\u039f \u03b8\u03b5\u03c1\u03bc\u03b1\u03bd\u03c4\u03ae\u03c1\u03b1\u03c2 \u03b4\u03b5\u03bd \u03b5\u03af\u03bd\u03b1\u03b9 \u03b4\u03b9\u03b1\u03b8\u03ad\u03c3\u03b9\u03bc\u03bf\u03c2. \u03a0\u03c1\u03bf\u03c3\u03c0\u03b1\u03b8\u03ae\u03c3\u03c4\u03b5 \u03bd\u03b1 \u03b5\u03c0\u03b1\u03bd\u03b1\u03c6\u03ad\u03c1\u03b5\u03c4\u03b5 \u03c4\u03b7 \u03b8\u03ad\u03c1\u03bc\u03b1\u03bd\u03c3\u03b7 \u03c0\u03b1\u03c4\u03ce\u03bd\u03c4\u03b1\u03c2 + \u03ba\u03b1\u03b9 OK \u03b3\u03b9\u03b1 \u03bc\u03b5\u03c1\u03b9\u03ba\u03ac \u03b4\u03b5\u03c5\u03c4\u03b5\u03c1\u03cc\u03bb\u03b5\u03c0\u03c4\u03b1.",
"heater_not_found": "\u039f \u03b8\u03b5\u03c1\u03bc\u03b1\u03bd\u03c4\u03ae\u03c1\u03b1\u03c2 \u03b4\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5. \u03a0\u03c1\u03bf\u03c3\u03c0\u03b1\u03b8\u03ae\u03c3\u03c4\u03b5 \u03bd\u03b1 \u03bc\u03b5\u03c4\u03b1\u03ba\u03b9\u03bd\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c4\u03bf\u03bd \u03b8\u03b5\u03c1\u03bc\u03b1\u03bd\u03c4\u03ae\u03c1\u03b1 \u03c0\u03b9\u03bf \u03ba\u03bf\u03bd\u03c4\u03ac \u03c3\u03c4\u03bf\u03bd \u03c5\u03c0\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03c4\u03ae Home Assistant.",
"invalid_auth": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03bf\u03c2 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2"
},
"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\u03bf\u03c2 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2"
},
"step": {
"cloud": {
"data": {
"account_id": "\u0391\u03bd\u03b1\u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03cc \u03bb\u03bf\u03b3\u03b1\u03c1\u03b9\u03b1\u03c3\u03bc\u03bf\u03cd",
"password": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2"
}
},
"local": {
"data": {
"wifi_pswd": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 Wi-Fi",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "\u0395\u03c0\u03b1\u03bd\u03b1\u03c6\u03ad\u03c1\u03b5\u03c4\u03b5 \u03c4\u03bf\u03bd \u03b8\u03b5\u03c1\u03bc\u03b1\u03bd\u03c4\u03ae\u03c1\u03b1 \u03c0\u03b1\u03c4\u03ce\u03bd\u03c4\u03b1\u03c2 + \u03ba\u03b1\u03b9 OK \u03bc\u03ad\u03c7\u03c1\u03b9 \u03bd\u03b1 \u03b5\u03bc\u03c6\u03b1\u03bd\u03b9\u03c3\u03c4\u03b5\u03af \u03c3\u03c4\u03b7\u03bd \u03bf\u03b8\u03cc\u03bd\u03b7 \u03b7 \u03ad\u03bd\u03b4\u03b5\u03b9\u03be\u03b7 \"Reset\" (\u0395\u03c0\u03b1\u03bd\u03b1\u03c6\u03bf\u03c1\u03ac). \u03a3\u03c4\u03b7 \u03c3\u03c5\u03bd\u03ad\u03c7\u03b5\u03b9\u03b1, \u03c0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 \u03ba\u03b1\u03b9 \u03ba\u03c1\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 \u03c0\u03b1\u03c4\u03b7\u03bc\u03ad\u03bd\u03bf \u03c4\u03bf \u03ba\u03bf\u03c5\u03bc\u03c0\u03af OK \u03c3\u03c4\u03b7 \u03b8\u03b5\u03c1\u03bc\u03ac\u03c3\u03c4\u03c1\u03b1 \u03bc\u03ad\u03c7\u03c1\u03b9 \u03bd\u03b1 \u03b1\u03c1\u03c7\u03af\u03c3\u03b5\u03b9 \u03bd\u03b1 \u03b1\u03bd\u03b1\u03b2\u03bf\u03c3\u03b2\u03ae\u03bd\u03b5\u03b9 \u03c4\u03bf \u03bc\u03c0\u03bb\u03b5 led \u03c0\u03c1\u03b9\u03bd \u03c0\u03b1\u03c4\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c4\u03bf \u03ba\u03bf\u03c5\u03bc\u03c0\u03af \u03a5\u03c0\u03bf\u03b2\u03bf\u03bb\u03ae. \u0397 \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b8\u03b5\u03c1\u03bc\u03ac\u03c3\u03c4\u03c1\u03b1\u03c2 \u03b5\u03bd\u03b4\u03ad\u03c7\u03b5\u03c4\u03b1\u03b9 \u03bd\u03b1 \u03b4\u03b9\u03b1\u03c1\u03ba\u03ad\u03c3\u03b5\u03b9 \u03bc\u03b5\u03c1\u03b9\u03ba\u03ac \u03bb\u03b5\u03c0\u03c4\u03ac."
},
"user": {
"data": {
"account_id": "\u0391\u03bd\u03b1\u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03cc \u03bb\u03bf\u03b3\u03b1\u03c1\u03b9\u03b1\u03c3\u03bc\u03bf\u03cd",
"connection_type": "\u0395\u03c0\u03b9\u03bb\u03bf\u03b3\u03ae \u03c4\u03cd\u03c0\u03bf\u03c5 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2",
"host": "\u039a\u03b5\u03bd\u03c4\u03c1\u03b9\u03ba\u03cc\u03c2 \u03c5\u03c0\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03c4\u03ae\u03c2",
"password": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2"
},
"description": "\u0395\u03c0\u03b9\u03bb\u03ad\u03be\u03c4\u03b5 \u03c4\u03cd\u03c0\u03bf \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2. \u03a4\u03bf\u03c0\u03b9\u03ba\u03ae \u03b1\u03c0\u03b1\u03b9\u03c4\u03b5\u03af \u03b8\u03b5\u03c1\u03bc\u03ac\u03c3\u03c4\u03c1\u03b5\u03c2 \u03bc\u03b5 bluetooth"
}
}
}
}
@@ -1,8 +1,26 @@
{
"config": {
"abort": {
"heater_not_available": "Calentador no disponible. Intente restablecer el calentador presionando + y OK durante algunos segundos.",
"heater_not_found": "No se encontr\u00f3 el calentador. Intente acercar el calentador a la computadora de Home Assistant."
},
"step": {
"cloud": {
"data": {
"account_id": "ID de cuenta",
"password": "Contrase\u00f1a"
}
},
"local": {
"data": {
"wifi_pswd": "Contrase\u00f1a de Wi-Fi",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "Reinicie el calentador presionando + y OK hasta que la pantalla muestre 'Restablecer'. Luego 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 tardar algunos minutos."
},
"user": {
"data": {
"account_id": "ID de cuenta",
"connection_type": "Seleccione el tipo de conexi\u00f3n"
},
"description": "Seleccione el tipo de conexi\u00f3n. Local requiere calentadores con bluetooth"
@@ -0,0 +1,11 @@
{
"config": {
"step": {
"cloud": {
"data": {
"account_id": "Konta ID"
}
}
}
}
}
@@ -0,0 +1,38 @@
{
"config": {
"abort": {
"already_configured": "Dispositivo j\u00e1 est\u00e1 configurado",
"heater_not_available": "Aquecedor n\u00e3o dispon\u00edvel. Tente reiniciar o aquecedor pressionando + e OK por alguns segundos.",
"heater_not_found": "Aquecedor n\u00e3o encontrado. Tente aproximar o aquecedor do computador do Home Assistant.",
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida"
},
"error": {
"cannot_connect": "Falha ao conectar",
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida"
},
"step": {
"cloud": {
"data": {
"account_id": "ID da conta",
"password": "Senha"
}
},
"local": {
"data": {
"wifi_pswd": "Senha do Wi-Fi",
"wifi_ssid": "Wi-Fi SSID"
},
"description": "Reinicie o aquecedor pressionando + e OK at\u00e9 que o display mostre 'Reset'. Em seguida, pressione e segure o bot\u00e3o OK no aquecedor at\u00e9 que o led azul comece a piscar antes de pressionar Enviar. A configura\u00e7\u00e3o do aquecedor pode levar alguns minutos."
},
"user": {
"data": {
"account_id": "ID da conta",
"connection_type": "Selecione o tipo de conex\u00e3o",
"host": "Nome do host",
"password": "Senha"
},
"description": "Selecione o tipo de conex\u00e3o. Local requer aquecedores com bluetooth"
}
}
}
}
@@ -0,0 +1,10 @@
{
"config": {
"abort": {
"invalid_auth": "Neplatn\u00e9 overenie"
},
"error": {
"invalid_auth": "Neplatn\u00e9 overenie"
}
}
}
+1 -1
View File
@@ -205,7 +205,7 @@ class AdGuardHomeDeviceEntity(AdGuardHomeEntity):
return DeviceInfo(
entry_type=DeviceEntryType.SERVICE,
identifiers={
(DOMAIN, self.adguard.host, self.adguard.port, self.adguard.base_path) # type: ignore
(DOMAIN, self.adguard.host, self.adguard.port, self.adguard.base_path) # type: ignore[arg-type]
},
manufacturer="AdGuard Team",
name="AdGuard Home",
@@ -5,5 +5,6 @@
"documentation": "https://www.home-assistant.io/integrations/adguard",
"requirements": ["adguardhome==0.5.1"],
"codeowners": ["@frenck"],
"iot_class": "local_polling"
"iot_class": "local_polling",
"loggers": ["adguardhome"]
}
@@ -1,5 +1,9 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1 \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af",
"existing_instance_updated": "\u0395\u03bd\u03b7\u03bc\u03b5\u03c1\u03ce\u03b8\u03b7\u03ba\u03b5 \u03b7 \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03c3\u03b1 \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7."
},
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2"
},
@@ -9,6 +13,14 @@
"title": "AdGuard Home \u03bc\u03ad\u03c3\u03c9 \u03c4\u03bf\u03c5 \u03c0\u03c1\u03cc\u03c3\u03b8\u03b5\u03c4\u03bf\u03c5 Home Assistant"
},
"user": {
"data": {
"host": "\u0394\u03b9\u03b1\u03ba\u03bf\u03bc\u03b9\u03c3\u03c4\u03ae\u03c2",
"password": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2",
"port": "\u0398\u03cd\u03c1\u03b1",
"ssl": "\u03a7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03b5\u03af \u03ad\u03bd\u03b1 \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03cc SSL",
"username": "\u038c\u03bd\u03bf\u03bc\u03b1 \u03c7\u03c1\u03ae\u03c3\u03c4\u03b7",
"verify_ssl": "\u0395\u03c0\u03b1\u03bb\u03b7\u03b8\u03b5\u03cd\u03c3\u03c4\u03b5 \u03c4\u03bf \u03c0\u03b9\u03c3\u03c4\u03bf\u03c0\u03bf\u03b9\u03b7\u03c4\u03b9\u03ba\u03cc SSL"
},
"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."
}
}
@@ -1,19 +1,25 @@
{
"config": {
"abort": {
"already_configured": "O servi\u00e7o j\u00e1 est\u00e1 configurado",
"existing_instance_updated": "Configura\u00e7\u00e3o existente atualizada."
},
"error": {
"cannot_connect": "Falha ao conectar"
},
"step": {
"hassio_confirm": {
"description": "Deseja configurar o Home Assistant para se conectar ao AdGuard Home fornecido pelo complemento Supervisor: {addon} ?",
"title": "AdGuard Home via add-on Supervisor"
"description": "Deseja configurar o Home Assistant para se conectar ao AdGuard Home fornecido pelo add-on {addon}?",
"title": "AdGuard Home via add-on"
},
"user": {
"data": {
"host": "Nome do host",
"password": "Senha",
"ssl": "O AdGuard Home usa um certificado SSL",
"port": "Porta",
"ssl": "Usar um certificado SSL",
"username": "Usu\u00e1rio",
"verify_ssl": "O AdGuard Home usa um certificado apropriado"
"verify_ssl": "Verifique o certificado SSL"
},
"description": "Configure sua inst\u00e2ncia do AdGuard Home para permitir o monitoramento e o controle."
}
@@ -0,0 +1,11 @@
{
"config": {
"step": {
"user": {
"data": {
"port": "Port"
}
}
}
}
}
+2 -1
View File
@@ -4,5 +4,6 @@
"documentation": "https://www.home-assistant.io/integrations/ads",
"requirements": ["pyads==3.2.2"],
"codeowners": [],
"iot_class": "local_push"
"iot_class": "local_push",
"loggers": ["pyads"]
}
@@ -7,8 +7,11 @@
"@Bre77"
],
"requirements": [
"advantage_air==0.2.5"
"advantage_air==0.3.1"
],
"quality_scale": "platinum",
"iot_class": "local_polling"
"iot_class": "local_polling",
"loggers": [
"advantage_air"
]
}
@@ -1,7 +1,17 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
},
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2"
},
"step": {
"user": {
"data": {
"ip_address": "\u0394\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 IP",
"port": "\u0398\u03cd\u03c1\u03b1"
},
"description": "\u03a3\u03c5\u03bd\u03b4\u03b5\u03b8\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03bf API \u03c4\u03bf\u03c5 \u03b5\u03c0\u03af\u03c4\u03bf\u03b9\u03c7\u03bf\u03c5 tablet Advantage Air.",
"title": "\u03a3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7"
}
@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "Dispositivo j\u00e1 est\u00e1 configurado"
},
"error": {
"cannot_connect": "Falha ao conectar"
},
"step": {
"user": {
"data": {
"ip_address": "Endere\u00e7o IP",
"port": "Porta"
},
"description": "Conecte-se \u00e0 API do seu tablet Advantage Air montado na parede.",
"title": "Conectar"
}
}
}
}
@@ -0,0 +1,11 @@
{
"config": {
"step": {
"user": {
"data": {
"port": "Port"
}
}
}
}
}
+2 -1
View File
@@ -5,5 +5,6 @@
"documentation": "https://www.home-assistant.io/integrations/aemet",
"requirements": ["AEMET-OpenData==0.2.1"],
"codeowners": [],
"iot_class": "cloud_polling"
"iot_class": "cloud_polling",
"loggers": ["aemet_opendata"]
}
@@ -1,8 +1,17 @@
{
"config": {
"abort": {
"already_configured": "\u039f \u03bb\u03bf\u03b3\u03b1\u03c1\u03b9\u03b1\u03c3\u03bc\u03cc\u03c2 \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
},
"error": {
"invalid_api_key": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03bf \u03ba\u03bb\u03b5\u03b9\u03b4\u03af API"
},
"step": {
"user": {
"data": {
"api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API",
"latitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03c0\u03bb\u03ac\u03c4\u03bf\u03c2",
"longitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2",
"name": "\u038c\u03bd\u03bf\u03bc\u03b1 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7\u03c2"
},
"description": "\u03a1\u03cd\u03b8\u03bc\u03b9\u03c3\u03b7 \u03c4\u03b7\u03c2 \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 AEMET OpenData. \u0393\u03b9\u03b1 \u03bd\u03b1 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c4\u03bf \u03ba\u03bb\u03b5\u03b9\u03b4\u03af API \u03bc\u03b5\u03c4\u03b1\u03b2\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 https://opendata.aemet.es/centrodedescargas/altaUsuario",
@@ -0,0 +1,31 @@
{
"config": {
"abort": {
"already_configured": "Localiza\u00e7\u00e3o j\u00e1 est\u00e1 configurada"
},
"error": {
"invalid_api_key": "Chave de API inv\u00e1lida"
},
"step": {
"user": {
"data": {
"api_key": "Chave da API",
"latitude": "Latitude",
"longitude": "Longitude",
"name": "Nome da integra\u00e7\u00e3o"
},
"description": "Configure a integra\u00e7\u00e3o AEMET OpenData. Para gerar a chave API acesse https://opendata.aemet.es/centrodedescargas/altaUsuario",
"title": "AEMET OpenData"
}
}
},
"options": {
"step": {
"init": {
"data": {
"station_updates": "Colete dados das esta\u00e7\u00f5es meteorol\u00f3gicas da AEMET"
}
}
}
}
}
@@ -0,0 +1,16 @@
{
"config": {
"error": {
"invalid_api_key": "Neplatn\u00fd API k\u013e\u00fa\u010d"
},
"step": {
"user": {
"data": {
"api_key": "API k\u013e\u00fa\u010d",
"latitude": "Zemepisn\u00e1 \u0161\u00edrka",
"longitude": "Zemepisn\u00e1 d\u013a\u017eka"
}
}
}
}
}
@@ -7,4 +7,4 @@
],
"codeowners": [],
"iot_class": "cloud_polling"
}
}
+4 -4
View File
@@ -149,10 +149,10 @@ class AfterShipSensor(SensorEntity):
status_to_ignore = {"delivered"}
status_counts: dict[str, int] = {}
trackings = []
parsed_trackings = []
not_delivered_count = 0
for track in trackings:
for track in trackings["trackings"]:
status = track["tag"].lower()
name = (
track["tracking_number"] if track["title"] is None else track["title"]
@@ -163,7 +163,7 @@ class AfterShipSensor(SensorEntity):
else track["checkpoints"][-1]
)
status_counts[status] = status_counts.get(status, 0) + 1
trackings.append(
parsed_trackings.append(
{
"name": name,
"tracking_number": track["tracking_number"],
@@ -183,7 +183,7 @@ class AfterShipSensor(SensorEntity):
self._attributes = {
**status_counts,
ATTR_TRACKINGS: trackings,
ATTR_TRACKINGS: parsed_trackings,
}
self._state = not_delivered_count
+7 -13
View File
@@ -5,13 +5,8 @@ import logging
from agent import AgentError
from homeassistant.components.camera import SUPPORT_ON_OFF
from homeassistant.components.mjpeg.camera import (
CONF_MJPEG_URL,
CONF_STILL_IMAGE_URL,
MjpegCamera,
filter_urllib3_logging,
)
from homeassistant.const import ATTR_ATTRIBUTION, CONF_NAME
from homeassistant.components.mjpeg import MjpegCamera, filter_urllib3_logging
from homeassistant.const import ATTR_ATTRIBUTION
from homeassistant.helpers import entity_platform
from homeassistant.helpers.entity import DeviceInfo
@@ -70,16 +65,15 @@ class AgentCamera(MjpegCamera):
def __init__(self, device):
"""Initialize as a subclass of MjpegCamera."""
device_info = {
CONF_NAME: device.name,
CONF_MJPEG_URL: f"{device.client._server_url}{device.mjpeg_image_url}&size={device.mjpegStreamWidth}x{device.mjpegStreamHeight}",
CONF_STILL_IMAGE_URL: f"{device.client._server_url}{device.still_image_url}&size={device.mjpegStreamWidth}x{device.mjpegStreamHeight}",
}
self.device = device
self._removed = False
self._attr_name = f"{device.client.name} {device.name}"
self._attr_unique_id = f"{device._client.unique}_{device.typeID}_{device.id}"
super().__init__(device_info)
super().__init__(
name=device.name,
mjpeg_url=f"{device.client._server_url}{device.mjpeg_image_url}&size={device.mjpegStreamWidth}x{device.mjpegStreamHeight}",
still_image_url=f"{device.client._server_url}{device.still_image_url}&size={device.mjpegStreamWidth}x{device.mjpegStreamHeight}",
)
self._attr_device_info = DeviceInfo(
identifiers={(AGENT_DOMAIN, self.unique_id)},
manufacturer="Agent",
@@ -5,5 +5,6 @@
"requirements": ["agent-py==0.0.23"],
"config_flow": true,
"codeowners": ["@ispysoftware"],
"iot_class": "local_polling"
"iot_class": "local_polling",
"loggers": ["agent"]
}
@@ -0,0 +1,20 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
},
"error": {
"already_in_progress": "\u0397 \u03c1\u03bf\u03ae \u03b4\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7\u03c2 \u03b2\u03c1\u03af\u03c3\u03ba\u03b5\u03c4\u03b1\u03b9 \u03ae\u03b4\u03b7 \u03c3\u03b5 \u03b5\u03be\u03ad\u03bb\u03b9\u03be\u03b7",
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2"
},
"step": {
"user": {
"data": {
"host": "\u039a\u03b5\u03bd\u03c4\u03c1\u03b9\u03ba\u03cc\u03c2 \u03c5\u03c0\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03c4\u03ae\u03c2",
"port": "\u0398\u03cd\u03c1\u03b1"
},
"title": "\u03a1\u03cd\u03b8\u03bc\u03b9\u03c3\u03b7 \u03c4\u03bf\u03c5 Agent DVR"
}
}
}
}
@@ -1,10 +1,19 @@
{
"config": {
"abort": {
"already_configured": "Dispositivo j\u00e1 est\u00e1 configurado"
},
"error": {
"already_in_progress": "O fluxo de configura\u00e7\u00e3o j\u00e1 est\u00e1 em andamento",
"cannot_connect": "Falha ao conectar"
},
"step": {
"user": {
"data": {
"host": "Nome do host",
"port": "Porta"
}
},
"title": "Configurar agente DVR"
}
}
}
@@ -0,0 +1,14 @@
{
"config": {
"error": {
"already_in_progress": "Konfigur\u00e1cia u\u017e prebieha"
},
"step": {
"user": {
"data": {
"port": "Port"
}
}
}
}
}
+2 -1
View File
@@ -6,5 +6,6 @@
"requirements": ["airly==1.1.0"],
"config_flow": true,
"quality_scale": "platinum",
"iot_class": "cloud_polling"
"iot_class": "cloud_polling",
"loggers": ["airly"]
}
@@ -1,11 +1,28 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1 \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
},
"error": {
"invalid_api_key": "\u0386\u03ba\u03c5\u03c1\u03bf API \u03ba\u03bb\u03b5\u03b9\u03b4\u03af"
"invalid_api_key": "\u0386\u03ba\u03c5\u03c1\u03bf API \u03ba\u03bb\u03b5\u03b9\u03b4\u03af",
"wrong_location": "\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03c3\u03c4\u03b1\u03b8\u03bc\u03bf\u03af \u03bc\u03ad\u03c4\u03c1\u03b7\u03c3\u03b7\u03c2 Airly \u03c3\u03c4\u03b7\u03bd \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae \u03b1\u03c5\u03c4\u03ae."
},
"step": {
"user": {
"data": {
"api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API",
"latitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03c0\u03bb\u03ac\u03c4\u03bf\u03c2",
"longitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2",
"name": "\u038c\u03bd\u03bf\u03bc\u03b1"
},
"description": "\u03a1\u03c5\u03b8\u03bc\u03af\u03c3\u03c4\u03b5 \u03c4\u03b7\u03bd \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7 \u03c0\u03bf\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2 \u03b1\u03ad\u03c1\u03b1 Airly. \u0393\u03b9\u03b1 \u03bd\u03b1 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03ae\u03c3\u03b5\u03c4\u03b5 \u03ba\u03bb\u03b5\u03b9\u03b4\u03af API, \u03bc\u03b5\u03c4\u03b1\u03b2\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 https://developer.airly.eu/register",
"title": "Airly"
}
}
},
"system_health": {
"info": {
"can_reach_server": "\u03a0\u03c1\u03bf\u03c3\u03ad\u03b3\u03b3\u03b9\u03c3\u03b7 \u03b4\u03b9\u03b1\u03ba\u03bf\u03bc\u03b9\u03c3\u03c4\u03ae Airly",
"requests_per_day": "\u0395\u03c0\u03b9\u03c4\u03c1\u03b5\u03c0\u03cc\u03bc\u03b5\u03bd\u03b1 \u03b1\u03b9\u03c4\u03ae\u03bc\u03b1\u03c4\u03b1 \u03b1\u03bd\u03ac \u03b7\u03bc\u03ad\u03c1\u03b1",
"requests_remaining": "\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"
}
@@ -0,0 +1,30 @@
{
"config": {
"abort": {
"already_configured": "Localiza\u00e7\u00e3o j\u00e1 est\u00e1 configurada"
},
"error": {
"invalid_api_key": "Chave de API inv\u00e1lida",
"wrong_location": "N\u00e3o h\u00e1 esta\u00e7\u00f5es de medi\u00e7\u00e3o a\u00e9reas nesta \u00e1rea."
},
"step": {
"user": {
"data": {
"api_key": "Chave da API",
"latitude": "Latitude",
"longitude": "Longitude",
"name": "Nome"
},
"description": "Configure a integra\u00e7\u00e3o da qualidade do ar airly. Para gerar a chave de API v\u00e1 para https://developer.airly.eu/register",
"title": "Airly"
}
}
},
"system_health": {
"info": {
"can_reach_server": "Alcance o servidor Airly",
"requests_per_day": "Solicita\u00e7\u00f5es permitidas por dia",
"requests_remaining": "Solicita\u00e7\u00f5es permitidas restantes"
}
}
}
@@ -0,0 +1,17 @@
{
"config": {
"error": {
"invalid_api_key": "Neplatn\u00fd API k\u013e\u00fa\u010d"
},
"step": {
"user": {
"data": {
"api_key": "API k\u013e\u00fa\u010d",
"latitude": "Zemepisn\u00e1 \u0161\u00edrka",
"longitude": "Zemepisn\u00e1 d\u013a\u017eka",
"name": "N\u00e1zov"
}
}
}
}
}
@@ -5,5 +5,6 @@
"documentation": "https://www.home-assistant.io/integrations/airnow",
"requirements": ["pyairnow==1.1.0"],
"codeowners": ["@asymworks"],
"iot_class": "cloud_polling"
"iot_class": "cloud_polling",
"loggers": ["pyairnow"]
}
@@ -0,0 +1,26 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
},
"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\u03bf\u03c2 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2",
"invalid_location": "\u0394\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b1\u03bd \u03b1\u03c0\u03bf\u03c4\u03b5\u03bb\u03ad\u03c3\u03bc\u03b1\u03c4\u03b1 \u03b3\u03b9\u03b1 \u03b1\u03c5\u03c4\u03ae\u03bd \u03c4\u03b7\u03bd \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1",
"unknown": "\u0391\u03c0\u03c1\u03cc\u03c3\u03bc\u03b5\u03bd\u03bf \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1"
},
"step": {
"user": {
"data": {
"api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API",
"latitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03c0\u03bb\u03ac\u03c4\u03bf\u03c2",
"longitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2",
"radius": "\u0391\u03ba\u03c4\u03af\u03bd\u03b1 \u03c3\u03c4\u03b1\u03b8\u03bc\u03bf\u03cd (\u03bc\u03af\u03bb\u03b9\u03b1, \u03c0\u03c1\u03bf\u03b1\u03b9\u03c1\u03b5\u03c4\u03b9\u03ba\u03cc)"
},
"description": "\u03a1\u03c5\u03b8\u03bc\u03af\u03c3\u03c4\u03b5 \u03c4\u03b7\u03bd \u03b5\u03bd\u03c3\u03c9\u03bc\u03ac\u03c4\u03c9\u03c3\u03b7 \u03c4\u03bf\u03c5 AirNow \u03b3\u03b9\u03b1 \u03c4\u03b7\u03bd \u03c0\u03bf\u03b9\u03cc\u03c4\u03b7\u03c4\u03b1 \u03c4\u03bf\u03c5 \u03b1\u03ad\u03c1\u03b1. \u0393\u03b9\u03b1 \u03bd\u03b1 \u03b4\u03b7\u03bc\u03b9\u03bf\u03c5\u03c1\u03b3\u03ae\u03c3\u03b5\u03c4\u03b5 \u03c4\u03bf \u03ba\u03bb\u03b5\u03b9\u03b4\u03af API \u03bc\u03b5\u03c4\u03b1\u03b2\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03b7 \u03b4\u03b9\u03b5\u03cd\u03b8\u03c5\u03bd\u03c3\u03b7 https://docs.airnowapi.org/account/request/",
"title": "AirNow"
}
}
},
"title": "AirNow"
}
@@ -0,0 +1,26 @@
{
"config": {
"abort": {
"already_configured": "Dispositivo j\u00e1 est\u00e1 configurado"
},
"error": {
"cannot_connect": "Falha ao conectar",
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida",
"invalid_location": "Nenhum resultado encontrado para esse local",
"unknown": "Erro inesperado"
},
"step": {
"user": {
"data": {
"api_key": "Chave da API",
"latitude": "Latitude",
"longitude": "Longitude",
"radius": "Raio da Esta\u00e7\u00e3o (milhas; opcional)"
},
"description": "Configure a integra\u00e7\u00e3o da qualidade do ar AirNow. Para gerar a chave de API, acesse https://docs.airnowapi.org/account/request/",
"title": "AirNow"
}
}
},
"title": "AirNow"
}
@@ -0,0 +1,16 @@
{
"config": {
"error": {
"invalid_auth": "Neplatn\u00e9 overenie"
},
"step": {
"user": {
"data": {
"api_key": "API k\u013e\u00fa\u010d",
"latitude": "Zemepisn\u00e1 \u0161\u00edrka",
"longitude": "Zemepisn\u00e1 d\u013a\u017eka"
}
}
}
}
}
@@ -7,5 +7,6 @@
"codeowners": [
"@danielhiversen"
],
"iot_class": "cloud_polling"
"iot_class": "cloud_polling",
"loggers": ["airthings"]
}
@@ -0,0 +1,21 @@
{
"config": {
"abort": {
"already_configured": "\u039f \u03bb\u03bf\u03b3\u03b1\u03c1\u03b9\u03b1\u03c3\u03bc\u03cc\u03c2 \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
},
"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\u03bf\u03c2 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2",
"unknown": "\u0391\u03c0\u03c1\u03cc\u03c3\u03bc\u03b5\u03bd\u03bf \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1"
},
"step": {
"user": {
"data": {
"description": "\u03a3\u03c5\u03bd\u03b4\u03b5\u03b8\u03b5\u03af\u03c4\u03b5 \u03c3\u03c4\u03b7 {url} \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03b2\u03c1\u03b5\u03af\u03c4\u03b5 \u03c4\u03b1 \u03b4\u03b9\u03b1\u03c0\u03b9\u03c3\u03c4\u03b5\u03c5\u03c4\u03ae\u03c1\u03b9\u03ac \u03c3\u03b1\u03c2",
"id": "\u0391\u03bd\u03b1\u03b3\u03bd\u03c9\u03c1\u03b9\u03c3\u03c4\u03b9\u03ba\u03cc",
"secret": "\u039c\u03c5\u03c3\u03c4\u03b9\u03ba\u03cc"
}
}
}
}
}
@@ -3,6 +3,8 @@
"step": {
"user": {
"data": {
"description": "Inicie sesi\u00f3n en {url} para encontrar sus credenciales",
"id": "ID",
"secret": "Secreto"
}
}
@@ -0,0 +1,21 @@
{
"config": {
"abort": {
"already_configured": "A conta j\u00e1 foi configurada"
},
"error": {
"cannot_connect": "Falha ao conectar",
"invalid_auth": "Autentica\u00e7\u00e3o inv\u00e1lida",
"unknown": "Erro inesperado"
},
"step": {
"user": {
"data": {
"description": "Fa\u00e7a login em {url} para encontrar suas credenciais",
"id": "ID",
"secret": "Segredo"
}
}
}
}
}
@@ -0,0 +1,7 @@
{
"config": {
"error": {
"invalid_auth": "Neplatn\u00e9 overenie"
}
}
}
@@ -9,5 +9,6 @@
"codeowners": [
"@LonePurpleWolf"
],
"iot_class": "local_polling"
"iot_class": "local_polling",
"loggers": ["airtouch4pyapi"]
}
@@ -1,7 +1,17 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c3\u03c5\u03c3\u03ba\u03b5\u03c5\u03ae \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af"
},
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2",
"no_units": "\u0394\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5 \u03ba\u03b1\u03bc\u03af\u03b1 \u03bf\u03bc\u03ac\u03b4\u03b1 AirTouch 4."
},
"step": {
"user": {
"data": {
"host": "\u039a\u03b5\u03bd\u03c4\u03c1\u03b9\u03ba\u03cc\u03c2 \u03c5\u03c0\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03c4\u03ae\u03c2"
},
"title": "\u03a1\u03c5\u03b8\u03bc\u03af\u03c3\u03c4\u03b5 \u03c4\u03b1 \u03c3\u03c4\u03bf\u03b9\u03c7\u03b5\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2 \u03c4\u03bf\u03c5 {intergration}."
}
}
@@ -0,0 +1,12 @@
{
"config": {
"error": {
"no_units": "No se pudo encontrar ning\u00fan grupo de AirTouch 4."
},
"step": {
"user": {
"title": "Configure los detalles de conexi\u00f3n de su AirTouch 4."
}
}
}
}
@@ -0,0 +1,19 @@
{
"config": {
"abort": {
"already_configured": "Dispositivo j\u00e1 est\u00e1 configurado"
},
"error": {
"cannot_connect": "Falha ao conectar",
"no_units": "N\u00e3o foi poss\u00edvel encontrar nenhum Grupo AirTouch 4."
},
"step": {
"user": {
"data": {
"host": "Nome do host"
},
"title": "Configure os detalhes de conex\u00e3o do AirTouch 4."
}
}
}
}
@@ -5,5 +5,6 @@
"documentation": "https://www.home-assistant.io/integrations/airvisual",
"requirements": ["pyairvisual==5.0.9"],
"codeowners": ["@bachya"],
"iot_class": "cloud_polling"
"iot_class": "cloud_polling",
"loggers": ["pyairvisual", "pysmb"]
}
@@ -1,13 +1,61 @@
{
"config": {
"abort": {
"already_configured": "\u0397 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1 \u03ad\u03c7\u03b5\u03b9 \u03ae\u03b4\u03b7 \u03b4\u03b9\u03b1\u03bc\u03bf\u03c1\u03c6\u03c9\u03b8\u03b5\u03af \u03ae \u03c4\u03bf Node/Pro ID \u03b5\u03af\u03bd\u03b1\u03b9 \u03ae\u03b4\u03b7 \u03ba\u03b1\u03c4\u03b1\u03c7\u03c9\u03c1\u03b7\u03bc\u03ad\u03bd\u03bf.",
"reauth_successful": "\u039f \u03b5\u03ba \u03bd\u03ad\u03bf\u03c5 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2 \u03ae\u03c4\u03b1\u03bd \u03b5\u03c0\u03b9\u03c4\u03c5\u03c7\u03ae\u03c2"
},
"error": {
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2"
"cannot_connect": "\u0391\u03c0\u03bf\u03c4\u03c5\u03c7\u03af\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2",
"general_error": "\u0391\u03c0\u03c1\u03cc\u03c3\u03bc\u03b5\u03bd\u03bf \u03c3\u03c6\u03ac\u03bb\u03bc\u03b1",
"invalid_api_key": "\u039c\u03b7 \u03ad\u03b3\u03ba\u03c5\u03c1\u03bf \u03ba\u03bb\u03b5\u03b9\u03b4\u03af API",
"location_not_found": "\u0397 \u03c4\u03bf\u03c0\u03bf\u03b8\u03b5\u03c3\u03af\u03b1 \u03b4\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b5"
},
"step": {
"geography_by_coords": {
"data": {
"api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API",
"latitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03c0\u03bb\u03ac\u03c4\u03bf\u03c2",
"longitude": "\u0393\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03cc \u03bc\u03ae\u03ba\u03bf\u03c2"
},
"description": "\u03a7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03bf AirVisual cloud API \u03b3\u03b9\u03b1 \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03cd\u03b8\u03b7\u03c3\u03b7 \u03b3\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03b9\u03ba\u03bf\u03cd \u03c0\u03bb\u03ac\u03c4\u03bf\u03c5\u03c2/\u03bc\u03ae\u03ba\u03bf\u03c5\u03c2.",
"title": "\u0394\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03b3\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03af\u03b1\u03c2"
},
"geography_by_name": {
"data": {
"api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API",
"city": "\u03a0\u03cc\u03bb\u03b7",
"country": "\u03a7\u03ce\u03c1\u03b1",
"state": "\u03ba\u03c1\u03ac\u03c4\u03bf\u03c2"
},
"description": "\u03a7\u03c1\u03b7\u03c3\u03b9\u03bc\u03bf\u03c0\u03bf\u03b9\u03ae\u03c3\u03c4\u03b5 \u03c4\u03bf AirVisual cloud API \u03b3\u03b9\u03b1 \u03bd\u03b1 \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03c5\u03b8\u03b5\u03af\u03c4\u03b5 \u03bc\u03b9\u03b1 \u03c0\u03cc\u03bb\u03b7/\u03c0\u03bf\u03bb\u03b9\u03c4\u03b5\u03af\u03b1/\u03c7\u03ce\u03c1\u03b1.",
"title": "\u0394\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03b3\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03af\u03b1\u03c2"
},
"node_pro": {
"data": {
"ip_address": "\u039a\u03b5\u03bd\u03c4\u03c1\u03b9\u03ba\u03cc\u03c2 \u03c5\u03c0\u03bf\u03bb\u03bf\u03b3\u03b9\u03c3\u03c4\u03ae\u03c2",
"password": "\u039a\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2"
},
"description": "\u03a0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03c5\u03b8\u03ae\u03c3\u03c4\u03b5 \u03bc\u03b9\u03b1 \u03c0\u03c1\u03bf\u03c3\u03c9\u03c0\u03b9\u03ba\u03ae \u03bc\u03bf\u03bd\u03ac\u03b4\u03b1 AirVisual. \u039f \u03ba\u03c9\u03b4\u03b9\u03ba\u03cc\u03c2 \u03c0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7\u03c2 \u03bc\u03c0\u03bf\u03c1\u03b5\u03af \u03bd\u03b1 \u03b1\u03bd\u03b1\u03ba\u03c4\u03b7\u03b8\u03b5\u03af \u03b1\u03c0\u03cc \u03c4\u03bf UI \u03c4\u03b7\u03c2 \u03bc\u03bf\u03bd\u03ac\u03b4\u03b1\u03c2.",
"title": "\u0394\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03b5\u03bd\u03cc\u03c2 \u03ba\u03cc\u03bc\u03b2\u03bf\u03c5 AirVisual Node/Pro"
},
"reauth_confirm": {
"data": {
"api_key": "\u039a\u03bb\u03b5\u03b9\u03b4\u03af API"
},
"title": "\u0395\u03ba \u03bd\u03ad\u03bf\u03c5 \u03ad\u03bb\u03b5\u03b3\u03c7\u03bf\u03c2 \u03c4\u03b1\u03c5\u03c4\u03cc\u03c4\u03b7\u03c4\u03b1\u03c2 AirVisual"
},
"user": {
"description": "\u0395\u03c0\u03b9\u03bb\u03ad\u03be\u03c4\u03b5 \u03c4\u03bf\u03bd \u03c4\u03cd\u03c0\u03bf \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03c9\u03bd AirVisual \u03c0\u03bf\u03c5 \u03b8\u03ad\u03bb\u03b5\u03c4\u03b5 \u03bd\u03b1 \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03c5\u03b8\u03b5\u03af\u03c4\u03b5.",
"title": "\u0394\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c4\u03bf\u03c5 AirVisual"
}
}
},
"options": {
"step": {
"init": {
"data": {
"show_on_map": "\u0395\u03bc\u03c6\u03ac\u03bd\u03b9\u03c3\u03b7 \u03c0\u03b1\u03c1\u03b1\u03ba\u03bf\u03bb\u03bf\u03c5\u03b8\u03bf\u03cd\u03bc\u03b5\u03bd\u03b7\u03c2 \u03b3\u03b5\u03c9\u03b3\u03c1\u03b1\u03c6\u03af\u03b1\u03c2 \u03c3\u03c4\u03bf\u03bd \u03c7\u03ac\u03c1\u03c4\u03b7"
},
"title": "\u0394\u03b9\u03b1\u03bc\u03cc\u03c1\u03c6\u03c9\u03c3\u03b7 \u03c4\u03bf\u03c5 AirVisual"
}
}
@@ -1,14 +1,62 @@
{
"config": {
"abort": {
"already_configured": "Localiza\u00e7\u00e3o j\u00e1 est\u00e1 configurada",
"reauth_successful": "A reautentica\u00e7\u00e3o foi bem-sucedida"
},
"error": {
"general_error": "Ocorreu um erro desconhecido.",
"invalid_api_key": "Chave de API fornecida \u00e9 inv\u00e1lida."
"cannot_connect": "Falha ao conectar",
"general_error": "Erro inesperado",
"invalid_api_key": "Chave de API inv\u00e1lida",
"location_not_found": "Localiza\u00e7\u00e3o n\u00e3o encontrada"
},
"step": {
"geography_by_coords": {
"data": {
"api_key": "Chave da API",
"latitude": "Latitude",
"longitude": "Longitude"
},
"description": "Use a API de nuvem AirVisual para monitorar uma latitude/longitude.",
"title": "Configurar uma geografia"
},
"geography_by_name": {
"data": {
"api_key": "Chave da API",
"city": "Cidade",
"country": "Pa\u00eds",
"state": "Estado"
},
"description": "Use a API de nuvem AirVisual para monitorar uma cidade/estado/pa\u00eds.",
"title": "Configurar uma geografia"
},
"node_pro": {
"data": {
"ip_address": "Nome do host",
"password": "Senha"
}
},
"description": "Monitore uma unidade AirVisual pessoal. A senha pode ser recuperada da interface do usu\u00e1rio da unidade.",
"title": "Configurar um n\u00f3/pro AirVisual"
},
"reauth_confirm": {
"data": {
"api_key": "Chave da API"
},
"title": "Reautenticar o AirVisual"
},
"user": {
"description": "Escolha que tipo de dados do AirVisual voc\u00ea deseja monitorar.",
"title": "Configurar o Airvisual"
}
}
},
"options": {
"step": {
"init": {
"data": {
"show_on_map": "Mostrar o monitoramento no mapa"
},
"title": "Configurar o AirVisual"
}
}
}
@@ -0,0 +1,20 @@
{
"state": {
"airvisual__pollutant_label": {
"co": "\u039c\u03bf\u03bd\u03bf\u03be\u03b5\u03af\u03b4\u03b9\u03bf \u03c4\u03bf\u03c5 \u03ac\u03bd\u03b8\u03c1\u03b1\u03ba\u03b1",
"n2": "\u0394\u03b9\u03bf\u03be\u03b5\u03af\u03b4\u03b9\u03bf \u03c4\u03bf\u03c5 \u03b1\u03b6\u03ce\u03c4\u03bf\u03c5",
"o3": "\u038c\u03b6\u03bf\u03bd",
"p1": "PM10",
"p2": "PM2.5",
"s2": "\u0394\u03b9\u03bf\u03be\u03b5\u03af\u03b4\u03b9\u03bf \u03c4\u03bf\u03c5 \u03b8\u03b5\u03af\u03bf\u03c5"
},
"airvisual__pollutant_level": {
"good": "\u039a\u03b1\u03bb\u03cc",
"hazardous": "\u0395\u03c0\u03b9\u03ba\u03af\u03bd\u03b4\u03c5\u03bd\u03bf",
"moderate": "\u039c\u03ad\u03c4\u03c1\u03b9\u03bf",
"unhealthy": "\u0391\u03bd\u03b8\u03c5\u03b3\u03b9\u03b5\u03b9\u03bd\u03cc",
"unhealthy_sensitive": "\u0391\u03bd\u03b8\u03c5\u03b3\u03b9\u03b5\u03b9\u03bd\u03cc \u03b3\u03b9\u03b1 \u03b5\u03c5\u03b1\u03af\u03c3\u03b8\u03b7\u03c4\u03b5\u03c2 \u03bf\u03bc\u03ac\u03b4\u03b5\u03c2",
"very_unhealthy": "\u03a0\u03bf\u03bb\u03cd \u03b1\u03bd\u03b8\u03c5\u03b3\u03b9\u03b5\u03b9\u03bd\u03cc"
}
}
}
@@ -0,0 +1,20 @@
{
"state": {
"airvisual__pollutant_label": {
"co": "Mon\u00f3xido de carbono",
"n2": "Di\u00f3xido de nitrog\u00eanio",
"o3": "Oz\u00f4nio",
"p1": "PM10",
"p2": "PM2,5",
"s2": "Di\u00f3xido de enxofre"
},
"airvisual__pollutant_level": {
"good": "Bom",
"hazardous": "Perigoso",
"moderate": "Moderado",
"unhealthy": "Insalubre",
"unhealthy_sensitive": "Insalubre para grupos sens\u00edveis",
"very_unhealthy": "Muito insalubre"
}
}
}
@@ -0,0 +1,29 @@
{
"config": {
"abort": {
"reauth_successful": "Op\u00e4tovn\u00e9 overenie bolo \u00faspe\u0161n\u00e9"
},
"error": {
"invalid_api_key": "Neplatn\u00fd API k\u013e\u00fa\u010d"
},
"step": {
"geography_by_coords": {
"data": {
"api_key": "API k\u013e\u00fa\u010d",
"latitude": "Zemepisn\u00e1 \u0161\u00edrka",
"longitude": "Zemepisn\u00e1 d\u013a\u017eka"
}
},
"geography_by_name": {
"data": {
"api_key": "API k\u013e\u00fa\u010d"
}
},
"reauth_confirm": {
"data": {
"api_key": "API k\u013e\u00fa\u010d"
}
}
}
}
}
@@ -4,5 +4,6 @@
"documentation": "https://www.home-assistant.io/integrations/aladdin_connect",
"requirements": ["aladdin_connect==0.4"],
"codeowners": [],
"iot_class": "cloud_polling"
"iot_class": "cloud_polling",
"loggers": ["aladdin_connect"]
}
@@ -4,13 +4,23 @@
"arm_away": "\u039f\u03c0\u03bb\u03af\u03c3\u03c4\u03b5 \u03c3\u03b5 \u03b5\u03ba\u03c4\u03cc\u03c2 \u03c3\u03c0\u03b9\u03c4\u03b9\u03bf\u03cd \u03c4\u03bf {entity_name}",
"arm_home": "\u039f\u03c0\u03bb\u03af\u03c3\u03c4\u03b5 \u03c3\u03b5 \u03c3\u03c0\u03af\u03c4\u03b9 \u03c4\u03bf {entity_name}",
"arm_night": "\u039f\u03c0\u03bb\u03af\u03c3\u03c4\u03b5 \u03c3\u03b5 \u03b2\u03c1\u03ac\u03b4\u03c5 \u03c4\u03bf {entity_name}",
"arm_vacation": "\u039f\u03c0\u03bb\u03b9\u03c3\u03bc\u03cc\u03c2 {entity_name} \u03c3\u03b5 \u03b4\u03b9\u03b1\u03ba\u03bf\u03c0\u03ad\u03c2",
"disarm": "\u0391\u03c6\u03bf\u03c0\u03bb\u03b9\u03c3\u03bc\u03cc\u03c2 {entity_name}",
"trigger": "\u0395\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03af\u03b7\u03c3\u03b7 {entity_name}"
},
"condition_type": {
"is_armed_away": "{entity_name} \u03b5\u03af\u03bd\u03b1\u03b9 \u03bf\u03c0\u03bb\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf \u03b5\u03ba\u03c4\u03cc\u03c2",
"is_armed_home": "{entity_name} \u03b5\u03af\u03bd\u03b1\u03b9 \u03bf\u03c0\u03bb\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf \u03c3\u03b5 \u03c3\u03c0\u03af\u03c4\u03b9",
"is_armed_night": "{entity_name} \u03b5\u03af\u03bd\u03b1\u03b9 \u03bf\u03c0\u03bb\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf \u03c3\u03b5 \u03bd\u03cd\u03c7\u03c4\u03b1",
"is_armed_vacation": "{entity_name} \u03bf\u03c0\u03bb\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c3\u03b5 \u03b4\u03b9\u03b1\u03ba\u03bf\u03c0\u03ad\u03c2",
"is_disarmed": "{entity_name} \u03b5\u03af\u03bd\u03b1\u03b9 \u03b1\u03c6\u03bf\u03c0\u03bb\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf",
"is_triggered": "{entity_name} \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03ae\u03b8\u03b7\u03ba\u03b5"
},
"trigger_type": {
"armed_away": "{entity_name} \u03bf\u03c0\u03bb\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03b3\u03b9\u03b1 \u03b5\u03ba\u03c4\u03cc\u03c2 \u03c3\u03c0\u03b9\u03c4\u03b9\u03bf\u03cd",
"armed_home": "{entity_name} \u03bf\u03c0\u03bb\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03b3\u03b9\u03b1 \u03c3\u03c0\u03af\u03c4\u03b9",
"armed_night": "{entity_name} \u03bf\u03c0\u03bb\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03b3\u03b9\u03b1 \u03bd\u03cd\u03c7\u03c4\u03b1",
"armed_vacation": "{entity_name} \u03bf\u03c0\u03bb\u03af\u03c3\u03c4\u03b7\u03ba\u03b5 \u03c3\u03b5 \u03b4\u03b9\u03b1\u03ba\u03bf\u03c0\u03ad\u03c2",
"disarmed": "{entity_name} \u03b1\u03c6\u03bf\u03c0\u03bb\u03af\u03c3\u03c4\u03b7\u03ba\u03b5",
"triggered": "{entity_name} \u03b5\u03bd\u03b5\u03c1\u03b3\u03bf\u03c0\u03bf\u03b9\u03ae\u03b8\u03b7\u03ba\u03b5"
}
@@ -22,6 +32,7 @@
"armed_custom_bypass": "\u03a0\u03c1\u03bf\u03c3\u03b1\u03c1\u03bc\u03bf\u03c3\u03bc\u03ad\u03bd\u03b7 \u03c0\u03b1\u03c1\u03ac\u03ba\u03b1\u03bc\u03c8\u03b7 \u03b5\u03bd\u03b5\u03c1\u03b3\u03ae",
"armed_home": "\u03a3\u03c0\u03af\u03c4\u03b9 \u039f\u03c0\u03bb\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf",
"armed_night": "\u039f\u03c0\u03bb\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf \u03b2\u03c1\u03ac\u03b4\u03c5",
"armed_vacation": "\u039f\u03c0\u03bb\u03b9\u03c3\u03bc\u03cc\u03c2 \u03b4\u03b9\u03b1\u03ba\u03bf\u03c0\u03ce\u03bd",
"arming": "\u038c\u03c0\u03bb\u03b9\u03c3\u03b7",
"disarmed": "\u0391\u03c6\u03bf\u03c0\u03bb\u03b9\u03c3\u03bc\u03ad\u03bd\u03bf\u03c2",
"disarming": "\u0391\u03c6\u03cc\u03c0\u03bb\u03b9\u03c3\u03b7",
@@ -4,13 +4,15 @@
"arm_away": "Armar {entity_name} longe",
"arm_home": "Armar {entity_name} casa",
"arm_night": "Armar {entity_name} noite",
"arm_vacation": "Armar {entity_name} f\u00e9rias",
"disarm": "Desarmar {entity_name}",
"trigger": "Disparar {entidade_nome}"
"trigger": "Disparar {entity_name}"
},
"condition_type": {
"is_armed_away": "{entity_name} est\u00e1 armado modo longe",
"is_armed_home": "{entity_name} est\u00e1 armadado modo casa",
"is_armed_night": "{entity_name} est\u00e1 armadado modo noite",
"is_armed_vacation": "{entity_name} est\u00e1 armadado modo f\u00e9rias",
"is_disarmed": "{entity_name} est\u00e1 desarmado",
"is_triggered": "{entity_name} est\u00e1 acionado"
},
@@ -18,6 +20,7 @@
"armed_away": "{entity_name} armado modo longe",
"armed_home": "{entity_name} armadado modo casa",
"armed_night": "{entity_name} armadado para noite",
"armed_vacation": "{entity_name} armadado para f\u00e9rias",
"disarmed": "{entity_name} desarmado",
"triggered": "{entity_name} acionado"
}
@@ -27,8 +30,9 @@
"armed": "Armado",
"armed_away": "Armado ausente",
"armed_custom_bypass": "Armado em \u00e1reas espec\u00edficas",
"armed_home": "Armado casa",
"armed_night": "Armado noite",
"armed_home": "Armado em casa",
"armed_night": "Armado noturno",
"armed_vacation": "Armado f\u00e9rias",
"arming": "Armando",
"disarmed": "Desarmado",
"disarming": "Desarmando",
@@ -155,7 +155,7 @@ async def async_unload_entry(hass: HomeAssistant, entry: ConfigEntry) -> bool:
return True
async def _update_listener(hass: HomeAssistant, entry: ConfigEntry):
async def _update_listener(hass: HomeAssistant, entry: ConfigEntry) -> None:
"""Handle options update."""
_LOGGER.debug("AlarmDecoder options updated: %s", entry.as_dict()["options"])
await hass.config_entries.async_reload(entry.entry_id)
@@ -77,6 +77,7 @@ class AlarmDecoderBinarySensor(BinarySensorEntity):
self._zone_number = int(zone_number)
self._zone_type = zone_type
self._attr_name = zone_name
self._attr_is_on = False
self._rfid = zone_rfid
self._loop = zone_loop
self._relay_addr = relay_addr
@@ -3,7 +3,8 @@
"name": "AlarmDecoder",
"documentation": "https://www.home-assistant.io/integrations/alarmdecoder",
"requirements": ["adext==0.4.2"],
"codeowners": ["@ajschmidt8"],
"codeowners": [],
"config_flow": true,
"iot_class": "local_push"
"iot_class": "local_push",
"loggers": ["adext", "alarmdecoder"]
}

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