Commit Graph

7106 Commits (982c42e7467c9c48a18db8537d11bf92cc7a9130)

Author SHA1 Message Date
Erik Montnemery 2d9eb25142
Fix parameters when toggling light (#44950) 2021-01-09 01:10:47 +01:00
Erik Montnemery b85efd343f
Move MQTT entity helpers to separate file (#44838)
* Move MQTT entity helpers to separate file

* Fix imports

* Update MQTT number

* Review comments

* Fix formatting
2021-01-09 00:47:17 +01:00
Diogo Gomes e3c1281616
Add MQTT Number (non optimistic) (#44883)
* non optimistic

* test restored state

* ups

* review

* Ensure the entity is not in optimistic mode

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

Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-01-08 23:43:14 +01:00
Sergio Oller 905100a189
Disambiguate Supervisor HTTPUnauthorized on user/password validation (#44940)
* Disambiguate HTTPUnauthorized on user/password validation

The HA core API usually returns 401 when the request does not
have proper authentication tokens or they have expired.

However the user/password validation endpoint may also return
401 when the given user/password is invalid.

The supervisor is currently unable to distinguish both scenarios,
and it needs to.

See https://github.com/home-assistant/supervisor/issues/2408

* Return 404 if user& password are not found/valid

* Fix test for invalid user/password
2021-01-08 17:28:22 +01:00
Joakim Sørensen d99bc99d9b
Prefix versions in system health (#44921)
* Prefix versions in system health

* Adjust test

* Update homeassistant/components/hassio/strings.json
2021-01-08 16:03:06 +01:00
J. Nick Koston 7c93a11aba
Fix wait_template incorrectly matching falsey values (#44938) 2021-01-08 13:07:50 +01:00
Michael Chisholm e35e460e69
Use parent_id to find cause of logbook events with new contexts (#44416)
* Use parent_id to find cause of events with new contexts

When looking up the causing event for logbook display, use the `parent_id`
of the current context if the current context just points back to the
current event.

This now shows in the logbook the cause of an event in the case that a
component has created a new context from an existing context and tied
them together via the `Context.parent_id`.

* Fix exception when parent event not available

* Use async_Log_entry to avoid jump into executor
2021-01-07 20:27:03 -10:00
Jamin Collins 3b184ad11c
Implement support for additional ecobee hold modes (#40520)
* useEndTime2hour   - 2 hours
* useEndTime4hour   - 4 hours
* indefinite        - Until I change it

These changes have been tested with an ecobee3 lite running firmware
version 4.5.81.200

Signed-off-by: Jamin W. Collins <jamin.collins@gmail.com>
2021-01-07 18:09:22 -10:00
Bouwe Westerdijk cb3b37a87a
Correct Plugwise sensor scaling (#44344)
* Remove sensor-scaling, handled by the back-end

* Correct assert-values

* Update test-fixtures

* Revert "Correct assert-values"

This reverts commit f1a1891f73.

* Adapt value to the updated userdata set

* Link to plugwise v0.8.5, update fixtures

* Correct test-values

* Fix typo
2021-01-08 02:44:00 +01:00
jjlawren 0426b211f6
Rewrite Plex tests to use mocked payloads (#44044) 2021-01-07 19:56:52 +01:00
Paulus Schoutsen caf14b78d1
Homekit has two types (#44879) 2021-01-07 08:44:34 -10:00
Ville Skyttä 2fb3be50ab
Make DeviceRegistry.async_get_device connections arg optional (#44897)
* Make async_get_device connections Optional, default None

* Remove unnecessary async_get_device connections arg usages

Some of these were using an incorrect collection type, which didn't
cause issues mostly just due to luck.
2021-01-07 13:49:45 +01:00
Allen Porter 560e3811a3
Generate nest images thumbnails from events (#44638)
* Capture nest still images from events

Use python google-nest-sdm API for fetching images.  Update home assistant
to use the google-nest-sdm API for fetching the image contents generated
by the server.  This uses the existing websession object for server fetches,
reducing the amount of new code and facilites unit testing using the existing
mechanism.

Simplify tests using the image fetch API rather than a snapshot API
2021-01-06 07:02:04 -08:00
Erik Montnemery 93ae65d704
Improve MQTT number test coverage (#44870) 2021-01-06 13:27:05 +01:00
JeromeHXP 1a65ab0b80
Address late review of ondilo_ico (#44837)
* Updates following comments in PR 44728

* Make all api calls in same thread context

* Set API as parameter to get_all_pools_data

* extract pools data retrieval function to api class
2021-01-06 12:36:39 +01:00
Erik Montnemery 02bfc68842
Support dynamic Google Cast groups (#44484)
* Re-add support for dynamic groups

* Add tests

* Add support for manufacturer

* Refactor support for dynamic groups

* Bump pychromecast to 7.7.0

* Bump pychromecast to 7.7.1

* Tweak tests

* Apply review suggestion
2021-01-06 09:23:18 +01:00
Diogo Gomes f18880686c
Add MQTT Number (#44739)
* Initial Commit

* initial commit

* add discovery and tests

* increase coverage

* address review

* catchup with reality
2021-01-06 08:27:46 +01:00
Paulus Schoutsen 009663602a
Avoid Ps4 doing I/O during tests (#44845) 2021-01-05 21:12:14 +01:00
mvn23 35edc40537
Fix opentherm_gw firmware version in device registry (#44756) 2021-01-05 20:46:54 +01:00
Paulus Schoutsen f1c116831f
Patch Shelly test setting up entry (#44842) 2021-01-05 18:35:54 +01:00
Paulus Schoutsen 69b5176730
Make Alexa custom ID unique (#44839)
* Make Alexa custom ID unique

* Lint

* Lint
2021-01-05 17:35:28 +01:00
Shane Qi c654476e24
Add support for reordering Shopping List Items via Drag and Drop (#41585)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-05 11:24:30 +01:00
Mike Keesey 60a1948ab0
Generate switches for harmony activities automatically (#42331)
* Adding switch code for harmony activities

* Working on-off

* Removing poll code for now

* Async updates for current activity

* Update our state based on events

* Notifications we got connected or disconnected

* Remove unncessary constructor arg

* Initial switch tests

* Additional tests for switch transitions

* Test transitions for availability

* Testing switch state changes

* Tests passing

* Final tests

* Updating manifest.

* Correctly mock the return value from a call to the library

* Adding new subscriber classes

* Update class name and location

* Got the refactor working locally.

* Tests passing

* Tracking state changes

* Remove write_to_config_file - this appears to never be read.

It was added far back in the past to account for a harmony library
change, but nothing ever reads that path.

Removing that side effect from tests is a pain - avoid the side effect
completely.

* Connection changes tested

* Clean up temporary code

* Update .coveragerc for harmony component

Specifically exclude untested files instead of the whole module

* Fix linting

* test sending activity change commands by id

* Improving coverage

* Testing channel change commands

* Splitting subscriber logic into it's own class

* Improve coverage and tighten up .coveragerc

* Test cleanups.

* re-add config file writing for harmony remote

* Create fixture for the mock harmonyclient

* Reduce duplication in subscription callbacks

* use async_run_job to call callbacks

* Adding some tests for async behaviors with subscribers.

* async_call_later for delay in marking remote unavailable

* Test disconnection handling in harmony remote

* Early exit if activity not specified

* Use connection state mixin

* Lint fix after rebase

* Fix isort

* super init for ConnectionStateMixin

* Adding @mkeesey to harmony CODEOWNERS
2021-01-04 13:21:14 -10:00
Maciej Bieniek 2e50c1be8e
Add nearest method to get data for Airly integration (#44288)
* Add nearest method

* Add tests

* Move urls to consts

* Simplify config flow

* Fix tests

* Update tests

* Use in instead get

* Fix AirlyError message in tests

* Fix manual update entity tests

* Clean up tests

* Fix after rebase

* Increase test coverage

* Format the code

* Fix after rebase
2021-01-04 23:14:45 +01:00
Shay Levy 76537305e2
Add logbook and device trigger platforms to Shelly (#44020)
* Add logbook and device trigger platforms to Shelly

Add `logbook` platform for describing “shelly.click” event
Add `device_trigger` platform for adding automation based on click events:

Example of logbook event:
Shelly 'single' click event for Test I3 channel 3 was fired.
(Test I3 is the name of the device)

Example of automation triggers:
First button triple clicked
First button long clicked and then single clicked
First button double clicked
First button long clicked
First button single clicked and then long clicked
First button single clicked
Second button triple clicked
..
Second button single clicked

* Fix codespell

* Remove pylint added for debug

* Add tests

* Rebase

* Fix Rebase & Apply PR review suggestions

Fix tests after rebasing
Use `INPUTS_EVENTS_DICT` for input triggers
Apply PR suggestions
2021-01-04 23:10:42 +01:00
JeromeHXP de780c6d35
Add Ondilo ico integration (#44728)
* First implementationof Ondilo component support

* Update manifest toadd pypi pkg dependency

* Update entities name and corrected refresh issue

* Changed percentage unit name

* Corrected merge issues

* Updated coveragerc

* cleaned up code and corrected config flow tests

* Code cleanup and added test for exisitng entry

* Changes following PR comments:
- Inherit CoordinatorEntity instead of Entity
- Merged pools blocking calls into one
- Renamed devices vars to sensors
- Check supported sensor types
- Stop relying on array index position for pools
- Stop relying on attribute position in dict for sensors

* Corrected unit test

* Reformat sensor type check
2021-01-04 08:09:01 -08:00
Allen Porter c92353088c
Fix Fan support in nest climate by adding HVAC_MODE_FAN_ONLY support (#44203)
* Add HVAC_MODE_FAN_ONLY to nest climate

* Remove unreachable code

* Fix HVAC_FAV_ONLY bug; must also turn off hvac
2021-01-04 16:43:41 +01:00
Joakim Plate c1027cace6
Add device entry id to events (#44407)
* Add device entry id to events

* Only add device id if device is known for now
2021-01-04 15:31:10 +01:00
On Freund e9f7e67f4c
Try to fix flaky Risco test (#44788) 2021-01-04 15:23:47 +01:00
Simone Chemelli f07bf6a88e
Cleanup timeouts values for Shelly (#44790)
* Updated timeouts

* Small cleanup

* Fix + small cleanup of test code
2021-01-04 14:04:40 +01:00
Pascal Vizeli a7a4875f52
Add more debug details to running timeouts (#43644)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-04 13:10:39 +01:00
Erik Montnemery 34bd70aee6
Fix race when handling MQTT discovery messages (#44730)
* Fix race when handling MQTT discovery messages

* Lint

* retrigger checks
2021-01-04 12:28:17 +01:00
Ville Skyttä 43474762b2
Drop remaining Python < 3.8 support (#44743)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-04 11:47:29 +01:00
Álvaro Fernández Rojas ec926105a0
Bump PyTado to 0.10.0 (#44770)
* Bump PyTado to v0.10.0

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Tado: switch to getDeviceInfo

This function has been introduced in version 0.10.0 of PyTado.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

* Tado: update tests

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-01-04 03:53:15 +01:00
dzukero 2ed7b90027
Add RFXtrx Rfy venetian blinds tilt control (#44309)
* Add tilt control for RFXtrx Rfy venetian blinds

* Update Rfy cover test

* Update the required version of pyRFXtrx

* Update required pyRFXtrx version to 0.26.1

* Revert "Update required pyRFXtrx version to 0.26.1"

This reverts commit d54f1645d5.

* Revert "Update the required version of pyRFXtrx"

This reverts commit ac36d65326.

* Update required version of pyRFXtrx to 0.26.1

* @dzukero
Update required version of pyRFXtrx to 0.26.1

* Make requested changes from review

* Fix isort

* Remove set tilt position support

* Remove set tilt position support per review
2021-01-03 12:59:22 +01:00
Joakim Plate 3de0610909
Support google assistant stopping for assumed state covers (#44266)
* Support stopping for assumed state covers

* Adjust black formatting
2021-01-02 23:01:20 +01:00
Álvaro Fernández Rojas 067f2d0098
Add tado zone binary sensors (#44576)
These should be binary sensors.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2021-01-02 13:35:59 +01:00
Will Hughes a6e474c7c9
Update surepy to v0.4.0 (#44556)
* Update surepy to v0.4.0

* Clarify pylint disable

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-01-02 03:52:33 +01:00
Allen Porter 321c0a87ae
Resolve nest pub/sub subscriber token refresh issues (#44686) 2021-01-02 01:51:01 +01:00
Franck Nijhof 508d33a220
Remove deprecated PTVSD integration (#44748) 2021-01-01 23:36:15 +01:00
Franck Nijhof 65cf2fcb6f
Drop asynctest (#44746) 2021-01-01 22:31:56 +01:00
Paulus Schoutsen 2b0556520b
Catch Shelly zeroconf types with uppercase too (#44672)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-01-01 20:54:43 +01:00
Sian 52e1aad008
Correct Dyson climate fan auto mode (#44569)
Co-authored-by: Justin Gauthier <justin@justin-tech.com>
2021-01-01 16:06:36 +01:00
Clifford Roche f0e96f739b
Add turn_on and turn_off to gree climate component (#43207) 2021-01-01 13:58:38 +01:00
Raman Gupta b651f63ef0
Suppress vizio logging API call failures to prevent no-op logs (#44388) 2021-01-01 13:35:05 +01:00
Allen Porter 051f6c0e72
Increase test coverage for Nest SDM integration (#44718) 2021-01-01 13:31:18 +01:00
J. Nick Koston 2ef25e7414
Fix script wait templates with now/utcnow (#44717) 2021-01-01 13:03:34 +01:00
J. Nick Koston 94825b3e15
Do not restore unavailable state for august locks (#44722) 2021-01-01 12:44:53 +01:00
Allen Porter f1dff973dc
Fix broken test test_auto_purge in recorder (#44687)
* Fix failing test due to edge-of-2021 bug

* Rewrite test_auto_purge to make the intent more clear
2020-12-31 12:04:12 -10:00
Allen Porter fe9a254017
Fix legacy nest api binary_sensor initialization (#44674) 2020-12-31 19:22:24 +01:00