Commit Graph

21072 Commits (4395fe92987ecb995e933ed9c87bf391e950dbdc)

Author SHA1 Message Date
Maciej Bieniek 03ac82d440
Remove unused decorator in Airly (#35361) 2020-05-08 15:10:14 +02:00
Jesse Hills d03d90a955
Fix qBittorrent crash after caught exception (#35355) 2020-05-08 14:56:22 +02:00
Robert Svensson ddd6b9cff1
Capitalize kane610 in codeowners since scripts are case sensitive (#35375) 2020-05-08 14:14:10 +02:00
Brad Keifer 4663845ebc
Add modbus sensor string data_type (#35269)
* modbus sensor: string data_type

Adds support for a string data_type. This allows the reading of holding registers that contain ascii string data

* Add modbus sensor string data_type #35269

Fingers crossed that I am putting these file in the correct location this time

* Delete const.py

* Delete sensor.py

* Add files via upload

* modbus sensor - add string support. Upload from local dev environment

* fix executable stauts

* fix flake8 failure
2020-05-08 11:30:05 +02:00
Jesse Hills e696c08db0
Rewrite JuiceNet for async and config flow (#34365)
* Add config flow to JuiceNet

* Fix some lint issues

* Fix imports

* Abort on reconfigure / Allow multiple accounts
Abort on bad API token
Fix strings

* Remove unused variable

* Update strings

* Remove import

* Fix import order again

* Update imports
Remove some unused parameters

* Add back ignore

* Update config_flow.py

* iSort

* Update juicenet integration to be async

* Update coverage for juicenet config flow

* Update homeassistant/components/juicenet/entity.py

Co-Authored-By: J. Nick Koston <nick@koston.org>

* Black

* Make imports relative

* Rename translations folder

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-08 00:52:20 -05:00
shbatm 4ec88b41dc
Migrate ISY994 to PyISY v2 (#35338)
* Remove unnecessary pylint exceptions

* Move up some change to binary_sensors and switch. Fix program d.s.a's.

* ISY994 Basic support for PyISYv2

- Bare minimum changes to be able to support PyISYv2.
- Renaming imports and functions to new names.
- Use necessary constants from module.
- **BREAKING CHANGE** Remove ISY Climate Module support.
    - Climate module was retired on 3/30/2020: [UDI Annoucement](https://www.universal-devices.com/byebyeclimatemodule/)
- **BREAKING CHANGE** Device State Attributes use NodeProperty
    - Some attributes names and types will have changed as part of the changes to PyISY. If a user relied on a device state attribute for a given entity, they should check that it is still there and formatted the same. In general, *more* state attributes should be getting picked up now that the underlying changes have been made.
- **BREAKING CHANGE** `isy994_control` event changes (using NodeProperty)
    - Control events now return an object with additional information. Control events are now parsed to the friendly names and will need to be updated in automations.
Remove cast

* PyISY v2.0.2, add extra UOMs, omit EMPTY_TIME attributes

* Fix typo in function doc string.

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

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-07 23:15:42 -05:00
MatthewFlamm 7ac547a6e0
Enable async_update for entities in NWS (#35048)
* enable async_update for entities

* make platinum

* add manual update test
2020-05-07 22:43:43 -05:00
jjlawren 91730fe6a9
Bump plexwebsocket to 0.0.8 (#35351) 2020-05-07 21:35:28 -04:00
Franck Nijhof 2223592486
Add get_url helper, deprecate base_url (#35224) 2020-05-08 02:29:47 +02:00
Martin Hjelmare 7e4aa2409f
Add zwave_mqtt light platform (#35337) 2020-05-07 23:52:54 +02:00
J. Nick Koston 6146eaa350
Update pymyq to 2.0.2 (#35330) 2020-05-07 10:32:29 -07:00
Quentame 0ed25e9f4e
Fix Synology DSM discovery can't be ignored (#35331) 2020-05-07 10:31:35 -07:00
Xiaonan Shen 9d5704307a
Fix roomba 980 position report (#35316) 2020-05-07 10:04:13 -07:00
stickpin a38bb5b33b
Add Homekit cameras codecs (#35238)
* Homekit cameras - Add codecs support

* Add valid_codecs + move audio application parameter

* Increase video bufsize

* Increase audio bufsize

* Update config flow to be aware of the copy option

* Add tests for copy video and audio codec

* remove unused from test

* remove unused from test

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-07 09:55:09 -05:00
Markus Bong 5e33842ce0
Add devolo home control (#33181) 2020-05-07 16:08:51 +02:00
Robert Svensson 53f64bae09
UniFi - Make devices proper push based (#35152)
* Make devices proper push based

* Improve tests

* Bump dependency to v21
Update fix from #35295 to use library
2020-05-07 09:58:04 +02:00
jjlawren dfe2a457c0
Handle config with a limited Plex account (#35218) 2020-05-06 18:46:00 -07:00
Paulus Schoutsen 64ce8e970f
Fix SMS doing I/O in event loop (#35313) 2020-05-06 18:42:47 -07:00
Aaron Bach eb826e5956
Fix incorrect device registry call in Notion (#35306) 2020-05-06 18:42:32 -07:00
Aaron Bach 1d6a20228b
Add state reproduction to the alert component (#35267) 2020-05-06 17:02:21 -06:00
Xiaonan Shen 33077f0cdd
Add config flow support to songpal integration (#34714)
* Add config flow to songpal

* Add config flow to songpal

* Add songpal to migrated service in discovery

* Improve songpal/set_sound_setting service

* Remove songpal config flow from .coveragerc omit

* Bump python-songpal to 0.12 and fix exception handling

* Revert "Improve songpal/set_sound_setting service"

This reverts commit 9be076ab52e21f268322572c36709a17d41db771.

* Code style fix

* Add connections to device_info

* Fix pylint

* Ignore braava tv

* Fix test warning

* Add @shenxn as codeowner

* Remove model from configuration data

* Get name from device in user step

* Add unload entry support

* Delete translations as it will get generated as part of CI

* Code cleanup

* Fix typo

* Remove _show_setup_form

* Change configuration from media_player to songpal

Co-authored-by: Raman Gupta <7243222+raman325@users.noreply.github.com>
2020-05-07 00:52:33 +02:00
isk0001y 541b666a86
Reset imap email content state if no email (#35123)
* no-message: If there is no message at all, replace internal state

* Apply proposed change

* apply black
2020-05-07 00:41:56 +02:00
Robert Svensson 5218b23fce
UniFi - Support SSID filter of SSIDs from access points with extra configuration (#35295) 2020-05-06 15:35:04 -07:00
Quentame 81651b0b25
Add Synology DSM scan interval option flow (#35183)
* Add Synology DSM scan interval option flow

* Add options tests

* Review: use entry.update_listeners

* Use cv.positive_int

* Try to fix "ValueError: Config entry has already been setup!"

* Fix ValueError
2020-05-07 00:15:49 +02:00
Erik Montnemery f1ecac92df
Fail tests if wrapped callbacks or coroutines throw (#35010) 2020-05-06 14:14:57 -07:00
J. Nick Koston b35306052d
Upgrade zeroconf to 0.26.1 to resolve performance regression (#35291) 2020-05-06 12:39:03 -05:00
Jason Hunter 19734e7b2c
Refactor ONVIF (#35222) 2020-05-06 09:29:59 -07:00
J. Nick Koston 3219c380c7
Provide zeroconf option to bind to only the default interface (#35281)
By default zeroconf binds to every interface.
2020-05-06 09:16:59 -05:00
Rami Mosleh 35d8890f4e
Fix Islamic prayer sensor timestamp format (#35243) 2020-05-06 15:17:40 +02:00
jan iversen 1b3f9254bc
Add retry on empty modbus messages for serial protocol (#34678) 2020-05-06 14:08:43 +02:00
jan iversen 1b02410aa6
Change Modbus switch to use verify_register when defined (#34679) 2020-05-06 14:07:09 +02:00
Fredrik Erlandsson d8222a8eb6
Update pydaikin to 2.0.0 (#34807) 2020-05-06 13:59:07 +02:00
Alexei Chetroi c71a7b901f
New configuration flow for ZHA integration (#35161)
* Start gateway using new zigpy init.

Update config entry data  import.
Use new zigpy startup.
Fix config entry import without zha config section.
Auto form Zigbee network.

* Migrate config entry.

* New ZHA config entry flow.

Use lightweight probe() method for ZHA config entry validation when
available. Failback to old behavior of setting up Zigpy app if radio lib
does not provide probing.

* Clean ZHA_GW_RADIO

* Don't import ZHA device settings.

* Update config flow tests.

* Filter out empty manufacturer.

* Replace port path with an by-id device name.

* Rebase cleanup

* Use correct mock.

* Make lint happy again

* Update tests/components/zha/test_config_flow.py

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

* Update tests/components/zha/test_config_flow.py

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

* Update tests/components/zha/test_config_flow.py

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

* Use executor pool for IO

* Address comments.

Use AsyncMock from tests.

* Use core interface to test config flow.

* Use core interface to test config_flow.

* Address comments. Use core interface.

* Update ZHA dependencies.

* Schema guard

* Use async_update_entry for migration.

* Don't allow schema extra keys.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-05-06 12:23:53 +02:00
Xiaonan Shen 2581b031d9
Fix fan not checking supported_features (#35248)
* Fix fan not checking supported_features

* Fix pylint

* Fix test

* Code cleanup

* Fix fan demo

* Code style improvement
2020-05-06 09:58:07 +02:00
Paulus Schoutsen 1c5b4dbd97
Add current step that is in progress (#35272) 2020-05-05 21:34:51 -07:00
Bryant Lee 56beec1ce9
Add zwave workaround identification for Kwikset 916 and Kwikset Obsidian (#35277) 2020-05-06 04:39:29 +02:00
Andi 14190bd497
Fix pyload API statusServer doesn't take parameters (#35242)
* pyload API statusServer doesn't take parameters

Remove json payload from API call to statusServer for retrieving current download speed. 
See maintainers message in: pyload/pyload#3622 (comment)

Skip duplicated call to update function.

* Lint sensor.py

remove empty line
2020-05-06 02:35:02 +02:00
jjlawren 740d9c575e
Add manual config flow for Plex (#34476) 2020-05-05 15:42:21 -07:00
Paulus Schoutsen a330eba61c
Guard bad entity ID in entity registry (#35271) 2020-05-05 15:07:54 -07:00
Aaron Bach 87d58a544b
Broader Notion exception handling (#35265) 2020-05-05 13:56:32 -06:00
Franck Nijhof 9983c43697
Add issue_tracker property to manifest (#35153) 2020-05-05 11:00:00 -07:00
Paulus Schoutsen 4ae31bc938
Clean up device registry if entity registry updates (#35106) 2020-05-05 10:53:46 -07:00
Bram Kragten 2ac29cf1a4
Updated frontend to 20200505.0 (#35253) 2020-05-05 10:42:02 -07:00
gadgetmobile 8e071b69f4
Add BleBox integration (#32664)
Co-Authored-By: J. Nick Koston <nick@koston.org>
2020-05-05 11:29:58 +02:00
David Straub 86d410d863
Add Home Connect integration (#29214) 2020-05-05 11:26:14 +02:00
Paulus Schoutsen 6b9eed5a70 Fix string 2020-05-04 21:31:23 -07:00
shbatm e45f2cf5a2
ISY994 Structure updates in prep for PyISYv2 (Part 2) (#35225)
- Move core Entity Class definitions to separate file.
- New ISYNodeEntity and ISYProgramEntity base classes.
- Update inheriances on other classes.
- Move helper functions to separate file.
2020-05-04 23:03:12 -05:00
Ziv 710deb8316
Strict creation of the config for dynalite (#34663) 2020-05-04 20:30:24 -07:00
Paulus Schoutsen 34e35f6aa3
Add config flow base strings (#34523) 2020-05-04 20:10:39 -07:00
Alexei Chetroi 0e17f619c8
Bump up pyserial dependency (#35201) 2020-05-04 22:33:21 -04:00
Charles Garwood de636cce6f
Add zwave_mqtt sensor platform (#35135)
* Add sensor platform

* Fix signal name

* Add sensor discovery schema

* Add test for disabled entities

* Add test for enabling advanced sensor

* Add additional fake sensors and tests for device classes

* More device class tests

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2020-05-04 22:07:29 -04:00
Franck Nijhof a3071571ac
Fix UVC doing I/O inside the event loop (#35169) 2020-05-04 18:02:09 -07:00
escoand f885e97a5b
Catch samsungtv timeout exception (#35205) 2020-05-05 02:50:59 +02:00
Diogo Gomes 53c1aba7df
Fix utility_meter calibration with float values (#35186) 2020-05-05 02:44:00 +02:00
Paulus Schoutsen 96b84ff348
Fix AdGuard device info (#35217) 2020-05-05 02:30:21 +02:00
shbatm 4be1006b71
ISY994 migration to PyISY v2 (Structure Changes to enable upgrade, Part 1) (#35212)
* ISY994 Structure updates in prep for PyISYv2 (Part 1)

- Correct node categorization.
- Move constants to separate file.
- Consolidate Logging to Constants file.
- Use Home Assistant Constants where possible.
- Use string literals where possible.
- Rename "domain" to "platform" in most places.
- Add additional device support (NODE_FILTER updates).

* Update categorize_programs per review

* add @shbatm as codeowner for ISY994 integration
2020-05-04 19:21:40 -05:00
Greg Thornton dd715fcc3a
Add homekit camera support (#32527)
* Add homekit camera support

* Cleanup pyhapcamera inheritance

* Add camera to homekit manifest

* Use upstream pyhap server handler in homekit

* Remove unused homekit constants

* Fix lint errors in homekit camera

* Update homekit camera log messages

* Black after conflict fixes

* More conflict fixes

* missing srtp

* Allow streaming retry when ffmpeg fails to connect

* Fix inherit of camera config, force kill ffmpeg on failure

* Fix audio (Home Assistant only comes with OPUS)

* Fix audio (Home Assistant only comes with OPUS)

* Add camera to the list of supported domains.

* add a test for camera creation

* Add a basic test (still needs more as its only at 44% cover)

* let super handle reconfigure_stream

* Remove scaling as it does not appear to be needed and causes artifacts

* Some more basic tests

* make sure no exceptions when finding the source from the entity

* make sure the bridge forwards get_snapshot

* restore full coverage to accessories.py

* revert usage of super for start/stop stream

* one more test

* more mocking

* Remove -tune zerolatency, disable reconfigure_stream

* Restore -tune zerolatency

Co-authored-by: John Carr <john.carr@unrouted.co.uk>
Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-04 19:03:46 -05:00
Erik Montnemery f9b420a5a5
Make sure MQTT light brightness is not rounded to 0 (#35207) 2020-05-04 15:54:49 -07:00
Quentame 94b6130af6
Fix Synology DSM sensor to be False or 0 (#35208) 2020-05-04 23:19:08 +02:00
Aaron Bach 953228ebd2
Allow use of common entity update service in AirVisual (#35203) 2020-05-04 15:09:09 -06:00
Phil Bruckner d8ebdda714
Move life360 I/O out of event loop in config flow (#35193) 2020-05-04 14:58:16 -05:00
David F. Mulcahey 8279efc164
Group by endpoints and not by devices for ZHA Zigbee groups (#34583)
* start implementation
* handle members correctly
* fix group member info
* align groupable devices with group members
* handle group endpoint adding and removing
* update add group
* update group and group member
* update create group
* remove domain check
* update test
* remove temporary 2nd groupable device api
* update test
* rename validator - review comment
* fix test that was never running
* additional testing
* fix coordinator descriptors
* remove check that was done twice
* update test
* Use AsyncMock()
Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2020-05-04 15:19:53 -04:00
Paulus Schoutsen e54e9279e3
Extract instance ID helper from updater (#35043) 2020-05-04 11:23:12 -07:00
Anders Melchiorsen b3e637ca7a
Some Sonos fixes (#35115) 2020-05-04 11:22:47 -07:00
Steven Looman ee07fac9bc
Simplification of upnp component (#35191) 2020-05-04 10:30:43 -07:00
Robert Svensson c5ce95ff06
UniFi - Improve signalling and handling of adding new entities (#34925)
* Change signalling and handling of adding devices

* Bump aiounifi to v19
Use the proper variable for roamradio
2020-05-04 19:29:49 +02:00
rajlaud dbf383f713
Squeezebox add query and sync (#31748)
* Add query and sync

* Update description of call_query

* Remove backup files accidentally committed to repo

* Update after pysqueezebox refactor

* Use entity service helper

* Implement suggested changes

* Fix linter error in services.yaml

* Fix long lines in services.yaml
2020-05-04 10:20:21 -04:00
Fabian Affolter 7f2c6b43d2
Upgrade pytz to 2020.1 (#35174) 2020-05-04 15:16:37 +02:00
Xiaonan Shen de628602c2
Remove `certificate` configuration variable from roomba (#35162)
* Remove certificate option from roomba

* Fix roomba test

* Add back certificate with deprecated flag

* Remove invalidation_version
2020-05-04 08:28:32 -04:00
Fabian Affolter 5e3555022f
Upgrade alpha_vantage to 2.2.0 (#35172) 2020-05-04 08:07:54 -04:00
Fabian Affolter ad94ccdd6c
Upgrade zeroconf to 0.26.0 (#35176) 2020-05-04 08:07:10 -04:00
David Beitey 7a73c6adf7
scrape: extract strings from new non-text tags (#35021)
With the upgrade to beautifulsoup4 to 4.9.0 (#34007), certain tags
(`<style>`, `<script>` and `<template>`) are no longer treated as having
text content (see
https://www.crummy.com/software/BeautifulSoup/bs4/doc/#comments-and-other-special-strings
and reported bug https://bugs.launchpad.net/beautifulsoup/+bug/1868861)
meaning the content of these types of tags became inaccessible to HA.

Where the previous code could access `.text` on the tag, bs4 4.9 now
yields an empty string; these types of tags require accesing `.string`
instead.  This PR checks the tag name (which will aalways be lowercase
given how the parser works;
https://www.crummy.com/software/BeautifulSoup/bs4/doc/#other-parser-problems)
and applies this different access strategy to get the content of the
HTML tag.  All other tags are handled in the original manner.
2020-05-04 10:45:40 +02:00
Josef Schlehofer 49979d0a75
Upgrade cryptography to 2.9.2 (#35084) 2020-05-04 10:38:26 +02:00
Franck Nijhof 96a998ad25
Fix Canary KeyError: 'ffmpeg_arguments' (#35158) 2020-05-04 10:35:40 +02:00
Thomas Hollstegge c5379a0f35
Improve emulated_hue compatibility with newer systems (#35148)
* Make emulated hue detectable by Busch-Jaeger free@home SysAP

* Emulated hue: Remove unnecessary host line from UPnP response

* Test that external IPs are blocked for config route

* Add another test for unauthorized users

* Change hue username to nouser

nouser seems to be used by the official Hue Bridge v1 Android app and is
used by other projects as well

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-04 00:18:33 -05:00
Andreas Oberritter 73fb57fd32
Support multiple EDL21 meters (#33594)
* edl21: Add 'name' option

* edl21: Include domain and electricity ID in unique ID

As a side-effect, this makes electricity IDs mandatory, i.e. devices
which don't transmit their ID won't register any sensors.

* edl21: Implement upgrade path for unique IDs

* Update homeassistant/components/edl21/sensor.py

Drop DOMAIN from unique ID.

Co-Authored-By: J. Nick Koston <nick@koston.org>

Co-authored-by: J. Nick Koston <nick@koston.org>
2020-05-03 23:20:00 -05:00
Thomas Hollstegge e4e89becc6
Return emulated hue id for update requests (#35139)
* Return emulated hue id for update requests

* Emulated Hue: Rename function argument to match its content

* Use HTTP status consts throughout the test

* Use HTTP status consts in UPnP test
2020-05-03 19:27:19 -05:00
Quentame 7e36699aac
Bump pyiCloud to 0.9.7 + do not warn when pending devices (#35156) 2020-05-04 01:22:12 +02:00
Paulus Schoutsen 5b7daa9e0c
Hue: Guard for when there is no brightness (#35151) 2020-05-03 19:21:10 -04:00
Ron Heft 42750088b9
Add support for refreshing synology_dsm sensors (#35141)
* Add support for refreshing synology_dsm sensors

Now supports `home_assistant.update_entity` service

* Don't immediately update sensors on add

This fixes all sensors being forcefully refreshed when setup.
2020-05-04 01:07:14 +02:00
Franck Nijhof e7b9cecec9
Upgrade numpy to 1.18.4 (#35150) 2020-05-03 23:50:13 +02:00
Franck Nijhof 540cb6ea5b
Upgrade spotipy to 2.12.0 (#35149) 2020-05-03 23:49:36 +02:00
Martin Hjelmare 39431c0764
Add required features to cover service registration (#35073)
* Fix typing in component service method

* Add required features to cover service registration

* Fix template cover tilt features

* Delint template cover tests
2020-05-03 23:21:12 +02:00
Paulus Schoutsen b90cb09fd1
Add type to device registry (#35095) 2020-05-03 13:56:58 -07:00
J. Nick Koston 6f6c670b3b
Make alexa and google aware of DEVICE_CLASS_GATE (#35103) 2020-05-03 13:29:12 -07:00
Michael Bisbjerg e7fc886992
Simplify MQTT light brightness logic (#35097) 2020-05-03 18:48:24 +02:00
On Freund 90fbb150e7
Use suggestd_value instead of default in Monoprice options flow (#35107) 2020-05-03 15:18:25 +02:00
Daniel Høyer Iversen 5a2528b0f1
Tibber config flow (#34469)
* tibber config, wip

* read config from yaml

* sync requirements

* style

* add model property

* unique id

* unique id

* Tibber config, unique id

* test doc

* tibber config, update title

* append _el_price

* Update homeassistant/components/tibber/__init__.py

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>

* unique id

* tibber config flow

* tibber config flow

* fix test for python 3.8

* update test imports

* move _async_current_entries

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2020-05-03 14:40:19 +02:00
Ben d644b610b7
Increase surepetcare default timeout (#34944)
* add timeout parameter and increase default timeout

* remove timeout param

* revert BinarySensorDevice to BinarySensorEntity

* make isort happy

* make isort happy - again
2020-05-03 13:58:59 +02:00
On Freund e0bcd0049c
Fix unloading of Monoprice config entries (#35112) 2020-05-03 13:49:18 +02:00
On Freund a44724fdcc
Add codeowner to Monoprice integration (#35111) 2020-05-03 13:45:39 +02:00
Joakim Sørensen de7f82e18e
Correct typo Asssitant -> Assistant (#35117) 2020-05-03 11:36:06 +02:00
Quentame 661656e373
Fix Synology NAS discovered multiple times (#35094) 2020-05-02 22:46:55 -07:00
pdcemulator f37f488cc3
Add support for influxdb path parameter (#35089) 2020-05-02 22:12:54 -04:00
Steven Looman 6afb42bf7a
Improve UPnP configuration flow (#34737) 2020-05-02 18:03:54 -07:00
Martin Hjelmare aeb891649e
Add zwave mqtt (#34987) 2020-05-03 02:54:16 +02:00
ochlocracy 984a2769db
Correct error message in Microsoft Face (#35096) 2020-05-02 17:39:51 -07:00
HomeAssistant Azure 78f846d532 [ci skip] Translation update 2020-05-03 00:02:26 +00:00
Ville Skyttä 752679c55d
Check isinstance on collections.abc, not typing classes (#35087) 2020-05-02 23:57:48 +02:00
Ville Skyttä 5450cda3a5
Async vs sync inheritance mismatch fixes (#35088) 2020-05-02 14:35:55 -07:00