Commit Graph

25104 Commits (2502e7669c9fce7b4f1074a79713db968e85151c)

Author SHA1 Message Date
Franck Nijhof 055cdc64c0
Add support for IoT class in manifest (#46935) 2021-04-15 10:21:38 +02:00
Matthias Alphart 985b4a581a
Create KNX switch entity directly from config (#49238) 2021-04-15 09:47:43 +02:00
J. Nick Koston e234fc6e7e
Disconnect homekit_controller devices on the stop event (#49244) 2021-04-14 21:47:15 -10:00
J. Nick Koston 54322f84c5
Do not schedule future ping device tracker updates once hass is stopping (#49236) 2021-04-15 08:49:28 +02:00
HomeAssistant Azure e86aad34b9 [ci skip] Translation update 2021-04-15 00:02:56 +00:00
Franck Nijhof 6269449507
Upgrade spotipy to 2.18.0 (#49220) 2021-04-14 23:52:10 +02:00
Steven Looman 555f508b8c
Reinitialize upnp device on config change (#49081)
* Store coordinator at Device

* Use DeviceUpdater to follow config/location changes

* Cleaning up

* Fix unit tests + review changes

* Don't test internals
2021-04-14 23:39:44 +02:00
Milan Meulemans ed54494b69
Add binary sensor platform to Rituals Perfume Genie Integration (#49207)
* Add binary sensor platform to Rituals

* Sort platforms
2021-04-14 23:10:35 +02:00
J. Nick Koston 403c6b9e26
Stop ssdp scans when stop event happens (#49140) 2021-04-14 22:23:15 +02:00
Unai aaa600e00a
Add unique-ids to maxcube component (#49196) 2021-04-14 22:19:24 +02:00
Jeff Irion 81d46828ad
Bump androidtv (0.0.58) and adb-shell (0.3.1) (#49209) 2021-04-14 18:44:39 +02:00
Hmmbob 7ffd4fa83d
Support all available Google Cloud TTS languages (#49208) 2021-04-14 18:14:24 +02:00
Diogo Gomes e4a7260384
Bump pykmtronic to 0.3.0 (#49191) 2021-04-14 18:11:51 +02:00
Carmen Sanchez fe1e57e76f
Added Spanish US voice to Google Cloud TTS (#49200)
See https://cloud.google.com/text-to-speech/docs/voices
2021-04-14 11:00:32 +02:00
Erik Montnemery 1230c46e1e
Use supported_color_modes in alexa (#49174) 2021-04-14 09:18:49 +02:00
Erik Montnemery e0ac12bd56
Use supported_color_modes in homekit (#49177) 2021-04-14 09:18:34 +02:00
Erik Montnemery 1a5068f71d
Use supported_color_modes in google_assistant (#49176)
* Use supported_color_modes in google_assistant

* Fix tests
2021-04-14 09:18:22 +02:00
HomeAssistant Azure 0b4b071c02 [ci skip] Translation update 2021-04-14 00:03:17 +00:00
J. Nick Koston 81e6ad0744
Replace http startup logic with async_when_setup_or_start (#48784) 2021-04-13 14:10:58 -07:00
J. Nick Koston d7ac4bd653
Cancel sense updates on the stop event (#49187) 2021-04-13 14:03:46 -07:00
Julien "_FrnchFrgg_" Rivaud 5a9c3fea70
Enable passing Amcrest/Dahua signals through as HA events (#49004)
Some of the compatible hardware sends event signals that wouldn't map
well to entities, e.g. NTP sync notifications, SIP registering
information, or « doorbell button pressed » events with no « return to
rest state » matching event to have a properly behaved binary sensor.

Instead of only monitoring specific events, subscribe to all of them,
and pass them through (in addition to handling them as before if they
correspond to a configured binary sensor).

Also bump python-amcrest to 1.7.2. Digest of the changes:

* The library now passes through the event data instead of just presence of a
 "Start" member in in.
* Connection to some devices has been fixed by not throwing the towel on
  minor errors.

https://github.com/tchellomello/python-amcrest/compare/1.7.1...1.7.2
2021-04-13 21:33:46 +02:00
puddly 5d57e5c06c
Enable the custom quirks path ZHA config option (#49143) 2021-04-13 13:14:53 -04:00
Paulus Schoutsen ba93a033a5
Cloud to set up Alexa conditionally (#49136) 2021-04-13 09:31:41 -07:00
Paulus Schoutsen 28347e19c5
Fix Hue service being removed on entry reload (#48663) 2021-04-13 09:31:23 -07:00
Paulus Schoutsen 05aeff5591
Describe Google Assistant events (#49141)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-13 09:31:01 -07:00
René Klomp 926c2489f0
Implement SMA config flow (#48003)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Johann Kellerman <kellerza@gmail.com>
2021-04-13 06:21:01 -10:00
Andreas Oberritter e9f0891354
Add edl21 OBIS IDs for Holley DTZ541-ZEBA (#49170) 2021-04-13 17:49:28 +02:00
Raman Gupta 0f454bc456
Don't assert the device registry entry in zwave_js (#49178) 2021-04-13 11:32:17 -04:00
Paulus Schoutsen beea2dd35f
Internally work with modern config syntax for template binary sensor platform config (#48981) 2021-04-13 07:58:44 -07:00
Raman Gupta fe6d6895aa
Migrate existing zwave_js entities if endpoint has changed (#48963)
* Migrate existing zwave_js entities if endpoint has changed

* better function name

* cleanup code

* return as early as we can

* use defaultdict instead of setdefault

* PR comments

* re-add missing logic

* set defaultdict outside of for loop

* additional cleanup

* parametrize tests

* fix reinterview logic

* test that we skip migration when multiple entities are found

* Update tests/components/zwave_js/test_init.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-13 16:37:55 +02:00
Franck Nijhof de569982a4
Fix services for Armcrest & Logi Circle (#49166) 2021-04-13 16:32:39 +02:00
muppet3000 0ca3186caf
Add 'mix' system support for Growatt integration (#49026)
* Added 'mix' system support for Growatt integration

* Changed Growatt "Last Data Update" to a timestamp

* Changed Growatt "Last Data Update" to UTC

* Accepted suggested change for Growatt  "Last Data Update"

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-13 15:40:30 +02:00
Erik Montnemery 916ba0be11
Don't receive homeassistant_* events from MQTT eventstream (#49158) 2021-04-13 15:09:50 +02:00
Tobias Sauerwein 2b79c91813
Clean up camera service schema (#49151) 2021-04-13 13:07:05 +02:00
J. Nick Koston 5365fb6c72
Fix setting up remotes that lack a supported features list in homekit (#49152) 2021-04-13 12:44:07 +02:00
J. Nick Koston 51a7a724d6
Bump aiodiscover to 1.3.4 (#49142)
- Changelog: https://github.com/bdraco/aiodiscover/compare/v1.3.3...v1.3.4 (bumps pyroute2>=0.5.18 to fix https://github.com/svinota/pyroute2/issues/717)
2021-04-13 12:31:55 +02:00
J. Nick Koston 91821fa6ad
Name the dhcp watcher thread (#49144)
When getting py-spy reports, it is helpful to get thread names
to make it easier to track down issues.
2021-04-13 12:29:30 +02:00
Clifford Roche 4ce6d00a22
Improve the discovery process for Gree (#45449)
* Add support for async device discovery

* FIx missing dispatcher cleanup breaking integration reload

* Update homeassistant/components/gree/climate.py

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

* Update homeassistant/components/gree/switch.py

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

* Update homeassistant/components/gree/bridge.py

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

* Working on feedback

* Improving load/unload tests

* Update homeassistant/components/gree/__init__.py

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

* Working on more feedback

* Add tests covering async discovery scenarios

* Remove unnecessary shutdown

* Update homeassistant/components/gree/__init__.py

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

* Code refactor from reviews

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-04-13 11:54:03 +02:00
Dermot Duffy 63d42867e8
Add Hyperion device support (#47881)
* Add Hyperion device support.

* Update to the new typing annotations.

* Add device cleanup logic.

* Fixes based on the excellent feedback from emontnemery
2021-04-13 10:35:38 +02:00
Mike O'Driscoll 5bf3469ffc
ZHA support Quotra LED On quirk (#49137)
The Quotra-Vision QV-RGBCCT doesn't support the move_to_level_with_onoff
command in ZCL spec. Force on with this device.
2021-04-12 20:32:36 -04:00
Raman Gupta cc40e681e2
Lazy load zwave_js platforms when the first entity needs to be created (#49016)
* Lazy load zwave_js platforms when the first entity needs to be created

* switch order to make things easier to understand

* await task instead of using wait_for_done callback

* gather tasks

* switch from asyncio.create_task to hass.async_create_task

* unsubscribe from callbacks before unloading platforms

* Clean up as much as possible during entry unload, even if a platform unload fails
2021-04-12 20:26:49 -04:00
J. Nick Koston 53853f035d
Prevent calling stop or restart services during db upgrade (#49098) 2021-04-12 17:18:38 -07:00
Paulus Schoutsen 65126cec3e
Allow top level non-trigger template entities (#48976) 2021-04-12 17:15:50 -07:00
HomeAssistant Azure 93c68f8be6 [ci skip] Translation update 2021-04-13 00:04:04 +00:00
Shay Levy 5c71ba578d
Fix Shelly brightness offset (#49007) 2021-04-12 15:52:51 -07:00
Unai ff8e4fb77f
Upgrade maxcube-api to 0.4.2 (#49106)
Upgrade to maxcube-api 0.4.2 to fix pending issues in HA 2021.4.x:
 - Interpret correctly S command error responses (https://github.com/home-assistant/core/issues/49075)
 - Support application timezone configuration (https://github.com/home-assistant/core/issues/49076)
2021-04-13 00:14:29 +02:00
starkillerOG 88d2fb4aa6
Bump yeelight version to 0.6.0 (#49111) 2021-04-13 00:06:52 +02:00
treylok 7256e333e4
Add Ecobee humidifier (#45003) 2021-04-12 23:44:13 +02:00
Ludovico de Nittis de4b1eebdd
iAlarm small code quality improvements (#49126) 2021-04-12 23:24:15 +02:00
Raman Gupta b98ca49a56
Add min and max temp properties to zwave_js.climate (#49125) 2021-04-12 22:12:38 +02:00
Marc Mueller 106dc4d28a
Don't import stdlib typing types from helpers.typing (#49104) 2021-04-12 18:43:14 +02:00
Erik Montnemery f5545badac
Quote media_source paths (#49054)
* Quote path in async_sign_path

* Address review comments, add tests

* Update tests/testing_config/media/Epic Sax Guy 10 Hours.mp4

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-12 18:32:12 +02:00
jjlawren dbb771e19c
Check all endpoints for zwave_js.climate hvac_action (#49115) 2021-04-12 12:29:45 -04:00
Abílio Costa ebc2bec08d
Reduce reporting delta for ZHA humidity channel (#49070) 2021-04-12 12:02:59 -04:00
Marc Mueller 885f528711
Replace old style type comments (#49103) 2021-04-12 17:07:18 +02:00
Marc Mueller 05468a50f4
Fix xbox type hint (#49102) 2021-04-12 13:57:30 +02:00
David F. Mulcahey fe80afdb86
Add support for custom configurations in ZHA (#48423)
* initial configuration options

* first crack at saving the data

* constants

* implement initial options

* make more dynamic

* fix unload and reload of the config entry

* update unload
2021-04-12 07:08:42 -04:00
Zero King 9c11f6547a
Fix forecast pressure unit in OpenWeatherMap (#49069) 2021-04-12 11:56:35 +02:00
William Scanlon 06a8ffe94d
Bump pyeconet to 0.1.14 (#49067)
* Bump pyeconet to fix crash

* Bump pyeconet from beta version

* Update requirements_all
2021-04-12 10:41:20 +02:00
J. Nick Koston 73f227b651
Use shared httpx client in enphase_envoy (#48709)
* Use shared httpx client in enphase_envoy

* test fix

* f

* bump version
2021-04-12 10:31:25 +02:00
J. Nick Koston 9368891b1b
Live db migrations and recovery (#49036)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-11 20:43:54 -10:00
Paulus Schoutsen 2d5edeb1ef
Set hass when adding template attribute (#49094) 2021-04-11 22:49:09 -07:00
Corbeno eac1041277
Create DataUpdateCoordinator for each proxmoxve vm/container (#45171)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-11 17:14:11 -10:00
Phil Bruckner f538ea1827
Release ownership of amcrest integration (#49086)
I no longer use this integration and others have taken over maintenance.
2021-04-11 21:44:22 -05:00
HomeAssistant Azure c7d19d5115 [ci skip] Translation update 2021-04-12 00:04:19 +00:00
Joakim Sørensen 9585defca0
Add device_tracker scanners to hass.config.components (#49063) 2021-04-11 13:54:43 -10:00
Erik Montnemery 1145856c45
Fix cast options flow overwriting data (#49051) 2021-04-11 13:53:44 -10:00
Jan Bouwhuis 74d7293ab8
mqtt fan percentage to speed_range and received speed_state fix (#49060)
* percentage to speed_range and get speed state fix

* Update homeassistant/components/mqtt/fan.py

* Update homeassistant/components/mqtt/fan.py

* Update homeassistant/components/mqtt/fan.py

* Update homeassistant/components/mqtt/fan.py

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-11 13:53:07 -10:00
Kevin Worrel 41ff6fc278
Catch unknown equipment values (#49073)
* Catch unknown equipment values

* Catch unknown equipment values

* Remove warning spam.
2021-04-11 18:12:59 -04:00
Milan Meulemans 71e0e42792
Add Rituals Perfume Genie sensor platform (#48270)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-11 10:36:44 -10:00
J. Nick Koston b86bba246a
Downgrade logger message about homekit id missing (#49079)
This can happen if the TXT record is received after the PTR record and
should not generate a warning since it will get processed later
2021-04-11 10:36:26 -10:00
Nathan Spencer eb2949a20f
Add set_wait_time command support to Litter-Robot (#48300)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-11 10:35:25 -10:00
Ludovico de Nittis 30618aae94
Reintroduce iAlarm integration (#43525)
The previous iAlarm integration has been removed because it used
webscraping #43010.

Since then, the pyialarm library has been updated to use the iAlarm API
instead.

With this commit I reintroduce the iAlarm integration, leveraging the
new HA config flow.

Signed-off-by: Ludovico de Nittis <ludovico.denittis@collabora.com>
2021-04-11 10:35:04 -10:00
Chris Talkington f7b6d3164a
Resolve potential roku setup memory leaks (#49025)
* resolve potential roku setup memory leaks

* Update __init__.py
2021-04-11 12:35:42 -05:00
J. Nick Koston a261bb35eb
Bump aiohomekit to 0.2.61 (#49044) 2021-04-11 06:42:46 -10:00
Raman Gupta 34a1dd4120
Add new attributes to Climacell (#48707)
* Add new attributes to Climacell

* fix logic

* test new properties
2021-04-11 11:59:42 +02:00
Phil Hollenback e38fce98c4
Fix non-metric atmospheric pressure in Open Weather Map (#49030)
The openweathermap component retrieves atmospheric pressure from the
openweathermap api and passes it along without checking the units.
The api returns pressure in metric (hPa).  If you the use the weather
forecast card on a non-metric home assistant install, you will then
see the pressure reported as something like '1019 inHg', which is an
incorrect combination of metric value and non-metric label.

To fix this, check when retrieving the pressure if this is a metric
system.  If not, convert the value to non-metric inHg before sending
it along.

Weirdly, this isn't a problem for temperature, so I suspect temp is
getting converted somewhere else.
2021-04-11 11:13:07 +02:00
Nicolas Braem 71a410c742
Correct vicare power production device class (#49040) 2021-04-11 10:52:28 +02:00
Joakim Plate 62182ea460
Bump ha-philipsjs to 2.7.0 (#49008)
This has some improvements to not consider the TV
off due to some exceptions that is related to API
being buggy rather than off.
2021-04-11 08:42:32 +02:00
Ben Hale e68678e336
Upgrade aioambient to 1.2.4 (#49035) 2021-04-10 20:19:31 -06:00
HomeAssistant Azure 45a92f5791 [ci skip] Translation update 2021-04-11 00:04:41 +00:00
Nicolas Braem 42156bafe0
Change vicare unit of power production current to POWER_WATT (#49000) 2021-04-10 23:02:08 +02:00
Franck Nijhof 5983fac5c2
Fix use search instead of match to filter logs (#49017) 2021-04-10 22:03:44 +02:00
Franck Nijhof 654a532641
Upgrade wakonlan to 2.0.1 (#48995) 2021-04-10 21:50:12 +02:00
Aidan Timson 3cd40ac79c
Set Lyric hold time to use local time instead of utc (#48994) 2021-04-10 21:48:33 +02:00
Andreas Oberritter e1d4d65ac4
Bump pysml to 0.0.5 (#49014) 2021-04-10 20:16:28 +02:00
Marvin Wichmann 21744790d3
Add KNX source address to Sensor and BinarySensor (#48857)
* Add source address to Sensor and BinarySensor

* Fix typing

* Review: Always use UTC time in state attributes

* Review: Add missing UTC conversion in sensor
2021-04-10 18:12:43 +02:00
Adrien Brault 676af205e4
Fix light template invalid color temp message (#48337) 2021-04-10 17:22:15 +02:00
amitfin f8690c29cd
Bump libhdate dependency (#48695) 2021-04-10 17:20:08 +02:00
dynasticorpheus 7ef17bf175
Add support for event type closed to integration folder_watcher (#48226) 2021-04-10 17:04:43 +02:00
Simone Chemelli fcf86e59cc
Log zone cleaning (#47912) 2021-04-10 16:55:28 +02:00
EetuRasilainen e7a3308efa
Improve schema of media_player.join service (#48342)
Co-authored-by: eetu <EetuRasilainen@users.noreply.github.com>
2021-04-10 16:32:41 +02:00
Marc Mueller 1a38d2089d
Bump python-typing-update to v0.3.3 (#48992)
* Bump python-typing-update to 0.3.3
* Changes after update
2021-04-10 15:21:11 +02:00
J. Nick Koston a0a8638a2d
Bump nexia to 0.9.6 (#48982)
- Now returns None when a humidity sensor cannot be read instead of throwing an exception
2021-04-10 12:42:42 +02:00
Martin Hjelmare 7e30ab2fb2
Add missing internal quality scale label (#48947)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-04-10 12:37:20 +02:00
Erik Montnemery 7e4be921a8
Add helper to get an entity's supported features (#48825)
* Add helper to check entity's supported features

* Move get_supported_features to helpers/entity.py, add tests

* Fix error handling and improve tests
2021-04-10 08:19:16 +02:00
J. Nick Koston 4cd7f9bd8b
Raise ConfigEntryAuthFailed during setup or coordinator update to start reauth (#48962) 2021-04-09 19:41:29 -10:00
Jason 7cc857a298
Add custom JSONEncoder for subscribe_trigger WS endpoint (#48664) 2021-04-09 20:47:10 -07:00
Matt Zimmerman 324dd12db8
Update python-smarttub to 0.0.23 (#48978) 2021-04-09 20:36:57 -07:00
Abílio Costa 5c7408cdce
Remove uneeded check in ZHA battery voltage attrib (#48968) 2021-04-09 21:30:32 -04:00
Ville Skyttä 4149cc9662
Huawei LTE cleanups (#48959) 2021-04-09 17:08:13 -07:00
Guido Schmitz 441c304f11
Bump devolo Home Control to support old websocket-client versions again (#48960) 2021-04-09 17:07:04 -07:00
HomeAssistant Azure a36712509b [ci skip] Translation update 2021-04-10 00:03:44 +00:00
Shay Levy 98396e13af
Fix Shelly button device triggers (#48974) 2021-04-09 16:58:44 -07:00
J. Nick Koston 9b0b2d9168
Prevent ping id allocation conflict with device_tracker (#48969)
* Prevent ping id allocation conflict with device_tracker

- Solves id conflict resulting unexpected home state

* Update homeassistant/components/ping/device_tracker.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-09 16:56:15 -07:00
Jan Bouwhuis 28ad5b5514
Implement percentage_step and preset_mode is not not speed fix for MQTT fan (#48951) 2021-04-09 16:14:48 -07:00
Joakim Sørensen eef7faa1e4
Add TTS engines in config.components (#48939)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-09 16:13:07 -07:00
Paulus Schoutsen 6d5c34f2dc
Fix config forwarding (#48967) 2021-04-10 01:12:40 +02:00
Paulus Schoutsen 9f06639ecc
Bump hass-nabucasa 0.43 (#48964) 2021-04-09 13:43:38 -07:00
Erik Montnemery 16196e2e16
Don't log template errors from developer tool (#48933) 2021-04-09 12:10:02 -07:00
Bram Kragten 43335953a2
Update frontend to 20210407.3 (#48957) 2021-04-09 11:53:20 -07:00
jjlawren 2e32589741
Fix Plex live TV handling (#48953) 2021-04-09 10:38:01 -07:00
Philip Allgaier 7e2c8a2737
Fix "notify.events" trim() issue + add initial tests (#48928)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-09 10:36:13 -07:00
J. Nick Koston ac02f7c88a
Bump boto3 to 1.16.52 (#47772) 2021-04-09 10:16:59 -07:00
Marc Mueller 8e2b5b36b5
Bump pyupgrade to 2.12.0 (#48943) 2021-04-09 09:58:27 -07:00
Tobias Sauerwein ee0c87df1c
Bump pykodi to 0.2.5 (#48930) 2021-04-09 09:54:39 -07:00
Joakim Sørensen af3b18c40a
Handle exceptions when looking for new version (#48922) 2021-04-09 09:54:24 -07:00
David F. Mulcahey f2f0331309
Bump ZHA quirks library (#48931) 2021-04-09 12:08:56 -04:00
Ph-Wagner b66c4a9dca
Extend Google Cast media source URL expiry to 24h (#48937)
* Extend media source URL expiry to 12h

closes #46280
After checking out https://github.com/home-assistant/core/pull/48912 I just think why not.

* Update homeassistant/components/cast/media_player.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-04-09 18:02:06 +02:00
Erik Montnemery 346af58f27
Extend media source URL expiry to 24h (#48912) 2021-04-09 17:19:23 +02:00
Joakim Sørensen 65c39bbd92
Change discovery timeout from 10 to 60 (#48924) 2021-04-09 16:44:02 +02:00
RenierM26 155322584d
Update Ezviz Component (#45722)
* Update Ezviz Component

* Update Ezviz for pylint test

* Update Ezviz component pylint tests

* Update Ezviz component tests

* Update Ezviz Component tests

* Update Ezviz component pylint error

* Fix ezviz component config flow tests

* Update ezviz component

* Update Ezviz component

* Add sensor platforms

* issue with requirements file

* Update binary_sensor to include switches

* Updates to Ezviz sensors

* Removed enum private method.

* Fix switch args

* Update homeassistant/components/ezviz/switch.py

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

* config flow checks login info

* Config_flow now imports ezviz from camera platform

* Update test

* Updated config_flow with unique_id and remove period from logging

* Added two camera services and clarified service descryptions in services.yaml

* Fixed variable name mistake with new service

* Added french integration translation

* Config_flow add camera rtsp credentials as seperate entities, with user step and import step

* rerun hassfest after rebase

* Removed region from legacy config schema, removed logging in camera platform setup that could contain credentials, removed unused constant.

* Regenerate requirements

* Fix tests and add config_flow import config test

* Added addition test to config_flow to test successfull camera entity create.

* Add to tests method to end in create entry, config_flow cleanup, use entry instead of entry.data

* Removed all services, sorted platforms in init file.

* Changed RTSP logging to debug from warning. (Forgot to change this before commit)

* Cleanup typing, change platform order, bump pyezviz version

* Added types to entries, allow creation of main entry if deleted by validating existance of type

* Config_flow doesn't store serial under entry data, camera rtsp read from entry and not stored in hass, removed duplicate abort if unique id from config flow

* Fix test of config_flow

* Update tests/components/ezviz/test_config_flow.py

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

* Update tests/components/ezviz/test_config_flow.py

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

* Update tests/components/ezviz/test_config_flow.py

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

* Bumped pyezviz api version, added api pyezvizerror exception raised in api (on HTTPError), cleanup unused imports.

* rebase

* cleanup coordinator, bump pyezviz api version, move async_setup_entry to add entry options to camera entries. (order change)

* Added discovery step in config_flow if cameras detected without rtsp config entry

* Reload main integration after addition or completion of camera rtsp config entry

* Add tests for discovery config_flow, added a few other output asserts

* Camera platform call discover flow with hass.async_create_task. Fixes to config_flow for discovery step

* Fix config_flow discovery, add check to legacy yaml camera platform import, move camera private method to camera import step

* Remove not needed check from config_flow import step.

* Cleanup config_flow

* Added config_flow description for discovered camera

* Reordered description in config_flow confim step.

* Added serial to flow_step description for discovered camera, readded camera attributes for rtsp stream url (allows user to check RTSP cred), added local ip and firmware upgade available.

* Bumped pyezviz version and changed region code to region url. (Russia uses a completly different url). PyEzviz adds a Local IP sensor, removed camera entity attributes.

* Add RSTP describe auth check from API to config_flow

* url as vol.in options in Config_flow

* Config_flow changes to discovery step, added exceptions, fixed tests, added rtsp config validate module mock to test disovery confirm step

* Add test for config_flow step user_camera

* Added tests for abort flow

* Extend tests on custom url flow step

* Fix exceptions in config_flow, fix test for discovery import exception test

* Bump pyezviz api version

* Bump api version, added config_flow function to wake hybernating camera before testing credentials, removed "user camera" step from config flow not needed as cameras are discovered.

* Create pyezviz Api instance for config_flow wake hybernating camera, fixed tests and added fixture to mock method

* Added alarm_control_panel with support to arm/disarm all cameras, fixed camera is available attribute (returns 2 if unavailable, 1 if available)

* Skip ignored entities when setup up camera RTSP stream

* Remove alarm_control_panel, add additional config_flow tests

* Cleanup tests, add tests for discovery_step.

* Add test for config_flow rtsp test step1 exceptions

* Removed redundant except from second step in test RTSP method

* All tests to CREATE or ABORT, added step exception for general HTTP error so user can retry in case of trasient network condition

* Ammended tests with output checks for step_id, error, data, create entry method calls.

* bumped ezviz api now rases library exceptions. Config_flow, coordiantor and init raises library exceptions. Updated test sideeffect for library exceptions

* Bump api version, Create mock ezviz cloud account on discovery tests first to allow more complete testing of step.

* Add abort to rtsp verification method if cloud account was deleted and add tests

* Update tests/components/ezviz/__init__.py

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

* Update homeassistant/components/ezviz/const.py

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

* Update tests/components/ezviz/__init__.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Undo config import change to password key for yaml, move hass.data.setdefault to async_setup_entry and remove async_setup

* Fixed tests by removing _patch_async_setup as this was removed from init.

* Update homeassistant/components/ezviz/camera.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Update homeassistant/components/ezviz/camera.py

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

* Changed L67 on camera config to complete suggestion for cleanup

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-09 12:39:19 +02:00
Álvaro Fernández Rojas e30cf88459
AEMET town timestamp should be UTC (#48916)
AEMET OpenData doesn't clarify if the hourly data timestamp is UTC or not, but
after correctly formatting the town timestamp in ISO format, it is clear that
the timestamp is provided as UTC value.
Therefore, the only values not provided as UTC are the ones related to the
specific daily and hourly forecast values.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-04-09 12:37:46 +02:00
amitfin 2391134d26
Update "issur_melacha_in_effect" via time tracking (#42485) 2021-04-09 12:26:55 +02:00
Brandon Rothweiler 52e8c7166b
Allow template covers to have opening and closing states (#47925) 2021-04-09 11:36:02 +02:00
Tobias Sauerwein f396804f54
Bump pykodi to 0.2.4 (#48913) 2021-04-09 11:27:43 +02:00
Robert Svensson 31ae121645
Add fixtures for Axis rtsp client and adapt tests to use them (#47901)
* Add a fixture for rtsp client and adapt tests to use it

* Better fixtures for RTSP events and signals
2021-04-09 10:56:53 +02:00
Phil Hollenback e7e53b879e
Fix cpu temperature reporting for Armbian on Odroid (#48903)
Some systems expose cpu temperatures differently in
psutil. Specifically, running armbian on the Odroid xu4 sbc gives the
following temerature output:

>>> pp.pprint(psutil.sensors_temperatures())
{   'cpu0-thermal':
    [   shwtemp(label='', current=54.0, high=115.0, critical=115.0)],
    'cpu1-thermal':
    [   shwtemp(label='', current=56.0, high=115.0, critical=115.0)],
    'cpu2-thermal':
    [   shwtemp(label='', current=58.0, high=115.0, critical=115.0)],
    'cpu3-thermal':
    [   shwtemp(label='', current=56.0, high=115.0, critical=115.0)],
}

Since the cpu number is embedded inside the name, the current code
can't find it.

To fix this, check both the name and the constructed label for matches
against CPU_SENSOR_PREFIXES, and add the appropriate label
cpu0-thermal in the prefix list.

While this is slightly less efficient that just generating the label
and checking it, it results in easier to understand code.
2021-04-09 10:25:03 +02:00
J. Nick Koston 19e047e801
Fix logic reversal in sonos update_media_radio (#48900) 2021-04-09 07:24:35 +02:00
HomeAssistant Azure 23dd57a562 [ci skip] Translation update 2021-04-09 00:03:15 +00:00
Milan Meulemans bdbc38c937
Catch expected errors and log them in rituals perfume genie (#48870)
* Add update error logging

* Move try available to else

* Remove TimeoutError
2021-04-09 01:43:41 +02:00
Erik Montnemery b0aa64d59c
Replace redacted stream recorder credentials with '****' (#48832) 2021-04-08 12:44:17 -07:00
starkillerOG 2dc46d4516
Fix motion_blinds gateway signal strength sensor (#48866)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-08 12:42:56 -07:00
Bram Kragten aaa9367554
Update frontend to 20210407.2 (#48888) 2021-04-08 12:41:40 -07:00
Erik Montnemery 5e8559e3cc
Validate supported_color_modes for MQTT JSON light (#48836) 2021-04-08 12:40:48 -07:00
Martin Hjelmare e988062034
Fix mysensor cover closed state (#48833) 2021-04-08 12:39:03 -07:00
J. Nick Koston 493bd4cdca
Add manufacturer matching support to zeroconf (#48810)
We plan on matching with _airplay which means we need
to able to limit to specific manufacturers to avoid
generating flows for integrations with the wrong
manufacturer
2021-04-08 09:03:10 -10:00
Khole c2d98f1905
Add hive boost off functionality (#48701)
* Add boost off functionality

* Added backwards compatibility

* Update homeassistant/components/hive/services.yaml

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

* Update homeassistant/components/hive/climate.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-08 20:51:00 +02:00
Raman Gupta 3ca69f5568
Raise an exception when event_type exceeds the max length (#48115)
* raise an exception when event_type exceeds the max length that the recorder supports

* add test

* use max length constant in recorder

* update config entry reloaded service name

* remove exception string function because it's not needed

* increase limit to 64 and revert event name change

* fix test

* assert exception args

* fix test

* add comment about migration
2021-04-08 20:46:28 +02:00
J. Nick Koston 1f80c756ab
Fix subscribe_bootstrap_integrations to send events (#48754) 2021-04-08 07:30:33 -10:00
Laszlo Magyar c7e4857d2c
Let recorder deal with event names longer than 32 chars (#47748) 2021-04-08 07:08:49 -10:00
Franck Nijhof 1dafea705d
Fix possibly missing changed_by in Verisure Alarm (#48867) 2021-04-08 19:03:11 +02:00
Franck Nijhof e475b6b9c3
Fix optional data payload in Prowl messaging service (#48868) 2021-04-08 18:02:29 +02:00
Bram Kragten 94fc7b8aed
Correct wrong x in frontend manifest (#48865) 2021-04-08 08:54:13 -07:00
Philip Allgaier 50bc037819
Bump speedtest-cli to 2.1.3 (#48861) 2021-04-08 17:35:02 +02:00
Johan Nenzén e70111b93c
Add missing super call in Verisure Camera entity (#48812) 2021-04-08 17:00:49 +02:00
Raman Gupta 2768f202b6
Check all endpoints for zwave_js.climate fan mode and operating state (#48800)
* Check all endpoints for zwave_js.climate fan mode and operating state

* fix test
2021-04-08 16:53:20 +02:00
Philip Allgaier f1c4072d3c
Return TP-Link sensor & light attributes as `float` rather than `string` (#48828) 2021-04-08 16:51:59 +02:00
Marvin Wichmann 91837f08ce
Update xknx to version 0.18.0 (#48799) 2021-04-08 14:54:43 +02:00
Niccolo Zapponi 9377a45d8a
Fix iCloud extra attributes (#48815) 2021-04-08 13:50:46 +02:00
starkillerOG 78dabc83ec
Add Xiaomi Miio zhimi.airpurifier.mc2 (#48840)
* add zhimi.airpurifier.mc2

* fix issort
2021-04-08 13:40:29 +02:00
Hans Kröner 2765256b61
Account for openweathermap 'dew_point' not always being present (#48826) 2021-04-08 13:39:53 +02:00
Aaron Bach e70d7327f9
Store Recollect Waste pickup dates in UTC (#48690)
* Store Recollect Waste pickup dates in UTC

* Code review

* Code review
2021-04-08 07:34:47 +02:00
HomeAssistant Azure 8e6238ff61 [ci skip] Translation update 2021-04-08 00:03:23 +00:00
Erik Montnemery 61b38baf2e
Reject nan, inf from generic_thermostat sensor (#48771) 2021-04-07 09:00:42 -07:00
Bram Kragten f2ef9e7505
Update frontend to 20210407.1 (#48778) 2021-04-07 08:57:45 -07:00
Daniel Sack c732749640
Update __init__.py (#48659)
This change solves that HMIP-RCV-1 is not found when used in a service call to invoke a virtual key (case-sensitivity problem).
- https://community.home-assistant.io/t/homematic-hmip-rcv-50-not-working-with-virtual-key-any-more/249000
- https://github.com/danielperna84/pyhomematic/issues/368
2021-04-07 15:51:35 +02:00
Raman Gupta caaa62a7f9
Clean up google travel time code (#48708) 2021-04-07 12:39:27 +02:00
Erik Montnemery 2555b10d49
Remove login details before logging SQL errors (#48758) 2021-04-07 12:15:56 +02:00
Maciej Bieniek 5be1eacde9
Set AsusWRT mac_address and ip_address properties (#48764) 2021-04-07 12:08:22 +02:00
Bram Kragten ab190f36ac
Update frontend to 20210407.0 (#48765) 2021-04-07 11:42:12 +02:00
Erik Montnemery 46371a9e87
Fix whitespace error in cast (#48763) 2021-04-07 11:12:31 +02:00
Franck Nijhof 6ec8e17e7b
Do not activate Met.no without setting a Home coordinates (#48741) 2021-04-07 09:39:39 +02:00
J. Nick Koston 5f8fcca5ad
Solve cast delaying startup when discovered devices are slow to setup (#48755)
* Solve cast delaying startup when devices are slow to setup

* Update homeassistant/components/cast/media_player.py

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-04-07 09:39:04 +02:00
Daniel Hjelseth Høyer b558f20ad2
Met.no - only update data if coordinates changed (#48756) 2021-04-07 09:27:58 +02:00
stegm 589f2240b1
New integration for Kostal Plenticore solar inverters (#43404)
* New integration for Kostal Plenticore solar inverters.

* Fix errors from github pipeline.

* Fixed test for py37.

* Add more test for test coverage check.

* Try to fix test coverage check.

* Fix import sort order.

* Try fix test code coverage .

* Mock api client for tests.

* Fix typo.

* Fix order of rebased code from dev.

* Add new data point for home power.

* Modifications to review.
Remove service for write access (for first pull request). Refactor
update coordinator to not use the entity API.

* Fixed mock imports.

* Ignore new python module on coverage.

* Changes after review.

* Fixed unit test because of config title.

* Fixes from review.

* Changes from review (unique id and mocking of tests)

* Use async update method. Change unique id. Remove _dict

* Remove _data field.

* Removed login flag from PlenticoreUpdateCoordinator.

* Removed Dynamic SoC sensor because it should be a binary sensor.

* Remove more sensors because they are binary sensors.
2021-04-07 09:18:07 +02:00
Stefan Agner 815db999da
Use microsecond precision for datetime values on MariaDB/MySQL (#48749)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-07 09:13:55 +02:00
Joakim Sørensen 191c01a611
Add custom integrations to analytics (#48753) 2021-04-06 19:33:08 -07:00
Joakim Sørensen 89f2f458d2
Generate a seperate UUID for the analytics integration (#48742) 2021-04-07 02:34:49 +02:00
HomeAssistant Azure 82cc5148d7 [ci skip] Translation update 2021-04-07 00:04:06 +00:00
Franck Nijhof e63e8b6ffe
Rename hassio config entry title to Supervisor (#48748) 2021-04-07 00:46:47 +02:00
J. Nick Koston d417dcb8f4
Bump pysonos to 0.0.42 to fix I/O in event loop (#48743)
fixes #48732

Changelog: https://github.com/amelchio/pysonos/compare/v0.0.41...v0.0.42
2021-04-07 00:15:36 +02:00
Philip Allgaier 030e9d314d
Fix systemmonitor IP address look-up logic (#48740) 2021-04-06 22:58:35 +02:00
Pascal Reeb fb1444c414
Add doorsensor + coordinator to nuki (#40933)
* implemented coordinator + doorsensor

* added async_unload_entry

* small fixes + reauth_flow

* update function

* black

* define _data inside __init__

* removed unused property

* await on update & coverage for binary_sensor

* keep reauth seperate from validate

* setting entities unavailable when connection goes down

* add unknown error when entity is not present

* override extra_state_attributes()

* removed unnecessary else

* moved to locks & openers variables

* removed doorsensorState attribute

* changed config entry reload to a task

* wait for reload
2021-04-06 21:20:57 +02:00
Paulus Schoutsen 09635678bc
Allow reloading top-level template entities (#48733) 2021-04-06 12:10:39 -07:00
Justin Paupore c4f9489d61
Fix infinite recursion in LazyState (#48719)
If LazyState cannot parse the attributes of its row as JSON, it prints
a message to the logger. Unfortunately, it passes `self` as a format
argument to that message, which causes its `__repr__` method to be
called, which then tries to retrieve `self.attributes` in order to
display them. This leads to an infinite recursion and a crash of the
entire core.

To fix, send the database row to be printed in the log message, rather
than the LazyState object that wraps around it.
2021-04-06 11:39:54 -07:00
Paulus Schoutsen 42d2039560
Updated frontend to 20210406.0 (#48734) 2021-04-06 20:14:54 +02:00
J. Nick Koston 46b673cdc6
Abort discovery for unsupported doorbird accessories (#48710) 2021-04-06 13:32:14 +02:00
Erik Montnemery 9f2fb37e17
Flag brightness support for MQTT RGB lights (#48718) 2021-04-06 12:39:29 +02:00
Erik Montnemery b57d02d786
Bump pychromecast to 9.1.2 (#48714) 2021-04-06 09:55:47 +02:00
J. Nick Koston 2a15ae13a7
Small improvements for emonitor (#48700)
- Check reason for config abort
- Abort if unique id is already configured on user flow
- remove unneeded pylint
2021-04-05 17:22:49 -10:00
Michael b47a90a9d8
Add AMD Ryzen processor temperatur capability to systemmonitor (#48705) 2021-04-05 17:07:22 -10:00
HomeAssistant Azure e8cbdea881 [ci skip] Translation update 2021-04-06 00:04:07 +00:00
Raman Gupta 5305d083ec
Add config flow for Waze Travel Time (#43419)
* Add config flow for Waze Travel Time

* update translations

* setup entry is async

* fix update logic during setup

* support old config method in the interim

* fix requirements

* fix requirements

* add abort string

* changes based on @bdraco review

* fix tests

* add device identifier

* Update homeassistant/components/waze_travel_time/__init__.py

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

* fix tests

* Update homeassistant/components/waze_travel_time/sensor.py

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

* log warning for deprecation message

* PR feedback

* fix tests and bugs

* re-add name to config schema to avoid breaking change

* handle if we get name from config in entry title

* fix name logic

* always set up options with defaults

* Update homeassistant/components/waze_travel_time/sensor.py

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

* Update config_flow.py

* Update sensor.py

* handle options updates by getting options on every update

* patch library instead of sensor

* fixes and make sure first update writes the state

* validate config entry data during config flow and entry setup

* fix input parameters

* fix tests

* invert if statement

* remove unnecessary else

* exclude helpers from coverage

* remove async_setup because it's no longer needed

* fix patch statements

Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-05 19:25:52 -04:00
Dylan Gore f3399aa8aa
Add a new weather integration - Met Éireann (#39429)
* Added a new weather integration - Met Éireann

* Fix codespell error

* Update met_eireann to use CoordinatorEntity

* Remove deprecated platform setup

* Fix merge conflict

* Remove unnecessary onboarding/home tracking code

* Use common strings for config flow

* Remove unnecessary code

* Switch to using unique IDs in config flow

* Use constants where possible

* Fix failing tests

* Fix isort errors

* Remove unnecessary DataUpdateCoordinator class

* Add device info

* Explicitly define forecast data

* Disable hourly forecast entity by default

* Update config flow to reflect requested changes

* Cleanup code

* Update entity naming to match other similar components

* Convert forecast time to UTC

* Fix test coverage

* Update test coverage

* Remove elevation conversion

* Update translations for additional clarity

* Remove en-GB translation
2021-04-05 23:23:57 +02:00
J. Nick Koston c28d4e8e01
Clean and optimize systemmonitor (#48699)
- Remove unneeded excinfo to _LOGGER.exception
- Use f-strings
- Switch last_boot to utc
- Cache psutil/os calls used by multiple attributes in the same update cycle
2021-04-05 21:50:22 +02:00
Raman Gupta d0b3f76a6f
Add ClimaCell v4 API support (#47575)
* Add ClimaCell v4 API support

* fix tests

* use constants

* fix logic and update tests

* revert accidental changes and enable hourly and nowcast forecast entities in test

* use variable instead of accessing dictionary multiple times

* only grab necessary fields

* add _translate_condition method ot base class

* bump pyclimacell again to fix bug

* switch typehints back to new format

* more typehint fixes

* fix tests

* revert merge conflict change

* handle 'migration' in async_setup_entry so we don't have to bump config entry versions

* parametrize timestep test
2021-04-05 13:39:39 -04:00
Paulus Schoutsen 0f757c3db2
Fix verisure deadlock (#48691) 2021-04-05 12:22:25 +02:00
J. Nick Koston 0544d94bd0
Update all systemmonitor sensors in one executor call (#48689)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-04 22:11:57 -10:00
J. Nick Koston 12e3bc8101
Provide api to see which integrations are being loaded (#48274)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-04 22:11:44 -10:00
J. Nick Koston e925fd2228
Add emonitor integration (#48310)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-04 22:11:23 -10:00
J. Nick Koston 94fde73add
Add config flow for enphase envoy (#48517)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-04-04 22:11:06 -10:00
Alexei Chetroi 6204765835
Implement Ignore list for poll control configuration on Ikea devices (#48667)
Co-authored-by: Hmmbob <33529490+hmmbob@users.noreply.github.com>
2021-04-04 21:21:47 -07:00
J. Nick Koston 6dc1414b69
Fix sonos volume always showing 0 (#48685) 2021-04-04 20:26:55 -07:00
J. Nick Koston 30382c3dbe
Limit log spam from rest and include reason in platform retry (#48666)
- Each retry was logging the error again
- Now we set the cause of the PlatformNotReady to allow Home Assistant to log as needed
2021-04-04 20:26:18 -07:00
Robert Svensson 9ba66fe232
Add more device triggers to deCONZ integration (#48680) 2021-04-04 20:25:57 -07:00
HomeAssistant Azure d5e5450540 [ci skip] Translation update 2021-04-05 00:05:16 +00:00
J. Nick Koston 32daa63265
Use shared aiohttp.ClientSession in bond (#48669) 2021-04-05 00:12:58 +02:00
Franck Nijhof 9553ae8196
Upgrade wakonlan to 2.0.0 (#48683) 2021-04-04 23:44:43 +02:00
J. Nick Koston e008e80bcf
Cleanup sonos (#48684)
- Remove unused code
- Use async_add_executor_job
- Enforce typing
2021-04-04 23:28:29 +02:00