Commit Graph

8543 Commits (067b5258c6bad7d020d3414449ec7aaffbd5be8a)

Author SHA1 Message Date
Xuefer 2a47805b4a
Close onvif device cleanly (#49659)
* onvif: close device cleanly

Signed-off-by: Xuefer <xuefer@gmail.com>

* onvif: Too many nested blocks

Signed-off-by: Xuefer <xuefer@gmail.com>

* update tests to cover onvif config_flow

Signed-off-by: Xuefer <xuefer@gmail.com>
2021-05-24 15:27:40 -04:00
Maciej Bieniek 12e2c59a4c
Improve typing in DuneHD integration (#51025)
* Improve typing

* One more typing fix

* Run hassfest

* Fix test

* Fix return from constructor

* Add missing Final

* Improve long string format

* Use bool for mute

* Remove unnecessary str type

* Fix host type

* Add missing Final

* Increase test coverage

* Suggested change

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>

Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-05-24 20:09:57 +01:00
Raman Gupta ebf6e3d985
Add zwave_js WS API commands to replace and remove failed nodes (#51018)
* Add zwave_js WS API commands to replace and remove failed nodes

* no need to manually add node to driver in test
2021-05-24 13:11:09 -04:00
Simone Chemelli 987e8ed5ed
Add consider_home option to Fritz device_tracker (#50741)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-05-24 09:54:57 -05:00
Nash Kaminski 2ae91bf0ea
Correct humidifier detection in venstar component and add tests (#50439)
As of version 0.14, the venstar_colortouch lib always initializes hum_setpoint to None. When a thermostat actually reports a humidifier state, this value is replaced with the integer value of the setpoint. This changeset corrects the humidifier detection as well as adds basic test cases for the Venstar component.
2021-05-24 16:41:37 +02:00
jan iversen c74e65ac2d
Streamline modbus test_init (#50990)
* Streamline test_init.

* Review comments.

* Remove hub name.
2021-05-24 14:53:54 +02:00
jan iversen 1546dbbf25
Add restore temperature to modbus climate (#50963)
* Add restore temperature to climate.

* please mypy.

* Review 2.
2021-05-24 14:03:44 +02:00
jacekpaszkowski 85495c08b0
Add support for effects, transition/brightness parameters to template light, min_mireds and max_mireds templates (#43850)
* Add support for effects, transition/brightness parameters to template light, min_mireds and max_mireds templates

* code fixes

* min_mireds, max_mireds fixes

* test fixes

* more fixes

* format fix

* style fix

* _update_effect_list change

* style fix

* Fixes after review

* additional fixes

* duplicated lines removed

* fixes after CI run

* test fixes

* code and test fixes

* supports transition change, added test cases
2021-05-24 13:31:57 +02:00
hesselonline c497c0eadd
Add wallbox integration (#48082)
* Wallbox component added

* resolved mergeconflicts from upstream

* fixed an incorrect removal in CODEOWNERS file

* fixes for pullrequest automatic test

* clean up code after PR tests

* fixed strings.json

* fix config_flow error > wallbox

* fixed some formatting issues

* fix pylint warnings

* fixed error in number.py > set value

* pylint warnings fixed

* some more pylint fixes

* isort fixes

* fix unused_import pylint

* remove tests

* remove test requirements

* config flow test

* test errors resolved

* test file formatting

* isort on test file

* sensor test

* isort on test

* isort test const

* remove not working sensor test

* remove test const

* add switch, number and lock test

* docstrings for test classes

* sort test_number, create test_sensor

* additional tests

* fix test error

* reduced PR to 1 component

* newline in const

* ignore test coverage -> dependency on external device (wallbox)

* do not ignore config_flow

* add test for validate_input

* remove obsolete import

* additional test config flow

* change test sensor

* docstring

* add additional test for exceptions

* fix test_config

* more tests

* fix test_config_flow

* fixed http error test

* catch connectionerror and introduce testing for this error

* remove .coveragefile

* change comment

* Update homeassistant/components/wallbox/__init__.py

review suggestion by janiversen

Co-authored-by: jan iversen <jancasacondor@gmail.com>

* Update homeassistant/components/wallbox/__init__.py

review suggestion by janiversen (format only)

Co-authored-by: jan iversen <jancasacondor@gmail.com>

* Processed review comments, include more testing for sensor component

* Isolated the async_add_executor_job to make the solution more async

* add a config flow test

* Revert "add a config flow test"

This reverts commit 9c1af82fff.

* Revert "Isolated the async_add_executor_job to make the solution more async"

This reverts commit 0bf034c331.

* Make component more async and add config flow tests

* Changes based on review comments

* made _ methods in WallboxHub for the 'non-async' call to the API and try-catch. Stored the wallbox in the class.

* moved the coordinator to __init__ and pass it as part of the WallboxHub class

* removed obsolete function in __init__

* removed CONNECTION_CLASS = config_entries.CONN_CLASS_CLOUD_POLL

* fixed spelling and imports on test files

* did isort on component files

Co-authored-by: jan iversen <jancasacondor@gmail.com>
2021-05-24 13:08:24 +02:00
jan iversen be13a73db8
Allow manual scan and add delay in switch verify. (#50974) 2021-05-24 12:59:55 +02:00
Erik Montnemery 2583e4bdc9
Add support for RGBW color to blebox light (#49562) 2021-05-24 12:24:07 +02:00
Michael 51c8b1eb0b
Improve code quality of TCP platform (#51000)
* Improve code placements

* Fix entity inheritance

* fix tests

* Improve PLATFORM_SCHEMA handling

* Apply suggestions
2021-05-24 11:03:43 +01:00
Erik Montnemery 870c61a622
Add color_mode support to MQTT light with basic schema (#50464)
* Add color_mode support to MQTT light with basic schema

* Update abbreviations

* Silence pylint

* Improve test coverage

* Apply suggestions from code review
2021-05-24 11:37:02 +02:00
Eduard van Valkenburg 0bba0f07ac
Add SIA Alarm systems (#36625)
* initial commit of SIA integration

* translations

* moved reactions to file, typed everything

* fixed no-else-return 3 times

* refactored config and fix coverage of test

* fix requirements_test

* elimated another platform

* forgot some mentions of sensor

* updated config flow steps, fixed restore and small edits

* fixed pylint

* updated config_flow with better schema, small fixes from review

* final comment and small legibility enhancements

* small fix for pylint

* fixed init

* fixes for botched rebase

* fixed port string

* updated common strings

* rebuild component with eventbus

* fixed pylint and tests

* updates based on review by @bdraco

* updates based on new version of package and reviews

* small updates with latest package

* added raise from

* deleted async_setup from test

* fixed tests

* removed unused code from addititional account step

* fixed typo in strings

* clarification and update to update_data func

* added iot_class to manifest

* fixed entity and unique id setup

* small fix in tests

* improved unique_id semantics and load/unload functions

* added typing in order to fix mypy

* further fixes for typing

* final fixes for mypy

* adding None return types

* fix hub DR identifier

* rebased, added DeviceInfo

* rewrite to clean up and make it easier to read

* replaced functions with format for id and name

* renamed tracker remover small fix in state.setter

* improved readibility of state.setter

* no more state.setter and small updates

* mypy fix

* fixed and improved config flow

* added fixtures to test and other cleaner test code

* removed timeband from config, will reintro in a options flow

* removed timeband from tests

* added options flow for zones and timestamps

* removed type ignore

* replaced mapping with collections.abc
2021-05-24 08:48:28 +02:00
HighOnMikey c1a1a38ffc
Improve legacy support for Hunter Douglas PowerView (#50918)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-05-23 12:47:19 -05:00
jan iversen f55213d8b1
Update modbus cover to 100% coverage (#50996) 2021-05-23 10:18:35 -05:00
J. Nick Koston 4b0b0f5db7
Allow user to override insecure setup codes and pair with homekit_controller (#50986)
* Allow user to override invalid setup codes and pair with homekit_controller

* adjust from manual testing

* invalid -> insecure
2021-05-23 10:15:38 -05:00
Matt Zimmerman 87438dd401
Add services to SmartTub for changing filtration settings (#46980)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-05-23 09:00:24 -05:00
J. Nick Koston e1b6385b4d
Add support for doorbell buttons to homekit_controller (#50983) 2021-05-23 08:56:16 -05:00
jjlawren 29205a9239
Sonos use common firmware version (#50861) 2021-05-23 08:43:49 -05:00
Joakim Sørensen 7ff14b47a8
Use whoami for location lookup (#50934) 2021-05-22 20:34:48 -07:00
Shay Levy c7ada1e8f6
Fix flaky Shelly config flow test (#50982) 2021-05-23 02:11:02 +03:00
J. Nick Koston 45897b59f2
Turn on samsungtv with wakeonlan (#50964)
If we have the mac address from discovery, we can use it to wake
the TV.  Currently the TV goes unavailable when you turn it off
as the only way to turn it back on is wake on lan or via the remote.

Users who are not using host networking can use a script instead.
2021-05-22 15:33:37 -05:00
Franck Nijhof e64b5afa58
Typing improvements for Sentry (#50787)
* Typing improvements for Sentry

* Fix event tags access

* Fix tests
2021-05-22 19:09:19 +02:00
Simone Chemelli b9a0fb93eb
Add samsungtv dhcp and zeroconf discovery (#48022)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-05-22 10:41:18 -05:00
PeteBa aa9b99713c
Add purge_entities service call to recorder (#48069) 2021-05-22 10:30:05 -05:00
jan iversen 59ae78e5f0
Add restore_state to modbus binary_sensor (#50922)
* Add restore_state to binary_sensor.

* Update return value in State.
2021-05-22 13:38:05 +02:00
Raman Gupta 92d1871de5
Fix flaky vizio test and add comments to explain logic (#50948) 2021-05-22 08:57:30 +02:00
Ruslan Sayfutdinov 42ff687c32
Add missing type hints to websocket_api (#50915) 2021-05-21 09:39:18 -07:00
Erik Montnemery dc65f279a7
Add support for state_class to MQTT sensor (#50927) 2021-05-21 17:37:26 +02:00
Shay Levy 6e087039f4
Add min/max/step to MQTT number (#50869) 2021-05-21 18:35:27 +03:00
Martin Hjelmare 07e2f53b37
Add zwave_js add-on info dataclass (#50776) 2021-05-21 13:47:37 +02:00
Erik Montnemery 0c40f37336
Set device_class and state_class for utility_meter (#50921)
* Set device_class and state_class for utility_meter

* Update test

* Tweak tests according to review comments
2021-05-21 13:23:20 +02:00
Erik Montnemery 73d7a754e8
Mark temperature sensors as STATE_CLASS_MEASUREMENT (#50889)
* Mark temperature sensors as STATE_CLASS_MEASUREMENT

* Fix broadlink tests

* Tweak Hue changes
2021-05-21 11:44:34 +02:00
Vladimír Záhradník c979101a02
Add Modbus fan integration (#48558)
* Add Modbus fan entity

* Update to PR.

* Pylint.

Co-authored-by: jan Iversen <jancasacondor@gmail.com>
2021-05-21 09:56:47 +02:00
Vladimír Záhradník 80d172140f
Add Modbus light integration (#42120)
* Add  Modbus Light and add unit tests

* Update to original PR.

* Review comments.

* Review 2.

Co-authored-by: jan Iversen <jancasacondor@gmail.com>
2021-05-21 08:57:17 +02:00
Ville Skyttä 19d25cd901
Change config entry state to an enum (#49654)
* Change config entry state to an enum

* Allow but deprecate EntryState str equality comparison

* Test fixes

* Rename to ConfigEntryState

* Remove str comparability backcompat

* Update new occurrences of strs cropped up during review
2021-05-20 19:19:20 +02:00
epenet d7c0da90c5
Add support for DS2405 (#50148) 2021-05-20 17:02:25 +02:00
Fredrik Tuomas a65d3868cb
Add support for EDS0066 (#50035)
* Add support for EDS0066

* Added a test

* Corrected entity_ids

* Added missing part of sensor entity id

* Add type hint

* Update tests/components/onewire/const.py

Co-authored-by: jan iversen <jancasacondor@gmail.com>

* Update tests/components/onewire/const.py

Co-authored-by: jan iversen <jancasacondor@gmail.com>

* Revert "Update tests/components/onewire/const.py"

This reverts commit 4a01b89868.

* Revert "Update tests/components/onewire/const.py"

This reverts commit 151eb9c0d3.

Co-authored-by: jan iversen <jancasacondor@gmail.com>
2021-05-20 15:39:34 +02:00
Tobias Sauerwein ceec871340
Make Netatmo use async pyatmo (#49717)
* Split initialization from data retrival

* Await class initialization

* Async camera

* More async

* Remove stale code

* Clean up

* Update tests

* Fix test

* Improve error handling

* Bump pyatmo version to 5.0.0

* Add tests

* Add cloudhook test

* Increase coverage

* Add test with no camera devices

* Add test for ApiError

* Add test for timeout

* Clean up

* Catch pyatmo ApiError

* Fix PublicData

* Fix media source bug

* Increase coverage for light

* Test webhook with delayed start

* Increase coverage

* Clean up leftover data classes

* Make nonprivate

* Review comments

* Clean up stale code

* Increase cov

* Clean up code

* Code clean up

* Revert delay

* Update homeassistant/components/netatmo/climate.py

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

* Update homeassistant/components/netatmo/sensor.py

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

* Address comment

* Raise cov

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-20 14:59:19 +02:00
Erik Montnemery e16a8063a5
Compile statistics for energy sensors (#50829)
* Compile statistics for energy sensors

* Update tests

* Rename abs_value to state

* Tweak

* Recreate statistics table

* Pylint

* Try to fix test

* Fix statistics for multiple energy sensors

* Fix energy statistics when last_reset is not set
2021-05-20 13:05:15 +02:00
Erik Montnemery d4d335fb9c
Fix MQTT debug info for removed triggers (#50859) 2021-05-20 10:27:38 +03:00
Paulus Schoutsen 2976bbbbdd
Store Hue bridge in hass.data before setting up platforms (#50703)
* Store bridge in hass.data before setting up platforms

* Self
2021-05-20 09:08:23 +02:00
Felipe Martins Diel 7350942e9e
Implement heartbeat in the Broadlink integration (#43878)
* Implement heartbeat in the Broadlink integration

* Rename INTERVAL to HEARTBEAT_INTERVAL

* Test that we log an error message when the heartbeat fails
2021-05-20 08:10:13 +02:00
shbatm a49d5c4266
Add ISY994 System Health Info (#50840)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-05-19 19:10:09 -05:00
Erik Montnemery 5ee362bc34
Store sensor last_reset attribute as a string, not a datetime (#50851)
* Store last_reset attribute as a string, not a datetime

* Update tests
2021-05-19 12:28:00 -07:00
jan iversen 892a2a0372
Push modbus switch to 100% test coverage (#50324)
push modbus switch to 100% test coverage.
2021-05-19 15:05:29 +02:00
Michael Klamminger 7c7432a582
Add entity_id to mqtt sensor templates (#50773)
* Add entity_id to mqtt sensor

* update test comment
2021-05-19 14:38:18 +02:00
Shay Levy 109b08bb57
Remove MQTT cover deprecated options (#50263)
* Remove MQTT cover deprecated options

* Fix pylint
2021-05-19 14:34:20 +02:00
Maciej Bieniek f192702648
Add Nettigo Air Monitor uptime sensor (#50834) 2021-05-19 13:20:11 +02:00
Maciej Bieniek bce5f8ee05
Improve AccuWeather type annotations (#50616)
* Improve type annotations

* Remove unused argument

* Simplify state logic

* Fix uvindex state

* Fix type for logger

* Increase tests coverage

* Fix pylint arguments-differ error

* Suggested change

* Suggested change

* Remove unnecessary variable

* Remove unnecessary conditions

* Use int instead of list for forecast days

* Add enabled to sensor types dicts

* Fix request_remaining conversion and tests

* Run hassfest

* Suggested change

* Suggested change

* Do not use StateType
2021-05-19 09:37:16 +01:00
Ruslan Sayfutdinov 62386c8676
Enable type checks for device_tracker (#50805)
* Enable type checks for device_tracker

* Fix MQTT test
2021-05-19 09:36:26 +01:00
Tobias Sauerwein 3ed416ed4c
Bump pyatmo to 4.2.3 (#50801)
* Bump pyatmo to 4.2.3

* Fix typo and update test fixture
2021-05-19 08:47:06 +02:00
J. Nick Koston f1d02bb137
Expand homekit zeroconf matching to use fnmatch (#50381) 2021-05-19 00:20:56 -05:00
shbatm 775af9d2c5
Update PyISY to v3.0.0 and ISY994 to use Async IO (#50806) 2021-05-18 14:15:47 -05:00
Jan Bouwhuis 9abf43f95f
Mqtt fan feature for resetting current speed `percentage` or `preset_mode` (#50565)
* Mqtt fan resetting speed percentage or preset_mode

* tests reset payload is working with val templates

* Remove duplicate line for CONF_PAYLOAD_HIGH_SPEED
2021-05-18 08:24:42 +02:00
J. Nick Koston 3cc3cacd08
Start ServiceBrowser as soon as possible in zeroconf (#50784)
Co-authored-by: Ruslan Sayfutdinov <ruslan@sayfutdinov.com>
2021-05-17 20:51:05 -07:00
Dermot Duffy 2e1037005c
Allow camera stream to fail safely (#50728) 2021-05-17 20:34:25 -07:00
Erik Montnemery 1ea0d8ae02
Correct trace of condition actions (#50800) 2021-05-17 16:54:17 -07:00
J. Nick Koston a43561e3e6
Ensure startup can proceed if async_get_integration raises (#50799)
* Ensure startup can proceed if async_get_integration raises

There were cases where the event would never get set and
startup would deadlock because the second attempt to load
the integration would block forever

* pylint

* reorder
2021-05-17 17:32:05 -05:00
J. Nick Koston e7f7e61e88
Ensure a wal checkpoint is scheduled nightly (#50746) 2021-05-17 16:27:51 -05:00
Paulus Schoutsen f762d3c748
Fire time changed event in Hue tests (#50783) 2021-05-17 22:03:47 +02:00
Ruslan Sayfutdinov 5ad71b5e45
Define sync hass.create_task function (#50788) 2021-05-17 14:54:06 -05:00
Paulus Schoutsen 1e10772497
Add support for local push channels to mobile_app (#50750) 2021-05-17 11:06:42 -07:00
J. Nick Koston 72288710ca
Increase the sqlite cache size from ~2MiB to 8MiB (#50747) 2021-05-17 19:42:12 +02:00
Michael Klamminger 3554316f3f
Update MQTT cover template handling (#50236)
* flake 8

* Implement feedback from PR

* update warning message

* added and updated tests

* remove _has_tilt_topic variable

* flake 8

* Implement feedback from PR

* update warning message

* added and updated tests

* remove _has_tilt_topic variable

* renamed _tilt_message_received to _tilt_payload_received

* merged with latesed upstream/dev

* converted if to try except for type check

* Implemented the suggestions of @emontnemery

* Tweak tests

* logger info to debug

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

* cast tilt payload as int; combine exceptions to one line

* Add test for JSONDecodeError

* Update homeassistant/components/mqtt/cover.py

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2021-05-17 19:31:11 +02:00
Paulus Schoutsen 56774a9f63
Hue: unique ID for groups + remote events (#50748) 2021-05-17 08:07:25 -07:00
Joakim Sørensen 2f10f59717
Block custom integrations with missing or invalid version (#49916) 2021-05-17 15:48:41 +02:00
Erik Montnemery ee4e14e45e
Hoist ATTR_LAST_RESET from utility_meter to SensorEntity (#50757) 2021-05-17 13:51:09 +02:00
Austin Mroczek a9c73ac264
Fix armed_night logic in totalconnect alarm and add tests (#50694)
* Fix armed_night, add tests for alarm

* end assertions with expected values
2021-05-17 13:18:50 +02:00
CantankerousBullMoose 9316f566c9
Rescan static wemo (#49934)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-05-17 12:18:14 +02:00
jan iversen ff856a9bba
Simplify calls to pymodbus (#50717)
* simplify pymodbus_call.

Do not call with a function object and a check attribute, call instead
with CALL_TYPE*.

Avoid if <type> call x else call y.
Call async_pymodbus_call directly, instead of unpacking/packing.

* Declare call type in __init__.

* Modbus.py back to 100% test coverage.
2021-05-17 11:20:12 +02:00
Paulus Schoutsen 5ea2dd8ce3
Alexa: Set Equalizer property to retrievable (#50730) 2021-05-17 09:26:37 +02:00
Erik Montnemery 89dd3292ba
Initial draft of statistics (#49852) 2021-05-16 10:23:37 -07:00
jan iversen 224cc779c4
Correct Modbus platform cover restore state (#50421)
* Correct cover restore state.

* Change mock usage.

* Add states to convert.
2021-05-16 08:40:19 +02:00
Dror Eiger 0556c35e24
Set zwave_js cover device_class for shutters and blinds (#50643)
* Set device_class for shutters and blinds

* Add missing. imports

* Add tests for device class setting

* Clean up

* Avoid storing the node in an unused variable

* Fix entity name

* Extend qubino shutter discovery

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-16 08:26:16 +02:00
Zac West b8713774c8
Make confirmable notification blueprint use unique actions (#50706) 2021-05-15 22:50:24 -07:00
Kevin Eifinger 256a2de7ce
Add kraken code review changes (#50683) 2021-05-15 22:55:50 +02:00
Franck Nijhof e293d35ac9
Clean up WLED tests (#50685)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-15 22:14:56 +02:00
jan iversen ca558545a1
Use mock_restore_state in testing of modbus sensor (#50455) 2021-05-15 21:39:41 +02:00
Franck Nijhof cad41cd4ed
Clean up unused method from SolarEdge tests (#50684) 2021-05-15 21:27:04 +02:00
Klaas Schoute e1dd479e15
Add Garages Amsterdam integration (#43157)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-05-15 20:43:12 +02:00
Filipe Pina 0c37effc72
Add SSL support to TCP integration (#48060)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2021-05-15 20:29:11 +02:00
Martin Hjelmare dab66a58ce
Clean smhi tests (#50681) 2021-05-15 20:22:32 +02:00
jan iversen ad7be91b6a
Fix modbus blocking threads (#50619)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-15 19:54:17 +02:00
Erik Montnemery 97d7037d12
Bump hatasmota to 0.2.13 (#50662)
* Bump hatasmota to 0.2.13

* Process review comment

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

* Tweak brightness compensation, improve tests

Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-15 19:36:08 +02:00
J. Nick Koston 8e38f26978
Add support for asair brand to nexia (#50504) 2021-05-15 16:24:36 +02:00
Franck Nijhof c9b25fe2a2
Remove YAML configuration from Local IP (#50642) 2021-05-15 13:45:10 +02:00
Franck Nijhof 7221b1e09d
Sort effect lists in light groups (#50620) 2021-05-14 21:43:43 -07:00
Erik Montnemery bcd8f43e7b
Update light intents to check supported_color_modes (#50625) 2021-05-14 14:23:29 -07:00
Erik Montnemery 960ed13f94
Update light device actions to check supported_color_modes (#50611) 2021-05-14 22:58:37 +02:00
Paulus Schoutsen 646af533f0
Add support for Hue push updates (#50591) 2021-05-14 13:39:57 -07:00
tkdrob 40993f3ebb
Add DHCP support to goalzero (#50425) 2021-05-14 13:12:46 -05:00
Simone Chemelli 4d55290932
Fritz code quality improvements from #48287 and #50055 (#50479)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-05-14 11:46:37 -05:00
Kevin Eifinger c220e70008
Add integration kraken (#31114)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-14 08:02:11 -07:00
Charles Garwood f33b45ec82
Add interview feedback for Z-Wave JS add node websocket (#50384)
* Add interview feedback for add node websocket

* cleanup leftover logging

* add tests

* test interview failed event

* fix event type

* include manufacturer & model from device registry

* update test
2021-05-14 09:47:09 -04:00
Thomas Schamm 8fcf06a2a9
Add bosch_shc supporting Bosch Smart Home Controller (#34063)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-14 15:03:26 +02:00
Álvaro Fernández Rojas 9247a157d8
Add AEMET conditional station updates (#50227) 2021-05-14 13:28:48 +02:00
Franck Nijhof 42df6750e2
Refactor AdGuard config flow tests (#50566) 2021-05-14 13:19:24 +02:00
Paulus Schoutsen aef24a807e
Yeelight: Do not log errors when cannot connect (#50592) 2021-05-13 22:33:18 -07:00
Brandon Rothweiler 122741b914
Add lock platform to the Mazda integration (#50548) 2021-05-13 22:52:52 -05:00
uvjustin e8d7d96231
Roll back #47852 (shield httpx in generic) (#50562) 2021-05-13 20:32:06 -07:00
J. Nick Koston 52edf9ac35
Ensure isy994 is only discovered once (#50577)
The formatting of the mac was different between dhcp and ssdp
2021-05-13 19:35:24 +02:00
Erik Montnemery 216b0df908
Set state_class for demo sensor (#50523) 2021-05-12 18:38:26 +02:00
Franck Nijhof 38a0cf6650
Refactor SolarEdge config flow tests (#50467)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-12 17:43:27 +02:00
J. Nick Koston 70961c79a0
Migrate emulate_hue to use storage to fix I/O in event loop (#50473) 2021-05-12 16:10:28 +02:00
J. Nick Koston a4ea9b3cd3
Update usage of async_entries to use _async_current_entries (#50187) 2021-05-12 12:47:06 +02:00
definitio e090581e3c
Add stop for demo players (#50485) 2021-05-12 10:26:12 +02:00
Erik Montnemery b35f229674
Include _StopScript.__cause__ in trace (#50441)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-11 22:27:11 -07:00
Raman Gupta 6cb283d36b
Fix vizio integration (#50436) 2021-05-11 22:05:45 -07:00
J. Nick Koston dd3965e4e2
Ensure zeroconf does not generate config flows when matching attributes are missing (#50208)
If macaddress, name, or manufacturer were missing from the
discovery info, the matcher would accept instead of reject.
2021-05-11 21:24:42 -07:00
J. Nick Koston c037ebb27c
Add discovery to yeelight (#50385) 2021-05-11 19:55:50 -05:00
J. Nick Koston 7314247ce3
Add dhcp support to iSmartGate (#50309) 2021-05-12 00:20:03 +02:00
J. Nick Koston c1cf07768b
Add dhcp discovery support to isy994 (#50488)
- SSDP may not be enabled by default
2021-05-12 00:06:55 +02:00
Artem Draft d29e812033
New overrides in universal media player (#48611)
* Update media_player.py

fix missing overrides in universal

* Update media_player.py

Black

* add tests and allow overrides for missing services

* switch sync to async

* Update tests/components/universal/test_media_player.py

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

* setup component after modifying config

* switch test to sync

* fix black

* fix test

* rework tests, disable override media_seek

Co-authored-by: raman325 <7243222+raman325@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-11 23:44:26 +02:00
karliemeads 3a93151aa2
Improve light tests for brightness step and profiles (#49887) 2021-05-11 23:31:36 +02:00
J. Nick Koston 34c84a6bbb
Reduce boilerplate to abort for matching config entries (#50186)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-05-11 22:00:12 +02:00
jjlawren d6a202bd74
Move core Sonos functionality out of entities (#50277) 2021-05-11 10:36:40 -07:00
J. Nick Koston 909a20b36d
Use async zeroconf registration functions (#50168) 2021-05-11 11:03:36 -05:00
epenet d6c99a3db9
Enable strict type checks for onewire (#50422) 2021-05-11 17:28:17 +02:00
Maciej Bieniek f5541a468e
Improve type annotations for GIOS integration (#50454) 2021-05-11 07:57:24 -07:00
Martin Hjelmare f71eb4d34d
Clean somfy config flow tests (#50461) 2021-05-11 16:19:07 +02:00
Simone Chemelli 4e24640ff7
Remove pytest-mock dependency (#50400) 2021-05-11 17:17:00 +03:00
Martin Hjelmare 48b5ef0bac
Clean twentemilieu config flow tests (#50460) 2021-05-11 15:53:36 +02:00
Erik Montnemery 973f59e423
Refactor history component (#50287)
* Refactor history component

* Update tests

* Address review comments

* Correct deprecated functions
2021-05-11 09:21:57 +02:00
J. Nick Koston b36c840909
Add dhcp support to guardian (#50378) 2021-05-10 21:26:15 -05:00
indykoning 85f758380a
Add Growatt Server Config flow (#41303)
* Growatt Server Config flow

* Use reference strings

Co-authored-by: SNoof85 <snoof85@gmail.com>

* Remove configuration.yaml import logic

* Removed import test

* Re-added PLATFORM_SCHEMA validation

* Import yaml from old yaml configuration

* Apply suggestions from code review

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

* Feedback

* Use Executor for IO only

* Fix imports

* update requirements

* Fix flake8

* Run every section of fetching devices in single executor

* Config flow feedback

* Clean up

* Fix plan step

* Fix config flow test

* Remove duplicate test

* Test import step

* Test already configured entry

* Clean up tests

* Add asserts

* Mock out entry setup

* Add warning if set up via yaml

Co-authored-by: SNoof85 <snoof85@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-10 22:46:50 +02:00
Tobias Sauerwein 12342437e2
Fix battery attribute (#50405) 2021-05-10 20:40:44 +02:00
jan iversen 70b09ed9a1
Handle relation between scan_interval and pymodbus timeout in modbus (#50363)
* Control scan_interval compared to pymodbus timeout.

add MINIMUM_SCAN_INTERVAL=5 seconds and validata with Voluptous.
Keep modbus.py 100% coverage.

* Please pylint.

* Review comments.

* pylint.
2021-05-10 19:28:38 +02:00
Christer Vestermark fca56993c6
Add smhi wind gust speed and thunder probability (#50328)
* Added some extra attributes

Added the extra attributes
wind_gust_speed and
thunder_probability
that were already implemented in the underlaying library (joysoftware
/
pypi_smhi).

Also for the existing extra attribute cloudiness, it is added if "is not None" instead of just "if self.cloudiness" which would make it False (and therefore not available) if cloudiness = 0.

* Trying to solve the style issues

Removed white spaces and changed order of list as suggested by the tests.

* New try to solve the style issues

Removed some more white spaces...

* Changed dictionary handling as suggested

Changed dictionary handling as suggested by MartinHjelmare.

* Updated test

Updated test_weather.py to include the new attributes wind_gust_speed and thunder_probability.

* Added missing imports

Added the missing imports
ATTR_SMHI_THUNDER_PROBABILITY,
ATTR_SMHI_WIND_GUST_SPEED,

* Renaming self.thunder to self.thunder_probability and correcting test valuesfor

Renamed the new internal attribute
thunder to thunder_probability, same as the exposed attribute for improved consistency.
Corrected test values according to smhi.json.

* Forgot to change to self.thunder_probability in one place.

sorry.
2021-05-10 16:44:08 +02:00
Ville Skyttä b89c53f759
Type hint device registry identifiers as set of str 2-tuples (#50355)
* Type hint device registry identifiers as set of str 2-tuples

* Fix airly test

* Really fix airly test, add another migration test
2021-05-10 12:13:45 +02:00
Franck Nijhof 1c98df5d18
Remove YAML configuration from Somfy MyLink (#50359)
* Remove YAML configuration from Somfy MyLink

* Keep deprecation warning
2021-05-10 11:53:37 +02:00
Erik Montnemery e57634b1e0
Bump hatasmota to 0.2.12 (#50372) 2021-05-09 22:57:27 +03:00
Raman Gupta 1b81849271
Add zwave_js support for HeatIt Z-TRM2fx (#50317)
* Add zwave_js support for HeatIt Z-TRM2fx

* fix docstring

* use AwesomeVersion to support firmware version ranges

* add guard against empty firmware range

* switch guard approach to raise exception sooner

* make post init more generic

* Set up firmware range schema as AwesomeVersion during initialization

* Update homeassistant/components/zwave_js/discovery.py

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

* Allow min_ver and max_ver to be None

* fix docstring

* reduce import scope

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-09 15:28:35 -04:00
Franck Nijhof b2cee2e602
Remove YAML configuration from Tuya (#50360)
* Remove YAML configuration from Tuya

* Keep deprecation warning
2021-05-09 14:26:26 -04:00
Dermot Duffy 4e4042a869
Fix types for WLED (#50001) 2021-05-09 19:34:21 +02:00
Franck Nijhof cbf4632895
Remove YAML configuration from SolarEdge (#50105)
* Remove YAML configuration from SolarEdge

* Restore already setup tests
2021-05-09 12:03:41 +02:00
J. Nick Koston 2bff7f8020
Remove YAML support from gogogate2/ismartgate (#50312) 2021-05-09 11:46:07 +02:00
J. Nick Koston 29cd5f20b9
Add zeroconf discovery to powerview (#50308) 2021-05-09 11:41:27 +02:00
Gleb Sinyavskiy 97eb4c6c62
Add syncthing integration (#38331)
* Scaffold the integration

* Add config flow data schema

* Handle configuration errors

* Get folder states

* Support https

* Fix translations

* Listen to syncthing events in a separate thread

* Bump syncthing

* Automatically reconnect to the syncthing server

* Renames

* Improve loading and unloading

* Update folder states from events

* Refactoring, handle FolderPaused event

* Dynamic folder icons

* Refactoring

* Mark folders as unavailable when senrver is unavailable

* Update folder satus when server is available

* Raise PlatformNotReady

* Implement additional polling

* Stop polling when the server is not available

* Minor fixes

* Remove logging

* Check name uniqueness

* Refactoring

* Minor refactorings

* Bump python-syncthing

* Migrate to aiosyncthing

* Minor fixes

* Update .coveragerc

* Set quality scale

* Bump aiosyncthing, properly handle invalid token

* Fix logging

* Fix logging

* Use CONF_VERIFY_SSL from homeassistant.const

* Bump aiosyncthing. Add Syncthing device

* Fix device name

* Bump aiosyncthing

* Bump aiosyncthing

* Extract SyncthingClient

* Add folder to device_state_attributes

* Do not pass the loop

* Cover config_flow.py

* Move self.async_create_entry outside of the try block

* Raise ConfigEntryNotReady if syncthing server is not reachable

* Fix already configured error message

* Change default name to Syncthing

* Bump aiosyncthing

* Fix formatting

* Fix formatting

* Fix tests

* Fix typo, use lis comprehension

* Fix typo, remove unused CONFIG_SCHEMA

* Bump aiosyncthing

* Remove periods from log messages W0001

* Fix tests

* Black, isort

* Remove empty items from manifest.json

* Fix variable naming

* Remove async_setup

* Use SensorEntity

* Use asyncio.create_task instead of self._hass.loop.create_task

* Do not pass hass to FolderSensor initializer

* Rename device_state_attributes to extra_state_attributes

* Use callbacks

* Simplify tests

* Refactor _listen()

* Use url for the title

* Use the url instead of the name to identify the config entry

* Explicitly set sensor attributes, extract _filter_state

* Use server url instead of name in device_info

* Use server url instead of name in logs

* User server id as a device identifier

* Use URL instead of name to identify config entry

* Use shortened server id instead of name to build entity name and unique id

* Do not use CONF_NAME

* Cleanup unused strings

* Cleanup unused strings

* Add IOT class

* Scaffold the integration

* Add config flow data schema

* Handle configuration errors

* Get folder states

* Support https

* Fix translations

* Listen to syncthing events in a separate thread

* Bump syncthing

* Automatically reconnect to the syncthing server

* Renames

* Improve loading and unloading

* Update folder states from events

* Refactoring, handle FolderPaused event

* Dynamic folder icons

* Refactoring

* Mark folders as unavailable when senrver is unavailable

* Update folder satus when server is available

* Raise PlatformNotReady

* Implement additional polling

* Stop polling when the server is not available

* Minor fixes

* Remove logging

* Check name uniqueness

* Refactoring

* Minor refactorings

* Bump python-syncthing

* Migrate to aiosyncthing

* Minor fixes

* Update .coveragerc

* Set quality scale

* Bump aiosyncthing, properly handle invalid token

* Fix logging

* Fix logging

* Use CONF_VERIFY_SSL from homeassistant.const

* Bump aiosyncthing. Add Syncthing device

* Fix device name

* Bump aiosyncthing

* Bump aiosyncthing

* Extract SyncthingClient

* Add folder to device_state_attributes

* Do not pass the loop

* Cover config_flow.py

* Move self.async_create_entry outside of the try block

* Raise ConfigEntryNotReady if syncthing server is not reachable

* Fix already configured error message

* Change default name to Syncthing

* Bump aiosyncthing

* Fix formatting

* Fix formatting

* Fix tests

* Fix typo, use lis comprehension

* Fix typo, remove unused CONFIG_SCHEMA

* Bump aiosyncthing

* Remove periods from log messages W0001

* Fix tests

* Black, isort

* Remove empty items from manifest.json

* Fix variable naming

* Remove async_setup

* Use SensorEntity

* Use asyncio.create_task instead of self._hass.loop.create_task

* Do not pass hass to FolderSensor initializer

* Rename device_state_attributes to extra_state_attributes

* Use callbacks

* Simplify tests

* Refactor _listen()

* Use url for the title

* Use the url instead of the name to identify the config entry

* Explicitly set sensor attributes, extract _filter_state

* Use server url instead of name in device_info

* Use server url instead of name in logs

* User server id as a device identifier

* Use URL instead of name to identify config entry

* Use shortened server id instead of name to build entity name and unique id

* Do not use CONF_NAME

* Cleanup unused strings

* Cleanup unused strings

* Add IOT class

* Apply suggestions from code review

* Clean up

* Fix dict comprehension

* Clean sensor

* Use the server ID as a config entry unique ID

* Remove the AlreadyConfigured exception

* Clean up old error string

* Format json

* Convert sensor attributes to snake case

* Force CI

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-08 19:12:14 +02:00
jan iversen 29eb31e9da
Add configurable delay between connect and first request in modbus (#50124)
* Activate startup delay.

* Add removal of call_later if HA is stopped.

This is unlikely to happen, but just security measure.

* Removing timing interval.

async_fire_time_changed() needs to be called twice, first time the delay is
ended and second time update() is executed.

* Variable naming.
2021-05-08 13:28:35 +02:00
J. Nick Koston bf2d40adfe
Migrate from pytz to python-dateutil (#49643)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-07 22:46:26 -07:00
Pawel 57d3342137
Fix Epson config flow unique_id (#45434)
* switch Epson from HTTP to TCP communication

* fix tests

* add asyncio websession

* fix manifest

* fix config flow

* fix manifest

* fix logger warnings

* switch Epson from HTTP to TCP communication

* fix tests

* add asyncio websession

* fix config flow

* fix manifest

* fix logger warnings

* add already configured to import yaml

* remove neccessary projector on on config.yaml

* remove check import None

* reload integration if no unique_id

* async_migrate_entry

* add async_migrate_entry

* add init tests

* media player migration uid

* unifi config flow

* Update homeassistant/components/epson/media_player.py

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

* Update homeassistant/components/epson/media_player.py

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

* Apply suggestions from code review

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

* review

* remove unnecessary try except

* add import test

* Apply suggestions from code review

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

* revert PORT option from config yaml

* fix tests

* remove port from config flow

* fix CONFIG_SCHEMA

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-07 23:05:59 +02:00
Erik Montnemery 934d241b70
Improve Google Cast options flow (#50028) 2021-05-07 12:59:51 -07:00
Maciej Bieniek 6df0190aeb
Improve type annotations for Airly integration (#49898) 2021-05-07 09:47:52 -05:00
Maciej Bieniek 0587f834df
Add Nettigo Air Monitor integration (#49099) 2021-05-07 08:59:29 -05:00
Felipe Martins Diel a7ef3ec947
Fix RM pro temperature sensor (#50098) 2021-05-07 14:47:51 +02:00
epenet 5d5122c2a4
Fix unique_id issue on onewire config entries (#50161) 2021-05-07 14:21:03 +02:00
Martin Hjelmare 0c288bcabb
Fix mysensors default persistence file on import (#48410) 2021-05-07 13:37:38 +02:00
Jan Bouwhuis 7ab505633d
Ignore empty output from MQTT fan's value template (#50122)
* Allow empty payload

* Add tests for ignoring empty payload

* logging on empty state and osccilation with tests

* Improve warning log when invalid value is received
2021-05-07 13:22:08 +02:00
Maciej Bieniek 7a87846146
Bump `gios` library (#50145)
* Bump gios library

* Use consts for API strings

* Do not store data locally

* Use API_TIMEOUT const
2021-05-07 13:03:11 +02:00
J. Nick Koston 64851dbac3
Add optimistic closing/opening to gogogate2 (#42048)
* Add optimistic closing/opening to gogogate2

* package rename

* update test

* Update homeassistant/components/gogogate2/cover.py
2021-05-07 11:13:51 +02:00
Erik Montnemery c2663d61d7
Add color_mode support to group light (#50165)
* Add color_mode support to group light

* Lint

* Update tests
2021-05-06 22:34:51 -07:00
Raman Gupta 9f1b1c6c56
Add value map for Climacell V3 pollen sensors (#50200) 2021-05-06 21:12:51 -07:00
Martin Hjelmare 5ec09eab42
Move not loaded websocket constant to zwave_js (#50188) 2021-05-06 17:59:03 -07:00
J. Nick Koston ce692afead
Add rainmachine discovery (#49970)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-05-06 09:50:28 -05:00
Martin Hjelmare 38d7652176
Fix zwave_js websocket api KeyError on unloaded entry (#50154) 2021-05-06 16:43:14 +02:00
Franck Nijhof 177317a345
Allow passing options in config flow entry creation (#49912) 2021-05-05 22:14:01 -07:00
J. Nick Koston af832e5434
Use shared httpx client in gogogate2 (#45575) 2021-05-05 21:47:44 -07:00
Franck Nijhof ae692a003f
Add support for Elgato Light Strip (#49988)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-05 16:41:32 -07:00
Aidan Timson e4ef06d6b1
System Bridge Integration (#48156)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-06 01:33:32 +02:00
Erik Montnemery 4136f9f203
Fix Tasmota color scaling and RGBW lights (#50120) 2021-05-05 17:59:26 +02:00
Erik Montnemery 93572bfe02
Add color_mode support to tasmota light (#49599) 2021-05-05 13:04:37 +02:00
Franck Nijhof 26b5a067bd
Remove YAML configuration from Verisure (#50076) 2021-05-05 09:51:05 +02:00
Rob Bierbooms 2b461073ff
Improve buienradar tests (#50101) 2021-05-05 09:05:46 +02:00
Franck Nijhof 301d642ad8
Clean up deprecation message & config schema from Cloudflare (#50079) 2021-05-05 07:56:50 +02:00
Franck Nijhof 4907764367
Remove YAML configuration from Daikin (#50080) 2021-05-04 14:23:59 -07:00
Franck Nijhof fb2cb469e2
Remove YAML configuration from DoorBird (#50082) 2021-05-04 21:10:17 +02:00
Rob Bierbooms c063f14c24
Add configuration flow for Buienradar integration (#37796)
* Add configuration flow for Buienradar integration

* Update buienradar camera tests to work with config flow

* Update buienradar weather tests to work with config flow

* Update buienradar sensor tests to work with config flow

* Remove buienradar config_flow tests to pass tests

* Add config flow tests for buienradar integration

* Increase test coverage for buienradar config_flow tests

* Move data into domain

* Remove forecast option

* Move data to options

* Remove options from config flow

* Adjust tests

* Adjust string

* Fix pylint issues

* Rework review comments

* Handle import

* Change config flow to setup camera or weather

* Fix tests

* Remove translated file

* Fix pylint

* Fix flake8

* Fix unload

* Minor name changes

* Update homeassistant/components/buienradar/config_flow.py

Co-authored-by: Ties de Kock <ties@tiesdekock.nl>

* Remove asynctest

* Add translation

* Disable sensors by default

* Remove integration name from translations

* Remove import method

* Drop  selection between platforms, disable camera by default

* Minor fix in configured_instances

* Bugfix in weather

* Rework import

* Change unique ids of camera

* Fix in import

* Fix camera tests

* Fix sensor test

* Fix sensor test 2

* Fix config flow tests

* Add option flow

* Add tests for option flow

* Add import tests

* Some cleanups

* Apply suggestions from code review

Apply code suggestions

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

* Fix isort,black,mypy

* Small tweaks and added typing to new parts

* Fix review comments (1)

* Apply suggestions from code review

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

* Fix review comments (2)

* Fix issues

* Fix unique id

* Improve tests

* Extend tests

* Fix issue with unload

* Address review comments

* Add warning when loading platform

* Add load/unload test

Co-authored-by: Ties de Kock <ties@tiesdekock.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-04 13:49:16 +02:00
Robert Svensson d579e3427f
Use last_step marker on UniFi options flow (#50053) 2021-05-04 08:54:45 +02:00
Dermot Duffy 809c1394d4
Enable mypy for motionEye (aye aye!) (#49738) 2021-05-04 08:19:41 +02:00
Simone Chemelli 55c96ae86f
Create Fritz device and connectivity sensor (#49699)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-05-03 17:11:21 -10:00
J. Nick Koston 302cab185d
Add reauth support to flume (#49991) 2021-05-03 10:30:22 -07:00
Franck Nijhof 0627b316e3
Add Identify service to Elgato integration (#49990) 2021-05-03 17:32:10 +02:00
Joakim Sørensen 9b89acea97
Handle Timeout exceptions in system_health (#50017) 2021-05-03 14:26:25 +02:00
J. Nick Koston 779f34a8ed
Add dhcp discovery to hunterdouglas_powerview (#49993)
* Add dhcp discovery to hunterdouglas_powerview

* avoid dupe flow

* cleanup

* cleanup
2021-05-03 11:41:20 +02:00
Austin Mroczek f8d82bbf80
Add unique_id to TotalConnect alarm_control_panel (#49961)
* add unique_id to alarm_control_panel

* Update homeassistant/components/totalconnect/alarm_control_panel.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-05-03 11:38:59 +02:00
J. Nick Koston a4432557d3
Defer writing http config until after startup has calmed down (#50000) 2021-05-02 19:48:49 -10:00
Bram Kragten 301d4b0657
Fix saving a scene (#49980)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-05-02 22:11:57 -07:00
J. Nick Koston 42c48e8cf9
Add reauth support to myq (#49998) 2021-05-02 21:52:48 -07:00
J. Nick Koston 1c8d9ca68b
Check exception causes for matching strings during recorder migration (#49999) 2021-05-02 20:57:42 -07:00
jan iversen 8adbc62a6e
Enable homeassistant.update_entity service for all modbus platforms (#49918)
* Rename _update() to update()

A platform neeed a function update(), even though
polling is false, this is due to the service:
homeassistant.update_entity, which calls update()

* Update test harnesss to script testing.

Test homeassistant.update_entity in all platforms.
This call calls update() in the platform to get
a new reading.

* Add reuse parameter.

* Move service call from helper to tests.

* Change run_service_update --> prepare_service_update.

* Remove entity_id parameter.
2021-05-02 10:41:36 +02:00
Paulus Schoutsen 1bd9826684
Handle different entity_id formats (#49969) 2021-05-01 20:30:28 -07:00
Alan Tse 3546ff2da2
Bump Tesla dependency teslajsonpy to 0.18.3 (#49939)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-05-01 17:04:37 -07:00
J. Nick Koston 002b068c0a
Remove YAML support from sense (#49935) 2021-05-01 11:17:52 -10:00
Ville Skyttä 77d5244577
Use device registry CONNECTION_* constants (#49923) 2021-04-30 23:58:50 +02:00
jjlawren 37e8571fe8
Use header URI in Plex config flow (#49915) 2021-04-30 23:15:59 +02:00
jan iversen aa8ce07e35
Start Modbus cover timer independent if there is a state to restore (#49919)
* Start timer independent if there is a state to restore.

* Update test cases, that now start working.
2021-04-30 22:36:55 +02:00
jan iversen 684ea9e49b
Restructure modbus switch, and solve read/write conflicts (#49386)
Remove old style configuration from switch.
- The old style configuration allowed a number of illegal
  configurations, instead of adding if...log. in setup we
  only support the new configuration style.

Add new/changed configuration switch.

Removed verify_state and cleaned configuration to avoid possible
illegal configurations.
2021-04-30 16:47:18 +02:00
Maciej Bieniek 39e8a92596
Remove unused code from Brother config flow (#49889) 2021-04-30 16:41:55 +02:00
Raman Gupta fdc29d6a80
Add device specific discovery for Heatit Z-TRM3 thermostat (#49804)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-30 16:10:25 +02:00
Maciej Bieniek 37dad92bf7
Split long string in DuneHD test (#49900)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-30 15:30:21 +02:00
Erik Montnemery 956c972e72
Add color_mode support to zwave_js light (#49588) 2021-04-30 13:46:25 +02:00
Franck Nijhof c68b259bd3
Cleanup of unused connection_class logic (#49865)
Co-authored-by: Joakim Sørensen <joasoe@gmail.com>
2021-04-29 23:12:58 +02:00
Paulus Schoutsen f5e4b13814
Add auto_off to binary sensor template entity (#49615) 2021-04-29 09:25:34 -07:00
jan iversen 760caeed85
Complete modbus device response tests (#49633)
* Prepare test harness for new pymodbus return types.

Use pytest.fixture to mock pymodbus.
Use pytest.fixture to load modbus using mocked pymodbus
Add test of Exception/IllegalResponse/ExceptionResponse from pymodbus.

* Modbus.py is back at 100% test coverage.

* Added assert mock.called.

* add mock reset.
2021-04-29 18:06:56 +02:00
Maciej Bieniek 0379dee47e
Fix `host_valid()` logic in Vilfo config flow (#49862) 2021-04-29 17:11:22 +02:00
Raman Gupta 4a95f6c2a3
Improve Google Travel Time import and naming logic (#49839) 2021-04-29 17:10:03 +02:00
Maciej Bieniek 61991572d7
Fix `host_valid()` logic in DuneHD config flow (#49860) 2021-04-29 17:05:09 +02:00
Maciej Bieniek 3210c086ef
Improve type annotations for the Brother integration (#49771) 2021-04-29 16:59:31 +02:00
Maciej Bieniek 9588e0d35a
Fix `host_valid()` logic in BraviaTV config flow (#49857) 2021-04-29 16:09:59 +02:00
Ruslan Sayfutdinov 02764c2f46
Disable strict type checks for tests (#49851) 2021-04-29 15:57:02 +02:00
Raman Gupta 6f36fcc427
Improve Waze Travel Time import and naming logic (#49838) 2021-04-29 15:49:16 +02:00
Erik Montnemery bf57c77d5c
Add color_mode to demo light (#49694)
* Update demo light with color mode support

* Add rgbw and rgbww color properties

* Update demo light

* Tweak

* Remove unneeded _clear_colors
2021-04-29 10:45:17 +02:00
Mike Keesey 1c0fd61075
Remove references to hass.data in harmony tests (#49836)
Instead, just use the mocks directly.
2021-04-28 18:27:57 -10:00
Robert Svensson 056f636568
Add tampering sensor to deCONZ integration (#49776) 2021-04-28 20:16:06 +02:00
jjlawren 8c311cbaa0
Handle special Plex library sections (#49525) 2021-04-28 19:58:05 +02:00
Robert Svensson 5e07ab17b2
Add support for deCONZ alarm events in logbook (#49652)
* Add support for alarm events in logbook

* Update homeassistant/components/deconz/alarm_control_panel.py

Co-authored-by: jjlawren <jjlawren@users.noreply.github.com>
2021-04-28 19:46:15 +02:00
Joakim Sørensen 296dc9303f
Add OS version and board type to analytics (#49725) 2021-04-28 19:13:09 +02:00
Robert Svensson 311e0e4185
Last minute tweaks to deCONZ alarm panel entity service(#49819)
Text for entry and exit delay was wrong
Remove functions that need a bit more investigating
2021-04-28 18:54:53 +02:00
Chris e85d58c3a1
Fix white_value causing zwave-js to set non-existing values (#49799) 2021-04-28 09:23:48 -07:00
Joakim Sørensen 3088f063d2
Don't overwrite existing files when generating configuration (#49815) 2021-04-28 17:15:04 +02:00
Raman Gupta 795fe18a90
Add additional zwave_js WS API commands for nodes (#49509)
* Add zwave_js WS API commands for node.refresh_values and node.refresh_cc_values

* remove guard since API will be used by frontend

* add missing validation

* use get in case node ID is wrong

* use decorator

* add additional coverage
2021-04-28 10:22:18 -04:00
Erik Montnemery e96cbccc92
Improve color conversion for RGBWW lights (#49807) 2021-04-28 15:46:41 +02:00
Martin Hjelmare 9e1042d9e0
Fix zwave_js flow set add-on options (#49813)
* Fix zwave_js flow set add-on options

* Improve and deduplicate error messages

* Add more call assertions

* Add final missing call assertion
2021-04-28 15:09:39 +02:00
J. Nick Koston 3f547e58d7
Fix zeroconf test inadvertently matching strings that start with name (#49578)
* Fix zeroconf test inadvertently matching strings that start with name

* adjust

* adjust
2021-04-28 11:47:36 +02:00
J. Nick Koston dcb5b9f8b5
Bump httpx to 0.18.0 and respx to 0.17.0 (#49805) 2021-04-28 11:22:09 +02:00
Raman Gupta 1cb907c2e3
Add zwave_js discovery schema for Vision Security ZL7432 (#49510)
* Add zwave_js discovery schema for Vision Security ZL7432

* add tests

* fix test

* add correct fixture

* Make discussed changes

* fix tests

* move event handler

* fix logic to get entity ID

* add test

* make discovery test more explicit

* remove domain from event data

* always provide entity_id key to make automations easier and translate value if possible

* formatting

* comment

* dont overwrite value
2021-04-28 10:22:54 +02:00
Erik Montnemery d7247c2ace
Correct conversion of RGB and XY colors to RGBW (#49802) 2021-04-28 10:12:20 +02:00
Alexei Chetroi 345873f94f
Don't bind all clusters unconditionally (#49793) 2021-04-27 20:25:34 -04:00
Franck Nijhof 89e7983ee0
Add Blueprint foundation to Scripts (#48621)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-04-27 15:15:38 -07:00
Dermot Duffy 3fda66d9e2
Change motionEye to use a two item device identifier tuple (#49774)
* Change to a two item device identifier tuple.

* Don't use join.
2021-04-27 23:48:27 +02:00
Maciej Bieniek 513685bbea
Add dynamic update interval to Airly integration (#47505)
* Add dynamic update interval

* Update tests

* Improve tests

* Improve comments

* Add MAX_UPDATE_INTERVAL

* Suggested change

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

* Use async_fire_time_changed to test update interval

* Fix test_update_interval

* Patch dt_util in airly integration

* Cleaning

* Use total_seconds instead of seconds

* Fix update interval test

* Refactor update interval test

* Don't create new context manager

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-27 23:34:53 +02:00
Tom Toor a57761103c
Mutesync integration (#49679)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-04-27 13:44:59 -07:00
J. Nick Koston 87420627a8
Reduce config entry setup/unload boilerplate Q-S (#49778) 2021-04-27 22:10:04 +02:00
Erik Montnemery d2fd504442
Limit precision when stringifying float states (#48822)
* Limit precision when stringifying float states

* Add test

* Fix typing

* Move StateType

* Update

* Move conversion to entity helper

* Address review comments

* Tweak precision

* Tweak

* Make _stringify_state an instance method
2021-04-27 21:48:24 +02:00
Ben ebbcfb1bc7
Fix and upgrade surepetcare (#49223)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-27 20:58:52 +02:00
J. Nick Koston 3f3f77c6e6
Reduce config entry setup/unload boilerplate N-P (#49777) 2021-04-27 20:42:21 +02:00
Erik Montnemery fdadacd158
Improve color conversion for RGBW lights (#49764) 2021-04-27 20:07:55 +02:00
Erik Montnemery ce64690817
Make number of stored traces configurable (#49728) 2021-04-27 10:27:12 -07:00
J. Nick Koston b10534359b
Reduce config entry setup/unload boilerplate K-M (#49775) 2021-04-27 18:49:13 +02:00
David F. Mulcahey a644c2e8ba
Add alarm control panel support to ZHA (#49080)
* start implementation of IAS ACE

* starting alarm control panel

* enums

* use new enums from zigpy

* fix import

* write state

* fix registries after rebase

* remove extra line

* cleanup

* fix deprecation warning

* updates to catch up with codebase evolution

* minor updates

* cleanup

* implement more ias ace functionality

* cleanup

* make config helper work for supplied section

* connect to configuration

* use ha async_create_task

* add some tests

* remove unused restore method

* update tests

* add tests from panel POV

* dynamically include alarm control panel config

* fix import

Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
2021-04-27 10:58:59 -04:00
jjlawren d4ed65e0f5
Add power binary_sensor support to Sonos (#49730)
* Add power binary_sensor support to Sonos

* Prepare for future unloading of config entries

* Remove unnecessary calls to super() inits

* Add binary_sensor to tests, remove invalid test for empty battery payload

* Move sensor added_to_hass to common sensor class

* Avoid dispatching sensors if no battery

* Use proper attributes property

* Remove power source fallback

* Update homeassistant/components/sonos/speaker.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-27 04:52:05 -10:00
J. Nick Koston a1fdf84dba
Reduce config entry setup/unload boilerplate G-J (#49737) 2021-04-27 16:09:59 +02:00
tkdrob 664075962f
Clean up profiler constants (#49752) 2021-04-27 10:04:45 -04:00
David F. Mulcahey b91d2be00b
Better ZHA device reconfiguration (#49672)
* initial take

* cleanup

* fix mock for configure_reporting
2021-04-27 10:04:22 -04:00
Bram Kragten b00ccf98f0
TP Link: Don't report HS when in CT mode (#49704)
* TP Link: Don't report HS when in CT mode

* Update tests
2021-04-27 11:19:21 +02:00
jan iversen e5e215353d
Add swap byte/word/byteword option to modbus sensor (#49719)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-04-27 10:49:41 +02:00
J. Nick Koston a67b9eff17
Reduce config entry setup/unload boilerplate D-F (#49733) 2021-04-26 20:46:49 -10:00
Robert Svensson 58ad3b61f7
Entities for secondary temperature values created by certain Xiaomi devices in deCONZ (#49724)
* Create sensors for secondary temperature values created by certain Xiaomi devices

* Fix tests
2021-04-27 08:43:06 +02:00
J. Nick Koston b27e9e376d
Use StaticPool for recorder and NullPool for all other threads with sqlite3 (#49693) 2021-04-26 19:20:31 -10:00
jan iversen 677d8e9a89
Add restore last state test to modbus sensor (#49721) 2021-04-27 00:20:50 +02:00
jjlawren dc50524f32
Cleanup implementation of new Sonos sensors (#49716) 2021-04-26 23:59:04 +02:00
J. Nick Koston 51be2f860a
Reduce boilerplate to setup config entry platforms A-C (#49681)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-04-26 07:46:55 -10:00
Alexei Chetroi 4a6bb96a0f
Stop fast polling of a Zigbee device after a check-in command (#49685)
* Stop fast polling after a check-in

* Update tests
2021-04-25 21:15:04 -04:00
J. Nick Koston 855559004b
Drop unneeded async_setup from august (#49675) 2021-04-25 23:13:54 +02:00
Michael a5e25e519f
Remove yaml configuration from fritzbox (#49663) 2021-04-25 09:49:08 -10:00
Ville Skyttä 631ab367e2
Fix typing.Any spelling (#49673) 2021-04-25 09:36:21 -10:00
Marc Mueller 510a3ae915
Improve zeroconf test fixture (#49657) 2021-04-25 08:16:38 -10:00
jjlawren 3be8c9c1c0
Add battery support for Sonos speakers (#49441)
Co-authored-by: Walter Huf <hufman@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-04-25 07:20:21 -10:00