Commit Graph

20466 Commits (f037feaebc219ac63d9a92a0ec13b6a580e18a68)

Author SHA1 Message Date
Markus Bong 6c5bcbfc3e
Add devolo light devices (#37366) 2020-08-05 18:16:21 +02:00
Bram Kragten d66ddeb69e
Allow to set default dark theme and persist frontend default themes (#38548)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-08-05 17:42:23 +02:00
J. Nick Koston d0d0403664
Add zeroconf/homekit/ssdp discovery support for custom components (#38466)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-08-05 15:50:56 +02:00
Joakim Sørensen 1ebc420c75
Bump frontend to 20200805.0 (#38557) 2020-08-05 14:59:33 +02:00
Pascal Vizeli c291d4aa7d
Intelligent timeout handler for setup/bootstrap (#38329)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-08-05 14:58:19 +02:00
Aidan Timson caca762088
OVO Energy Integration (#36104)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2020-08-05 14:38:29 +02:00
Steffen Zimmermann b50f3103fe
Bump python-wiffi to 1.0.1 (#38556)
fix missing exception asyncio.IncompleteReadError
2020-08-05 13:41:56 +02:00
Maciej Bieniek 8258dcf41d
Add device_info property and simplify generation of unique_id for Airly integration (#38479) 2020-08-05 12:55:14 +02:00
Maciej Bieniek 56f8ced267
Add device_info property for AccuWeather integration (#38480) 2020-08-05 12:50:34 +02:00
Maciej Bieniek d47900473e
Add device_info to GIOS integration (#38503) 2020-08-05 12:47:33 +02:00
J. Nick Koston a91f5b7192
Prevent ping integration from blocking startup (#38504) 2020-08-05 12:43:35 +02:00
Kevin Fronczak 3fdec7946c
Blink auth flow improvement and mini camera support (#38027) 2020-08-05 12:21:14 +02:00
chewbh 3fc5f9deb8
Add Xiaomi Aqara wireless and light switches (2020 model) (#37985) 2020-08-05 12:15:19 +02:00
Peter Nijssen c0c30bb1cc
Update pyrainbird to 0.4.2 (#38542) 2020-08-05 11:42:34 +02:00
Pedro Lamas e422274085
Use IP Address (host) provided by mDNS on Elgato Key Light (#38539) 2020-08-05 11:26:17 +02:00
A C++ MaNong 5b234b80e8
Keep webostv source list when TV is off (#38250)
* keep source list when TV is off

* remove source_list reset as the method ends here
2020-08-05 11:01:12 +02:00
J. Nick Koston 7b728b17f7
Add missing timeout to command_line platforms: cover, notify, switch (#38497)
* Add missing timeout to command_line platforms: cover, notify, switch

* add timeout test for notify
2020-08-04 17:00:02 -10:00
J. Nick Koston dddcb8e299
Add a 60s timeout to shell_command to prevent processes from building up (#38491)
If a process never ended, there was not timeout and they would
build up in the background until Home Assistant crashed.
2020-08-04 16:59:19 -10:00
Steven Looman c33f309d5f
Fix upnp error on unload_entry if device does not exist (#38230) 2020-08-05 02:24:42 +02:00
HomeAssistant Azure e76db60367 [ci skip] Translation update 2020-08-05 00:02:19 +00:00
Chris Talkington d89bfe79f9
Allow device class to control icons for tesla (#37526) 2020-08-05 02:00:05 +02:00
Janis Jansons 17c9e31e2c
Fix Mikrotik encoding by setting utf8 (#38091) 2020-08-05 01:39:55 +02:00
tizzen33 2d7b9326ee
Add new Water Meter Sensor for Toon (#37879)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2020-08-05 01:02:19 +02:00
Daniel Hjelseth Høyer e53d770b3d
Update pymetno lib, and start using met api v2 (#38547) 2020-08-05 00:31:12 +02:00
Franck Nijhof 1e32d0e2b9
Upgrade toonapi to v0.2.0 (#38543) 2020-08-04 23:42:53 +02:00
Peter Nijssen ab512a1273
Add spider config flow (#36001) 2020-08-04 22:37:20 +02:00
lawtancool 96c6e4c2f4
Fix Control4 token refresh (#38302) 2020-08-04 21:35:28 +02:00
J. Nick Koston e208d8b93e
Move system log processing out of the event loop (#38445) 2020-08-04 21:21:45 +02:00
cgtobi 31dbdff3c4
Add Netatmo data handler (#35571)
* Fix webhook registration

* Only load camera platform with valid scope

* Add initial data handler and netatmo base class

* Update camera to use data handler

* Update init

* Parallelize API calls

* Remove cruft

* Minor tweaks

* Refactor data handler

* Update climate to use data handler

* Fix pylint error

* Fix climate update not getting fresh data

* Update climate data

* update to pyatmo 4.0.0

* Refactor for pyatmo 4.0.0

* Exclude from coverage until tests are written

* Fix typo

* Reduce parallel calls

* Add heating request attr

* Async get_entities

* Undo parallel updates

* Fix camera issue

* Introduce individual scan interval per device class

* Some cleanup

* Add basic webhook support for climate to improve responsiveness

* Replace ClimateDevice by ClimateEntity

* Add support for turning camera on/off

* Update camera state upon webhook events

* Guard data class registration with lock

* Capture errors

* Add light platform

* Add dis-/connect handling

* Fix set schedule service

* Remove extra calls

* Add service to set person(s) home/away

* Add service descriptions

* Improve service descriptions

* Use LightEntity instead of Light

* Add guard if no data is retrieved

* Make services entity based

* Only raise platform not ready if there is a NOC

* Register webhook even during runtime

* Fix turning off event

* Fix linter error

* Fix linter error

* Exclude light platform from coverage

* Change log level

* Refactor public weather sensor to use data handler

* Prevent too short coordinates

* Ignore modules without _id

* Code cleanup

* Fix test

* Exit early if no home data is retrieved

* Prevent discovery if already active

* Add services to (un-)register webhook

* Fix tests

* Not actually a coroutine

* Move methods to base class

* Address pylint comment

* Address pylint complaints

* Address comments

* Address more comments

* Add docstring

* Use single instance allowed

* Extract method

* Remove cruft

* Write state directly

* Fix test

* Add file to coverage

* Move nested function

* Move nested function

* Update docstring

* Clean up code

* Fix webhook bug

* Clean up listeners

* Use deque

* Clean up prints

* Update homeassistant/components/netatmo/sensor.py

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

* Update homeassistant/components/netatmo/sensor.py

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

* Update homeassistant/components/netatmo/sensor.py

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

* Update homeassistant/components/netatmo/sensor.py

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

* Update homeassistant/components/netatmo/sensor.py

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

* Update homeassistant/components/netatmo/sensor.py

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

* Update homeassistant/components/netatmo/camera.py

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

* Update homeassistant/components/netatmo/camera.py

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

* Update homeassistant/components/netatmo/camera.py

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

* Update homeassistant/components/netatmo/camera.py

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

* Update homeassistant/components/netatmo/camera.py

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

* Update homeassistant/components/netatmo/camera.py

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

* Rename data_class variable

* Break when match

* Extract method

* Extract methods

* Rename variable

* Improve comment

* Some refinements

* Extra

* Extract method

* Simplify code

* Improve reability

* Code simplification

* Simplify code

* Simplify code

* Code cleanup

* Fix import

* Clean up

* Clean up magic strings

* Replace data_class_name with CAMERA_DATA_CLASS_NAME

* Replace data_class_name with CAMERA_DATA_CLASS_NAME

* Replace data_class_name with HOMEDATA_DATA_CLASS_NAME

* Replace data_class_name in public weather sensor

* Clean up

* Remove deprecated config options

* Schedule immediate update on camera reconnect

* Use UUID to clearly identify public weather areas

* Use subscription mode

* Move clean up of temporary data classes

* Delay data class removal

* Fix linter complaints

* Adjust test

* Only setup lights if webhook are registered

* Prevent crash with old config entries

* Don't cache home ids

* Remove stale code

* Fix coordinates if entered mixed up by the user

* Move nested function

* Add test case for swapped coordinates

* Only wait for discovery entries

* Only use what I need

* Bring stuff closer to where it's used

* Auto clean up setup data classes

* Code cleanup

* Remove unneccessary lock

* Update homeassistant/components/netatmo/sensor.py

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

* Update tests/components/netatmo/test_config_flow.py

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

* Clean up dead code

* Fix formating

* Extend coverage

* Extend coverage

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-08-04 20:46:46 +02:00
Patrick 0780650015
Make ozw CCT use device attributes instead of hard coded values (#38054) 2020-08-04 20:15:21 +02:00
Daniel Correa Lobato 86fc977ff5
Update notify.py (#38526)
Clickatell can returns 202 when a message is accepted for delivery. So, success can be indicated by 200 or 202 code (https://archive.clickatell.com/developers/api-docs/http-status-codes-rest/)
2020-08-04 16:51:15 +02:00
Phil Bruckner df8e179207
Fix sensor.time intermittent startup exception (#38525) 2020-08-04 16:39:36 +02:00
Stefan Agner c2f5831181
Support dual stack IP support (IPv4 and IPv6) (#38046)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2020-08-04 15:34:23 +02:00
pbalogh77 fe07d79744
Fix Fibaro component failure to load with HC3 (#38528)
Fixed a rarely occuring problem (maybe a change with Fibaro HC3) where some scenes don't have a "visible" parameter, which was assumed to be mandatory in the past.
2020-08-04 14:55:03 +02:00
Daniel Perna 0c030cb8cf
Update pyhomematic to 0.1.68 (#38530) 2020-08-04 14:42:25 +02:00
Davide Varricchio 45e451271e
Bump pyaehw4a1 to 0.3.9 (#38347)
* Bump pyaehw4a1 to 0.3.9

* Add myself to xiaomi miio codeowners (#38350)

* add myself to xiaomi miio codeowners

* Update CODEOWNERS

* Update manifest.json

* Upgrade youtube_dl to version 2020.07.28 (#38328)

* Temporary lock pip to 20.1.1 to avoid build issue (#38358)

* Add wheels job for building core wheels (#38359)

* Bump androidtv to 0.0.47 and adb-shell to 0.2.1 (#38344)

* Add jobs names to Wheels builds (#38363)

* Update aioharmony to 0.2.6 (#38360)

* Update run-in-env.sh (#36577)

* Bump aioambient to 1.2.0 (#38364)

* Bump simplisafe-python to 9.2.2 (#38365)

* Ignore remote Plex clients during plex.tv lookup (#38327)

* Avoid error with ignored harmony config entries (#38367)

* Bump ElkM1 library version. (#38368)

To reduce required version of dependent library.
No code changed.

* Add basic websocket api for OZW (#38265)

* Prevent nut config flow error when checking ignored entries (#38372)

* Revert "Prevent nut config flow error when checking ignored entries (#38372)"

This reverts commit 9e0530df1d.

* Revert "Add basic websocket api for OZW (#38265)"

This reverts commit 3ca93baa55.

* Revert "Bump ElkM1 library version. (#38368)"

This reverts commit 143f55ad12.

* Revert "Avoid error with ignored harmony config entries (#38367)"

This reverts commit 90a10baf38.

* Revert "Ignore remote Plex clients during plex.tv lookup (#38327)"

This reverts commit 67cdeafe21.

* Revert "Bump simplisafe-python to 9.2.2 (#38365)"

This reverts commit 01d68e01c6.

* Revert "Bump aioambient to 1.2.0 (#38364)"

This reverts commit bec6904eb9.

* Revert "Update run-in-env.sh (#36577)"

This reverts commit 53acc1b41e.

* Revert "Update aioharmony to 0.2.6 (#38360)"

This reverts commit a991d6f131.

* Revert "Add jobs names to Wheels builds (#38363)"

This reverts commit 58dcc059c7.

* Revert "Bump androidtv to 0.0.47 and adb-shell to 0.2.1 (#38344)"

This reverts commit 14b4722b69.

* Revert "Add wheels job for building core wheels (#38359)"

This reverts commit cb9e76adb7.

* Revert "Temporary lock pip to 20.1.1 to avoid build issue (#38358)"

This reverts commit b2207ed776.

* Revert "Upgrade youtube_dl to version 2020.07.28 (#38328)"

This reverts commit 144e827ce9.

* Revert "Add myself to xiaomi miio codeowners (#38350)"

This reverts commit 88538254ec.

Co-authored-by: starkillerOG <starkiller.og@gmail.com>
Co-authored-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Jeff Irion <JeffLIrion@users.noreply.github.com>
Co-authored-by: ehendrix23 <hendrix_erik@hotmail.com>
Co-authored-by: Aaron Bach <bachya1208@gmail.com>
Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Glenn Waters <gwwaters@gmail.com>
Co-authored-by: Charles Garwood <cgarwood@gmail.com>
2020-08-04 12:22:58 +02:00
Jean-Yves Avenard 988cbf12ce
Cache emulated hue states attributes between get and put calls to avoid unexpected alexa errors (#38451)
* Wait for the state of the entity to actually change before resolving PUT request

Additionally, we cache the entity's properties for up to two seconds for the successive GET state request

When Alexa issues a command to a Hue hub; it immediately queries the hub for the entity's state to confirm if the command was successful.
It expects the state to be effective immediately after the PUT request has been completed.
There may be a delay for the new state to actually be active, this is particularly obvious when using group lights.
This leads Alexa to report that the light had an error.

So we wait for the state of the entity to actually change before responding to the PUT request.

Due to rounding issue when converting the HA range (0..255) to Hue range (1..254) we now cache the state sets by Alexa and return those cached values for up to two seconds so that Alexa gets the same value as it originally set.

Fixes #38446

* Add new tests verifying emulated_hue behaviour.

* Increase code test coverage.

The remaining uncovered lines can't be tested as they mostly check that the hass framework or the http server properly work.

This commit doesn't attempt to fix exposed issues as it would be out of scope ; it merely create the tests to exercise the whole code.

* Update homeassistant/components/emulated_hue/hue_api.py

* Add test for state change wait timeout

* Preserve the cache long enough for groups to change

* Update tests/components/emulated_hue/test_hue_api.py

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-08-03 15:30:16 -10:00
Aaron Bach d498246fb6
Bump aioambient to 1.2.1 (#38519) 2020-08-03 12:30:46 -06:00
Aaron Bach 6fd39f57ee
Remove YAML configuration support for IQVIA (#38141) 2020-08-03 19:35:36 +02:00
Aaron Bach 53e162c922
Remove deprecated Slack attachments framework (#38139) 2020-08-03 19:33:49 +02:00
Cooper Dale 0b0e323632
Fix missing .name at entity_id in service example (#38515)
for propper filename
2020-08-03 18:22:52 +02:00
Eugene Prystupa 809c2980df
Log the version reported by Bond hub upon startup to facilitate troub… (#38508) 2020-08-03 17:55:04 +02:00
Erik Montnemery 86e38a8467
Add missing MQTT strings (#38513) 2020-08-03 17:54:09 +02:00
Bram Kragten a187183bd1
Update frontend to 20200803.0 (#38514) 2020-08-03 17:52:58 +02:00
Shane Qi 85497c6b75
Fix Lutron Caseta devices loading when missing serials (#38255)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-08-03 16:50:47 +02:00
J. Nick Koston 2f1d989df2
Bump hass-nabucasa to avoid the performance penalty loading ecdsa (#38056) 2020-08-03 12:55:30 +02:00
J. Nick Koston 8f2abc2ee1
Fix harmony activity starting initial state (#38439) 2020-08-03 12:55:15 +02:00
jjlawren e940811a8b
Clean up Plex clip handling (#38500) 2020-08-03 12:41:24 +02:00
jjlawren 67312e2d42
Fix lookup by Plex media key when playing on Sonos (#38119) 2020-08-03 12:40:48 +02:00
James Hilliard 064cc52ad6
Add config flow to HLK-SW16 (#37190)
* Add config flow to HLK-SW16

* Use entry_id for unique_id

* Add options update capability

* Refactor entry_id under domain

* Remove name from config

* Set options

* Remove options flow

* remove unneccesary else block from validate_input and move domain cleanup to async_unload_entry

* Add tests and config import

* Add back config schema

* Remove config import

* Refactor unload

* Add back config import

* Update coveragerc

* Don't mock validate_input

* Test duplicate configs

* Add import test

* Use patch for timeout test

* Use mock for testing timeout

* Use MockSW16Client for tests

* Check mock_calls count

* Remove unused NameExists exception

* Remove title from strings.json

* Mock setup for import test

* Set PARALLEL_UPDATES for switch

* Move hass.data.setdefault(DOMAIN, {}) to async_setup_entry
2020-08-02 17:52:53 -10:00