Commit Graph

13035 Commits (f24f0c2954a4a489912d6466edee5e5d6223b7e7)

Author SHA1 Message Date
Robert Svensson 3444d2af1a
UniFi switch entity description (#81680)
* Consolidate switch entities to one class

* Move turn on/off into UnifiSwitchEntity

* Add event subscription
Remove storing entity for everything but legacy poe switch

* Only one entity class

* Improve generics naming

* Rename loader to description

* Improve control_fn naming

* Move wrongfully placed method that should only react to dpi apps being emptied

* Improve different methods

* Minor renaming and sorting

* Mark callbacks properly
2022-11-08 07:38:31 +01:00
J. Nick Koston 5c38321c4f
Ignore unspecified addresses from zeroconf (#81620) 2022-11-07 15:50:45 -06:00
Joakim Sørensen e7a616b8ff
Use location info helper for IP in Cloudflare DNS (#81714)
* Use location info helper for IP in Cloudflare DNS

* simplify

* Blow up

* coverage
2022-11-07 19:31:47 +01:00
puddly 74357bef15
Use a unique ID for the Yellow ZHA hardware discovery (#81523)
* Set unique ID for hardware discovery

* Use the provided `name` for discovered hardware
2022-11-07 11:28:28 -05:00
puddly 604cd46ec9
Enable SkyConnect config flow and use correct case in USB matching (#81522)
* Ensure `USBCallbackMatcher` uses the appropriate case for each field

* Enable the config flow for the SkyConnect integration

* Update unit test
2022-11-07 17:26:16 +01:00
puddly 3788a950e6
Validate matcher field case in `usb.async_is_plugged_in` (#81514)
* Support case-insensitive matching

* Revert "Support case-insensitive matching"

This reverts commit 0fdb2aa6bc.

* Explicitly check the case of matcher fields in `async_is_plugged_in`
2022-11-07 17:14:57 +01:00
J. Nick Koston 43745dbc6c
Pass explict time in logbook tests (#81725)
The CI sets the timezone to US/Pacific and the logbook
uses start_of_local_day when called without a time.

We now call the logbook api with a specific time to
avoid them being out of sync since the test would
fail at CET 8:55am on Mon Nov 7th 2022 (and probably
other dates)
2022-11-07 16:26:38 +01:00
StefanIacobLivisi 902e075d58
Add livisi integration (#76863) 2022-11-07 14:40:23 +01:00
epenet 934cec9778
Modernize rest switch tests (#81306)
* Adjust rest switch tests to use schema validation

* Simplify

* Use async_setup_component in tests

* Rewrite tests

* Add patch

* Remove patch

* Adjust mock
2022-11-07 13:08:05 +01:00
David F. Mulcahey d1fd141e8c
Bump ZHA quirks and associated changes (#81587) 2022-11-07 12:28:59 +01:00
J. Nick Koston 2bea77549d
Fix creating multiple ElkM1 systems with TLS 1.2 (#81627)
fixes https://github.com/home-assistant/core/issues/81516
2022-11-07 12:09:36 +01:00
J. Nick Koston 11a55d6d4c
Fix flapping logbook tests (#81695) 2022-11-07 11:41:02 +01:00
Benjamin Salchow 1d633ac484
Accept input register in Modbus binary sensor (#81352)
Adds input register as valid option for modbus binary_sensor

Co-authored-by: jan iversen <jancasacondor@gmail.com>
2022-11-07 10:14:12 +01:00
tstabrawa 499839c596
Fix nuheat temporary hold time (#81635)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-11-06 19:16:22 -06:00
Aarni Koskela 496f78bae5
FIX: patch correct async_setup_entry in tilt_ble (#81671) 2022-11-06 13:37:44 -06:00
Allen Porter 2ad1d31119
Bump gcal_sync to 4.0.0 (#81562)
* Bump gcal_sync to 2.2.4

* Bump gcal sync to 4.0.0

* Add Calendar accessRole fields which are now required
2022-11-05 17:06:34 -07:00
Avi Miller f66009c77d
Fix lifx.set_state so it works with kelvin and color_temp_kelvin and color names (#81515) 2022-11-05 16:46:00 -05:00
Aaron Bach 5884f50a82
Bump pyairvisual to 2022.11.1 (#81556) 2022-11-05 12:58:47 -05:00
J. Nick Koston 883ac12bcb
Add additional coverage for adding multiple elkm1 instances (#81528)
* Add additional coverage for adding multiple elkm1 instances

* fix copy error
2022-11-05 15:57:32 +01:00
David F. Mulcahey 83c6a7e18b
Fix invalid min and max color temp in bad ZHA light devices (#81604)
* Fix ZHA default color temps

* update test
2022-11-05 08:40:28 -04:00
Renat Sibgatulin dd5baa6e48
Add air-Q integration (air quality sensors) (#76999)
* Added initial files for air-Q integration

* Allow FIXME comments in pylint (temporary)

Also reintroduce --ignore-missing-annotations=y

* Set up air-q entry to connect to aioairq's API (initial attempt)

Also add necessary constants

* Implement a class for sensors and its update logic

Very early stage, WIP

* Zeroconf and authentication are working

* Complete the bare-bone minimal working version

Specifically, make AirQSensor update its values.

* Handle invalid authentication gracefully

* Handle ClientConnectionError gracefully

* Add field hint for the login form

The key in the schema, which defines the form in
`ConfigFlow.async_show_form` is looked up in both `airq/strings/json`
and `airq/translations/en.json`. I am still not 100% sure how this
lookup is performed. WIP

* Minor cleanups

* Extend sensor list to all supported by SensorDeviceClass

Also manage warming up sensors

* aioairq is published to PyPI and mentioned in requirements

* Reordered constants and list content alphabetically

As required by style guides. Also turned SENSOR_TYPES to a list

* Updated file docstrings for a dev unfamiliar w/homeassistant like myself

* Adding a bit of logging for the integration setup process

* Expose scan interval & smoothing flag

Also streamline test_authentication in config_flow.

* Fix a type annotation mistake

* Use as many constants from homeassistant.const as possible

My only concern is using CONST_IP_ADDRESS = "ip_address" for smth which
stands for both IP address and mDNS...

* Temporarily rollback ConfigFlow.async_step_configure and use defaults

TODO: implement OptionFlowHandler instead

* Define custom Coordinator, w subset of airq config

The latter is then accessed from entity / sensor constructors to define
correct DeviceInfo

* Provide translations to de & fr + minor changes to en

* Provide translations to ru + a minor en changes

* Make translation a little more helpful and polite

* Fix devicename and entry title

* Remove stale commented out code

* Test config_flow

At this point two helper functions which interact with the external
library are not tested

* Clean up unrelated and meant as temporary changes

* Clean up unnecessary comments meant for internal use

* Move fetching config to a dedicated async coordinator method

As opposed to it being a potentially poorly justified step in
async_setup_entry

* Remove zeroconf support since it is not yet ready

* Remove translations other than en

* Remove unnecessary comments, manifest.json entries, and constants

* Improve exception handling

- `_LOGGER` uses `debug` and not `error` levels.
- Drop `ClientConnect` and catch `aiohttop.ClientConnectError` directly
- Drop `Exception` as it is not expected from `aioairq` (remove the
  corresponding test too)

* Drop strings for obsolete errors and steps

Specifically, `unknown` error isn't caught any more. `configure` step
has also been removed.

* Refactor en.json to be consistent with strings.json

* Move target_route from a coordinator argument to a constant

At this point a user cannot configure the target_route route, thus it
does not make sense to expose it half-heartedly in
`AirQCoordinator.__init__`, since it cannot be accessed.

* Fix an async call in `AirQCoordinator.async_setup_entry`

* Refactor underlying aioairq API

- Use `homeassistant.helpers.aiohttp.async_get_clientsession` and pass a
  single persistent session to `aioariq.AirQ.__init__`
- `aioairq.AirQ.fetch_device_info` now returns a `DeviceInfo` object heavily
  inspired and almost compatible with `homeassistant.helpers.entity.DeviceInfo`.
  Make heavier use of this object and define a single `DeviceInfo` in the
  `AirQCoordinator` (instead of recreating the same object for each sensor
  of the device in `sensor.AirQSensor`)
- Drop two helper functions in `config_flow.py` and operate on `aioariq.AirQ`
  methods directly

* Fix the version of aioairq

* Add 15 more sensors + icons

* Remove cnt* & TypPS, change units of health & performance

* Add 12 more sensors

* Add a missing icon

* Gracefully handle device not being available on setup

If the device and the host are not on the same WiFi,
ServerTimeoutError is raised, which is caught by
ClientConnectionError.
If the device is powered off, ClientConnectionError is expected.
In both cases, ConfigEntryNotReady is raised, as prescribed by the docs.
Newer version of aioairq times-out far quicker than the default 5 mins.

* Rename two sensors

* Validate provided IP address / mDNS

aioairq now raises InvalidInput if provided IP / mDNS does not seem
valid. Handle this exception correctly

* Apply suggestions from code review

Clean up the comments and rename the logger

Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Artem Draft <Drafteed@users.noreply.github.com>

* Only fetch device info during the first refresh

- Fetched info is stored in AirQCoordinator.device_info.
- In `AirQSensor.native_value` only multiply by the factor if
  the sensor reading is not None
- Fix the tests for ConfigFlow for aioairq==0.2.3. Specifically
  make the dummy data pass the new validation step upstream
  + add a test which fails it

* Drop custom device classes for now

* Apply suggestions from code review

Co-authored-by: Artem Draft <Drafteed@users.noreply.github.com>

* Only fetch device info during ConfigFlow.async_step_user

Store the result obtained by `airq.fetch_device_info` it in
`config_entry.data`. Pass the entire config entry to `AirQCoordinator`
and build the entire `homeassistant.helpers.entity.DeviceInfo` in the
`AirQCoordinator.__init__`. This makes
`AirQCoordinator._async_fetch_device_info` and overloaded
`AirQCoordinator._async_config_entry_first_refresh` obsolete.

Bump aioairq version.

Turn update_interval from `AirQCoordinator.__init__` argument into a
contestant.

* Custom entity description exposing a hook to modify sensor value

Use a `AirQEntityDescription` with a callable `value_fn` which allows to
change the sensor value retrieved from the device. Note that the
callable does not handle data retrieval itself (even from
`coordinator.data`). Instead it is purely a hook to transform obtained
value.

* Avoid duplicated use of unique_id

Device info is fetched  during the `ConfigFlow.async_user_step`.
`unique_id` is taken from the device info and is **not** stored
in `config_entry.data`. Subsequently `config_entry.unique_id` is
used instead.

* Drop unnecessary try-except

Co-authored-by: Artem Draft <Drafteed@users.noreply.github.com>

* Clarify the use of value_transform_fn

* Refactor the use of lambdas in AirQEntityDescription

Now it is the job of the callable under `value` to get the sensor
reading from the coordinator's data. Factoring this functionality into a
callback decouples  the key of the description from the key of dict,
returned by the API, so `AirQEntityDescription` no longer requires its key
to be set to smth clearly internal (e.g. `nh3_MR100`).

* Use a callback to update native_value

Since all `native_value`s are updated synchronously, it can as well be
done in a callback for better state consistency (right?)

* Revert the description keys to match data keys

Must match given the current way of identifying available sensors. On a
broader scale, they must match to be able to relate the descriptions to
sensors, unless a separate lookup table is maintained.

* Reduce number of loops when adding sensors

Filtering warming up sensors and non-sensor keys can be combined with
adding entities.

* Remove obsolete imports

* Update integrations.json

* Add integration_type

Integration supports multiple devices => hub

Co-authored-by: dl2080 <daniel.lehmann@runbox.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
Co-authored-by: Artem Draft <Drafteed@users.noreply.github.com>
Co-authored-by: Daniel Lehmann <43613560+dl2080@users.noreply.github.com>
Co-authored-by: Martin Selbmann <job@martin-selbmann.de>
2022-11-03 23:13:57 +01:00
hahn-th 918940a0c6
Add HmIP-WGC to homematicip_cloud integration (#75733)
* Add HmIP-WGC

* remove unused code

* removed test test_manually_configured_platform
2022-11-03 12:03:49 +01:00
Rami Mosleh 328eda044a
Use DataUpdateCoordinator for glances (#72748)
* use DataUpdateCoordinator for glances

add tests to increase coverage

fix test_config_flow.py

fix codecov/patch

remove unused const, minor tweaks

remove invalid_auth test as it is not implemented

fix type hints

* change to async_forward_entry_setups

* Use Dataupdatecoordinator for glances

* minor fixex

* minor fixes

* minor fix

* remove support_versions const

* coe cleanup

* address comments

* fix sensor native_value

* Rename entry to entry_data in `get_api`

* Remove whitespace in sensor name
2022-11-03 10:02:25 +01:00
Austin Brunkhorst 28989754cd
Update pysnooz to 0.8.3 (#81428) 2022-11-03 03:10:07 +01:00
epenet 466365c8de
Fix Renault charging power sensor (#81412) 2022-11-02 18:07:51 +01:00
Poltorak Serguei 7af0f16f79
Rework Z-Wave.Me to group entities of one physical devices (#78553)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
2022-11-02 17:53:10 +01:00
G Johansson 93d74cafdc
Fix late review comments for Scrape (#81259)
* Review comments from #74325

* Remove moved test

* Fix init

* Handle no data

* Remove print

* Fix tests

* PlatformNotReady if no data

* Recover failed platform setup

* Fix broken test

* patch context

* reset test init

* Move to platform

* asyncio gather

* Remove duplicate code
2022-11-02 17:52:36 +01:00
Rami Mosleh fc3843f5e2
Add config flow to `pushbullet` (#74240)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-11-02 16:11:44 +01:00
J. Nick Koston ab14e55c05
Ensure we do not actually create a BleakScanner in the usage test (#81362)
Avoids a failure when bluetooth is turned off when
testing on macos:

bleak.exc.BleakError: Bluetooth device is turned off
2022-11-02 14:57:59 +01:00
Paulus Schoutsen a8c527f6f3
Add unit conversion for energy costs (#81379)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-11-02 12:18:50 +01:00
Mike Degatano 0bfb0c25f6
Improve supervisor repairs (#81387)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-11-01 21:29:11 -04:00
J. Nick Koston 914ccdbc4f
Fix unload race in unifiprotect tests (#81361) 2022-11-01 13:21:20 -05:00
Franck Nijhof 5c99e2e5d3
Improve error logging of WebSocket API (#81360) 2022-11-01 14:11:50 -04:00
J. Nick Koston 5b09ab93dc
Immediately prefer advertisements from alternate sources when a scanner goes away (#81357) 2022-11-01 13:07:03 -04:00
Jan Bouwhuis db0785827f
Revert "Do not write state if payload is `''`" for MQTT sensor (#81347)
* Revert "Do not write state if payload is ''"

This reverts commit 869c11884e.

* Add test
2022-11-01 16:25:01 +01:00
On Freund 009d5aedd5
Extract `bypassed` attribute in Risco zones to a switch (#81137)
* Split bypassed to a switch

* Address code review comments
2022-11-01 00:29:00 +01:00
On Freund f8de4c3931
Reauth flow for Risco cloud (#81264)
* Risco reauth flow

* Address code review comments

* Remove redundant log
2022-10-31 23:01:22 +01:00
epenet a0ed91e30c
Add type hints to rest tests (#81304) 2022-10-31 15:30:29 +01:00
Mike Degatano 82151bfd40
Create repairs for unsupported and unhealthy (#80747) 2022-10-31 09:57:54 -04:00
Tobias Sauerwein 927b8b2eef
Bump pyatmo to 7.3.0 (#81290)
* Bump pyatmo to 7.3.0

* Update test fixture data and tests
2022-10-31 11:09:15 +01:00
Maciej Bieniek ae2419b569
Add support for PMSx003 sensors in NAM integration (#81289)
* Add support for PMSx003

* Organize the order of tests
2022-10-31 10:22:45 +01:00
aschmitz a766b41b13
Add basic Aranet integration (#80865) 2022-10-30 22:50:46 -05:00
Allen Porter ba8fd6b01e
Google calendar test cleanup, avoiding dupe config entry setup (#81256) 2022-10-30 23:07:10 +01:00
Maciej Bieniek ec038835f6
Catch `ApiError` while checking credentials in NAM integration (#81243)
* Catch ApiError while checking credentials

* Update tests

* Suggested change
2022-10-30 20:01:10 +01:00
Stackie Jia a1eec7b55d
Expose NO2 and VOCs sensors to homekit (#81217)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-30 11:33:06 -05:00
Jc2k eb76f9b3cb
Set the correct state class for Eve Energy in homekit_controller (#81255) 2022-10-30 10:32:19 -05:00
G Johansson 662aee17a6
Scrape move yaml config to integration key (#74325)
* Scrape take 2

* cleanup

* new entity name

* Fix name, add tests

* Use FlowResultType

* Add test abort

* issue

* hassfest

* Remove not needed test

* clean

* Remove config entry and implement datacoordinator

* fix codeowners

* fix codeowners

* codeowners reset

* Fix coordinator

* Remove test config_flow

* Fix tests

* hassfest

* reset config flow

* reset strings

* reset sensor

* next version

* Reconfig

* Adjust sensor

* cleanup sensor

* cleanup init

* Fix tests

* coverage

* Guard against empty sensor

* naming

* Remove coverage

* Review comments

* Remove print

* Move sensor check
2022-10-30 13:02:11 +01:00
Garrett 494cbf0dbe
Add diagnostics to Subaru integration (#81169)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-29 15:02:32 -05:00
Maciej Bieniek 19debda059
Bump nettigo-air-monitor to 1.5.0 (#81183)
* Bump NAM library

* Update tests
2022-10-29 14:43:02 +02:00
Paulus Schoutsen a786b32857
Set date in test to fixed one (#81175) 2022-10-28 23:58:02 -04:00
Shay Levy 9dedbb2a24
Add diagnostics to Switcher (#81146) 2022-10-28 22:05:21 -04:00
Kevin Stillhammer 77585686e0
Allow empty string for filters for waze_travel_time (#80953)
* Allow empty string for filters

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>

* Apply PR feedback

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>
2022-10-28 21:01:53 -04:00
Robert Hillis 6225f1f737
Bump aiopyarr to 22.10.0 (#81153) 2022-10-28 17:25:44 -05:00
javicalle 4dbb265590
Fix RFLink unit conversions (#79436)
* Fix unit conversions

* Fix tests

* Address requests changes

* Address requests changes

* Address requests changes

* Address requests changes

* migrate to SensorEntityDescription

* forgotten test

* forgotten test

* chango to WIND_SPEED

* manage UOM

* fix test

* address comments

* fix implementation

* prevent from mutate config
2022-10-29 00:20:26 +02:00
Jan Bouwhuis bcae6d604e
Improve MQTT type hints part 8 (#81034)
* Improve typing device_tracker discovery

* Improve typing device_tracker yaml

* Add test source_type attribute

* Follow up comment

* Initialize at `__init__` not at class level.

* Use full name for return variable

* Correct import, remove assert

* Use AsyncSeeCallback
2022-10-28 18:20:33 +02:00
Maciej Bieniek 11ea834cbe
Improve MQTT update platform (#81131)
* Allow JSON as state_topic payload

* Add title

* Add release_url

* Add release_summary

* Add entity_picture

* Fix typo

* Add abbreviations
2022-10-28 17:05:43 +02:00
Shay Levy a34148104a
Add diagnostics to webostv (#81133) 2022-10-28 14:48:16 +02:00
Jan Bouwhuis f10f74a65a
Add default `source_type` for MQTT device_tracker (#81128)
Make sure the source_type is set - default to gps
2022-10-28 10:49:01 +02:00
Glenn Waters 5eb3473d41
Add diagnostics to Environment Canada integration (#79517)
* Add diagnostics to EC integration.

* Add test for diagnostics.

* Simplify diagnostics returned.

* Fix for comment.

* Update datetime to fixed date.
2022-10-28 06:38:11 +02:00
Matthias Alphart 428a33c00f
Migrate KNX to use kelvin for color temperature (#81112) 2022-10-27 16:00:34 -04:00
Erik Montnemery 68346599d2
Add WS API recorder/statistic_during_period (#80663) 2022-10-27 15:51:09 -04:00
J. Nick Koston c21fb222f9
Add support for oralb IO Series 4 (#81110) 2022-10-27 15:38:42 -04:00
Tobias Sauerwein fa350b984a
Clean up superfluous Netatmo API calls (#81095) 2022-10-27 14:42:16 -04:00
epenet 3d42a46871
Align Scrape resource model with Rest integration (#81074) 2022-10-27 17:48:35 +02:00
Aaron Bach 4e8e53f357
Remove previously-deprecated OpenUV services (#81055) 2022-10-27 10:22:44 +02:00
shbatm e785d04abf
Add RainMachine config option to use default run times from app (#80984) 2022-10-26 22:27:08 -06:00
puddly b8edc86500
Handle sending ZCL commands with empty bitmap options (#81051)
Handle sending commands with empty bitmaps
2022-10-26 21:29:48 -04:00
J. Nick Koston d381be3868
Fix homekit diagnostics test when version changes (#81046) 2022-10-26 22:50:59 +02:00
Steven Looman d50795af2b
Move upnp derived sensors to library, be more robust about failing getting some data (#79955) 2022-10-26 14:34:44 -05:00
Erik Montnemery 95fc641949
Add support to the energy integration for tracking water usage (#80888) 2022-10-26 21:20:52 +02:00
Erik Montnemery a4310d2085
Allow integrations to drop custom unit conversion (#81005)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-10-26 15:11:28 -04:00
epenet 2a2e097e17
Use unit enums in unit utilities (#81030) 2022-10-26 20:47:17 +02:00
Daniel Gangl b2b3c47917
Add config flow to zamg (#66469) 2022-10-26 18:35:12 +02:00
Michał Huryn a1c18b06fb
Blebox typehints in binary sensor tests (#80676) 2022-10-26 18:20:49 +02:00
J. Nick Koston a72e906ac1
Fix zeroconf when location name has a period (#81022) 2022-10-26 10:39:13 -05:00
epenet 3eb574edca
Remove YAML import from coinbase (#80084) 2022-10-26 17:14:31 +02:00
Martin Hjelmare a1a0284e81
Fix zwave_js port enumeration (#81020) 2022-10-26 10:12:30 -05:00
J. Nick Koston abb3ce6d69
Fix zeroconf starting later than expected (#81023) 2022-10-26 10:06:56 -05:00
Allen Porter 0e2bea038d
Update Google Calendar to synchronize calendar events efficiently (#80925)
* Sync google calendar and serve from local storage

Update to use new gcal_sync APIs
Update google calendar filter logic
Remove storage on config entry removal
Make timeline queries timezone aware
Do not block startup while syncing

* Minor readability tweaks

* Remove unnecessary args to async_add_entities

* Change how task is created on startup

* Update homeassistant/components/google/calendar.py

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

* Revert min time between updates

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-26 07:57:49 -07:00
Avi Miller dde763418a
Add an RSSI sensor to the LIFX integration (#80993) 2022-10-26 09:12:45 -05:00
epenet 842cb18d39
Migrate energy units to an enum (#80998) 2022-10-26 13:56:51 +02:00
Maciej Bieniek 052c673c9e
Use `wind_speed` device class instead of `speed` in Accuweather (#81016) 2022-10-26 13:47:29 +02:00
Franck Nijhof 7a04ba96f3
Adjust unique ID of Octoprint camera entity (#80996) 2022-10-26 13:27:13 +02:00
G Johansson 9715b6c862
Remove yaml import anthemav (#79931) 2022-10-26 12:42:21 +02:00
G Johansson be7e61b88b
Add unique id for min_max (#81007) 2022-10-26 11:27:44 +02:00
Erik Montnemery 352976fd1d
Add rules for converting volumes (#80951)
* Add rules for converting volumes

* Use SensorDeviceClass in new tests

* Tweak tests

* Update flo tests

* Update sensor tests
2022-10-26 10:29:33 +02:00
J. Nick Koston e15f2e050e
Update ibeacon-ble to 1.0.1 (#80785) 2022-10-26 10:21:30 +02:00
J. Nick Koston a90ef3a575
Add additional data to HomeKit diagnostics (#80980) 2022-10-26 10:05:33 +02:00
Rami Mosleh a205ba7656
Remove deprecated YAML in `android_ip_webcam` (#80875) 2022-10-25 23:53:17 +02:00
Robert Svensson 115a1ceea0
Rewrite UniFi block client switch (#80969)
* Refactor UniFi block client switch entities

* Use new switch loader

* Rename lambdas

* Use is_on rather than _attr_is_on when applicable
2022-10-25 22:36:51 +02:00
Shay Levy 775f4e9e0d
Clean-up Shelly legacy update entities (#80961) 2022-10-25 21:27:54 +02:00
Michael 8175dab7ab
Add week period to recorder statistics api (#80784)
* add week period to get statistics api

* add test
2022-10-25 20:07:28 +02:00
Ryan Fleming c197e1765a
Add Octoprint camera entity (#79689) 2022-10-25 19:59:57 +02:00
Rami Mosleh d3ada34498
Remove deprecate service in `speedtestdotnet` (#80938)
Remove deprecate service
2022-10-25 10:44:27 -07:00
Thomas Dietrich 3346ddcd86
Add sum-differences characteristics to statistics component (#79439) 2022-10-25 16:46:47 +02:00
Erik Montnemery 727eccfec4
Add GJ as supported unit for energy sensors (#80870)
* Add GJ as supported unit for energy sensors

* Update homeassistant/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-25 16:43:00 +02:00
Lars 1c8156bd33
Update Fritz! lights to use kelvin (#79733) 2022-10-25 13:45:02 +02:00
On Freund 64eb316908
Add alarmed binary sensor to Risco integration (#77315)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-25 13:43:09 +02:00
Rami Mosleh 623abb4325
Remove deprecated YAML in Pushover (#80876) 2022-10-25 13:39:38 +02:00
Franck Nijhof 5b32540a84
Set water device class to flo, homewizard, p1_monitor, toon (#80944) 2022-10-25 13:21:47 +02:00
Parham Ghazanfari dbfca8def8
Add support for EventBridge to aws integration (#77573)
* Added EventBridge support to aws integration

* Added type hints for all aws notification services + Added unit tests for EventBridge AWS integration

* Increase line coverage for unit tests for aws integration.
2022-10-25 13:21:25 +02:00
HarvsG fe7402375d
Bayesian - support `unique_id:` (#79879)
* support unique_id

* adds test for unique_ids
2022-10-25 12:42:59 +02:00
Dave T e5716efa9c
Add visual image preview during generic camera options flow (#80392)
Co-authored-by: Dave T <davet2001@users.noreply.github.com>
2022-10-25 10:03:19 +02:00
Erik Montnemery 3d3349240f
Don't trigger statistics issues when sensor units are equivalent (#80099) 2022-10-25 09:50:01 +02:00
J. Nick Koston 559e281431
Add oralb integration (#80918)
* mapping

* update

* working

* tests

* fixes

* temp add binary sensor platform to make sure it works

* fixes

* 100% cover

* adjust

* disable chatty sensors by default

* remove binary sensor_platform for next PR

* time is much nicer than counter
2022-10-24 23:11:40 -05:00
Ongy 3759be09df
Add media_player platform to Jellyfin (#76801) 2022-10-24 21:45:01 -05:00
Shay Levy dce4753510
Cleanup Shelly update platform (#80845) 2022-10-25 00:20:26 +03:00
Steven Looman b5f70a404a
Fix SSDP/UPnP server after testing (#80815) 2022-10-24 15:19:19 -05:00
Erik Montnemery f7694c0550
Only reload modified scripts (#80470)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-10-24 20:47:06 +02:00
Martin Hjelmare 838691f22f
Refactor zwave_js add-on manager (#80883)
* Make addon slug an instance attribute

* Extract addon name and addon config

* Update docstrings
2022-10-24 18:21:05 +02:00
Jc2k 4279d73800
Add support for Netatmo noise sensor to homekit_controller (#80889)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-24 10:31:26 -05:00
Erik Montnemery 6979cd95b0
Add suggested_unit_of_measurement attribute to sensors (#80638)
* Add suggested_unit_of_measurement attribute to sensors

* Lazy calculation of initial entity options

* Add type alias for entity options

* Small tweak

* Add tests

* Store suggested_unit_of_measurement in its own option key

* Adapt to renaming of IMPERIAL_SYSTEM

* Fix rebase mistakes

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-24 16:08:02 +02:00
epenet ec4b8c49fe
Add unique_id to scrape (#80581)
* Add unique_id to scrape

* Add tests
2022-10-24 15:14:43 +02:00
epenet 64d6d04ade
Use DataUpdateCoordinator in scrape (#80593)
* Add DataUpdateCoordinator to scrape

* Fix tests
2022-10-24 14:55:57 +02:00
Joakim Plate ebfb10c177
Allow hostname for nibe heatpump (#80793)
Allow hostname for nibe
2022-10-24 14:17:53 +02:00
Maciej Bieniek 1f0cb73ad0
Add `update` platform to MQTT integration (#80659) 2022-10-24 11:47:45 +02:00
Jan Bouwhuis 5e7f571f01
Move advanced MQTT options to entry (#79351)
* Move advanced broker settings to entry

* Add repair issue for deprecated settings

* Split CONFIG_SCHEMA

* Do not store certificate UI flags in entry

* Keep entered password in next dialog

* Do not process yaml config in flow

* Correct typo
2022-10-24 09:58:23 +02:00
Avi Miller 6e453ae471
Add device-specific diagnostics to the LIFX integration (#79964) 2022-10-23 22:49:18 -05:00
Garrett 073951177b
Code quality update for Subaru sensors (#79482)
* Use distance device class for sensors

* Change sensor name casing and unique_id

* Migrate sensor entity unique_id

* Match title-cased unique_id when migrating

* Remove unneeded regex to find '_' delimited id suffix

* Incorporate PR review comments

* Add check to prevent extra odometer entity migration
2022-10-24 01:54:22 +02:00
PeteRager 59b2869f6a
Fix oncue data unavailable when genset disconnected (#80668)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-23 18:01:43 -05:00
Julian Löhr 6795627734
Add ZHA StartUpColorTemperature configuration entity (#80853)
* Add ZHA start up color temperature entity

* Use device reported min max values

* Add color number test

* Fix code style
2022-10-23 18:46:47 -04:00
Kevin Addeman 3f3518e29d
Fix Lutron Caseta area names by ignoring root area during area name retrieval (#80576) 2022-10-23 17:28:15 -05:00
Robert Svensson 03bf37e12c
Refactor UniFi DPI switch entities (#80761)
* Refactor UniFi DPI switch entities

* Remove dpi presence from items_added
2022-10-23 22:42:24 +02:00
Robert Svensson d75834cd1e
Add presence duration number (#79498) 2022-10-23 22:30:03 +02:00
G Johansson b04165b495
Add Sensibo Climate React (#78221) 2022-10-23 15:22:14 -05:00
Kevin Addeman 071f335fdb
Add dynamic generation of device triggers from keypad buttons (#80797)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-23 14:57:04 -05:00
G Johansson 57b2bb4889
Add entity service - Set Full AC state to Sensibo (#80820)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-23 13:55:53 -05:00
Robert Svensson 0444dd71a6
Refactor UniFi outlet switches (#80738)
* Rewrite UniFi outlet switches

* Bump aiounifi to v41

* Remove devices from items_added input
2022-10-23 20:28:45 +02:00
Avi Miller 2966f9ed8e
Add themes for LIFX multi-zone devices via a new select entity (#80067) 2022-10-23 11:28:17 -05:00
Bouwe Westerdijk bd6678c73b
Bump plugwise to v0.25.3 (#80782) 2022-10-23 12:42:35 +02:00
Shay Levy 228d491216
Fix Shelly entry unload and add tests for init (#80760) 2022-10-22 09:00:35 +02:00
René Klomp f21fabba17
Bump pysma to 0.7.1 (#80601)
* Bump pysma to 0.7.0

* Bump pysma to 0.7.1

* Fix test
2022-10-21 22:54:42 +02:00
J. Nick Koston 9c8a919e3f
Remove system_log missing format arg test (#80739) 2022-10-21 14:49:39 -04:00
starkillerOG a2080492de
Remove Xiaomi Miio YAML import (#78995)
* Deprecate YAML import

* Add logging for unexpected errors

* remove unused import

* fix tests

* unused import

* fix tests

* fix snake_case

* Do not add to standard key string
2022-10-21 18:07:49 +02:00
Rami Mosleh 3aa24afad8
Retry setup in case of empty response from Pushover api (#80602)
Retry setup in case of empty response
2022-10-21 17:52:02 +02:00
Kevin Stillhammer c70614fd7c
Move default options to config_flow for waze_travel_time (#80681)
Move default options to config_flow

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>
2022-10-21 08:02:41 -07:00
J. Nick Koston fe67703e13
Log invalid messages instead of raising in system_log (#80645) 2022-10-21 10:52:03 -04:00
Allen Porter 69dab4acfe
Reduce unnecessary alarm firing to speed up calendar trigger test (#80732) 2022-10-21 10:47:37 -04:00
Timm Schäuble e6892a613e
Bump simplepush to 2.1.1 (#80608)
* Update to new library version

* Remove test for removed send_encrypted function

* Bump simplepush to 2.1.1
2022-10-21 16:13:46 +02:00
Allen Porter d1d218444b
Improve calendar trigger test quality (#79451)
Improve calendar test quality
2022-10-21 10:56:17 +02:00
Franck Nijhof bb287dd0ed
Integrations v2.1: Virtual integrations (#80613) 2022-10-20 23:09:06 -04:00
Kevin Stillhammer b35cfe711a
Move default option handling to config_flow for google_travel_time (#80607)
Move default option handling to config_flow
2022-10-20 19:32:45 -07:00
Aaron Bach 60b3d6816b
Replace custom OpenUV data object with coordinators (#80705)
* Replace custom OpenUV data object with coordinators

* Typing

* Code review
2022-10-20 19:37:20 -06:00
Chris Talkington 245c13e6ed
Add diagnostics to jellyfin (#80651) 2022-10-20 20:02:40 -05:00
J. Nick Koston 03362bec1c
Defer bluetooth scanner watchdog restart if one is already in progress (#80679) 2022-10-20 13:56:20 -05:00
Robert Svensson 92eaa539b6
Simplify mocking UniFi websocket (#80652)
* Simplify mocking UniFi websocket

* Fix one more
2022-10-20 19:37:13 +02:00
Kevin Stillhammer 8dd2d6f825
Remove deprecated yaml import for waze_travel_time (#80669)
Remove deprecated yaml import

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>
2022-10-20 08:17:21 -07:00
epenet e84e5f134e
Use US_CUSTOMARY_SYSTEM in tests (#80658)
* Use US_CUSTOMARY_SYSTEM in tests

* Don't update test_unit_system
2022-10-20 15:42:23 +02:00
Michał Huryn 4e4682d2e0
Add blebox binary_sensor platform (#79535)
* Add binary_sensor platform, with test.

* Applied suggestions by @epenet

* refactor: as @epenet suggested, passing entity_description to init

* Update homeassistant/components/blebox/binary_sensor.py

@epenet suggestion, moved refactored logic of create_blebox_entities into BleBoxBinarySensorEntity init

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

* refactor: as @epenet class selector and entity creation moved to binary_sensor

* refactor: list comprehension in entity list setup in binary sensor

* Update homeassistant/components/blebox/binary_sensor.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-20 14:35:28 +02:00
Shay Levy aea7a9af18
Bump aioshelly to 4.0.0 (#80423)
* Bump aioshelly to 4.0.0

* Remove leftover

* Fix number platform

* Set last_update_success to false upon failure in number and climate

* Set last_update_success upon failurie in entity
2022-10-20 15:08:48 +03:00
Avishay ae7eb9cef9
Add mode control for Modbus climate entities (#73906)
* Add support for Modbus HVAC control registers
2022-10-20 13:15:30 +02:00
epenet b23a66d776
Add websocket type hints in entity_registry (#80657)
* Add websocket type hints in entity_registry

* Adjust websocket_list_entities

* Fix update

* Fix websocket_update_entity

* Apply suggestion

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

* Apply suggestion

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-20 12:20:39 +02:00
Robert Svensson d0ed4b1ff2
Replace constants with enums in UniFi (#80637)
Replace constants with enums
Fix bad imports
2022-10-20 00:10:01 +03:00
uvjustin eb141a532c
Bump ha-av to v10.0.0 (#80514) 2022-10-20 00:06:49 +03:00
Robert Svensson 04cdcad7f8
Expose UniFi PoE ports as individual switches (#80566)
* Add simple PoE control switches

* Add basic tests

* Complete testing

* Dont use port.up as part of available

* Bump aiounifi to v40
2022-10-19 19:54:40 +02:00
epenet 374d46ec09
Improve type hints in blebox (#80511)
* Add generics to blebox

* Remove walrus

* Move logic into each platform

* Code style

* Apply suggestion
2022-10-19 17:49:40 +02:00
Franck Nijhof 6ea6782d23
Add buttons to dismiss notifications in LaMetric (#80605) 2022-10-19 17:46:54 +02:00
Erik Montnemery f4951a4f31
Add CI job which runs recorder tests on MariaDB (#80586)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-10-19 13:04:28 +02:00
Franck Nijhof c4bbc439a5
Integrations v2.1: Differentiating hubs, devices and services (#80524)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-10-19 12:41:43 +02:00
Bouwe Westerdijk 0c8884fd51
Add sensor, selector and switch for Plugwise Anna + Loria combination (#80558)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-10-19 11:26:27 +02:00
Erik Montnemery 31a787558f
Ensure recorder test fixture is setup before hass fixture (#80528)
* Ensure recorder test fixture is setup before hass fixture

* Adjust more tests
2022-10-19 07:58:47 +02:00
Franck Nijhof e3919babb2
Add chart service to LaMetric (#80554) 2022-10-18 19:36:19 -06:00
Patrick ZAJDA a717ea8afc
Migrate Broadlink to new entity naming style (#80187)
* Migrate Broadlink to new entity naming style

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

* Add some tests

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>

Signed-off-by: Patrick ZAJDA <patrick@zajda.fr>
2022-10-18 22:09:23 +02:00
Shay Levy 8e9457d808
Add Shelly support for sleeping Gen2 devices (#79889) 2022-10-18 22:42:22 +03:00
Aaron Bach 78e66b6cbe
Add diagnostics to Enphase Envoy (#79950)
* Streamline Enphase Envoy config flow tests

* Don't test data results using constants

* Add diagnostics to Enphase Envoy

* Use whole config entry

* Redact serial number

* One call
2022-10-18 10:25:07 -06:00
Aaron Bach 414d478d3e
Ensure Enphase Envoy test fixtures aren't session-scoped (#80499)
* Ensure Enphase Envoy test fixtures aren't session-scoped

* Code review
2022-10-18 10:24:49 -06:00
Aaron Bach 1cf801afbc
Remove unnecessary session scoping to several test fixtures (#80500)
Co-authored-by: Joakim Plate <elupus@ecce.se>
2022-10-18 18:06:23 +02:00
epenet c37e4b870f
Move attribution to standalone attribute [r-s] (#80520)
* Move attribution to standalone attribute [r-s]

* Fix test
2022-10-18 13:33:20 +02:00
Willem-Jan van Rootselaar 1fe397f7d7
Update bsblan integration (#67399)
* Update bsblan integration

Update the integration to current standards

* removed unused code

update coverage

* some cleanup

* fix conflicts due upstream changes

* fix prettier json files

* fix remove comment code

* use dataclass instead of tuple

* fix spelling

* Set as class attribute

main entity doesn't need to give own name

* fix requirements
2022-10-18 12:06:51 +02:00
jjlawren c1213857ce
Fix Plex reauth with multiple available servers (#80508) 2022-10-18 11:51:43 +02:00
Nippey 0e1fe4eba5
Modbus: Add support for Holding Registers to Binary Sensor (#80460)
Update handling of binary sensors to support reading from holding registers (command 0x03).
2022-10-18 10:31:08 +02:00
Raman Gupta d4c28e04e4
Reduce missed coverage in zwave_js (#79571)
* Reduce missed coverage in zwave_js.climate and cover

* Add switch platform coverage

* Add select platform

* Add lock platform

* Remove one line of coverage from number platform

* update docstring
2022-10-18 10:06:29 +02:00
J. Nick Koston f70f972d88
Fix connectable Bluetooth devices not being seen if the nearest scanner is non-connectable (#80388)
If we saw the non-connectable scanner advertisement first we would reject
the connectable scanner advertisement because it had worse signal strength.

In this case we need to check both
2022-10-17 21:13:26 -04:00
uvjustin d38d21ab3a
Fix stream recorder with orientation transforms (#80370)
Find moov instead of using fixed location
2022-10-17 21:12:45 -04:00
Aaron Bach 72f4665d33
Streamline Enphase Envoy config flow tests (#79914)
* Streamline Enphase Envoy config flow tests

* Don't test data results using constants

* Fix data issues

* Fixtures

* Simplify mock creation

* Docstrings
2022-10-17 20:29:10 +03:00
Franck Nijhof 326a1b21ca
Add message service to LaMetric (#80448) 2022-10-17 16:14:20 +02:00
Jose Ramirez f730f96024
Convert darksky unittest tests to pytest (#79868)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-17 16:09:37 +02:00
Florent Thoumie abec592a24
Update to iaqualink 0.5.0 (#80304)
* Update to iaqualink 0.5.0.

* Boolean conditional style fix

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

* Fix black formatting

* Update iaqualink tests after update to 0.5.x

* Remove debug print statements

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-17 10:14:29 +02:00
TheJulianJES b4a203c3c7
Add friendly name to ZHA identify button (#80446) 2022-10-16 19:57:24 -04:00
Joakim Plate 9eb4faf037
Fire bluetooth listener for all matching devices (#80440)
* Fire listener for all matching devices

* Add test case for seen device

* Avoid looping all data if we have address match

* Initialize to empty list
2022-10-16 21:49:12 +02:00
Allen Porter e71bd2c20b
Fix google calendar test to match API behavior (#80436) 2022-10-16 14:45:57 -04:00
Allen Porter a7f33535c7
Fix google calendar event transparency filter (#80438) 2022-10-16 14:45:27 -04:00
Bouwe Westerdijk f5666641ce
Bump plugwise to v0.25.2 and adapt climate (#80347)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-10-16 20:32:38 +02:00
Kevin Stillhammer ef90fe9aee
Display and log google_travel_time errors (#77604)
* Display and log google_travel_time errors

* Rename is_valid_config_entry to validate_config_entry

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>

Signed-off-by: Kevin Stillhammer <kevin.stillhammer@gmail.com>
2022-10-16 10:06:53 -07:00
Steven Looman 731f618028
Make home assistant discoverable via UPnP/SSDP (#79820) 2022-10-15 14:00:46 -04:00
J. Nick Koston d12cbab6c4
Bump bleak to 0.19.0 (#80349) 2022-10-15 13:57:23 -04:00
Franck Nijhof 7bd9ce72f7
Add reauth support to LaMetric (#80355)
* Add reauth support to LaMetric

* Adjust docblock
2022-10-14 23:54:14 +02:00
J. Nick Koston 3b33e0d832
Add support for restoring HomeKit IIDs (#79913) 2022-10-14 09:58:09 -10:00
J. Nick Koston 0c76e3a97e
Automatically determine the advertising interval for bluetooth devices (#79669) 2022-10-14 14:39:18 -04:00
Charles Garwood a68bd8df6f
Add start_application service to fully_kiosk integration (#80226) 2022-10-14 19:21:58 +02:00
taiyeoguns e01572bc44
Convert graphite tests to pytest (#79807)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-14 17:59:09 +02:00
Franck Nijhof 6aa47e871d
Little cleanup of Alert tests (#80333) 2022-10-14 17:11:30 +02:00
Erik Montnemery 284893d942
Fix reload of automation and scripts when blueprint changed (#80322) 2022-10-14 16:43:09 +02:00
Erik Montnemery 81f40afd80
Only reload modified automations (#80282)
* Only reload modified automations

* Update tests

* Adjust spelling

* Improve efficiency of matching automations and configurations

* Reload automations without an alias if they have been moved

* Add test

* Add test

* Add test
2022-10-14 15:28:03 +02:00
Franck Nijhof dd266b7119
Remove elevation warning from sun (#80239) 2022-10-14 15:23:44 +02:00
epenet 4c3097a157
Use local UNIT constants in here_travel_time (#80324)
* Use local UNIT constants in here_travel_time

* Fix test
2022-10-14 15:16:03 +02:00
David F. Mulcahey d75e449c52
Add ability to convert ZCL schemas to vol schemas to ZHA (#79908)
* try serializing cluster command schemas

* use min and max value from zigpy type

* different type assignments

* initial command execution changes

* cleanup

* cleanup and typing

* typing

* typing

* add tests

* mypy

* handle raw values too

* check for None responses

* make backwards compatible

* update yaml for svc change
2022-10-14 08:15:10 -04:00
Marc Mueller a63c9e8fb9
Update python-typing-update to 0.5.0 (#80315) 2022-10-14 13:21:37 +02:00
hesselonline a534c136a1
Fix wallbox jwt issue (#79948)
* Bump Wallbox package

* remove debug message

* Force update of auth token by emptying it first

* Force token refresh by emptying token
Improve exception handling

* include tests

* Update __init__.py

* Removed the clearing ot jwt token, issue is fixed by upstream fix in wallbox package.

* Catch connectionerror

* Update homeassistant/components/wallbox/__init__.py

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

* Run black

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-14 13:09:00 +02:00
epenet 4c8f8c2e61
Adjust distance unit check in here travel time (#80243)
* Adjust distance unit check in here travel time

* Add tests

* Use system compare

* Use is not ==
2022-10-14 12:22:48 +02:00
epenet 0b7c84edbd
Adjust distance unit check in google travel time (#80232)
* Cleanup unused option in google travel time

* Adjust tests

* Adjust to use local constant

* Tweak logic

* Reduce size of PR

* Add tests

* Use system compare

* Use is not ==

* Adjust to use local constant again
2022-10-14 12:13:47 +02:00
Erik Montnemery 2c206ad050
Fix flaky recorder test (#80246)
* Fix flaky recorder test

* Update tests/components/recorder/test_init.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-14 09:10:38 +02:00
Shay Levy 5a51738b2f
Add Switcher runner support (#79430)
* Add Switcher runner support

* Retrigger docs check

* Review suggestions

* Move API strings to constants
2022-10-13 22:20:13 +01:00
Diogo Gomes 180b296426
IPMA Code quality improvement (#77771)
* merge upstream/dev

* remove comment

* coverage increase

* merge upstream/dev

* refactor

* wait for another PR

* remove left overs

* wait for next PR

* only remove on successful unload

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

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-10-14 00:18:57 +03:00
Erik Montnemery e852c9b012
Fix logbook tests (#80264)
* Fix logbook tests

* Correct tests

* Improve tests
2022-10-13 17:34:45 +02:00
Aaron Bach eae96eb4c2
Add diagnostics to AirNow (#79904) 2022-10-13 07:31:33 -06:00
Erik Montnemery 04cc2ae264
Correct initialization of new databases (#80234) 2022-10-13 13:01:27 +02:00
Erik Montnemery acb1477673
Avoid time traveling in recorder tests (#80247) 2022-10-13 11:51:27 +02:00
Erik Montnemery 4462f2fc46
Fix recorder tests related to mysql (#80238) 2022-10-13 11:44:48 +02:00
Franck Nijhof ea6368775b
Make notifiers of Alert optional (#80209) 2022-10-13 09:04:36 +02:00
Erik Montnemery 466c4656ca
Refactor recorder migration (#80175)
* Refactor recorder migration

* Improve test coverage
2022-10-13 08:11:54 +02:00
Kevin Addeman 01c66aa7c1
Add support for area field from pylutron_caseta (#80221) 2022-10-12 14:26:54 -10:00
Kevin Addeman 82322e3804
Add button entities for Lutron Caseta/RA3/HWQSX (#79963)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-12 10:29:28 -10:00
Franck Nijhof 37a5a09910
Remove unused is_on helper function from Alert (#80190) 2022-10-12 21:10:03 +03:00
Franck Nijhof ad6c3d1cde
Move alert constants into const module (#80170)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-12 17:17:48 +02:00
Franck Nijhof 30920c3da7
Code quality improvements for Fully Kiosk (#80168) 2022-10-12 15:52:09 +02:00
Erik 4a1c40f09b Revert "Refactor recorder migration"
This reverts commit 69e10e5982.
2022-10-12 15:12:12 +02:00
Erik 69e10e5982 Refactor recorder migration 2022-10-12 15:00:28 +02:00
Bouwe Westerdijk 6abf677092
Bump plugwise to v0.25.0 and adapt relevant plugwise code (#80129) 2022-10-12 14:48:09 +02:00
Franck Nijhof b28ad1282a
Use percentage constant as unit in LaMetric brightness (#80162) 2022-10-12 11:56:18 +02:00
Franck Nijhof 1191f4b61d
Add error handling to LaMetric switch platform (#80161) 2022-10-12 11:35:09 +02:00
Franck Nijhof 9396169060
Add error handling to LaMetric select platform (#80160) 2022-10-12 11:34:08 +02:00
Franck Nijhof 77571c8a84
Add error handling to LaMetric number platform (#80159) 2022-10-12 11:33:09 +02:00
CharlB 107e1ed16c
Fix, improve input validation and add tests to ClickSend tts (#76669)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-12 11:27:46 +02:00
Franck Nijhof d03e0380bb
Add brightness controls to LaMetric (#79804) 2022-10-12 10:59:15 +02:00
ollo69 75886d7213
Strip whitespace from Nut "zero" serialno (#80141) 2022-10-12 10:04:48 +02:00
Chris Talkington 46794f7a5d
Add sensor platform to Jellyfin (#79966) 2022-10-12 00:20:32 -05:00
Franck Nijhof a18f8d2ff3
Add error handling to LaMetric button platform (#80136) 2022-10-11 23:50:07 +02:00
J. Nick Koston f23b1750e8
Migrate HomeKit Controller to use stable identifiers (#80064) 2022-10-11 11:26:03 -10:00
Franck Nijhof e3a3f93441
Add full test coverage to LaMetric (#80134) 2022-10-11 22:54:49 +02:00
Aaron Bach b446cab03b
Redact additional sensitive fields in ReCollect Waste diagnostics (#80119)
* Redact additional sensitive fields in ReCollect Waste diagnostics

* One call
2022-10-11 13:14:07 -06:00
Aaron Bach f92da26c04
Add config entry to Ridwell diagnostics (#80120) 2022-10-11 13:03:48 -06:00
Aaron Bach 1262c0e221
Use `entry.as_dict()` in SimpliSafe diagnostics (#80121) 2022-10-11 12:15:32 -06:00
Aaron Bach d4465e4e69
Use `entry.as_dict()` in WattTime diagnostics (#80122) 2022-10-11 12:15:21 -06:00
Aaron Bach 687987f05b
Use `entry.as_dict()` in RainMachine diagnostics (#80118)
* Use `entry.as_dict()` in RainMachine diagnostics

* One call
2022-10-11 12:15:07 -06:00
Aaron Bach 2f6e55b3bb
Fix uncaught error in OpenUV diagnostics test (#80116) 2022-10-11 19:19:13 +03:00
Aaron Bach 4ea46bf841
Use `entry.as_dict()` in OpenUV diagnostics (#80115) 2022-10-11 19:17:03 +03:00
Aaron Bach 020b7e9762
Use `entry.as_dict()` in Notion diagnostics (#80114) 2022-10-11 19:14:35 +03:00
Aaron Bach c05390e09b
Use `entry.as_dict()` in IQVIA diagnostics (#80113) 2022-10-11 19:13:58 +03:00
Aaron Bach 0f002e7044
Use `entry.as_dict()` in Guardian diagnostics (#80112) 2022-10-11 19:12:17 +03:00
Martin Hjelmare 030205df8f
Filter out non official zwave_js add-on discovery (#80110)
* Filter out non official zwave_js add-on discovery

* Add test
2022-10-11 17:37:21 +02:00
Aaron Bach b41cd57c33
Use `entry.as_dict()` in AirVisual diagnostics (#80109) 2022-10-11 09:26:57 -06:00
Aaron Bach f2207af1c9
Use `entry.as_dict()` in Ambient PWS diagnostics (#80111) 2022-10-11 09:26:44 -06:00
Martin Hjelmare 62c4cd3c26
Add name and slug to supervisor discovery info (#80094) 2022-10-11 16:56:45 +02:00
Erik Montnemery 918243b7c8
Improve some sensor statistics tests (#80087) 2022-10-11 08:57:08 -04:00
Erik Montnemery 9aa6043255
Set character set to utf8mb4 when connecting to MySQL or MariaDB databases (#79755) 2022-10-11 14:01:46 +02:00
Erik Montnemery a391b8dd9d
Support correcting sensor volume unit (#80081) 2022-10-11 13:51:28 +02:00
Kevin Stillhammer d01f85b6aa
Remove old import logic for waze_travel_time (#80079)
Remove old import logic
2022-10-11 12:05:53 +03:00
Guido Schmitz 6826f2c291
Add reauth flow for devolo_home_network (#71051)
* Add reauth flow

* Cover cases without existing password

* Add test to verify upgrading from older versions

* Connect to the device first

* Use Mapping for async_step_reauth

* Set empty password for user step and remove unneeded update of unique_id
2022-10-11 10:54:29 +02:00
Jan Bouwhuis 8aa30cce26
Fix state saving when sharing topics for MQTT entities (#79421)
* Do not write old state sharing availability topic

* Add a test

* Support for all availability topics

* delay async_write_ha_state till last callback

* Process write req after processing callback jobs

* Do not count subscription callbacks

* Simplify

* Stale docsting

* No topic needed for delays state write

* No need to clear when reloading

* Move test to test_mixins.py

* Only set up sensor platform for test
2022-10-11 10:49:54 +02:00
Erik Montnemery 69d935b7bd
Teach long term statistics that unit 'rpm' is same as 'RPM' (#80012)
* Teach long term statistics that unit 'rpm' is same as 'RPM'

* Add tests
2022-10-11 10:32:01 +02:00
Kevin Stillhammer edad6d0f26
Remove old import logic for google_travel_time (#80018)
Remove old import logic
2022-10-11 10:49:06 +03:00
Austin Brunkhorst 7d097d18b0
Add support for Snooz BLE devices (#78790)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-10 13:14:27 -10:00
Tobias Sauerwein aa58d7fbd6
Fix Netatmo device trigger (#80047) 2022-10-10 22:04:41 +02:00
Erik Montnemery e8af007124
Disable echo for non SQLite databases (#80032)
* Disable echo for non SQLite databases

* Add test
2022-10-10 22:42:38 +03:00
David F. Mulcahey 20d71a869e
Add friendly entity names for ZHA sensors (#80035)
* Add friendly entity names for ZHA sensors

* lowercase 2nd word
2022-10-10 15:40:42 -04:00
Avi Miller 257ae4d8d3
Add support for the Flame and Morph effects for Tile and Candle (#80014) 2022-10-10 09:01:31 -10:00
Jc2k 117c12d135
Fix Eve Thermo always showing as heating in homekit_controller even when off (#80019) 2022-10-10 08:58:20 -10:00
Erik Montnemery 7b247a79cf
Correct min/max mireds for lights which use K for color temp (#79998) 2022-10-10 16:45:38 +03:00
Erik Montnemery 2ee6ea9877
Adapt group to color temperature in K (#79719)
* Adapt group to color temperature in K

* Adjust tests

* Adjust tests
2022-10-10 14:57:22 +02:00
Patrick ZAJDA d0bffb6c75
Migrate Switchbot to new entity naming style (#80008)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-10-10 14:12:50 +02:00
Charles Garwood ffb6434776
Add load_url service to fully_kiosk integration (#79969) 2022-10-10 14:11:55 +02:00
Franck Nijhof 575501d26a
Add select platform to LaMetric (#79803) 2022-10-10 09:28:36 +02:00
Chris Talkington 7fae85ee85
Add tests for Jellyfin init (#79968) 2022-10-10 00:29:37 -05:00
Chris Talkington 84acb416b8
Use server name as entry title in Jellyfin (#79965) 2022-10-09 23:50:05 -05:00
Charles Garwood 58d531841b
Fix typo SIGNAL_BOOTSTRAP_INTEGRATONS -> SIGNAL_BOOTSTRAP_INTEGRATIONS (#79970) 2022-10-09 17:06:28 -10:00
Avi Miller 41595b0cba
Migrate the LIFX integration to use kelvin for color temp (#79775) 2022-10-09 12:19:50 -10:00
Kevin Addeman 45a30546ec
Add support for Homeowner and Phantom Keypads (#79958) 2022-10-09 12:17:06 -10:00
Franck Nijhof 5a0609ae8b
Add sensor platform to LaMetric (#79935) 2022-10-09 21:28:35 +02:00
Kevin Addeman b7e84543c1
Add support for parent_device field so entities are nested within Keypad Devices (#79513)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-09 08:39:12 -10:00
TheJulianJES 3126762707
Add friendly name to ZHA config entities (#79926)
* Add friendly name to ZHA config entities

* Follow HA capitalization conventions

* Change from "Start-up level" to "Start-up current level"

* Remove siren select friendly names (temporarily)

* Change tests to expect new entity ids

* Re-add siren select friendly names

* Change siren tests to expect new entity ids
2022-10-09 09:11:42 -04:00
G Johansson 031370358c
Remove yaml import openexchangerates (#79856)
* Depr openexchangerates yaml

* Remove setup_platform and issue

* Remove schema

* Remove not longer used constant
2022-10-09 14:50:21 +02:00
Maciej Bieniek 8176400cfd
Migrate attributes to separate sensors in Brother integration (#79932)
Migrate attributes to sensors
2022-10-09 14:48:01 +02:00
Chris Talkington 5b0a37a447
Use persistent device id for jellyfin requests (#79840) 2022-10-08 21:12:30 -05:00
Mick Vleeshouwer 132ff2c410
Update Config Flow to show message about unsupported Overkiz hardware (#79503)
* Update Config Flow to show cozytouch unsupported hardware error

* Apply feedback

* Remove vague unknown user exception

* Fix test

* Code coverage back to 100%
2022-10-08 16:37:03 -06:00
Aaron Bach 8471a71b60
Move AirNow test fixtures to `conftest.py` (#79902)
* Move AirNow test fixtures to `conftest.py`

* Unnecessary fixture

* Better

* Linting
2022-10-08 16:32:51 -06:00
Aaron Bach 6297a28507
Remove redundant Tile test fixture (#79912) 2022-10-08 15:06:57 -06:00
Aaron Bach 33d2bec6f1
Remove redundant IQVIA test fixture (#79911) 2022-10-08 15:06:45 -06:00
Aaron Bach 63379bcaff
Remove redundant Notion test fixture (#79910) 2022-10-08 15:06:32 -06:00
Aaron Bach d90359b424
Remove redundant WattTime test fixture (#79909) 2022-10-08 15:06:20 -06:00
Aaron Bach 5e32fdff26
Remove redundant ReCollect Waste test fixture (#79907) 2022-10-08 15:06:10 -06:00
Aaron Bach b4d525f6a3
Remove redundant Ridwell test fixture (#79906) 2022-10-08 15:05:57 -06:00
Aaron Bach 50911af835
Remove redundant OpenUV test fixture (#79905) 2022-10-08 15:05:45 -06:00
Shay Levy 9019fcb5c5
Migrate Shelly to use kelvin for color temperature (#79880) 2022-10-08 22:24:19 +03:00
Bert Melis 6546bba233
Process abbreviated availability options in mqtt discovery payload (#79712)
Expand availability in mqtt discovery payload
2022-10-08 15:36:49 +02:00
spycle e2b7e79ccb
Fix keymitt_ble discovery (#79809)
* Fix keymitt_ble discovery

* Update tests

* Up version

* Up version keymitt_ble

* Up version keymitt_ble
2022-10-08 08:19:40 +02:00
Maciej Bieniek 5abff31437
Use new device classes in Accuweather integration (#79717)
* Add new device classes

* Update tests
2022-10-07 17:52:36 -06:00
Robert Hillis 87a22fbcca
Move Sonarr API calls to coordinators (#79826) 2022-10-08 00:25:16 +02:00
Franck Nijhof 0b9d029350
Add switch platform to LaMetric (#79759)
* Add switch platform to LaMetric

* Little naming tweak
2022-10-07 15:03:58 +02:00
Erik Montnemery 43091a9856
Revert "Improve device_automation trigger validation" (#79778)
Revert "Improve device_automation trigger validation (#75044)"

This reverts commit 55b036ec5e.
2022-10-07 08:23:53 -04:00
Ville Skyttä 9b44cf0127
Add Huawei LTE reauth flow (#78005)
* Add Huawei LTE reauth flow

* Upgrade huawei-lte-api to 1.6.3, use LoginErrorInvalidCredentialsException
2022-10-07 12:24:09 +02:00
Jan Bouwhuis aee82e2b3b
De-duplicate MQTT config_flow code (#79369)
* De-duplicate config_flow code

* De duplicate code birth and will
2022-10-07 10:12:19 +02:00
taiyeoguns 9a81b65815
Convert kira tests to pytest (#79747) 2022-10-07 08:21:18 +02:00
Franck Nijhof 90d39a414c
Add LaMetric number tests (#79748) 2022-10-07 08:11:10 +02:00
Franck Nijhof 633ffad443
Add diagnostics to LaMetric (#79757)
* Add diagnostics to LaMetric

* Add return value typing

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-07 08:07:59 +02:00
Dave T 6040c30b45
Add visual image preview during generic camera config flow (#71269)
* Add visual preview during setup of generic camera

* Code review: standardize preview  url

* Fix slug test

* Refactor to use HomeAssistantView

* Code review: simplify

* Update manifest

* Don't illegally access protected member

* Increase test coverage

* Prevent browser caching of preview images.

* Code review:move incrementor to ?t=X + simplify

* Discard old flow preview data

* Increase test coverage

* Code review: rename variables for clarity

* Add timeout for image previews

* Fix preview timeout tests

* Simplify: store cam image preview in config_flow

* Call step method to transition between flow steps

* Only store user_input in flow, not CameraObject

* Fix problem where test wouldn't run in isolation.

* Simplify test

* Don't move directly to another step's form

* Remove unused constant

* Simplify test

Co-authored-by: Dave T <davet2001@users.noreply.github.com>
2022-10-06 22:24:19 +02:00
Erik Montnemery 51e6d49451
Adapt homekit to color temperatures in K (#79713) 2022-10-06 09:20:10 -10:00
Erik Montnemery aa5575ba65
Only validate sensors in sensor.recorder.validate_statistics (#79749) 2022-10-06 21:17:46 +02:00
puddly 2dab9073fe
ZHA radio migration: reset the old adapter (#79663) 2022-10-06 14:02:24 -04:00
Erik Montnemery 0a59d37e62
Correct how unit used for statistics is determined (#79725) 2022-10-06 14:01:54 -04:00
Erik Montnemery 47d0598e75
Use Kelvin as the preferred color temperature unit (#79591)
* Use Kelvin as the preferred white temperature unit

* Update homekit

* Adjust tests
2022-10-06 12:22:39 +02:00
Shay Levy ce6ccffd9c
Fix Switcher breeze fan mode and swing control (#79676) 2022-10-06 08:10:04 +03:00
J. Nick Koston c798723c27
Fix bluetooth diagnostics on macos (#79680)
* Fix bluetooth diagnostics on macos

The pyobjc objects cannot be pickled which cases dataclasses
asdict to raise an exception when trying to do the deepcopy

We now implement our own as_dict to avoid this problem

* add cover
2022-10-06 04:32:29 +02:00
Erik Montnemery 5d7756885b
Normalize to kWh when handling WS energy/fossil_energy_consumption (#79649)
* Normalize to kWh when handling WS energy/fossil_energy_consumption

* Improve test
2022-10-05 16:27:08 +02:00
Shay Levy 723b018b63
Refactor Shelly tests - do not access hass.data (#79606) 2022-10-05 11:36:06 +02:00
Maciej Bieniek 9dd9147343
Use HA `uuid` as `client_id` in BraviaTV (#79618)
* Use uuid as clientid/nickname

* Fixes after rebase

* Move gen_instance_ids() to utils

* Store client_id and nickname in config_entry

* Update tests

* Clean names

* Rename consts
2022-10-05 11:24:52 +03:00
Erik Montnemery 18033532ca
Fix search throwing on templated services (#79637) 2022-10-05 10:59:18 +03:00
Mike Degatano 416c10a793
Supervisor update entity auto update from api (#79611)
* Supervisor update entity auto update from api

* Update api mocks in tests
2022-10-05 08:27:56 +02:00
Mike Degatano 051374d73e
Handle state is None in InfluxDB (#79609) 2022-10-04 21:43:57 +03:00
Raman Gupta 27413cee19
Bump zwave_js lib to 0.43.0 and fix multi-file firmware updates (#79342) 2022-10-04 10:40:49 -04:00
kpine c040a7a152
Set zwave_js climate entity target temp attributes based on current mode (#79575)
* Report temperature correctly

* DRY

* Add test assertions

* Don't catch TypeError (revert)
2022-10-04 11:54:13 +02:00
Erik Montnemery e93deaa8aa
Simplify long term statistics by always supporting unit conversion (#79557) 2022-10-03 21:50:05 -04:00
J. Nick Koston 2768b2445a
Remove call to deprecated bleak register_detection_callback (#79558) 2022-10-03 21:15:09 -04:00
Allen Porter 90637a721c
Add option to set a stun server for RTSPtoWebRTC (#72574) 2022-10-03 21:10:28 -04:00
Erik Montnemery a2e3978d53
Don't normalize units of long term statistics (#79320)
* Don't normalize units of long term statistics

* Update statistics.py
2022-10-03 21:42:44 +02:00
Raman Gupta 9b7eb6b5a1
Reduce coverage gaps for zwave_js (#79520)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-10-03 20:24:11 +02:00
Petro31 f3007b22c4
Allow setting set_percentage and set_preset_mode of template fan without turning on (#75656)
* decouple set_percentage and set_preset_mode from entity state

* correct set_percent self._state logic

* Add tests

* remove _VALUD_STATES

* decouple percent and preset_mode
2022-10-03 20:22:05 +02:00
Guido Schmitz 3e3f7ea995
Rework devolo Home Network tests (#74472) 2022-10-03 18:21:45 +02:00
Ben Randall 55b036ec5e
Improve device_automation trigger validation (#75044)
* improve device_automation trigger validation

Validates the trigger configuration against the device_trigger schema before trying to access any of the properties in order to provide better error messages.
Updates the error message to include an explicit indication that the error is coming from a trigger configuration.  The inner error message from the validator can be accessed by viewing the stack trace.
Add test case for trigger missing domain.

Make action and condition validation consistent with trigger.  This is not strictly necessary, but should be helpful for certain use cases that bypass some of the outer validation.

Removed redundant schema elements from humidifier device_trigger.

**Blueprint with missing `domain`**
```
2022-07-12 06:02:18.351 ERROR (MainThread) [homeassistant.setup] Error during setup of component automation
Traceback (most recent call last):
  File "/workspaces/core/homeassistant/setup.py", line 235, in _async_setup_component
    result = await task
  File "/workspaces/core/homeassistant/components/automation/__init__.py", line 241, in async_setup
    if not await _async_process_config(hass, config, component):
  File "/workspaces/core/homeassistant/components/automation/__init__.py", line 648, in _async_process_config
    await async_validate_config_item(hass, raw_config),
  File "/workspaces/core/homeassistant/components/automation/config.py", line 74, in async_validate_config_item
    config[CONF_TRIGGER] = await async_validate_trigger_config(
  File "/workspaces/core/homeassistant/helpers/trigger.py", line 59, in async_validate_trigger_config
    conf = await platform.async_validate_trigger_config(hass, conf)
  File "/workspaces/core/homeassistant/components/device_automation/trigger.py", line 67, in async_validate_trigger_config
    hass, config[CONF_DOMAIN], DeviceAutomationType.TRIGGER
KeyError: 'domain'
```

**Blueprint with missing `property` (specific to zwave_js event schema)**
```
2022-07-12 06:09:54.206 ERROR (MainThread) [homeassistant.components.automation] Blueprint Missing Property generated invalid automation with inputs OrderedDict([('control_switch', '498be56d796836a67406e9ad373d23db')]): required key not provided @ data['property']. Got None
```

**Blueprint with missing `domain`**
```
2022-07-12 06:12:16.080 ERROR (MainThread) [homeassistant.components.automation] Blueprint Missing Domain generated invalid automation with inputs OrderedDict([('control_switch', '498be56d796836a67406e9ad373d23db')]): invalid trigger configuration: required key not provided @ data['domain']. Got <homeassistant.components.blueprint.models.BlueprintInputs object at 0x7f581e097820>
```

**Blueprint with missing `property` (specific to zwave_js event schema)**
```
2022-07-12 06:12:16.680 ERROR (MainThread) [homeassistant.components.automation] Blueprint Missing Property generated invalid automation with inputs OrderedDict([('control_switch', '498be56d796836a67406e9ad373d23db')]): invalid trigger configuration: required key not provided @ data['property']. Got <homeassistant.components.blueprint.models.BlueprintInputs object at 0x7f581c0dc9d0>
```

* Revert humifidier TRIGGER_SCHEMA change.
2022-10-03 16:42:57 +02:00
Maciej Bieniek 3b794038b1
Add reauth flow to BraviaTV integration (#79405)
* Raise ConfigEntryAuthFailed

* Add reauth flow

* Add tests

* Patch pair() method to avoid IO

* Remove unused errors dict
2022-10-02 13:07:57 -07:00
Ryan Fleming 2ea9732419
Support reauth for octoprint (#77213)
* Add reauth flow to octoprint

* Add unit tests around octoprint reauth

* Add missing strings

* Fix unit test mocks
2022-10-02 08:08:45 +02:00
Maximilian 7ae942a62b
Fix nina warning state (#76354)
* Fix warning state

* Improve data handling

* Remove duplicate code
2022-10-01 21:22:18 -07:00
Avi Miller 205ce2bac5
Refactor LIFX multizone devices to use extended messages (#79444) 2022-10-01 18:21:48 -10:00
Jevgeni Kiski f95b8ccc20
Improve vallox tests and code quality (#75787)
code quality improvements
2022-10-01 21:13:15 -07:00
Rami Mosleh 38a680c3eb
Add reauthenticaion to `mikrotik` (#74454) 2022-10-01 20:37:24 -07:00
Allen Porter 7b8b73f826
Update nest climate to avoid duplicate set mode commands (#79445) 2022-10-01 21:59:10 -04:00
Tobias Sauerwein 3e411935bb
Fix Netatmo scope issue with HA cloud (#79437)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-10-01 21:11:54 -04:00
Allen Porter d03553bbf0
Address Google Sheets PR feedback (#78889) 2022-10-01 20:42:11 -04:00
J. Nick Koston 5055d3ff4b
Enable delete device support for iBeacon (#79339) 2022-10-01 14:17:45 -10:00
Steven Looman 083db97476
Sort motioneye media items in media browser (#79408)
* Sort media

* KEY_MEDIA_SORT_ATTR should be in const

* Changes after review
2022-10-02 00:36:03 +02:00
Garrett 9058b5b9c3
Update sensors for Subaru integration (#66996)
* Update sensor.py

* Change "EV Time to Fully Charged" type to datetime object (HA 2022.2)

* Validate types before accessing dict entries

* Test handling of invalid data from Subaru

* Bump to subarulink 0.4.2

* Incorporate style suggestion

* Update sensor.py to use SensorEntity

* isort tests

* Remove SubaruSensor.current_value

* Fix isort errors

* Resolve conflict from previous PR (add locks)

* Fix linting errors in config_flow.py

* Incorporate PR review comments for sensor

* Incorporate PR review comments for sensor

* Make 3rd party library responsible for API data parsing

* Add type annotations to sensor.py

* Incorporate PR review comments

* Incorporate PR review comments

* Set _attr_has_entity_name = True for sensors
2022-10-02 00:25:49 +02:00
Erik Montnemery 2de273500e
Remove state_unit_of_measurement from metadata DB table (#79370)
* Remove state_unit_of_measurement from metadata DB table

* Adjust test
2022-10-01 18:55:00 +02:00
Shay Levy f1f01429f4
Add Switcher Breeze support (#78596)
* Add switcher Breeze support

* Review comments and updates for aioswitcher
2022-10-01 19:14:55 +03:00
Kevin Stillhammer 31ddf6cc31
Log config_flow errors for waze_travel_time (#79352) 2022-10-01 08:56:47 -07:00
Shay Levy 062ee75de9
Bump aioswitcher to 3.0.2 (#79399)
Bump aioswitcher to 3.0.2
2022-10-01 18:04:11 +03:00
J. Nick Koston ec8901b9af
Improve robustness of linking homekit yaml to config entries (#79386) 2022-10-01 16:44:45 +02:00
Maciej Bieniek 8ff12eacd4
Do not use AQI device class for CAQI sensor in Airly integration (#79402) 2022-10-01 16:33:11 +02:00
Shay Levy b27f0c70be
Fix unifiprotect test failing CI (#79406) 2022-10-01 16:22:23 +02:00
Robert Svensson 2ce837f588
Resolve late comments to deCONZ sensor (#79380)
Resolve late comments to deCONZ sensor #79137
2022-09-30 21:49:59 +02:00
Shay Levy c70ca1572b
Make Shelly update sensors disabled by default (#79376) 2022-09-30 14:37:58 -04:00
J. Nick Koston 6694d06b37
Remove iBeacon devices that rotate their major,minor and mac (#79338) 2022-09-30 08:46:45 -04:00
Michał Huryn ed044acca7
Remove blebox AirQuality platform (#77873)
* AirQuality functionality moved to sensors, tests moved accordingly.

* Refreshed fixtures comments.
2022-09-30 11:37:47 +02:00
epenet fb7079c62c
Adjust icons with new device classes (#79348)
* Adjust icons with new device classes

* Fix mysensors tests

* Fix mysensors tests
2022-09-30 10:41:18 +02:00
Erik Montnemery bc2dffabc4
Improve naming of units used in statistics (#79276) 2022-09-30 08:38:44 +02:00
Paulus Schoutsen 6e893d9162
Store alternative domain for Zeroconf homekit discovery (#79240) 2022-09-29 22:21:00 -04:00
Duco Sebel aa6f15b1e2
Use SensorDeviceClass.VOLUME in HomeWizard (#79323)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-09-29 21:51:18 -04:00
uvjustin 2688e5b2d4
Mask spotify content in owntone library (#79247) 2022-09-29 21:07:26 -04:00
Vincent Giorgi d5b966d942
Add Airthings BLE component (#77284)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-09-29 15:55:45 -04:00
Robert Hillis d7d6637d79
Unregister Google sheets services during unload (#79314)
* Unregister services during unload - Google Sheets

* uno mas
2022-09-29 20:29:41 +02:00
Dennis Schroer ee32e0eb3f
Update huisbaasje-client 0.1.0 to energyflip-client 0.2.0 (#79233) 2022-09-29 13:25:23 -04:00