Commit Graph

8653 Commits (843296c1a3cf23ea60a8aa3c9bb55773ccaaa606)

Author SHA1 Message Date
Franck Nijhof 26faac0567
Remove YAML configuration from Rainforest Eagle (#57636) 2021-10-14 08:46:39 +02:00
ollo69 827501659c
Nut: Use coordinator data, code cleanup and add test coverage (#57643) 2021-10-13 16:05:06 -10:00
ollo69 b54fc0229d
Use entity_registry_enabled_default for Nut sensors (#56854) 2021-10-13 11:33:03 -10:00
jan iversen 2734ae17f3
Modbus baseplatform.py and Validators.py 100% coverage (activate coverage) (#57546) 2021-10-13 11:51:51 -07:00
Christian Manivong 16b7375e60
Provide device_id in hue_event (#56982)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-13 20:20:38 +02:00
Otto Winter df4e8721e9
ESPHome move ReconnectLogic to aioesphomeapi (#57601) 2021-10-13 10:04:23 -07:00
J. Nick Koston b86e19143d
Prevent event loop delay / instability from discovery (#57463) 2021-10-13 08:37:14 -07:00
Paulus Schoutsen ffbe4cffae
Guard linking credential that is already linked (#57595)
* Guard linking credential that is already linked

* Update test descriptions
2021-10-13 17:36:31 +02:00
Erik Montnemery a5603c0076
Improve warning prints for sensor statistics (#57605) 2021-10-13 08:15:04 -07:00
Abílio Costa c97acf8713
Add support for multiple Whirlpool airconditioners (#57588) 2021-10-13 15:45:02 +02:00
Allen Porter 1fa6329c2e
Add Nest WebRTC and support Nest Battery Camera and Nest Battery Doorbell (#57299)
* Add WebSocket API for intiting a WebRTC stream

See https://github.com/home-assistant/architecture/discussions/640

* Add nest support for initiating webrtc streams

Add an implementation of async_handle_web_rtc_offer in nest, with test coverage.
Issue #55302

* Rename offer variable to match overriden variable name

* Remove unnecessary checks covered by websocket function

* Update homeassistant/components/camera/__init__.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-13 03:28:52 -07:00
jan iversen 8d7744a74f
Warn user if Gateway is already paired (#57530)
* Warn user if Gateway is already paired.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-13 07:16:55 +02:00
J. Nick Koston abcacd2a00
Use a human readable model name in flux_led (#57519) 2021-10-12 21:40:49 -07:00
J. Nick Koston f41aedc0f9
Fix single channel controllers with flux_led (#57458) 2021-10-12 21:40:18 -07:00
J. Nick Koston 2adb9a8bec
Refresh the bond token if it has changed and available (#57583) 2021-10-12 21:39:46 -07:00
Erik Montnemery ee98849360
Always include start point for statistics (#57182) 2021-10-12 10:39:36 -07:00
Erik Montnemery ffeb73a4f6
Add statistics tests for sensor with changing device class (#57317) 2021-10-12 09:09:32 -07:00
Franck Nijhof f82af47f6a
Use Tuya endpoints values from upstream library (#57537) 2021-10-12 14:33:19 +02:00
Jan Bouwhuis 879144b48d
MQTT rework constants (#57529)
* reference CONF_TOPIC to .const

* Organize common mqtt constants
2021-10-12 11:26:38 +02:00
Allen Porter d0cc890d2b
Add statistics support to nest sensors (#57393)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-12 10:56:57 +02:00
Erik Montnemery 0139bfa749
Detect if mysql and sqlite support row_number (#57475) 2021-10-11 21:17:18 -07:00
Franck Nijhof f561543e92
Migrate attribution attribute for Arlo (#57504) 2021-10-11 20:40:40 -07:00
Franck Nijhof e94bebdf7b
Migrate attribution attribute for Picnic (#57507) 2021-10-11 20:39:51 -07:00
J. Nick Koston 58362404ea
Simplify yeelight setup to improve reliability (#57500) 2021-10-11 20:30:23 -07:00
Jan Bouwhuis a36a765352
Allow MQTT discovery availability shortcut (#57479)
* replace base in availability topic

* add tests for availability shortcuts - fix import

* group constants

* simplified loop

* Moving constants to .const

* rename value to topic

* move CONF_TOPIC to .const

* move CONF_AVAILABILITY to .const

* remove check for string

* Silently ignore if no config topic is found.

* CONF_TOPIC should be required
2021-10-11 23:37:31 +02:00
Franck Nijhof 13db867c1d
Move attribution attribute to Entity base class (#57492) 2021-10-11 23:15:32 +02:00
Martin Hjelmare d10b1d9fe0
Fix watttime config flow and tests (#57498) 2021-10-11 22:08:57 +02:00
Aaron Bach 0c04ca20c6
Add ability to re-auth WattTime (#56582)
* Tests cleanup

* Still store the abbreviation

* Code review

* Remove unused attribute

* Add ability to re-auth WattTime

* Consolidate logic for entry unique ID

* Fix tests

* Fix docstring
2021-10-11 13:41:39 -05:00
J. Nick Koston 381301d978
Add the switch platform to flux_led (#57444) 2021-10-11 07:20:11 -10:00
Glenn Waters d0b37229dd
Switch to config_flow for Environment Canada (#57127)
* Add config_flow to Environment Canada

* Add unique_id

* Remove erroneous directory.

* Tests working!!

* Add back setup.

* First cut of import.

* Temp

* Tweak names.

* Import config.yaml.

* Clean up imports.

* Import working! Some refactor to clean it up.

* Add import test.

* Small optimization.

* Fix comments from code review.

* Remove CONF_NAME and config_flow for it.

* Fixup strings to match new config_flow.

* Fixes for comments from last review.

* Update tests to match new import code.

* Clean up use of CONF_TITLE; fix lint error on push.

* Phew. More cleanup on import. Really streamlined now!

* Update tests.

* Fix lint error.

* Fix lint error, try 2.

* Revert unique_id to use location as part of ID.

* Fix code review comments.

* Fix review comments.
2021-10-11 17:33:29 +02:00
Maciej Bieniek 8ee6662cff
Bump `nettigo_air_monitor` library to version 1.1.1 (#57483) 2021-10-11 17:27:04 +02:00
Aaron Bach b72f1553ea
Use current config entry standards for AirVisual (#57132) 2021-10-11 09:17:43 -06:00
Robert Hillis a827521138
Add energy management for efergy (#57472) 2021-10-11 13:16:55 +02:00
Fredrik Erlandsson cadbf7f6a9
Bump Daikin version, catch new exception during config_flow (#57080) 2021-10-11 13:11:02 +02:00
jan iversen 199cf649be
Add test of lazy_error in modbus (#57170) 2021-10-11 12:43:05 +02:00
starkillerOG d84722c3c2
Fix Netgear orbi port in ssdp discovery (#57432) 2021-10-11 11:35:29 +02:00
Robert Hillis c4eeebd7a7
Add config flow for efergy (#56890) 2021-10-11 10:07:31 +02:00
J. Nick Koston e148939b78
Convert flux_led to use asyncio (#57440) 2021-10-10 15:12:54 -10:00
icemanch 3efbd6a1c9
Flux led color support (#57353)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-10 09:18:15 -10:00
J. Nick Koston 5b3711ed19
Use switch format unique ids for tplink dimmers (#57346) 2021-10-10 00:02:33 -07:00
J. Nick Koston a58085639e
Restore yeelight workaround for failing to update state after on/off (#57400) 2021-10-10 00:01:45 -07:00
Abílio Costa 49d97e13de
Improve Whirlpool component code quality (#57357)
* Improve Whirlpool component code

This implements a few suggestions given in
https://github.com/home-assistant/core/pull/48346#pullrequestreview-773552670

* Add return typing

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

* Add reason assertion to config_flow test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-10 08:49:02 +02:00
Robert Hillis 6a5895222e
Catch errors for efergy (#57326)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-09 11:23:40 +02:00
Ben fe065b2de8
Add Sure Petcare Felaqua device (#56823)
* add a SurePetcareSensor

* add the felaqua sensor

* add felaqua battery test

* fix felaqua product_id

* actually add a felaqua sensor 😅

* remove superclass
2021-10-09 01:33:41 -05:00
Paulus Schoutsen 6d0da631bf
Handle prepare timeout in websocket API (#55989) 2021-10-08 22:12:06 -07:00
Aaron Bach fe3b5e8804
Use current config entry standards for SimpliSafe (#57141)
* Use current config entry standards for SimpliSafe

* Include tests
2021-10-08 14:22:29 -05:00
Erik Montnemery 7e34860615
Improve state of cover groups (#57313)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-10-08 09:52:58 -07:00
David Boslee 7f966613bd
Disconnect websockets after token is revoked (#57091)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-08 09:38:22 -07:00
J. Nick Koston e77fae56d9
Migrate tplink hosts that were previously imported from yaml (#57308) 2021-10-08 08:58:18 -07:00
Steven Looman ba83433c64
Fix multiple upnp/ssdp issues (#57314) 2021-10-08 08:57:49 -07:00
Paulus Schoutsen b0f24b65d6
Drop more persistent notification patches (#57295) 2021-10-08 16:45:05 +02:00
Franck Nijhof 82160fa350
Add config flow to Stookalert (#57119) 2021-10-08 11:34:22 +02:00
Allen Porter 7d4dd94da8
Add WebSocket API for intiting a WebRTC stream (#57034)
* Add WebSocket API for intiting a WebRTC stream

See https://github.com/home-assistant/architecture/discussions/640

* Increase test coverage for webrtc camera stream

* Apply suggestions from code review

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

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-07 22:13:14 -07:00
Teemu R 8fb0da7720
Stopgap fix for inconsistent upstream API of tplink dimmers (#57285) 2021-10-07 20:15:13 -07:00
J. Nick Koston ddab7f3024
Bump HAP-python to 4.30 (#57284) 2021-10-07 20:06:27 -07:00
Teemu R 36a22400e5
Fix transition handling for tplink lights (#57272)
* Fix transition handling for tplink light

* Apply suggestions from code review

* Test that all transitions are passed correctly

* Fix linting

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-08 00:20:26 +02:00
Raman Gupta 3476b430db
Convert val to str when needed while calling zwave_js.set_value (#57216) 2021-10-07 13:22:33 -07:00
J. Nick Koston ac3741df41
Fix RGB only (no color temp) devices with tplink (#57267) 2021-10-07 10:14:14 -10:00
Michael Chisholm 667e730946
Improve dlna_dmr code quality (#56886)
* Listen for config updates from DlnaDmrEntity.async_added_to_hass

Use `Entity.async_on_remove` for dealing with callback cancellation,
instead of re-inventing the wheel with `_remove_ssdp_callbacks`.

* Use async_write_ha_state within async methods

* Import YAML config from async_setup_platform

* Import flow prompts user when device is uncontactable during migration

When config flow is able to contact a device, or when it has information
from SSDP, it will create config entries without error. If the device is
uncontactable at this point then it will appear as unavailable in HA
until it is turned on again.

When import flow cannot migrate an entry because it needs to contact the
device and can't, it will notify the user with a config flow form.

* Don't del unused parameters, HA pylint doesn't care

* Remove unused imports from tests

* Abort config flow at earliest opportunity

* Return async_abort instead of raising AbortFlow

* Consolidate config entry test cleanup into a single function

* fixup! Consolidate config entry test cleanup into a single function

Revert "Consolidate config entry test cleanup into a single function"

This reverts commit 8220da7263.

* Check resource acquisition/release in specific tests

* fixup! Check resource acquisition/release in specific tests

* Remove unused network dependency from manifest

* _on_event runs in async context

* Call async_write_ha_state directly (not via shedule_update)

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 22:14:00 +02:00
Kevin Hellemun dc5e4392ae
Refactor Xiaomi vacuum to sensors (#54990)
* Refactor Xiaomi vacuum with sensors.

This is the first step into refactoring xiaomi vacuum attributes into sensors.
What is missing are some switches and binary sensors etc.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Use generic sensor for Xiaomi vacuum sensors.

By using HA coordinator, the generic Xiaomi sensor class can be used with these
coordinators to get the status sensors from vacuum. This also means now that
sensors are available as soon as HA starts, which is a nice plus.

Now the only reason to create a subclass of the generic sensors is when custom
value parsing needs to be done.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Working vacuum sensors via 1 coordinator.

Vacuum needs a custom coordinator to ensure that it fetches all the needed data
and puts it in a dict. From this dict the sensors will then get their data
accordingly.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Remove vacuum setup method in sensor

Sensor is generic enough that vacuum does not require its own setup method.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Don't auto register generic sensors.

Let the user decide which sensor is useful for them and enable them.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Remove converted attributes from xiaomi vacuum.

The attributes that have been converted so far should be removed from the vacuum
attributes list.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fetch data from vacuum sequentially.

It seems some vacuums do not like parallel requests. The requests that came
before are ignored.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refactor vacuum sensors to its own container.

By moving vacuum sensors to its own container, there is no more key collisions.
This in turns means that there is need for the split hack to ensure key names
are correct.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* fixup! fix bad rebase.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fix sensor naming and default registration.

Use proper names for sensors, no need to include from which device status it
came.

Registration of the sensor by default has been parameterised. If the param is
not set, the sensor is not registered.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Make vacuum platform also use coordinator for its data.

By using the coordinator for data in vacuum platfrom, removes the cases where
request gets ignored during the case where the requests are done concurrently by
separate platforms.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Add binary sensor for vacuum

Add binary sensor for waterbox, mop, and water shortage.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Added proper icons to sensors.

https://github.com/home-assistant/core/issues/51361

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refactor sensors to use dataclass.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Make vacuum use coordinator for its data.

This commit also insures that the binary sensors are only registered for devices
that include a mop.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Apply suggestions from code review

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

* Minor refactoring

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Update data from coordinator after running command.

This is is to have a faster status change when executing a command like changing
fan speeds. If a manual refresh is not triggered. Worst case scenario it will
take 10s for the new fan speed to be reported in HA.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Refresh within coroutine is ok.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Move logging to _handle_coordinator_update

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Use internal state attribute.

Signed-off-by: Kevin Hellemun <17928966+OGKevin@users.noreply.github.com>

* Fix vacuum typing

* Fix tests constants

* Fix vacuum inconsistent return values

* Fix vacuum state update

* Fix vacuum tests

* Remove impossible cases

* Parametrize custom services test

* Move goto test

* Move clean segment test

* Move clean single segment test

* Test service pause

* Include vacuum in coverage

* Delint

* Fix vacuum sensor dict collision.

This also prevents collision for unique id. As the key is used to construct
unique ids.

* Use f strings as dict keys

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 18:30:17 +02:00
J. Nick Koston a2dcc0308b
Discover tplink devices periodically (#57221)
- These devices sometimes do not respond on the first try
  or may be subject to transient broadcast failures, or
  overloads. We now try discovery periodically once the
  integration has been loaded.

- We used to try this 4x at startup, but that solution
  seemed to aggressive as we want to be sure we pickup
  the devices after startup as well since the network
  will likely be more calm after startup.
2021-10-07 17:52:24 +02:00
Erik Montnemery 0e48985fc5
Validate initial value for input_datetime (#57256) 2021-10-07 17:13:07 +02:00
Jeff Irion 9dfb684002
Enable template icons for template selects (#57092)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2021-10-07 15:38:02 +02:00
Erik Montnemery 7223c59e79
Allow resetting an MQTT number (#57161)
* Allow resetting an MQTT number

* Add abbreviation
2021-10-07 13:54:34 +02:00
Paulus Schoutsen a4d9019ffc
Refactor persistent notification to no longer route all data via a service (#57157)
* Convert persistent notification tests to async

* Create/dismiss persistent notifications in exposed functions, not service calls

* Fix notify persistent_notification

* Remove setting up persistent_notification

* Drop more setups

* Empty methods

* Undeprecate sync methods because too big task

* Fix setup clearing notifications

* Fix a bunch of tests

* Fix more tests

* Uno mas

* Test persistent notification events

* Clean up stale comment

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-07 12:58:00 +02:00
Jean-Yves Avenard 9d84d41f81
Change energy state class to STATE_CLASS_TOTAL (#56974) 2021-10-06 13:24:17 +02:00
Thomas Schamm aa03b63884
Skip link local addresses in bosch_shc discovery step (#57074) 2021-10-06 10:09:02 +02:00
Fredrik Erlandsson a809f5fcf7
Update Daikin config_flow with better error handling (#57069) 2021-10-06 10:07:30 +02:00
Lawrence 205b40cf16
Updated amberelectic attributes to reflect unit change to $/kWh (#57109) 2021-10-05 20:34:23 -07:00
J. Nick Koston 7e5dfadc27
Add sw_version and model to flux_led device info (#56958) 2021-10-05 14:53:39 -10:00
Erik Montnemery f6682ba99d
Block tests from opening sockets (#55516) 2021-10-05 14:46:09 -10:00
J. Nick Koston eba7cad33f
Fix yeelight connection when bulb stops responding to SSDP (#57138) 2021-10-05 13:41:56 -07:00
Paulus Schoutsen 34544da449
Reinstate asking for country in Tuya flow (#57142) 2021-10-05 22:32:48 +02:00
indykoning f76cb12945
Fix Growatt login invalid auth response (#57071) 2021-10-05 12:31:23 -07:00
Franck Nijhof 86852df2fc
Bump tuya-iot-py-sdk to 0.5.0 (#57110)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-10-05 10:21:55 -07:00
Raman Gupta 3c074ab865
Add additional properties to node_status WS cmd (#56927)
* Add node.zwave_plus_version to node_status WS command

* Add highest security class to node_status
2021-10-05 11:23:44 -04:00
Erik Montnemery f548d1dba7
Prevent opening of sockets in mqtt tests (#57101) 2021-10-05 11:14:53 +02:00
Paulus Schoutsen 11ed70b774
Fix energy gas price validation (#57075) 2021-10-04 20:52:40 -07:00
J. Nick Koston 2f960e558f
Prevent dlna_dmr from opening sockets in tests (#57059)
Supports #55516
2021-10-04 20:25:46 +02:00
J. Nick Koston 77af741099
Prevent tplink from opening sockets in tests (#57058)
Supports #55516
2021-10-04 20:25:09 +02:00
Alexei Chetroi 723596076d
Add ZHA HVAC Action sensor (#57021)
* WIP

* Refactor multi-entity matching

Eliminate the notion on primary channel.

* Cleanup climate tests

* Refactor multi-entity match

Remove the "primary channel" in multiple entity matches

* Cleanup

* Add HVAC Action sensor

* Add a "stop_on_match" option for multi entities matches

Nominally working HVAC state sensors

* Add id_suffix for HVAC action sensor

* Fix Zen HVAC action sensor

* Pylint
2021-10-04 12:57:58 -04:00
Erik Montnemery 69875cbd11
Improve sensor statistics validation (#56892) 2021-10-04 09:47:44 -07:00
Joakim Sørensen 745298408a
Rewrite tuya config flow (#57043)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-10-04 08:27:24 -07:00
Erik Montnemery 8567aa9e13
Evict purged states from recorder's old_state cache (#56877)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-04 08:21:40 -07:00
Erik Montnemery 582788026a
Mock out network.util.async_get_source_ip in tests (#57039) 2021-10-04 15:33:13 +02:00
Erik Montnemery 70f4bdf63e
Prevent opening of sockets in watttime tests (#57040) 2021-10-04 07:09:42 -06:00
Erik Montnemery 099428fa73
Use hass_client_no_auth test fixture in additional tests (#57037) 2021-10-04 13:37:05 +02:00
Erik Montnemery 80a225ca98
Prevent opening of sockets in kira tests (#57038) 2021-10-04 13:33:29 +02:00
Oliver Ou 7446e388ed
Fix Tuya v2 login issue (#56973)
* fix login issue

* fix:login error

* update COUNTRY_CODE_CHINA line location

* added one blank line

* feat:added line #L88 was not covered by tests

* ci build errors

Co-authored-by: erchuan <jie.zheng@tuya.com>
2021-10-04 10:45:37 +02:00
Paulus Schoutsen 2d374d65b6
Mark auth voluptuous schema fields as required (#57003) 2021-10-03 22:02:30 -07:00
Paulus Schoutsen 255ffe801b
Fix tractive flaky test (#57026) 2021-10-04 06:46:06 +02:00
jjlawren 33541ab287
Shorten album titles when browsing artist (#57027) 2021-10-03 21:13:08 -07:00
Tobias Sauerwein 1747578be5
Fix camera tests (#57020) 2021-10-03 16:55:07 -07:00
J. Nick Koston 4c51d0d2cf
Round tplink energy sensors to prevent insignificant updates (#56999)
- These sensors wobble quite a bit and the precision did
  not have sensible limits which generated a massive amount
  of data in the database which was not very useful
2021-10-03 21:28:39 +02:00
Glenn Waters 57851e9623
Support connecting to ElkM1 over TLS 1.2 (#56887) 2021-10-03 08:06:29 -10:00
Daniel Hjelseth Høyer 2fdef0e144
Update surepetcare test (#56871)
Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-10-03 14:28:52 +03:00
J. Nick Koston 1aeab65f56
Fix yeelight state when controlled outside of Home Assistant (#56964) 2021-10-03 00:08:31 -07:00
Alexei Chetroi d0827a9129
ZHA support for additional entities on ElectricalMeasurement ZCL cluster (#56909)
* Add electrical measurement type state attribute.

* Add active_power_max attribute

* Skip unsupported attributes on entity update

* Fix tests

* Create sensor only if the main attribute is supported

* Refactor ElectricalMeasurement sensor to use attr specific divisor and multiplier

* Multiple entities for electrical measurement cluster

* Update discovery tests

* Sensor clean up

* update tests

* Pylint
2021-10-02 21:57:49 -04:00
RenierM26 7d6b4a985d
Fix Switchbot unsupported SB types (#56928) 2021-10-02 13:51:53 -07:00
icemanch a95c6b10f7
Flux led config flow (#56354)
Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-10-02 07:19:36 -10:00
Milan Meulemans 538773a14a
Add SSDP discovery to Nanoleaf (#56907) 2021-10-01 21:29:56 -10:00
Ville Skyttä 2730a27fd0
Use HTTPStatus instead of HTTP_* constants in various test mocks (#56543) 2021-10-01 15:52:45 -07:00
Robert Svensson 8d06527cb1
Improve deCONZ services code quality (#56904)
* setup and unload services does not need to be async

* Only use DECONZ_DOMAIN to decide if service should be setup

* Consolidation of functionality

* Make a service to schema dictionary
2021-10-01 14:31:38 -04:00
Jeff Irion 15a8f6741b
Enable template icons for template numbers (#56154) 2021-10-01 09:35:44 -07:00
Ricardo Steijn c0016415aa
Handle missing serial extended parameters in crownstone (#56864) 2021-10-01 08:42:32 -07:00
Robert Svensson 1c1bb057d7
CLIPGenericFlag should be deCONZ sensor not binary sensor (#56901) 2021-10-01 17:10:01 +02:00
Robert Svensson 0916322a43
Deduplicate controls of UniFi services (#56834)
* Fix left over comments from #56717 - no need to keep UNIFI_SERVICES if we control it is only called while UNIFI_DOMAIN is empty

* Fix late comments as well

* Improve service tests

* mock.called_with was not reliable
2021-10-01 15:59:29 +02:00
Daniel Hjelseth Høyer 4a2ed97e0d
Add locking state to surepetcare locks (#56830) 2021-09-30 08:16:35 -07:00
Erik Montnemery 6af1a835e6
Optimize statistics generation (#56821)
* Optimize statistics generation

* pylint
2021-09-30 17:14:36 +02:00
Daniel Hjelseth Høyer d5bda3ac14
Surepetcare reauthorize (#56402)
Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-30 10:11:45 -05:00
Erik Montnemery 6954614e62
Warn if total_increasing sensor has negative states (#56564) 2021-09-30 07:49:16 -07:00
Niels Mündler 3a56e3a823
Correctly handle offline and unsupported printers during setup (#55894) 2021-09-30 16:29:51 +02:00
Robert Svensson d61a9e8b72
Service to remove clients from UniFi Controller (#56717) 2021-09-30 14:38:29 +02:00
Kevin Stillhammer dd52ec78c7
Add Kraken delay after first update to avoid limit (#55736)
* Add delay after first update to avoid limit

* Apply suggestions
2021-09-30 13:23:46 +02:00
Oliver Ou d3b1ccb668
Tuya v2 Integration Release (#56820)
Co-authored-by: 乾启 <18442047+tsutsuku@users.noreply.github.com>
Co-authored-by: dengweijun <dengweijunben@gmail.com>
Co-authored-by: dengweijun <mengzi.deng@tuya.com>
Co-authored-by: erchuan <jie.zheng@tuya.com>
Co-authored-by: erchuan <erchuan365@outlook.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-30 12:02:56 +02:00
Julian Löhr 26042bdad7
Add Fritz!DECT 440 humidity sensor (#54597)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2021-09-30 11:56:38 +02:00
Simone Chemelli 8993ff0377
Fritz new binary sensor for link and firmware status + code cleanup (#55446) 2021-09-30 11:18:04 +02:00
Rami Mosleh 51addfc164
Add device_info to `Speedtestdotnet` and some code cleanup (#56612)
* Apply code cleanup suggestions from previous PRs

* Update homeassistant/components/speedtestdotnet/const.py

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

* fix native_value, and ping value in test

* use self._state instead of _attr_native_value

* update identifiers and add more tests

Co-authored-by: Franck Nijhof <git@frenck.dev>
2021-09-30 08:28:04 +02:00
J. Nick Koston 2ed35debdc
Fix dhcp discovery matching due to deferred imports (#56814) 2021-09-29 23:50:21 -05:00
jjlawren 2ff1fc83bc
Add latest added media as Plex library sensor attribute (#56235) 2021-09-29 17:11:53 -07:00
Martin Hjelmare 12b2076351
Fix zwave_js config flow import step (#56808) 2021-09-30 01:15:05 +02:00
Martin Hjelmare fa716d92ad
Manage s2 keys in zwave_js (#56783) 2021-09-29 15:04:24 -07:00
Erik Montnemery 8c3fc95fb8
Fallback to state machine in statistics (#56785) 2021-09-29 14:57:16 -07:00
Robert Svensson f224ab6d67
Use isinstance to verify class in deCONZ integration (#56794)
* Don't enable any variants of the daylight sensor entities by default

* Use isinstance rather than doing ZHATYPE compare

* Accidentally removed an import
2021-09-29 21:19:21 +02:00
jjlawren 8f4ba564d4
Plex media browser improvements (#56312) 2021-09-29 11:17:55 -07:00
Alexei Chetroi dbba2c4afe
Add "Summation Delivered" Sensor for SmartEnergy metering ZHA channel (#56666) 2021-09-29 09:35:20 -07:00
Daniel Hjelseth Høyer 60eb426451
Add Surepetcare locks (#56396)
* Surepetcare, add lock

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix tests

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Surepetcare, lock name

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* surepetcare_id

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* typing

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix review comment

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix review comment

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix review comment

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* add more tests

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>

* Fix review comment

Signed-off-by: Daniel Hjelseth Høyer <github@dahoiv.net>
2021-09-29 09:17:12 -07:00
Martin Hjelmare 50fffe48f8
Add zwave to zwave_js migration (#56159)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-29 08:55:27 -07:00
Daniel Hjelseth Høyer d5c3d234ec
Open garage, add config flow (#55290) 2021-09-29 09:43:51 -06:00
Erik Montnemery 40ecf22bac
Remove automatic splitting of net meters from statistics (#56772) 2021-09-29 17:20:17 +02:00
Erik Montnemery 00651a4055
Optimize _get_states_with_session (#56734)
* Optimize _get_states_with_session

* Move custom filters to derived table

* Remove useless derived table

* Filter old states after grouping

* Split query

* Add comments

* Simplify state update period criteria

* Only apply custom filters if we didn't get an include list of entities

Co-authored-by: J. Nick Koston <nick@koston.org>
2021-09-29 17:08:27 +02:00
avee87 daebc34f4d
Add code_format to template alarm (#56700)
* Added code_format to template alarm

* review comment

* review comment

* use constant

* back to enum

* none -> no_code
2021-09-29 16:59:46 +02:00
Franck Nijhof 41e5f05d99
Fix energy validation when not tracking costs (#56768) 2021-09-29 13:24:34 +02:00
Joakim Sørensen 6a9b484f2d
Remove timeout for backup services (#56763) 2021-09-29 09:46:05 +02:00
Regev Brody 115bb39c10
Fix cover group to handle unknown state properly (#56739)
* fix cover group unknown state

* fix cover grup state

* fix cover group issue
2021-09-29 08:37:16 +02:00
João Pedro Hickmann 4513a46248
Add zeroconf support for yeelight (#56758) 2021-09-28 20:53:43 -05:00
Myles Eftos 8e91e6e97e
Adding price spike binary sensor to the Amber electric integration (#56736) 2021-09-28 18:01:35 -07:00
J. Nick Koston cf36d0966d
Add coverage to verify tplink unique ids (#56746) 2021-09-28 17:57:22 -07:00
Michael Chisholm f7d95588f8
Provide most media metadata in DlnaDmrEntity (#56728)
Co-authored-by: Steven Looman <steven.looman@gmail.com>
2021-09-28 19:37:23 -05:00
Raman Gupta e76ddb4b27
Add proper S2 support for adding zwave_js nodes (#56516)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-28 15:37:45 -07:00
J. Nick Koston bc59387437
Explictly close the TPLink SmartDevice protocol on unload (#56743)
* Explictly close the TPLink SmartDevice protocol on unload

- There is a destructor that will eventually do this when
  the object gets gc. Its better to explictly do it at
  unload.

* fix coro mock
2021-09-28 18:36:45 +02:00
J. Nick Koston c95f7a5ba6
Add network support to tplink for discovery across subnets (#56721) 2021-09-28 09:58:25 -05:00
jjlawren 0d6aa89fd4
Refactor Sonos alarms and favorites updating (#55529) 2021-09-28 09:49:32 +02:00
Diogo Gomes 922d4c42a3
Inherit Filter sensor state_class from source sensor (#56407) 2021-09-28 09:30:21 +02:00
Raman Gupta e690d4b006
Add support for zwave_js device actions (#53038)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2021-09-28 09:06:02 +02:00
Myles Eftos 412ecacca3
Amberelectric (#56448)
* Add Amber Electric integration

* Linting

* Fixing some type hinting

* Adding docstrings

* Removing files that shouldn't have been changed

* Splitting out test helpers

* Testing the price sensor

* Testing Controlled load and feed in channels

* Refactoring mocks

* switching state for native_value and unit_of_measurement for native_unit_of_measurement

* Fixing docstrings

* Fixing requiremennts_all.txt

* isort fixes

* Fixing pylint errors

* Omitting __init__.py from test coverage

* Add missing config_flow tests

* Adding more sensor tests

* Applying suggested changes to __init.py__

* Refactor coordinator to return the data object with all of the relevent data already setup

* Another coordinator refactor - Better use the dictionary for when we build the sensors

* Removing first function

* Refactoring sensor files to use entity descriptions, remove factory

* Rounding renewable percentage, return icons correctly

* Cleaning up translation strings

* Fixing relative path, removing TODO

* Coordintator tests now accept new (more accurate) fixtures

* Using a description placeholder

* Putting missing translations strings back in

* tighten up the no site error logic - self._site_id should never be None at the point of loading async_step_site

* Removing DEVICE_CLASS, replacing the units with AUD/kWh

* Settings _attr_unique_id

* Removing icon function (it's already the default)

* Apply suggestions from code review

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

* Adding strings.json

* Tighter wrapping for try/except

* Generating translations

* Removing update_method - not needed as it's being overriden

* Apply suggestions from code review

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

* Fixing tests

* Add missing description placeholder

* Fix warning

* changing name from update to update_data to match async_update_data

* renaming [async_]update_data => [async_]update_price_data to avoid confusion

* Creating too man renewable sensors

* Override update method

* Coordinator tests use _async_update_data

* Using $/kWh as the units

* Using isinstance instead of __class__ test. Removing a zero len check

* Asserting self._sites in second step

* Linting

* Remove useless tests

Co-authored-by: jan iversen <jancasacondor@gmail.com>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-28 00:03:51 -07:00
J. Nick Koston f93539ef4c
Add api to the network integration to get ipv4 broadcast addresses (#56722) 2021-09-27 21:43:39 -07:00
Erik Montnemery 8ef123259e
Add WS API for updating unit_of_measurement in statistics metadata (#56184)
* Add WS API for updating statistics metadata

* Update homeassistant/components/recorder/websocket_api.py

Co-authored-by: Bram Kragten <mail@bramkragten.nl>

* Update homeassistant/components/recorder/websocket_api.py

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

* Fix typo

Co-authored-by: Bram Kragten <mail@bramkragten.nl>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-09-28 00:43:29 +02:00
Diogo Gomes ec9fc0052d
Define `unit_of_measurement` of all `utility_meter` sensors on HA start (#56112)
* define unit_of_measurement on hass start

* delay utility_meter state

* check state

* store siblings

* don't check unit_of_measurement
2021-09-28 00:42:27 +02:00
Erik Montnemery 5976f898da
Add WS API for removing statistics for a list of statistic_ids (#55078)
* Add WS API for removing statistics for a list of statistic_ids

* Refactor according to code review, enable foreign keys support for sqlite

* Adjust tests

* Move clear_statistics WS API to recorder

* Adjust tests after rebase

* Update docstring

* Update homeassistant/components/recorder/websocket_api.py

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

* Adjust tests after rebase

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-09-27 23:30:13 +02:00