Commit Graph

16584 Commits (cached_property_backport)

Author SHA1 Message Date
Joost Lekkerkerker 6ceb973606
Add entity translations for Abode (#94169) 2023-06-22 16:03:28 +02:00
Joost Lekkerkerker acdf309c47
Add entity translations for Aladdin Connect (#95051) 2023-06-22 16:01:51 +02:00
Petro31 e4c8a94aaf
Add persistent_notification.dismiss_all service call (#95004) 2023-06-22 14:27:18 +02:00
Jan Bouwhuis 3c86497bc8
Improve mqtt climate turn_on and turn_off service (#94832)
* Improve mqtt climate turn_on and turn_off service

* Remove POWER_COMMAND_TOPIC when mode is changed

* Call super
2023-06-22 13:46:14 +02:00
Franck Nijhof e2f5a707ce
Fix use_device_name in case device device class translations are used (#95010)
Co-authored-by: Erik <erik@montnemery.com>
2023-06-22 11:30:19 +02:00
J. Nick Koston ed55632a66
Add esphome fan platform tests and remove unreachable code (#95025) 2023-06-22 11:29:59 +02:00
Erik Montnemery 5884afd485
Teach sensor device trigger about entity registry ids (#94988) 2023-06-22 11:13:54 +02:00
Erik Montnemery e204e80528
Teach vacuum device trigger about entity registry ids (#94989) 2023-06-22 08:20:59 +02:00
J. Nick Koston 65a5244d5a
Fix race and add test coverage for esphome select platform (#95019) 2023-06-22 01:19:47 +02:00
J. Nick Koston 8d2daaa694
Limit cache size of EntityValues (#94983) 2023-06-21 22:23:35 +02:00
Jan Bouwhuis 31f845bfe0
Add current_humidity attribute to mqtt humidifier (#94955) 2023-06-21 19:19:26 +02:00
Barry Williams 57c9aad9b1
Migrate Linn / Openhome integration to SSDP config flow (#94564)
* Migrate Linn / Openhome integration to SSDP config flow

* moved device initialisation into __init__

* wait for user step before adding openhome entities

* add CONFIG_SCHEMA

* cover confirmation step in config flow test

* Address comments

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-06-21 12:46:17 -04:00
Erik Montnemery c8cd469c95
Teach media_player device trigger about entity registry ids (#94979) 2023-06-21 16:09:28 +02:00
Martin Hjelmare f9366e5cc7
Migrate google translate to config entries (#93803)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-06-21 14:58:58 +02:00
Erik Montnemery 22e1feb223
Teach humidifier device trigger about entity registry ids (#94974) 2023-06-21 14:58:11 +02:00
Erik Montnemery af97857c87
Teach select device trigger about entity registry ids (#94981) 2023-06-21 14:51:39 +02:00
Erik Montnemery 7f0be78ebb
Teach netatmo device trigger about entity registry ids (#94980) 2023-06-21 14:51:24 +02:00
Erik Montnemery e404441e8c
Teach lock device trigger about entity registry ids (#94975) 2023-06-21 14:51:09 +02:00
Erik Montnemery 20be441c9f
Teach device_tracker device trigger about entity registry ids (#94972) 2023-06-21 14:51:00 +02:00
Erik Montnemery 49c7d2ff89
Teach cover device trigger about entity registry ids (#94971) 2023-06-21 14:50:40 +02:00
Erik Montnemery f3defff429
Teach climate device trigger about entity registry ids (#94969) 2023-06-21 14:50:21 +02:00
Erik Montnemery 49ec806046
Teach button device trigger about entity registry ids (#94965)
* Teach button device trigger about entity registry ids

* Update homekit_controller tests
2023-06-21 14:50:11 +02:00
Erik Montnemery 4414f06ed2
Teach binary_sensor device trigger about entity registry ids (#94963)
* Teach binary_sensor device trigger about entity registry ids

* Update deconz test
2023-06-21 14:49:53 +02:00
Erik Montnemery 732ce34a66
Remove assert_lists_same test helper (#94904) 2023-06-21 12:10:28 +02:00
Maciej Bieniek 05039036f1
Add compatibility with sleeping Shelly gen2 devices with firmware 1.0.0 (#94864) 2023-06-21 12:01:17 +02:00
RoboMagus 3bacd9df2f
Add trigger for persistent_notification (#94809)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-06-21 11:55:06 +02:00
J. Nick Koston 605c4db142
Relocate async_get_announce_addresses from zeroconf to network (#94816) 2023-06-21 11:29:04 +02:00
Erik Montnemery b254218dd6
Remove `base_url` configuration option from `tts` (#94905) 2023-06-21 11:20:33 +02:00
Joost Lekkerkerker 83c478105b
Add entity translations for huisbaasje (#94116) 2023-06-21 11:18:55 +02:00
epenet 60b78f4648
Add error handling to hassio issues (#94951) 2023-06-21 11:17:11 +02:00
Erik Montnemery 1d18fdf7bd
Improve alarm_control_panel device trigger tests (#94956) 2023-06-21 11:11:07 +02:00
Guido Schmitz 933ae5198e
Refactor devolo_home_network tests (#88706)
* Refactor devolo_home_network tests

* Reduce to snapshot introduction

* Simplify

* Update snapshots

* Simplify further
2023-06-21 10:21:36 +02:00
Erik Montnemery 446a820cbb
Name unnamed sensors by their device class (#94646) 2023-06-20 23:09:24 +02:00
J. Nick Koston b857dc8d94
Bump HAP-python to 4.7.0 (#94812) 2023-06-20 23:06:26 +02:00
Jan Bouwhuis 4def901ecc
Ignore empty status update for mqtt number (#94800) 2023-06-20 23:04:01 +02:00
Jan Bouwhuis a4399a4cb6
Add device trigger for humidifier current_humidity (#94926) 2023-06-20 22:57:44 +02:00
Jan Bouwhuis 3b8feab699
Add current_humidity to humidifiers in google_assistant (#94935) 2023-06-20 22:49:10 +02:00
Jan Bouwhuis d6b89b6f7b
Add current_humidity attribute on homekit_controller humidifier (#94937) 2023-06-20 21:46:07 +01:00
Austin Mroczek 252c0e8ad9
Fix Totalconnect BinarySensorDeviceClass logic (#94772)
* handle temperature

* test for temperature

* test for unknown
2023-06-20 22:12:11 +02:00
Erik Montnemery 6183a36fce
Replace assert_lists_same with pytest_unordered in integrations t-z (#94903) 2023-06-20 20:23:49 +02:00
Erik Montnemery eba04824a4
Replace assert_lists_same with pytest_unordered in integrations n-s (#94902) 2023-06-20 20:23:14 +02:00
Erik Montnemery 6a29ed8caa
Replace assert_lists_same with pytest_unordered in integrations a-f (#94900) 2023-06-20 20:22:31 +02:00
Erik Montnemery fd822bce56
Replace assert_lists_same with pytest_unordered in integrations h-m (#94901) 2023-06-20 20:16:25 +02:00
Denis Shulyaka 1d2a973289
Generic hygrostat current humidity (#94912) 2023-06-20 20:10:21 +02:00
Erik Montnemery b600c2cd85
Add cloud_connected method to CloudClient (#91997)
* Add cloud_connected method to CloudClient

* Add cloud_disconnected method

* Update client.py
2023-06-20 17:15:13 +02:00
J. Nick Koston 3f18f515e7
Improve websocket api coverage and typing (#94891) 2023-06-20 15:21:24 +01:00
Allen Porter 30e8f806c1
Improve service response data APIs (#94819)
* Improve service response data APIs

Make the API naming more consistent, and require registration that a
service supports response data so that we can better integrate with
the UI and avoid user confusion with better error messages.

* Improve test coverage

* Add an enum for registering response values

* Assign enum values

* Convert SupportsResponse to StrEnum

* Update service call test docstrings

* Add tiny missing full stop in comment

---------

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-06-20 06:24:31 -07:00
Erik Montnemery 4a8adae146
Teach alarm_control_panel device trigger about entity registry ids (#60977)
* Teach alarm_control_panel device trigger about entity registry ids

* Lint code

* Address review comment
2023-06-20 08:27:31 -04:00
Erik Montnemery 609a573b55
Regenerate instance ID on error (#94898) 2023-06-20 11:16:51 +02:00
Denis Shulyaka 185aaa9e07
Humidifier current humidity (#94874) 2023-06-20 09:43:33 +02:00
J. Nick Koston 1206f2c1da
Fix memory leaks in websocket api (#94780)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-19 18:27:22 -05:00
Erik Montnemery a7d327afa2
Improve test coverage of automation extraction functions (#94878) 2023-06-19 23:05:20 +02:00
Erik Montnemery 5d138b64d9
Improve test coverage of script (#94883) 2023-06-19 22:40:49 +02:00
Erik Montnemery 5303bef83e
Add image entity component (#90564) 2023-06-19 17:03:48 +02:00
Erik Montnemery 3ee63ba2c2
Add tests for kitchen_sink sensor platform (#94724)
* Add tests for kitchen_sink sensor platform

* Address review comments
2023-06-19 14:16:18 +02:00
Erik Montnemery e49c2fde14
Add tests for kitchen_sink lock platform (#94723) 2023-06-19 13:24:36 +02:00
Mike Heath d3bf52c136
Register Fully Kiosk services regardless of setup result (#88647)
* Register services at integration level

If HA is unable to connect to Fully Kiosk, the services don't get
registered. This can cause repair to create notifications saying
that the 'fully_kiosk.load_url' service is unknown.

Fixes #85444

* Validate config entry is loaded

* Refactor service invocation

Raises `HomeAssistantError` when the user provides an device id that is
not in the device registry or a device that is not a Fully Kiosk
device. If the device's config entry is not loaded, a warning is
logged.

* Update homeassistant/components/fully_kiosk/services.py

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

* Assert HomeAssistantError when integration unloaded

* Remove unused import

* Set CONFIG_SCHEMA

* Update homeassistant/components/fully_kiosk/__init__.py

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

* Add test for non fkb devices targets in service calls

* Apply suggestions from code review

---------

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-19 13:12:04 +02:00
Ernst Klamer 13a217ad89
Bump bthome to 2.12.0 (#94822) 2023-06-18 15:06:09 -05:00
starkillerOG ee7f44b3da
Bump reolink-aio to 0.7.1 (#94761) 2023-06-18 13:13:21 +02:00
Joost Lekkerkerker 9f83e4b2de
Make YouTube select lower quality thumbnails (#94652)
* Make YouTube select lower quality thumbnails

* Make YouTube select lower quality thumbnails

* Make YouTube select lower quality thumbnails

* Make YouTube select lower quality thumbnails

* Add tests

* Add tests

* Add tests

* Add tests

* Add tests
2023-06-17 21:59:06 -04:00
Eric Severance 7f7b7aee6d
pyWeMo serialnumber is deprecated, use serial_number (#94791) 2023-06-17 20:59:19 -04:00
Allen Porter c4284c07b6
Allow scripts to capture service response data in variables (#94757)
* Allow scripts service actions to save return values

* Simplify script service response data

* Rename result_variable to response_variable based on feedback
2023-06-16 22:59:44 -04:00
Erik Montnemery 4f669b326f
Fix typo in tts tests (#94725) 2023-06-16 21:08:14 -04:00
J. Nick Koston 68cf796be8
Speed up entity service calls (#94731)
* Speed up entity service calls

- Avoid permissions check if the caller is an admin
- Use set intersection instead of linear search of entity platforms to find entities

* tweak

* fix light test to not use an admin user
2023-06-16 21:07:57 -04:00
Allen Porter 84c66b3cad
Add support for services to return data (#94401)
* Add support for service calls with resopnse data.

Update the service calls to allow returning responses with data,
with an initial use case supporting basic service calls usable
within script.

* Revert enttiy platform/component changes

* Remove unnecessary comma diff

* Revert additional unnecessary changes

* Simplify service call

* Simplify and fix typing and revert whitespace

* Clarify typing intent

* Revert more entity service calls

* Revert additional entity service changes

* Set blocking=True for group notify service call

* Revert unnecessary changes

* Reverting more whitespace changes

* Revert more service changes

* Add test coverage for None return case

* Add parameter to service calls indicating return values were requested

* Update tests/test_core.py

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>

* Add additional service call tests

* Update test comment

---------

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2023-06-16 12:43:35 -04:00
Allen Porter 12129e9d21
Update service call return values and error handling (#94657)
* Update return signature of service calls

* Add timeout error handling in websocket api for service calls

* Update recorder tests to remove assertion on service call

* Remove timeout behavior and update callers that depend on it today

* Fix tests

* Add missing else

* await coro directly

* Fix more tests

* Update the intent task to use wait instead of timeout

* Remove script service call limits and limit constants

* Update tests that depend on service call limits

* Use wait instead of wait_for and add test

* Update homeassistant/helpers/intent.py

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

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-16 07:01:40 -07:00
Erik Montnemery 92bba4d7be
Fix typo in binary_sensor tests (#94712) 2023-06-16 13:57:42 +02:00
Raman Gupta 934e1a1603
Fix zwave_js trigger event reattach logic (#94702) 2023-06-16 09:35:29 +02:00
Franck Nijhof be05a749c5
Add preheating HVAC action to climate (#94677)
* Add preheating HVAC action to climate

* Fix MQTT tests
2023-06-15 22:16:12 -04:00
J. Nick Koston 26be0fab78
Fix debouncer not scheduling timer when wrapped function raises (#94689)
* Fix debouncer not scheduling timer when callback function raises

* test coro as well

* preen
2023-06-15 22:15:49 -04:00
J. Nick Koston 34b725bb99
Debounce discoveries to improve event loop stability at the started event (#94690)
* Debounce discoveries to improve event loop stability at the started event

The first one is immediate and anything that fires within the next
second will be debounced to only happen once every second

* fix mock
2023-06-15 22:15:07 -04:00
Jan Bouwhuis 5e55f83cbc
Correct imap sensor measurement class and add suggested precision (#94060)
* Fix imap sensor measurement class and precision

* Test measurement class is set correctly

* Remove unrelated changes

* Move EntityDescription to module level
2023-06-16 00:44:58 +02:00
Erik Montnemery 334dacc322
Change Entity.name default to UNDEFINED (#94574)
* Change Entity.name default to UNDEFINED

* Update typing

* Update Pylint plugin

* Update TTS test
2023-06-15 11:09:53 +02:00
J. Nick Koston d369d679c7
Fix ESPHome entries reloading after startup when dashboard is in use (#94362) 2023-06-14 21:16:39 -10:00
epenet 580b09d0f2
Refactor XML parsing in rest (#94268)
* Refactor XML parsing in rest

* Adjust caplog check

* Adjust

* Rename

* Simplify
2023-06-15 09:15:25 +02:00
J. Nick Koston 2a5ffa9a5b
Fix timestamps for bluetooth scanners that bundle advertisements (#94511)
#94138 added support for raw/bundled advertisements. We should use the
same monotonic time for all advertisements in the bundle if not time
is passed, or calculate the timestamp and pass it if its known
2023-06-14 21:47:00 -04:00
puddly 22dfa8797f
Bump ZHA dependencies (#93989)
* Make `find_entity_id` synchronous

* Remove `tries`

* Use new `attribute_updated` event signature

* Validate attributes before creating entities

* Avoid swallowing exceptions when opening covers

* Bump ZHA dependencies

* Add a matcher for Sinope water leak sensors using a non-standard ZCL attribute

* Ensure handler matching is strict, not multi

* Add type annotations for newly-updated functions
2023-06-14 21:42:31 -04:00
J. Nick Koston e0ae7a31fe
Remove _raw from zeroconf properties (#94615)
* Remove _raw from zeroconf properties

This was added in #31059 but it appears it was never used.

To preserve backwards compatibility, properties are still decoded
but utf-8 errors are replaced instead of dropped

* Remove _raw from zeroconf properties

This was added in #31059 but it appears it was never used.

To preserve backwards compatibility, properties are still decoded
but utf-8 errors are replaced instead of dropped
2023-06-14 21:31:52 -04:00
Maciej Bieniek 7b3f100efb
Catch InvalidAuthError in `shutdown()` method for Shelly gen2 devices (#94563)
* Catch InvalidAuthError in shutdown() method

* Add test

* Revert unwanted change in tests
2023-06-15 00:00:21 +03:00
Erik Montnemery f68ed8b7a0
Always setup demo platforms with device support from config entry (#94601)
* Always setup demo platforms with device support from config entry

* Update tests depending on the demo integration
2023-06-14 21:03:07 +02:00
J. Nick Koston a0c023d5cb
Reduce overhead to lookup items in the entity and device registry (#94568) 2023-06-14 20:47:18 +02:00
Erik Montnemery 9a3077d64a
Always setup demo platforms with device support from config entry (#94586)
* Always setup demo platforms with device support from config entry

* Adjust test fixutres

* Update tests depending on the demo integration
2023-06-14 16:50:35 +02:00
Erik Montnemery 1b8c72e644
Remove legacy STT provider from the demo integration (#94585) 2023-06-14 14:55:50 +02:00
Erik Montnemery e5b2801f5b
Fix ZHA tests (#94588) 2023-06-14 14:21:34 +02:00
Erik Montnemery 2406b235b4
Name unnamed binary sensors by their device class (#92940)
* Name unnamed binary sensors by their device class

* Update type annotations

* Fix loading of entity component translations

* Add test

* Update integrations

* Set abode and rfxtrx binary_sensor name to None

* Revert changes in homekit_controller
2023-06-13 19:48:54 +02:00
Yuxin Wang b1bdd92383
Add unit inference for Amps and VA in APCUPSD integration (#94431)
* Add unit inference for Amps and VA

* Rename `init_integration` to `async_init_integration` for better consistency with HA naming style
2023-06-13 16:38:56 +02:00
Joakim Sørensen 889f3c36fc
Adjust default name in backup service calls to match documentation (#94468) 2023-06-13 11:41:53 +02:00
Raman Gupta f3ca3a8ee0
Set default value for endpoint in zwave device automations (#94445)
* Set default value for endpoint in zwave device automations

* add test case
2023-06-12 21:34:09 -04:00
G Johansson bd74f03d0b
Fix reload service in Command Line (#94436)
* Fix reload in Command Line

* Add read new yaml
2023-06-12 21:51:57 +02:00
G Johansson f931cc3d1c
Fix manual update for Command Line (#94433)
Manual update command line
2023-06-12 21:50:23 +02:00
Erik Montnemery d51982f12f
Add missing assert to test_async_remove_ignores_in_flight_polling (#94487) 2023-06-12 21:48:12 +02:00
Jan Bouwhuis 82b9a31ea7
Improve logging of mqtt discovery message errors (#94491)
* Improve logging on mqtt discovery message errors

* Create shared helper

* Apply suggestion

* Catch base class vol.Invalid
2023-06-12 21:28:28 +02:00
Luke 5cdb65100f
Add Roborock DnD switch (#94474)
* add Dnd switch

* add dnd test

* fix typing
2023-06-12 20:30:15 +02:00
Jan Bouwhuis c756c7aceb
Cleanup help_setup_helper in common mqtt tests (#94482) 2023-06-12 20:18:05 +02:00
jasonkuster a25f3c9b27
Fix ZHA binding api to actually return responses (#94388) 2023-06-12 13:07:42 -04:00
Erik Montnemery 86f2aa84e5
Fix flaky ESPHome test fixture (#94465) 2023-06-12 16:59:11 +02:00
Franck Nijhof eb2b1d2970
Add diagnostic support to Rituals Perfume Genie (#94373) 2023-06-12 11:33:47 +02:00
G Johansson ce02261303
Remove Brottsplatskartan YAML configuration (#94101)
Remove platform yaml
2023-06-12 11:28:21 +02:00
G Johansson f2cf92050a
Remove Workday YAML configuration (#94102)
Remove platform yaml from workday
2023-06-12 11:27:37 +02:00
Tom Harris 3eedbe92ad
Fix issue with Insteon linked devices maintaining current state (#94286)
* Bump pyinsteon

* Update tests
2023-06-11 10:21:33 -04:00