Commit Graph

2459 Commits (d8cca482b3726f2ad9f0914f1efbc14754d90a70)

Author SHA1 Message Date
Erik Montnemery 575f7c4205
Add dormakaba_dkey battery sensor (#87975)
* Add dormakaba_dkey battery sensor

* Update .coveragerc

* Apply suggestion from code review

* Update .coveragerc
2023-02-13 11:09:23 +01:00
Erik Montnemery 4db40810dd
Add support for dormakaba dKey locks (#87501)
* Add support for dormakaba dKey locks

* Pylint

* Address review comments

* Add test for already configured entry

* Add user flow

* Address review comments

* Simplify config flow

* Add tests

* Sort manifest

* Remove useless _abort_if_unique_id_configured

* Remove config entry update listener

* Simplify user flow

* Remove startup event

* Revert "Simplify user flow"

This reverts commit 0ef9d1c6bb.
2023-02-12 13:46:31 +01:00
Kevin Worrel 687d326bb4
Support local push updates for most ScreenLogic entities (#87438)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-02-06 20:13:36 -06:00
MarkGodwin ce9a514667
TP-Link Omada integration (#81223)
* TP-Link Omada integration
Support for PoE config of network switch ports

* Bump omada client version

* Fixing tests

* Refactored site config flow

* Code review comments

* Fixed tests and device display name issue

* Bump isort to fix pre-commit hooks

* Hassfest for the win

* Omada code review

* Black

* More config flow test coverage

* Full coverage for omada config_flow

---------

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2023-02-06 10:57:18 -05:00
Nathan Spencer 11ccd166fe
Use pybalboa 1.0.0 (#87214)
* Use pybalboa 1.0.0

* Code changes per PR review
2023-02-05 19:10:35 +01:00
starkillerOG 4c1147e62b
Reolink add number platform (#87217)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-02-03 19:29:27 +01:00
On Freund 35b82db8b0
Rympro integration code fixes (#86734)
* Address review comments

* Add coordinator.py to coveragerc

* Apply suggestions from code review

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Update homeassistant/components/rympro/coordinator.py

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Move SCAN_INTERVAL to coordinator.py

---------

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2023-01-31 10:40:43 +01:00
Robert Hillis b69576d6de
Add D-link tests (#86825)
* Fix D-Link config flow auth

* Add tests to D-Link

* pyupgrade
2023-01-27 22:15:27 -05:00
Franck Nijhof 021ac84405
Add recorder platform to required test category (#86704) 2023-01-26 11:03:56 +01:00
epenet b2004e62b1
Remove ability to ignore coverage violations (#86597)
* Remove ability to ignore coverage violations

* Adjust codecov for required platforms

* Update codecov.yml
2023-01-25 14:27:16 +01:00
On Freund 2c9e8ad475
ReadYourMeter Pro integration (#85986)
* ReadYourMeter Pro integration

* Add __init__.py to .coveragerc

* Address code review comments

* More code review comments
2023-01-24 22:41:33 +02:00
epenet c3c290b576
Remove files with coverage > 97% from ignore list (#86466)
* Test coverage - no-ignore

* Remove helpers/typing and scripts/auth

* Remove files with coverage > 99%

* Remove files with coverage > 98%

* Remove files with coverage > 97%

* Remove duplicates
2023-01-24 17:31:23 +01:00
epenet 15ab04f97d
Prevent wilcard coverage ignore if tests exist (#86455) 2023-01-23 16:33:57 +01:00
starkillerOG 7e51aeb916
Reolink add binary sensors (#85654)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-20 22:27:59 +01:00
fwestenberg 29b2b6727e
Add Stookwijzer (#84435)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2023-01-20 13:42:47 +01:00
930913 4f63398941
Add sensor platform to LD2410BLE (#85276)
* Add sensor platform to LD2410BLE

- Add platform
- Add moving target distance entity
- Add static target distance entity
- Add moving target energy entity
- Add static target energy entity

* Add detection distance entity

* Align bluetooth-data-tools version

* Generate sensors from description

Also add state_class and unfactor description lambdas.

* Optimise LD2410BLE collections

Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-18 14:56:06 -05:00
Aaron Bach 27359dfc89
Subclass a `DataUpdateCoordinator` for Ridwell (#85644) 2023-01-17 19:31:00 +01:00
Brandon Rothweiler 2ed6df9003
Add EufyLife Bluetooth integration (#85907)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-16 18:29:50 -10:00
shbatm a81045653d
Add Insteon ramp rate select entities to ISY994 (#85895)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-14 17:37:07 -10:00
shbatm 28bea53afe
Move ISY994 data to dataclass and remove bad entities (#85744) 2023-01-12 13:09:04 -10:00
Jack Boswell 43cc8a1ebf
Add binary_sensor to Starlink (#85409)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-11 17:18:54 -10:00
Robert Hillis 3d7c61bbed
Add D-Link config flow (#84927) 2023-01-10 14:10:56 -10:00
shbatm d3249432c9
Add ISY994 variables as number entities (#85511)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-10 12:29:11 -10:00
Aaron Bach 5d7f33ad76
Further generalize base Ridwell entity (#85486) 2023-01-10 12:15:28 +01:00
Jeef 6970a8a87a
Add IntelliFire lights (#79816) 2023-01-09 12:16:39 -10:00
Rami Mosleh a0e18051c7
Add config flow to imap (#74623)
* Add config flow to imap

fix coverage

fix config_flows.py

* move coordinator to seperate file, remove name key

* update intrgations.json

* update requirements_all.txt

* fix importing issue_registry

* Address comments

* Improve handling exceptions on intial connection

* exit loop tasks properly

* fix timeout

* revert async_timeout

* Improve entity update handling

* ensure we wait for idle to finish

* fix typing

* Update deprecation period

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-09 11:41:47 +01:00
Xavier Decuyper fc00c6d885
Add Nuki battery percentage sensor (#84968)
* Nuki: add battery percentage + add to device registry

* Remove unused import

* Fixing linting and sorting issues

* Update homeassistant/components/nuki/sensor.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Shorthand for adding entities

* Use _attr_has_entity_name for battery sensor

* Fix linting issue

* Remove device registry changes

* Exclude from coverage

* Use _attr_ instead of properties

* Clean up

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-08 14:24:20 +01:00
Jack Boswell 3ad4caa3d7
Add Starlink Integration (#77091)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-07 10:13:37 -10:00
shbatm d2537dacc6
Add beep button entity to ISY994 Insteon devices (#85367)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-07 09:40:34 -10:00
epenet 52032c6c7f
Complete test coverage for SFR Box (#85068)
* Complete test coverage for SFR Box

* Add missing hint

* renault -> sfr_box

* Fixes following rebase
2023-01-06 12:30:07 +01:00
930913 2507ec1f4b
Add LD2410 BLE integration (#83883) 2023-01-05 16:15:03 -10:00
Aarni Koskela 38f183a683
Ruuvi Gateway integration (#84853)
Co-authored-by: J. Nick Koston <nick@koston.org>
2023-01-03 10:19:43 -10:00
Koen van Zuijlen 6349760a2c
Zeversolar integration (#84887)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2023-01-03 20:14:08 +01:00
amitfin b5664f9eaf
Bump pycoolmasternet-async and add coolmaster swing mode (#82809)
* Add filter and error code support to CoolMastetNet

* Create separate entities

* coolmaster swing_mode support

* Changed default to False

* Raise HomeAssistantError

* Add tests for init and climate

* Fixed bad merge

* Catch only ValueError
2023-01-03 10:21:11 -08:00
epenet 34798189ca
Improve SFR Box test coverage (#85054)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-01-03 17:56:30 +01:00
Joakim Plate b302d1f3fc
Add initial test for nibe buttons (#84950) 2023-01-02 20:24:20 +01:00
epenet 896526c24b
Add SFR Box integration (#84780)
* Add SFR Box integration

* Adjust error handling in config flow

* Add tests

* Use value_fn

* Add translation

* Enable mypy strict typing

* Add ConfigEntryNotReady

* Rename exception

* Fix requirements
2022-12-31 10:14:13 +01:00
Joakim Plate af875eec50
Add nibe heat pump alarm reset button (#79427)
* Add button platform

* Enable button platform

* Use parameters from library
2022-12-28 15:36:41 +01:00
Damian Sypniewski 599569bc53
Add support for SwitchBot Lock (#84673)
* Added support for SwitchBot Lock

* Updated PySwitchbot to 0.32.1

* Updated .coveragerc

* Removed unnecessary condition

* Using library method to verify encryption key

* Added config flow tests

* Remove link from config flow description

* Added one more test for config flow

* Updated CODEOWNERS
2022-12-27 18:16:00 -10:00
starkillerOG a06b1eaf69
Add reolink IP NVR/Camera integration (#84081)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-12-27 10:15:53 -10:00
Martin Hjelmare dea513cdbd
Add mysensors light tests (#84606) 2022-12-27 15:25:22 +01:00
Martin Hjelmare 941d175087
Add mysensors device tracker tests (#84589) 2022-12-26 12:58:13 -10:00
Martin Hjelmare 101118a60e
Add mysensors binary sensor tests (#84580) 2022-12-26 20:19:15 +01:00
Allen Porter 490d2cfb71
Move Rainbird to async client library (#84417)
* Bump pyrainbird to 0.7.0 and move to async library

* Share updates across sensors

* Fix test version and delete dead code

* Add test coverage for yaml configuration

* Address PR feedback
2022-12-22 13:00:17 -08:00
Martin Hjelmare 6a8d9a91cb
Fix matter websocket reconnect (#84192) 2022-12-20 13:06:24 +01:00
Daniel Gangl 8ca92254b6
Correct zamg config flow comments (#81369)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
fixes undefined
2022-12-20 11:47:32 +01:00
Franck Nijhof 5651f4a3fe
Remove Deutsche Bahn integration (#84236) 2022-12-19 21:43:28 +01:00
Alberto Geniola ecdbddc1fa
Elmax/alarm_control_panel (#75365) 2022-12-18 09:12:43 -07:00
Martin Hjelmare f29024795b
Clean up matter adapter (#84144) 2022-12-17 23:44:19 +01:00
muppet3000 186e3a6d98
Re-add missing Growatt TLX values (#84040)
* Growatt - Re-adding missing TLX values (#81470)

* Growatt - Added missing files to .coveragerc

* Growatt - Correcting TLX Voltage types

* Growatt - Addressing review comments
2022-12-16 15:31:49 +01:00
Aaron Bach e64973c7cc
Add PurpleAir integration (#82110) 2022-12-12 20:32:11 -07:00
Aaron Bach 3d4ee5906d
Add integration for AirVisual Pro (#79770)
* Add integration for AirVisual Pro

* Tests

* A few more redactions

* Loggers

* Consistency

* Remove unnecessary f-string

* Use `entry.as_dict()` in diagnostics

* One call

* Integration types

* Cleanup

* Import cleanup

* Code review

* Code review

* Code review
2022-12-12 14:28:27 -07:00
J. Nick Koston 642cefb035
Add MVP humidifier support to switchbot (#83696)
* Add MVP humidifier support to switchbot

changelog: https://github.com/Danielhiversen/pySwitchbot/compare/0.22.0...0.23.0

* Update homeassistant/components/switchbot/config_flow.py

* bump

* coveragerc

* Revert "coveragerc"

This reverts commit eb642f6543.

* fix dirty branch
2022-12-10 13:56:57 -05:00
Guido Schmitz 500b00bd66
Add sensor tests for devolo_home_control (#74292) 2022-12-08 20:40:45 +02:00
Jevgeni Kiski d62bdbb9ff
Add vallox fan speed control (#82548)
* fan.set_percentage + tests

* let's see what is not yet covered

* Apply suggestions from code review

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

* tests fix

* vallox_websocket_api 3.0.0

* more coverage

* test coverage

* Update tests/components/vallox/test_fan.py

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

* raise exceptions on user input

* Supported features are different per preset mode.

* Test fixes

* Static supported features is back.

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-06 11:00:59 +01:00
Aaron Bach cd0037a780
Fix OpenUV coverage (#83203) 2022-12-03 14:40:42 -07:00
Marcel van der Veldt e2308fd15c
Add matter integration BETA (#83064)
* Add matter base (#79372)

Co-authored-by: Marcel van der Veldt <m.vanderveldt@outlook.com>

* Add matter server add-on flow (#82698)

* Add matter server add-on flow

* Fix stale error argument

* Clean docstrings

* Use localhost as default address

* Add matter websocket api foundation (#82848)

* Add matter config entry add-on management (#82865)

* Use matter refactored server/client library (#83003)

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

* Bump python-matter-server to 1.0.6 (#83059)

* Extend matter websocket api (#82948)

* Extend matter websocket api

* Finish docstring

* Fix pin type

* Adjust api after new client

* Adjust api to frontend for now

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-01 20:44:56 +01:00
Joakim Plate 9f236c4ca5
Add nibe heat pump climate entities (#78952)
* Add climate platform

* Enable climate plarform

* Some adjustments after review

* fixup! Add climate platform

* Rename description to avoid confusion

* No need to pass None

* Rename with nibe prefix

* Handle possible translations of values

* Make sure we prune None contexts

* Switch to constants from library
2022-12-01 01:58:59 +01:00
Christopher McCurdy 4167edc52d
Create a UUID from given LG soundbar device name (#81918)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Fixes https://github.com/home-assistant/core/issues/77524
fixes undefined
2022-11-30 12:53:49 +01:00
Robert Hillis 8a1805fa89
Add Do Not Disturb sensor to Slack (#72380) 2022-11-27 15:31:38 -05:00
Shay Levy 1e68e8c4b4
Add Shelly tests coverage (#82642)
* Add Shelly tests coverage

* Review comments

* Remove leftovers
2022-11-24 20:07:19 +02:00
Franck Nijhof 285aff154d
Remove Google Chat/Hangouts integration (#82645) 2022-11-24 18:33:13 +01:00
Matrix 95cbf7cca7
Add yolink Dimmer support (#81970)
* Add yolink Dimmer support

* suggest change

* fix suggest

* fix suggest

* fix suggest
2022-11-23 16:27:51 +01:00
Shay Levy 4a089b5c28
Add tests coverage for Shelly climate platform (#82529) 2022-11-22 09:04:55 -06:00
epenet 9d192643ee
Move PluggableAction to trigger helpers (#81900)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Joakim Plate <elupus@ecce.se>
Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-11-22 11:35:18 +01:00
Shay Levy 91a44b697b
Add tests coverage for Shelly number platform (#82480) 2022-11-21 10:55:06 -06:00
Shay Levy 32f3eb722e
Add tests coverage for Shelly entity (#82432)
* Add tests coverage for Shelly entity

* Make it generator expression
2022-11-20 23:59:25 +02:00
Shay Levy 8bd7f59b93
Add tests for Shelly sensor platform (#82385) 2022-11-19 22:01:30 +02:00
Shay Levy ea98f0e9e8
Add tests for Shelly binary_sensor platform (#82367)
* Add tests for Shelly binary_sensor platform

* Rename create to register for
2022-11-19 18:07:02 +02:00
G Johansson 48f6c9a486
Add tests DNS IP (#82059) 2022-11-13 18:23:14 -06:00
J. Nick Koston b7533aff48
Replace led-ble util with bluetooth-data-tools (#81093) 2022-11-08 07:26:16 -06:00
Nyro ddbfed354e
Add Overkiz AtlanticPassAPCDHW (#78665)
* Add Overkiz AtlanticPassAPCDHW

* Remove unnecessary line

* Improve atlantic pass_apcdhw for operation and target temprature

* Remove async_execute_commands

* Fix small code issues for Overkiz AtlanticPassAPCDHW

* Update homeassistant/components/overkiz/const.py

Co-authored-by: Mick Vleeshouwer <mick@imick.nl>

* Update homeassistant/components/overkiz/water_heater_entities/atlantic_pass_apc_dhw.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Update homeassistant/components/overkiz/water_heater_entities/atlantic_pass_apc_dhw.py

Co-authored-by: Quentame <polletquentin74@me.com>

* Fix small issues

Co-authored-by: Mick Vleeshouwer <mick@imick.nl>
Co-authored-by: Quentame <polletquentin74@me.com>
2022-11-04 10:42:58 +01: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
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
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
Daniel Gangl b2b3c47917
Add config flow to zamg (#66469) 2022-10-26 18:35:12 +02:00
Øyvind Matheson Wergeland 712b984833
Support Nobø Switch as temperature sensor (#78480)
* Expose Nobø Switch as temperatur sensor.

* - Review
- Hub may report current temperature as None

* Avoid update during entity addition, and fix race condition

* Update pynobo to 1.6.0
Use new method to fix potential race condition.

* Use generator expressions
2022-10-24 01:55:22 +02:00
Shay Levy 228d491216
Fix Shelly entry unload and add tests for init (#80760) 2022-10-22 09:00:35 +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
kingy444 5ead3b2605
Powerview Add Battery Option Selection (#80166)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-17 11:30:33 -05:00
Jeef ff2d762f55
Intellifire - Number Entity - Flame Height Control (#79901)
* Adding flame height control

* oops

* addressing comments

* fix coverage file

* addressing PR comments
2022-10-15 12:43:47 -06:00
Franck Nijhof e3a3f93441
Add full test coverage to LaMetric (#80134) 2022-10-11 22:54:49 +02: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
Chris Talkington 7fae85ee85
Add tests for Jellyfin init (#79968) 2022-10-10 00:29:37 -05:00
Shay Levy 9019fcb5c5
Migrate Shelly to use kelvin for color temperature (#79880) 2022-10-08 22:24:19 +03:00
Franck Nijhof 90d39a414c
Add LaMetric number tests (#79748) 2022-10-07 08:11:10 +02:00
Jeef 22d6ce967d
Add Flume binary sensors (#77327)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-10-06 15:09:38 -10:00
Maikel Punie 0eb1101de8
Velbus split of entity in its own file (#79653)
* Velbus split of entity in its own file

* Update coveragerc
2022-10-05 17:03:23 +02:00
Shay Levy 8faecae34d
Shelly - move coordinators to coordinator.py (#79616) 2022-10-04 22:29:07 +03:00
Jafar Atili e8650dd4b7
Add climate platform to switchbee integration (#78385)
* Added Climate platform to switchbee integration

* uploaded missing file

* Applied code review feedback from other PR

* Addressed comments from previous PRs

* fixed misspell error

* fixed mistake in the code

* added type hints

* fixes

* fixes

* Update homeassistant/components/switchbee/climate.py

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

* Update homeassistant/components/switchbee/entity.py

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

* Update homeassistant/components/switchbee/climate.py

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

* Update homeassistant/components/switchbee/climate.py

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

* Update homeassistant/components/switchbee/climate.py

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

* Update homeassistant/components/switchbee/climate.py

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

* Update homeassistant/components/switchbee/climate.py

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

* Update homeassistant/components/switchbee/climate.py

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

* fixes

* Update homeassistant/components/switchbee/climate.py

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

* fixes

* Update homeassistant/components/switchbee/climate.py

* Update homeassistant/components/switchbee/climate.py

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

* more fixes

Co-authored-by: Shay Levy <levyshay1@gmail.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-03 21:34:02 +03: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
Jafar Atili 75510b8e90
Add cover platform for switchbee integration (#78383)
* Added Platform cover for switchbee integration

* added cover to .coveragerc

* Applied code review feedback from other PR

* Addressed comments from other PRs

* rebased

* Re-add carriage return

* Update homeassistant/components/switchbee/cover.py

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

* Update homeassistant/components/switchbee/cover.py

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

* Update homeassistant/components/switchbee/cover.py

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

* Update homeassistant/components/switchbee/cover.py

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

* addressed CR comments

* fixes

* fixes

* more fixes

* more fixes

* separate entities for cover and somfy cover

* fixed isort

* more fixes

* more fixes

* Update homeassistant/components/switchbee/cover.py

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

* Update homeassistant/components/switchbee/cover.py

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

* more fixes

* more fixes

* more

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-09-29 15:03:39 +02:00
J. Nick Koston 7042d6d35b
Add ESPHome BleakClient (#78911)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-09-28 08:06:30 -10:00
Jafar Atili de3a1f444c
Add light platform for switchbee integration (#78382)
* Added Light platform for switchbee integration

* added light to .coveragerc

* Applied code review feedback from other PR

* Fixes based on previous reviewes

* fixed small mistake

* added test coverage for light

* aligned code with other PR

* rebased

* fixes

* removed unecessary changes

* Update homeassistant/components/switchbee/light.py

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

* Update homeassistant/components/switchbee/light.py

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

* more fixes

* more fixes

* adjusting switch with the new change

* more fixes

* Update homeassistant/components/switchbee/light.py

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

* Update homeassistant/components/switchbee/light.py

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

* Update homeassistant/components/switchbee/light.py

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

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-09-28 16:30:33 +02:00
Yuxin Wang 52307708c8
Refactor apcupsd to use config flow (#64809)
* Add Config Flow to APCUPSd integration and remove YAML support.

* Hide the binary sensor if user does not select STATFLAG resource.

* Add tests for config flows.

* Simplify config flow code.

* Spell fix.

* Fix pylint warnings.

* Simplify the code for config flow.

* First attempt to implement import flows to suppport legacy YAML configurations.

* Remove unnecessary log calls.

* Wrap synchronous update call with `hass.async_add_executor_job`.

* Import the YAML configurations when sensor platform is set up.

* Move the logger call since the variables are not properly set up.

* Add codeowner.

* Fix name field of manifest.json.

* Fix linting issue.

* Fix incorrect dependency due to incorrect rebase.

* Update codeowner and config flows via hassfest.

* Postpone the deprecation warning to 2022.7.

* Import future annotations for init file.

* Add an newline at the end to make prettier happy.

* Update github id.

* Add type hints for return types of steps in config flow.

* Move the deprecation date for YAML config to 2022.12.

* Update according to reviews.

* Use async_forward_entry_setups.

* Add helper properties to `APCUPSdData` class.

* Add device_info for binary sensor.

* Simplify config flow.

* Remove options flow strings.

* update the tests according to the changes.

* Add `entity_registry_enabled_default` to entities and use imported CONF_RESOURCES to disable entities instead of skipping them.

* Update according to reviews.

* Do not use model of the UPS as the title for the integration.

Instead, simply use "APCUPSd" as the integration title and let the device info serve as title for each device instead.

* Change schema to be a global variable.

* Add more comments.

* Rewrite the tests for config flows.

* Fix enabled_by_default.

* Show friendly titles in the integration.

* Add import check in `async_setup_platform` to avoid importing in sensor platform setup.

* Add import check in `async_setup_platform` to avoid importing in sensor platform setup.

* Update comments in test files.

* Use parametrize instead of manually iterating different test cases.

* Swap the order of the platform constants.

* Avoid using broad exceptions.

* Set up device info via `_attr_device_info`.

* Remove unrelated test in `test_config_flow`.

* Use `DeviceInfo` instead of dict to assign to `_attr_device_info`.

* Add english translation.

* Add `async_create_issue` for deprecated YAML configuration.

* Enable UPS status by default since it could show "online, charging, on battery etc" which is meaningful for all users.

* Apply suggestions from code review

* Apply suggestion

* Apply suggestion

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-09-28 09:14:04 +02:00
J. Nick Koston 8eaa22cf90
Break out esphome domain data (#79134) 2022-09-27 07:56:00 -10:00
Joakim Plate f463b22053
Add nibe heat pump switch entities (#78943)
* Add switch platform

* Enable switch platform

* Drop unneeded variable
2022-09-26 14:46:43 +02:00
Joakim Plate 92e9e7fb6c
Add nibe heat pump number entities (#78941)
* Add number platform

* Enable number platform

* Adjust typing

* Update homeassistant/components/nibe_heatpump/number.py

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

* Fix format

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-09-26 10:40:11 +02:00
Jeef b617d2bab0
IntelliFire Fan Support (#74181)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-09-25 23:24:46 -04:00
Tom Puttemans 7aa53feff4
Add config flow and MQTT autodiscover to dsmr_reader integration (#71617)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-09-25 23:15:50 -04:00
Joakim Plate f8d42e9246
Add nibe heat pump select entities (#78942) 2022-09-25 20:57:14 -04:00
Robert Hillis 42bd664305
Add diagnostic sensor to Radarr (#79044)
* Add diagnostic sensor to Radarr

* coverage
2022-09-25 16:11:53 +02:00
Raman Gupta ef30ebd9e1
Stop ignoring test coverage in zwave_js (#79049) 2022-09-25 07:32:59 -04:00
epenet 26d9962fe5
Add base entity to switchbee (#78987)
* Add base entity to switchbee

* Adjust coverage

* Add SwitchBeeDeviceEntity

* Don't move available

* Update homeassistant/components/switchbee/entity.py

Co-authored-by: Joakim Plate <elupus@ecce.se>

* Update homeassistant/components/switchbee/entity.py

Co-authored-by: Joakim Plate <elupus@ecce.se>

Co-authored-by: Joakim Plate <elupus@ecce.se>
2022-09-23 22:34:49 +02:00
Artem Draft ab4c1ebfd6
Add Button platform to Bravia TV (#78093)
* Add Button platform to Bravia TV

* Add button.py to coveragerc

* improve callable type
2022-09-23 15:39:24 +02:00
Aaron Bach 48744bfd68
Replace RainMachine freeze protection temperature sensor with a select (#76484)
* Migrate two RainMachine binary sensors to config-category switches

* Removal

* Replace RainMachine freeze protection temperature sensor with a select

* Fix CI

* Show options in current unit system

* Have message include what entity is replacing this sensor

* Don't define a method for every dataclass instance

* Add issue registry through helper

* Breaking change -> deprecation

* Naming

* Translations

* Remove extraneous list

* Don't swallow exception

* Don't be prematurely defensive

* Better Repairs instructions
2022-09-22 13:19:33 -06:00
Joakim Plate e46180ee76
Add binary sensor platform to Nibe Heatpump (#78927)
* Add binary_sensor platform

* Enable binary_sensor platform

* Add binary_sensor to coveragerc

* Apply suggestions from code review

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-09-22 17:57:20 +02:00
Jafar Atili c97817bb0e
Add Button platform to switchbee integration (#78386)
* Added Button platform to switchbee integration

* fixed review comments

* Addressed CR comments

* Update homeassistant/components/switchbee/button.py

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

* Update homeassistant/components/switchbee/button.py

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

* Update homeassistant/components/switchbee/button.py

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

* removed the zone name from the entity name

* Re-add space

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-09-22 14:20:32 +02:00
Joakim Plate f5120872aa
Support for nibe heat pumps with local access (#78542)
* Add nibe local integration

* Add sensor platform

* Enable sensor platform

* Fix manifest

* Correct domain after rename

* Adjust tests for rename

* Correct codeowners

* Add requirements for tests

* Grab coil by name

* Switch to home assistant error

* Config entry always exist

* Switch to create task

* Bump to 0.5.0

* Use new coils access

* Remove unneeded check

* Use single instance of logger

* Test invalid ip

* Don't allow coil to be None

* Remove sleep

* Initialize data in coordinator init

* Add utils to ignore

* Update homeassistant/components/nibe_heatpump/manifest.json

Co-authored-by: J. Nick Koston <nick@koston.org>

* Use generator instead

* Use tenacity as retry decorator

* Use package instead of name to get logger

* Skip broad exception handling

* Catch missing coil exception

* Add missing test

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-09-22 08:43:30 +02:00
spycle 0e0318dc53
Add Keymitt BLE integration (#76575)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-09-21 15:44:37 -10:00
Franck Nijhof 166160e2b5
Add LaMetric button tests (#78754) 2022-09-21 13:57:40 +02:00
Aaron Bach e265848b63
Remove deprecated Flu Near You integration (#78700) 2022-09-21 11:24:21 +02:00
Robert Hillis 2a2cc79fc3
Add Lidarr integration (#66438) 2022-09-20 11:51:29 -04:00
Franck Nijhof 36eda3801d
Add LaMetric integration init tests (#78679) 2022-09-19 11:11:05 +02:00
Aaron Bach b4356a432e
Replace SimpliSafe `clear_notifications` service with a button (#75283)
* Replace SimpliSafe `clear_notifications` service with a button

* Better log message

* Coverage

* Docstring

* Add repairs item

* Better repairs strings

* Mark issue as fixable

* Add issue registry through helper

* Update deprecation version
2022-09-16 16:41:17 -06:00
Jafar Atili 491177e5d3
Address late review of SwitchBee (#78412) 2022-09-16 14:19:50 +02:00
Franck Nijhof 6678f660a8
Remove U.S. Citizenship and Immigration Services (USCIS) integration (#78432)
* Remove U.S. Citizenship and Immigration Services (USCIS) integration

* Update .coveragerc

Fix due to sorting in https://github.com/home-assistant/core/pull/78447

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-09-14 21:51:24 +03:00
epenet db44be7054
Sort coveragerc (#78447) 2022-09-14 12:26:22 +02:00
jafar-atili 24266f1426
Add SwitchBee Integration (#70201)
* Add SwitchBee Integration

* fixes

* improved API and more logs

* fixed test_config_flow code

* removed light and cover

* Fixed CR comments, updated pylib, improved response time and lowered the scan interval for lower latency

* CR fixes, added advanced setup form to let the
user choose the following:
    - scan interval in seconds: default 5
    - whether to expose scenarios and group switches from the CU or not

* used SCAN_INTERVAL_SEC instead of typing just the number

* Fixed PR comments, added unit tests

* fixes

* Improved the pypi and updated the code accordingly

* Add SwitchBee Integration

* fixes

* improved API and more logs

* fixed test_config_flow code

* removed light and cover

* Fixed CR comments, updated pylib, improved response time and lowered the scan interval for lower latency

* CR fixes, added advanced setup form to let the
user choose the following:
    - scan interval in seconds: default 5
    - whether to expose scenarios and group switches from the CU or not

* used SCAN_INTERVAL_SEC instead of typing just the number

* Fixed PR comments, added unit tests

* fixes

* Improved the pypi and updated the code accordingly

* fixes

* restored new line in .coveragerc

* test: increased config_flow test coverage

* removed two way type

* Updated CODEOWNERS

* fix: code review comments

* fixed review comments

* added device_info

* moved device info to attribute
2022-09-13 09:01:29 +02:00
epenet 5276d849ec
Improve type hints in apple_tv media player (#77940) 2022-09-08 10:46:23 +02:00
Justin Vanderhooft 50933fa3ae
Move Melnor Bluetooth switches to sub-services off the main device (#77842)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-09-05 18:34:59 -05:00
Simon Hansen 7e100b64ea
Convert platform in iss integration (#77218)
* Hopefully fix everthing and be happy

* ...

* update coverage file

* Fix tests
2022-09-03 10:32:03 +02:00
Øyvind Matheson Wergeland f52c00a1c1
Add Nobø Ecohub integration (#50913)
* Initial version of Nobø Ecohub.

* Options update listener for Nobø Ecohub

* Unit test for nobo_hub config flow

* Cleanup

* Moved comment re backwards compatibility

* Improved tests

* Improved tests

* Options flow test
Pylint

* Fix backwards compatibility mode

* Don't require Python 3.9

* Import form configuration.yaml

* Check if device is already configured.
Correct tests for only discovering serial prefix
Fix importing when only serial suffix is configured

* Use constants

* Pylint and variable name clenaup.

* Review

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

* Fix tests

* Correct disabling off_command and on_commands ("Default" is a hard coded week profile in the hub).

* Improve options dialog

* Configure override type in options dialog

* Formatting

* pyupgrade

* Incorporated review comments

* Incorporated review comments.

* Incorporated second round of review comments.

* Add polling to discover preset change in HVAC_MODE_AUTO.

* Added tests/components/nobo_hub to CODEOWNERS.

* Update homeassistant/components/nobo_hub/config_flow.py

Review

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* Update homeassistant/components/nobo_hub/climate.py

Review

Co-authored-by: Allen Porter <allen.porter@gmail.com>

* Simplify if tests.

* Update homeassistant/components/nobo_hub/__init__.py

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

* Update homeassistant/components/nobo_hub/__init__.py

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

* Update homeassistant/components/nobo_hub/__init__.py

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

* Separate config step for manual configuration.

* Fixed indentation

* Made async_set_temperature more robust

* Thermometer supports tenths even though thermostat is in ones.

* Preserve serial suffix in config dialog on error.

* Initial version of Nobø Ecohub.

* Improved tests

* Review

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

* Configure override type in options dialog

* Separate config step for manual configuration.

* Update homeassistant/components/nobo_hub/__init__.py

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

* Formatting (prettier)

* Fix HA stop listener.

* Review

* Apply suggestions from code review

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

* Review
- Removed workaround to support "OFF" setting.
- Simplified config flow to add a new device.

* Apply suggestions from code review

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

* Apply suggestions from code review

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

* Fixed review comments

* Update en.json with correction in review.

* Implemented review comments:
- Register devices
- Simplifed async_set_temperature

* Register hub as device in init module

* Implemented review comments.
Upgraded pynobo to 1.4.0.

* Apply suggestions from code review

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

* Avoid tacking on the device name in the entity name

* Inherit entity name from device name

Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Allen Porter <allen.porter@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-09-03 10:11:40 +02:00
Pascal Vizeli 105bb3e082
Ecowitt integration (#77441)
* Add ecowitt integration

* add tests

* use total

* use total

* test coverage

* Update homeassistant/components/ecowitt/__init__.py

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

* Update homeassistant/components/ecowitt/binary_sensor.py

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

* Update homeassistant/components/ecowitt/entity.py

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

* Update homeassistant/components/ecowitt/diagnostics.py

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

* add to async_on_unload

* remove attr_name / unload callback

* support unload platforms

* using replace

* address mapping

* update type

* mark final

* Apply suggestions from code review

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

* Fix bracket

* Fix another bracket

* Address comment

* Add strings

* update tests

* Update homeassistant/components/ecowitt/strings.json

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

* update text

* Update homeassistant/components/ecowitt/strings.json

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

Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-08-31 12:51:39 +02:00
Justin Vanderhooft 8d94c8f74a
Add Melnor Bluetooth valve watering Integration (#70457) 2022-08-30 16:06:44 -05:00
epenet 9cdb7bba4c
Fix glances config-flow flaky test (#77549) 2022-08-30 11:57:42 -05:00
J. Nick Koston 8e0c26bf86
Add LED BLE integration (#77489)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-08-29 11:38:18 -05:00
J. Nick Koston 795691038f
Add light platform to switchbot (#77430) 2022-08-29 09:30:09 -05:00
Jeef edb4e4de35
Refactor Flume to use base entity class (#77115)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-08-25 14:45:35 -05:00
Jeef 462ec4ced3
Add Flume DataUpdateCoordinator class (#77114)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-08-25 11:21:41 -05:00
mletenay bbc2c28ef3
Add Synchronize inverter clock button (#69220)
* Add Synchronize inverter clock button

* Use generic GoodweButtonEntityDescription

* Replace deprecated code

* Fix DT inverter export limit type

* Remove fix to DT inverter export limit time
2022-08-25 07:52:05 +02:00
Franck Nijhof c26d6879ae
Add button platform to LaMetric (#76768)
* Add button platform to LaMetric

* coveragerc

* Fix docstring

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-08-24 10:10:36 +02:00
y34hbuddy 99ec341d6e
Refactor volvooncall to use ConfigFlow (#76680)
* refactor volvooncall to use ConfigFlow

* remove unused constant SIGNAL_STATE_UPDATED

* implemented feedback

* improve ConfigFlow UX by giving an option for region=None

* implemented more feedback

* next round of feedback

* implemented more feedback

* improve test coverage

* more test coverage

* Apply suggestions from code review

* implemented feedback on tests

* Apply suggestions from code review

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-08-23 20:58:17 +02:00
J. Nick Koston 7f001cc1d1
ESPHome BLE scanner support (#77123)
Co-authored-by: Jesse Hills <3060199+jesserockz@users.noreply.github.com>
2022-08-23 10:41:50 -04:00
Franck Nijhof 49957c752b
Add coordinator and number platform to LaMetric (#76766) 2022-08-20 19:06:35 +02:00
Franck Nijhof 71cdc1645b
Refactor LaMetric integration (#76759)
* Refactor LaMetric integration

* Use async_setup

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

* use async_get_service

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

* Update tests/components/lametric/conftest.py

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

* Update tests/components/lametric/conftest.py

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

* Pass hassconfig

* Remove try/catch

* Fix passing hassconfig

* Use menu

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-08-18 00:49:11 +02:00
Igor Pakhomov 65f86ce44f
Add additional select for dmaker.airfresh.t2017 to xiaomi_miio (#67058) 2022-08-16 17:30:56 +02:00
Aidan Timson 3cb062dc13
Add System Bridge Media Source (#72865) 2022-08-16 09:48:01 -04:00
David F. Mulcahey 3937ac2ca3
Track code coverage for ZHA sensor entities (#76617)
* Track code coverage for ZHA sensor entities

* remove correct entry
2022-08-11 21:13:27 -04:00
J. Nick Koston b5787fe8fa
Add RSSI sensors to Yale Access Bluetooth (#76590) 2022-08-11 11:05:58 +02:00
J. Nick Koston 828ea99c61
Add door sensors to Yale Access Bluetooth (#76571) 2022-08-10 21:34:48 -04:00
J. Nick Koston bb0038319d
Add Yale Access Bluetooth integration (#76182) 2022-08-10 10:08:02 -10:00
Artem Draft 19295d33ba
Migrate BraviaTV to new async backend (#75727) 2022-08-10 13:11:49 +02:00
Rami Mosleh f90d007e73
Add config flow to `android_ip_webcam` (#76222)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-08-09 14:08:46 +02:00
Koen van Zuijlen cefc535edb
Add JustNimbus integration (#75718)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-08-08 23:35:05 +02:00
Pieter Mulder 7cd4be1310
Add tests for the HDMI-CEC integration (#75094)
* Add basic tests to the HDMI-CEC component

* Add tests for the HDMI-CEC switch component

* Add test for watchdog code

* Start adding tests for the HDMI-CEC media player platform

Also some cleanup and code move.

* Add more tests for media_player

And cleanup some switch tests.

* Improve xfail message for features

* Align test pyCEC dependency with main dependency

* Make fixtures snake_case

* Cleanup call asserts

* Cleanup service tests

* fix issues with media player tests

* Cleanup MockHDMIDevice class

* Cleanup watchdog tests

* Add myself as code owner for the HDMI-CEC integration

* Fix async fire time changed time jump

* Fix event api sync context

* Delint tests

* Parametrize watchdog test

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-08-08 13:47:05 +02:00
Laz a1d5a4bc79
Add Escea fireplace integration (#56039)
Co-authored-by: Teemu R. <tpr@iki.fi>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-08-08 11:48:42 +02:00
Martin Hjelmare d1ab93fbaf
Add openexchangerates config flow (#76390) 2022-08-07 23:45:32 +02:00
Aaron Bach ceecab9559
Add update entity to RainMachine (#76100)
* Add update entity to RainMachine

* Fix tests

* Cleanup

* Test missing controller diagnostics

* Code review
2022-08-07 15:21:49 -06:00
Aaron Bach 3d42c4ca87
Add reboot button to RainMachine (#75227) 2022-08-04 13:22:10 -06:00
Aaron Bach 639a522caa
Add repair item to remove no-longer-functioning Flu Near You integration (#76177)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-08-04 19:45:28 +02:00
Martin Hjelmare cfe6c8939c
Add Open Exchange Rates coordinator (#76017)
* Add Open Exchange Rates coordinator

* Move debug log

* Fix update interval calculation
2022-08-02 14:49:46 +02:00
Bouwe Westerdijk aaaca0b2bd
Add tests for the Plugwise Select platform (#75774) 2022-07-26 22:02:50 +02:00
Franck Nijhof 4395b967f2
Remove Google Play Music Desktop Player (GPMDP) integration (#75508) 2022-07-20 20:15:55 +03:00
Franck Nijhof 518001f00b
Remove SoChain integration (#75505) 2022-07-20 19:58:48 +03:00
Franck Nijhof 87cfe21567
Remove XBee integration (#75502) 2022-07-20 19:55:33 +03:00
J. Nick Koston 1354952977
Migrate LIFX to config entry per device (#74316) 2022-07-18 17:56:34 -05:00
Matrix 943e0b9cf7
Yolink feature garage door (#75120) 2022-07-18 11:40:18 +02:00
Maciej Bieniek 859189421b
Migrate BraviaTV to new entity naming style (#75253) 2022-07-16 17:43:47 +02:00
Franck Nijhof c6c063e8c5
Various cleanups in AdGuard Home (#75250)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-07-15 12:38:20 +02:00
Aaron Bach b54fe14a10
Replace Guardian `reboot` and `reset_valve_diagnostics` services with buttons (#75028) 2022-07-12 12:53:21 -06:00
Glenn Waters a3d0719c49
Add binary_sensor to ElkM1 integration (#74485)
* Add binary_sensor to ElkM1 integration

* Update for review comments.

* Fix black.

* Fix pylint error.

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-07-11 09:11:37 +02:00
Rami Mosleh b09aaba421
Add type hints and code cleanup for mikrotik (#74296)
* Add type hints and code cleanup for mikrotik

* update test and increase coverage

* move setup_mikrotik_entry to __init__.py
2022-07-05 09:16:38 +02:00
Guido Schmitz 43595f7e17
Add light tests for devolo_home_control (#74183) 2022-06-30 21:08:21 -07:00
Alberto Geniola 73a0197cac
Elmax/sensor platform (#64090) 2022-06-30 14:55:57 -07:00
Jeef 6127a9a041
Intellifire climate Entity (#70818)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-29 13:01:38 -05:00
Phil Bruckner 0a65f53356
Convert life360 integration to entity based (#72461)
* Convert life360 integration to entity based

* Improve config_flow.py type checking

* Add tests for config flow

Fix form defaults for reauth flow.

* Cover reauth when config entry loaded

* Update per review (except for dataclasses)

* Restore check for missing location information

This is in current code but was accidentally removed in this PR.

* Fix updates from review

* Update tests per review changes

* Change IntegData to a dataclass

* Use dataclasses to represent fetched Life360 data

* Always add extra attributes

* Update per review take 2

* Tweak handling of bad last_seen or location_accuracy

* Fix type of Life360Member.gps_accuracy

* Update per review take 3

* Update .coveragerc

* Parametrize successful reauth flow test

* Fix test coverage failure

* Update per review take 4

* Fix config schema
2022-06-29 18:40:02 +02:00
Guido Schmitz 8dd5f25da9
Add cover tests for devolo_home_control (#72428) 2022-06-29 06:46:32 -07:00
starkillerOG 79fdb0d847
Netgear add update entity (#72429) 2022-06-29 11:43:51 +02:00
Andre Lengwenus b7b8feda0f
Add tests for LCN sensor and binary_sensor platforms (#67263) 2022-06-28 21:59:19 -07:00
Maikel Punie 040ece76ab
Add velbus buttons platform (#73323) 2022-06-28 18:41:29 +02:00
Rami Mosleh d1708861db
Add config flow for `simplepush` (#73471)
* Add config flow for `simplepush`

* fix warning message

* fix typos

* Add importing yaml config

* patch integration setup

* Add check for errrors raised by the library

* fix coverage

* Adjust comment and logging message

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-06-24 08:39:48 +02:00
kingy444 a816348616
Powerview dataclass (#73746)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-21 11:12:11 -05:00
epenet b6d3e34ebc
Drop custom type (CALLABLE_T) from zha (#73736)
* Drop CALLABLE_T from zha

* Adjust .coveragerc

* Apply suggestions from code review

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Add TypeVar

* Apply suggestions from code review

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* One more

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>

* Flake8

Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com>
2022-06-20 14:50:27 +02:00
G Johansson 046d7d2a23
Add tests for trafikverket_ferry (#71912) 2022-06-18 12:58:10 -05:00
Thibaut 658ce9d4f2
Remove Somfy integration (#73527)
* Remove somfy

* Remove somfy
2022-06-15 12:18:15 +02:00
J. Nick Koston c6a6d7039e
Add unique ids to lutron_caseta scenes (#73383) 2022-06-12 20:14:19 -07:00
Raman Gupta dc48791864
Add config flow to eight_sleep (#71095)
* Add config flow to eight_sleep

* simplify tests

* Remove extra file

* remove unused import

* fix redundant code

* Update homeassistant/components/eight_sleep/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* incorporate feedback

* Review comments

* remove typing from tests

* Fix based on changes

* Fix requirements

* Remove stale comment

* Fix tests

* Reverse the flow and force the config entry to reconnect

* Review comments

* Abort if import flow fails

* Split import and user logic

* Fix error

Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-11 02:16:46 -04:00
Matrix b4a6ccfbc8
Add yolink thermostat support (#73243)
* Add yolink thermostat support

* suggest and bugs fix

* fix suggest and bugs
2022-06-10 14:18:46 +02:00
J. Nick Koston 22daea27c2
Cleanup coordinators in synology_dsm (#73257)
Co-authored-by: Michael <35783820+mib1185@users.noreply.github.com>
2022-06-09 10:22:16 -10:00
kingy444 d6e7a3e537
Add powerview advanced features (#73061)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-08 18:46:45 -10:00
J. Nick Koston 329595bf73
Make radiotherm hold mode a switch (#73104) 2022-06-07 14:26:06 -10:00
BigMoby 0c21bf7c25
Remove iAlarm XR integration (#73083)
* fixing after MartinHjelmare review

* fixing after MartinHjelmare review conversion alarm state to hass state

* fixing after MartinHjelmare review conversion alarm state to hass state

* manage the status in the alarm control

* simplyfing return function

* Removing iAlarm XR integration because of Antifurto365 explicit request to remove after some issues in their cloud service
2022-06-06 22:23:10 -07:00
Matrix db53ab5fd0
Add Yolink lock support (#73069)
* Add yolink lock support

* Update .coveragerct

* extract the commons
2022-06-06 05:58:29 +02:00
J. Nick Koston cac84e4160
Add config flow to radiotherm (#72874) 2022-06-05 13:59:52 -10:00
kingy444 395d58840c
Add Hunter Douglas Powerview Diagnostics (#72918)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-06-04 17:42:21 -10:00
Robert Hillis a502a8798f
Add config flow to skybell (#70887) 2022-06-04 16:37:08 -10:00
Aaron Bach a3e1b285cf
Alter RainMachine to not create entities if the underlying data is missing (#72733) 2022-05-31 13:09:07 -06:00
J. Nick Koston 52643d9abc
Add support for async_remove_config_entry_device to isy994 (#72737) 2022-05-31 08:11:44 -10:00
Duco Sebel 59f155b482
Fix homewizard diagnostics and add tests (#72611) 2022-05-30 14:37:28 -07:00
kingy444 45e4dd379b
Add support for topdown shades to hunterdouglas_powerview (#62788)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-05-30 07:54:39 -10:00
Thijs W d5fc7e3174
Upgrade frontier_silicon library to AFSAPI 0.2.4 (#69371) 2022-05-30 18:31:57 +02:00
BigMoby 42c80dda85
Create iAlarmXR integration (#67817)
* Creating iAlarmXR integration

* fixing after review code

* fixing remaining review hints

* fixing remaining review hints

* updating underlying pyialarm library

* Creating iAlarmXR integration

* fixing after review code

* fixing remaining review hints

* fixing remaining review hints

* updating underlying pyialarm library

* fixing after iMicknl review

* Improving exception handling

* Updating pyialarmxr library

* fixing after merge dev

* fixing after iMicknl review

* Update CODEOWNERS

Co-authored-by: Ludovico de Nittis <git@denittis.one>

* fixing iot_class

* Update homeassistant/components/ialarmxr/config_flow.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* fixing after bdraco review

* Update homeassistant/components/ialarmxr/config_flow.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* reverting catching exception in setup step

* Update homeassistant/components/ialarmxr/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/ialarmxr/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* fixing after bdraco suggestions

* Update homeassistant/components/ialarmxr/alarm_control_panel.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/ialarmxr/alarm_control_panel.py

Co-authored-by: Mick Vleeshouwer <mick@imick.nl>

* Update homeassistant/components/ialarmxr/config_flow.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/ialarmxr/config_flow.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/ialarmxr/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/ialarmxr/__init__.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* Update homeassistant/components/ialarmxr/utils.py

Co-authored-by: J. Nick Koston <nick@koston.org>

* regenerate translation and rename function to async_get_ialarmxr_mac

* removing and collapsing unused error messages

* fixing tests

* improve code coverage in tests

* improve code coverage in tests

* improve code coverage in tests

* fixing retry policy with new pyalarmxr library

* snake case fix

* renaming integration in ialarm_xr

* renaming control panel name

Co-authored-by: Ludovico de Nittis <git@denittis.one>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Mick Vleeshouwer <mick@imick.nl>
2022-05-25 10:52:06 +02:00
J. Nick Koston b8e9b8f540
Add number platform to Big Ass Fans (#72435) 2022-05-24 20:45:27 -07:00
J. Nick Koston a5402d725f
Add light platform to Big Ass Fans (#72382)
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-05-24 09:20:13 -05:00
j-a-n 54f5238ef6
Moehlenhoff alpha2 sensors (#72161)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-05-24 11:03:49 +02:00
J. Nick Koston 3cdc5c8429
Add climate platform to Big Ass Fans (#72117) 2022-05-23 18:38:59 +02:00
Guido Schmitz 5b4fdb081e
Add climate tests for devolo_home_control (#72230) 2022-05-23 17:24:28 +02:00
Matrix 800410ddf0
Add yolink siren (#72341)
* Add yolink siren

* Add .coveragerc

* fix wrong comments
2022-05-23 10:52:05 +02:00
Matrix d9732ec787
Add yolink outlet (#72247)
* Add yolink outlet

* add .coveragerc

* buf fix

* suggest fix

* suggest fix
2022-05-22 13:20:29 +02:00
Matrix 1e1016aa5f
Add yolink binary sensor (#72000)
* Add binary sensor platform

* Add untest file to .coveragerc

* change attr default
2022-05-19 16:43:32 +02:00
Jeef bf63d381b2
IntelliFire On/Off Switches (#70377)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-05-18 15:54:52 -05:00
J. Nick Koston 5e59c3fd6d
Add switch platform to Big Ass Fans (#71954) 2022-05-18 13:36:47 -07:00
Jesse Hills 8ff0ced846
Initial implementation of ESPHome media players (#72047)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-05-18 09:46:13 -07:00
Matrix e0154d6fb1
Add YoLink product integration (#69167)
* add yolink integration with door sensor

* Add test flow and update .coveragerc

* Yolink integration Bug fix

* resovle test flow

* issues resolve

* issues resolve

* issues resolve

* resolve issues

* issues resolve

* issues resolve

* change .coveragerc and test_flow

* Update yolink api version

* add test for config entry

* change config flow and add test cases

* remove config entry data

* Add token check for re-auth test flow

* fix test flow issues

* Add application credentials

* Add alias for application_credentials

* support application credentials and cloud account linking

* fix suggest change
2022-05-17 09:59:39 +02:00
J. Nick Koston e74794d500
Add sensor platform to Big Ass Fans (#71877) 2022-05-16 16:10:18 +02:00
J. Nick Koston 51c6a68036
Add Big Ass Fans integration (#71498)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-05-14 17:22:47 -05:00
G Johansson 0bc843c133
Add remaining tests for Sensibo (#71764)
* Sensibo remaining tests

* Use fixture for enable entity
2022-05-13 19:40:34 -05:00
Robert Hillis 4ea6e5dfc0
Add config flow to Slack integration (#69880) 2022-05-13 20:05:06 -04:00
mkmer f6600bbc20
Add Aladdin connect config flow (#68304)
* Adding flow and async

* Fixes to init

* Lint and type

* Fixed coveragerc file

* Added Test Coverage

* Added Update Listener and removed unused code

* Wrong integration name in init.

* Nothing

* Added yaml import flow

* Added YAML import functionality

* Added back aladdin_connect files to coverage rc

* Removed commented code

* Clean up error message

* Update homeassistant/components/aladdin_connect/__init__.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update homeassistant/components/aladdin_connect/__init__.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Update homeassistant/components/aladdin_connect/config_flow.py

Co-authored-by: G Johansson <goran.johansson@shiftit.se>

* Updated Documentation errors

* recommended change broke cover.py - backed out

* Cleaned up unused defenitions

* implimented recommended changes from gjohansson

* Dev environment cleanup

* Raised errors for better recovery, replaced removed update files, utilized PLATFORM vars to init platform

* Added back removal

* Added Code Owner

* Fixed more comment errors and import duplicates

* Added test coverage and formated code

* Added test coverage for model and init

* Added test_cover for full testing coverage

* Added await to async call

* Added missing asserts to failure tests

* Updated tranlsation

* Fixed wording in yaml import function, white space in const.py, return from validate_input.

* Update homeassistant/components/aladdin_connect/config_flow.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* "too much" whitespace

* Added back mising strings.json errors

* Added ConfigFlowReconfig and tests

* Finished up reauth config flow and associated tests

* Added reauth to strings, removed username from reauth

* recommended changes, ran script.translations, added auth test to reauth

* put back self.entry.data unpack.

* Cleanup for error message, fixed missing "asserts" in tests

* Added yaml import assertions

* Fixed documentation errors in test_cover.

* remove unused string.

* revised tests and wording for yaml import

* Documentation cleanup.

* Changed sideeffect names

Co-authored-by: G Johansson <goran.johansson@shiftit.se>
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2022-05-14 00:41:01 +02:00
Franck Nijhof c8d171c475
Remove deprecated Raspberry Pi GPIO integration (#71777) 2022-05-13 12:13:26 +02:00
Jesse Hills 39313057c4
Add amperage limit number to JuiceNet (#71716)
* Add amperage limit number to JuiceNet

* coverage exception

* Use mixin dataclass
2022-05-12 13:14:52 +02:00
Rudolf Offereins 577b8cd976
Add Geocaching integration (#50284)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Reinder Reinders <reinder.reinders@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-05-12 12:12:47 +02:00
Paul Annekov 2eaaa525f4
Add Ukraine Alarm integration (#71501)
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-05-08 08:22:20 -07:00
G Johansson 5931f6598a
Add tests for Sensibo (#71148)
* Initial commit

* Check temperature missing

* fix temp is none

* Fix parallell

* Commit to save

* Fix tests

* Fix test_init

* assert 25

* Adjustments tests

* Small removal

* Cleanup

* no hass.data

* Adjustment test_coordinator

* Minor change test_coordinator
2022-05-06 10:05:15 +03:00
ollo69 ea456893f9
Review AndroidTV tests for media player entity (#71168) 2022-05-02 15:18:38 -07:00
Marcel van der Veldt 25779a49a4
Add slimproto integration (Squeezebox players) (#70444)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-04-26 23:24:17 -07:00
Shai Ungar 3f5027834b
Sabnzbd config flow (#68138)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-04-26 23:09:10 -07:00
G Johansson 6adcf500b3
Add trafikverket_ferry integration (#70443) 2022-04-26 19:40:53 -10:00
G Johansson 84f38578e9
Add button for yale_smart_alarm (#70813) 2022-04-27 02:10:21 +02:00
Robert Hillis 09a7116efc
Add config flow to tautulli integration (#57450) 2022-04-27 01:37:13 +02:00
micha91 3460abba54
Add Yamaha MusicCast Switch Entities (#66925) 2022-04-26 18:41:12 +02:00
Michael 781f18e0c3
Extract entity base classes into a new module for Synology DSM (#69796)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-04-23 22:26:34 -10:00
Ani Betts 6c391ecc59
Remove broken Arlo component (#70330)
* Remove broken Arlo component

This component has been fully broken since early 2019 because of
authentication changes from Arlo.

* Update requirements
2022-04-23 20:16:28 +03:00
rikroe 80653463bf
Add DataUpdateCoordinator to bmw_connected_drive (#67003)
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-04-20 22:13:09 -10:00
Poltorak Serguei 9d016dd434
Add Z-Wave.Me Fan support (#69768)
* Fan entity

* Fix union

* Fix union

* Apply suggestions from code review

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

* Fix percentage scale

Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-04-19 13:06:31 +02:00
G Johansson c87992715f
Add update platform for Sensibo (#70180) 2022-04-18 23:17:39 +02:00
ollo69 f4d4b52204
Improve AsusWrt test coverage (#70215)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-04-18 09:20:40 -10:00
Hans Oischinger bc5594e263
vicare: Diagnostics (#69819)
* vicare: Diagnostics

* Exclude diagnostics from codecoverage
2022-04-15 23:22:24 +03:00
Maciej Bieniek e00a010560
Add diagnostics platform (#70046) 2022-04-15 23:09:03 +03:00
Milan Meulemans c932407560
Add SENZ OAuth2 integration (#61233) 2022-04-14 15:29:31 -07:00
Maciej Bieniek 4fe5eefc98
Add `diagnostics` platform to Xiaomi Miio integration (#69985) 2022-04-13 18:59:02 +02:00
Robert Hillis 52282210d8
Remove digital loggers integration (#69939) 2022-04-13 18:43:08 +02:00
Marvin Wichmann b5b514b62f
Full test coverage for KNX integration (#69697)
* Full test coverage for KNX integration

* Allow for 0 values, since we all live at those kind of areas in the world

* Remove unneeded method

* Add missing test for climate mode

* Cleanup test and remove fixture that was used only once
2022-04-09 00:33:50 +02:00
Billy Stevenson 2c3d9566cb
Add Meater integration (#44929)
Co-authored-by: Alexei Chetroi <lexoid@gmail.com>
Co-authored-by: Brian Rogers <brg468@hotmail.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Erik <erik@montnemery.com>
2022-04-01 15:11:37 +02:00
Michael c6cd474312
Add "station is open" sensor to Tankerkoenig (#68925) 2022-03-31 13:45:58 -07:00
Antoni Czaplicki 76f07ec240
Add Uonet+ Vulcan integration (#56357)
* Add Uonet+ Vulcan integration

* Add "configuration_url", fix some minor issues

* Refactor and fix tests

* Optimize code

* Apply suggestion from code review

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>

* Update error handling

* Fix some tests

* Update CODEOWNERS and fix pylint

* Cleanup vulcan tests

* Run prettier

Co-authored-by: Maciej Bieniek <bieniu@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2022-03-30 17:55:24 +02:00
Robert Hillis 9f0665bbb4
Add config flow to discord (#61069) 2022-03-30 13:18:48 +02:00
Michael 2f7aeb64d2
Add config flow to Tankerkoenig (#68386) 2022-03-29 20:23:30 -07:00
Sebastian Lövdahl ced68c1b80
Add Vallox cell state sensor tests (#67069) 2022-03-29 17:07:09 -10:00
Michael 61f8af8b58
Add update entity to Synology DSM (#68664) 2022-03-29 17:01:26 -07:00
Michael 3d64d1b76b
Add tests for Fritz!Tools sensors (#67776) 2022-03-29 16:54:16 -07:00
G Johansson 06435f633f
Implement config flow for trafikverket_train (#65182) 2022-03-29 08:32:38 -10:00
ollo69 80f34e5e2e
Add diagnostics support for AndroidTV (#68748)
* Add diagnostics support for AndroidTV

* Restore entity_picture attribute
2022-03-29 12:51:04 +02:00
G Johansson 9b70c10c8e
Implement coordinator for trafikverket_weather (#65233) 2022-03-28 13:13:02 -10:00
Mick Vleeshouwer d0e5e51863
Add alarm control panel to Overkiz integration (#67164) 2022-03-28 15:19:16 -07:00
rappenze e844c2380a
Add config flow to fibaro (#65203)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-03-26 09:50:50 -10:00
G Johansson 67cf053260
Implement config flow for filesize (#67668)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-03-25 09:30:28 -10:00
Robert Hillis e1ae940a34
Add config flow to deluge (#58789) 2022-03-22 21:01:24 -07:00
jjlawren 653305b998
Support multiple Plex servers in media browser (#68321) 2022-03-21 15:48:44 -07:00
Tom 574f4710aa
Add select platform to Plugwise (#68303)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-03-21 21:13:03 +01:00
Baptiste Candellier a136cf7086
Remove SmartHab integration (#67874) 2022-03-20 19:00:16 +01:00
Poltorak Serguei 972afc5cea
Add Cover to Z-Wave.Me integration (#68233)
* Cover integration

* isort fix

* Update homeassistant/components/zwave_me/cover.py

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

* Update cover.py

* Update cover.py

* Apply suggestions from code review

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

* coveragerc for cover

* Fix position range

* Clean up

Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-03-20 14:50:16 +01:00
Franck Nijhof 2686be921c
Remove deprecated (old) Z-Wave integration (#67221)
* Remove deprecated (old) Z-Wave integration

* Mark migration tests as skip, for later cleanup
2022-03-18 13:09:10 +01:00
Franck Nijhof 57c33a5cf0
Remove deprecated OpenZWave integration (#68054) 2022-03-14 17:33:04 +01:00
G Johansson 8e76948297
Add binary_sensor platform for Sensibo (#68088) 2022-03-13 20:58:34 -10:00
G Johansson 03a155af83
Add sensors to Sensibo for motion sensor (#67748) 2022-03-12 10:45:24 -10:00
Franck Nijhof 0070e27c04
Remove deprecated PCAL9535A I/O Expander integration (#67274) 2022-03-12 04:05:22 -08:00
Franck Nijhof 2bb5573ddc
Remove deprecated PiFace Digital I/O (PFIO) integration (#67282) 2022-03-12 04:04:46 -08:00
Joakim Plate 09a85d2a5d
Add basic rfxtrx diagnostics (#67671)
* Add basic rfxtrx diagnostics

* Skip diagnostics for coverage
2022-03-11 20:27:08 -08:00
G Johansson c4b3e2b9cd
Add select entity to Sensibo (#67741) 2022-03-11 16:23:24 -10:00
jan iversen 306498378c
Coverage 100% of Modbus climate (#67396)
* Coverage 100% of climate.py

* Allow 100% test.
2022-03-11 19:14:40 +02:00
Poltorak Serguei c6952a0ee3
Add Siren to Z-Wave.Me integration (#67200)
* Siren integration

* Clean up

Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-03-09 09:09:29 +01:00
Thomas Schamm 0b7b1baf30
Add switch platform to bosch_shc integration (#62315)
* Add support for switch platform.

* Add untested files to .coveragerc.

* Differ between Light Switch and Smart Plug.
Bumped to boschshcpy==0.2.27

* Removed duplicated code.
Fixed suggestions from code review.

* Fixed pylint errors

* Fix pylint issue.

* Add property statement

* Fixed wrong attribute access

* Apply suggestions from code review

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

* Move switch function to base class.
Changes from code review.

* Apply suggestions from code review

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

* Merged camera switch into SHCSwitch class

* Type hint

* Removed deprecated sensor entities in switch device.
Added routing switch entity.

* Apply suggestions from code review

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

* Icon and EntityCategory as class attributes

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-03-08 10:35:29 +01:00
G Johansson af7670a5a5
Add base entity for Sensibo (#67696) 2022-03-05 11:37:44 -10:00
Martin Hjelmare f91a809350
Add mysensors notify tests (#67634) 2022-03-04 14:47:27 +01:00
Igor Pakhomov a5806fb868
Add buttons for dmaker.airfresh.a1/t2017 to xiaomi_miio (#67065)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-03-02 14:08:19 +01:00
Franck Nijhof 487f4dcd90
Remove deprecated Raspihats integration (#67380) 2022-02-28 23:10:58 +01:00
Kevin Worrel 974296697e
Add diagnostics for screenlogic (#67368) 2022-02-28 09:13:56 -10:00
jan iversen 690223fb69
Add tests for Modbus slave binary sensors, up coverage to 100% (#67373) 2022-02-28 11:06:32 -08:00
Franck Nijhof 0db6a0b248
Remove deprecated Bosch BME680 Environmental Sensor integration (#67273) 2022-02-28 13:29:13 +01:00
Franck Nijhof e77de3aeea
Remove deprecated Bosch BMP280 Environmental Sensor integration (#67280) 2022-02-27 11:16:13 -08:00
Franck Nijhof 1c0365a72b
Remove deprecated MCP23017 I/O Expander integration (#67281) 2022-02-27 15:40:25 +01:00
Franck Nijhof e4903f9a13
Remove deprecated HTU21D(F) Sensor integration (#67279) 2022-02-27 15:35:39 +01:00
Franck Nijhof 9920b3eef5
Remove deprecated Enviro pHAT integration (#67277) 2022-02-26 13:35:13 -08:00
Franck Nijhof 0abecc8513
Remove deprecated DHT Sensor integration (#67276) 2022-02-26 13:34:34 -08:00
Franck Nijhof 0b20b107e1
Remove deprecated Sense HAT integration (#67272) 2022-02-26 13:33:12 -08:00
Franck Nijhof fbfdabe4fc
Remove deprecated Raspberry Pi RF integration (#67283) 2022-02-26 13:26:41 -08:00
Franck Nijhof 5edb4cbdc6
Remove deprecated pi4ioe5v9xxxx IO Expander integration (#67188) 2022-02-25 08:10:12 -08:00
Franck Nijhof e7e8ee5ff3
Remove deprecated pigpio Daemon PWM LED integration (#67187) 2022-02-25 08:09:23 -08:00
Franck Nijhof 5c4b149f50
Remove deprecated Piglow integration (#67227) 2022-02-25 08:03:32 -08:00
Franck Nijhof cd18641385
Remove deprecated Media Player Classic Home Cinema (MPC-HC) integration (#67189) 2022-02-25 08:01:27 -08:00
Franck Nijhof 29350ee2e2
Remove deprecated Sensirion SHT31 integration (#67176) 2022-02-25 16:04:17 +02:00
Andre Lengwenus 684f01f466
Add tests for LCN cover platform (#64832) 2022-02-25 10:22:48 +01:00
Franck Nijhof ae073d132c
Remove deprecated Bosch BME280 Environmental Sensor integration (#67185) 2022-02-24 23:54:01 +02:00
Franck Nijhof ba6493d66f
Remove deprecated Orange Pi GPIO integration (#67177) 2022-02-24 23:46:59 +02:00
Franck Nijhof dd927adba9
Remove deprecated Blinkt! integration (#67165) 2022-02-24 19:26:32 +02:00
Franck Nijhof d495bded5c
Remove deprecated BH1750 integration (#67161) 2022-02-24 19:23:32 +02:00
Franck Nijhof 12dbcca078
Remove deprecated BeagleBone Black GPIO integration (#67160) 2022-02-24 19:22:48 +02:00
Franck Nijhof 636e4ed90b
Remove deprecated Time of Flight integration (#67167) 2022-02-24 14:47:20 +01:00
Mick Vleeshouwer 2a697bdf41
Add support for Atlantic Electrical Heater in Overkiz integration (#67045)
Co-authored-by: J. Nick Koston <nick@koston.org>
2022-02-23 19:15:04 +01:00
Milan Meulemans a54e3ca1f8
Add Nanoleaf Swipe Device Trigger (#66195) 2022-02-23 10:10:30 -08:00
jjlawren cfd763db40
Refactor Sonos media metadata handling (#66840)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-23 08:58:00 -08:00
Robert Hillis eb80abf89e
Add Phone Modem call reject button (#66742)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
2022-02-23 17:05:21 +01:00
Matthias Lohr 6c922e1fdb
Add number platform to tolo integration (#66799) 2022-02-23 12:08:28 +01:00
Michael b8590fde40
Improve tests of Fritz!Tools (part1) (#66972) 2022-02-22 16:35:22 -08:00
Kevin Stillhammer 6ec0e3811a
Waze travel time sensor tests (#66558) 2022-02-21 23:15:35 -08:00
G Johansson d15acaf747
Implement number platform for Sensibo (#66898) 2022-02-21 11:50:50 -10:00
jan iversen cb877adb6a
Allow multiread in modbus binary_sensor (#59886) 2022-02-21 10:22:50 -08:00
Franck Nijhof d839febbe7
Add Radio Browser integration (#66950) 2022-02-21 09:13:02 -08:00
jjlawren 69ce03465d
Proxy Plex thumbnail images in media browser (#66702)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-19 20:25:33 +01:00
Kevin Stillhammer beb30a1ff1
Add google_travel_time sensor tests (#66568)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-18 10:21:28 -08:00
Franck Nijhof e26488b1ca
Add config flow to MJPEG IP Camera (#66607) 2022-02-18 00:03:41 -08:00
starkillerOG 714daebfb9
Netgear add reboot button (#65706)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-02-17 09:41:21 +01:00
Milan Meulemans 19d8b8a6ff
Add binary sensor platform to Aseko (#66643) 2022-02-16 13:06:11 +01:00
epenet cf5652737a
Cleanup samsungtv tests (#66570)
* Drop unused init method

* Add type hints to media_player tests

* Adjust test_init

* Adjust media_player

* Add type hints to conftest

* Use Mock in test_media_player

* Use lowercase in test_init

* Use relative import in diagnostics

* Add type hints to config_flow

* Adjust coveragerc

* Make gethostbyname autouse

* Cleanup gethostbyname and remote fixtures

* Drop unused fixtures

* Undo type hints and usefixtures on media_player

* Undo type hints and usefixtures in test_init

* Undo type hints in conftest

* Undo usefixtures in test_config_flow

* Format

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-16 09:29:52 +01:00
epenet 52ebe58b14
Add tests for samsungtv diagnostics (#66563)
* Add tests for samsungtv diagnostics

* Adjust coveragerc

* Adjust type hints

Co-authored-by: epenet <epenet@users.noreply.github.com>
2022-02-15 16:24:13 +02:00
Maikel Punie 2bcc21ecbb
Add velbus diagnostics (#65426) 2022-02-14 19:25:14 +01:00
Keilin Bickar 2bc2f85b1b
Support for lock domain in esphome (#65280) 2022-02-14 18:31:46 +01:00
J. Nick Koston 445ad1d592
Add test coverage for WiZ lights and switches (#66387) 2022-02-14 16:31:26 +01:00
G Johansson d61d1bf494
Implement diagnostics for yale_smart_alarm (#65085) 2022-02-12 08:42:30 -06:00
G Johansson 6d20e68e6d
Code quality scrape (#65441) 2022-02-12 08:28:54 -06:00
Brett Adams 5e5659d758
Add Diagnostics (#65755) 2022-02-12 07:08:41 -06:00
Jeef d479949ca2
Add a base class for Intellifire entities (#65077)
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-02-11 18:01:38 -06:00
Joakim Plate c1760683a0
Add diagnostics for philips_js (#66233)
* Add diagnostics for philips_js

* Update homeassistant/components/philips_js/diagnostics.py

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

* Update homeassistant/components/philips_js/diagnostics.py

Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>

* Also redact username/password

They are really not that secret, but seem logical.

* Redact unique id

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Robert Svensson <Kane610@users.noreply.github.com>
2022-02-10 22:11:40 +01:00
j-a-n 243d003acc
Add Moehlenhoff Alpha2 underfloor heating system integration (#42771)
* Add Moehlenhoff Alpha2 underfloor heating system integration

* isort changes

* flake8 changes

* Do not exclude config_flow.py

* pylint changes

* Add config_flow test

* correct requirements_test_all.txt

* more tests

* Update test description

* Test connection and catch TimeoutError in async_setup_entry

* Add version to manifest file

* Remove version from manifest file

* Replace tests.async_mock.patch by unittest.mock.patch

* Update moehlenhoff-alpha2 to version 1.0.1

* Update requirements for moehlenhoff-alpha2 1.0.1

* Update moehlenhoff-alpha2 to 1.0.2

* Use async_setup_platforms

* Use async_unload_platforms

* Separate connection and devices for each entry_id

* Use async_track_time_interval to schedule updates

* Check if input is valid before checking uniqueness

* Move Exception handling to validate_input

* Catch aiohttp.client_exceptions.ClientConnectorError

* Remove translation files

* Mock TimeoutError

* Fix data update

* Replace current callback implementation with ha dispatcher

* Return False in should_poll

* Remove unused argument

* Remove CONNECTION_CLASS

* Use _async_current_entries

* Call async_schedule_update_ha_state after data update

* Remove unneeded async_setup

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Remove unneeded async_setup_platform

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Set Schema attribute host required

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Remove unused Exception class

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Update manifest.json

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* pylint constructor return type None

* Replace properties by class variables

* use pass instead of return

* Remove unused sync update method

* remove property hvac_action

* remove pass

* rework exception handling

* Update homeassistant/components/moehlenhoff_alpha2/config_flow.py

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>

* Correct indentation

* catch Exception in validate_input

* Replace HomeAssistantType with HomeAssistant

* Update to moehlenhoff-alpha2 1.0.3

* Allow to switch between heating and cooling mode

* Update moehlenhoff-alpha2 to version 1.0.4

* Update heatarea data after setting target temperature

* Support hvac_action

* Fix heatarea update with multiple bases

* Update data after setting preset mode

* Use custom preset modes like defined by device

* Fix config flow test

* Fix test_duplicate_error

* Rename property to extra_state_attributes

Rename property device_state_attributes to extra_state_attributes and
return lowercase keys in dict.

* Refactor using DataUpdateCoordinator

* Remove _attr_should_poll

* Raise HomeAssistantError on communication error

Catch HTTPError instead of broad except and reraise as HomeAssistantError

* Change DataUpdateCoordinator name to alpha2_base

* Refresh coordinator before setting data

* Raise ValueError on invalid heat area mode

* Rename heatarea to heat_area

* Set type annotation in class attribute

* Move coordinator to top

* Move exception handling to the coordinator

* Use heat_area_id directly

* Sore get_cooling() result into local var

* Add explanation of status attributes

and remove BLOCK_HC

* Fix pylint warnings

* from __future__ import annotations

* Use Platform Enum

* Move data handling to coordinator

* Remove property extra_state_attributes

* Add missing annotations

* Update moehlenhoff-alpha2 to version 1.1.2

* Rework tests based on the scaffold template

* Set also heat/cool/day/night temp with target temp

* Remove unneeded code from tests

Co-authored-by: Milan Meulemans <milan.meulemans@live.be>
2022-02-10 08:28:52 +01:00
Mick Vleeshouwer d7fcda01b8
Add siren platform to Overkiz (#65300) 2022-02-09 17:36:56 -06:00
epenet f4aaa981a1
Adjust coverage to include all config flows (#66193)
* Adjust tradfri

* Adjust huawei_lte

* Adjust iqvia

* Adjust wiffi

* Adjust solarlog

* Adjust lifx

* Adjust doorbird

* Adjust rachio

* Adjust starline

* Adjust konnected

* Adjust ambient_station

* Adjust tado

* Adjust point

* Adjust daikin

* Adjust hangouts

* Adjust ifttt

* Adjust ios

* Adjust life360

* Adjust sms

* Adjust spider

* Adjust upnp

* Adjust hassfest
2022-02-09 22:19:29 +01:00
Franck Nijhof 8a09303c98
Extract Spotify media browsing into a module (#66175) 2022-02-09 22:03:15 +01:00
Sander Jochems 0ea82bdbfb
Fivem integration (#65089)
* Initial fivem integration setup

* Use licenseKey for unique ID

* Create FiveMServer class

* Create FiveMStatusBinarySensor

* Fix platform loading

* Create sensor platform

* Remove config flow tests

* Update manifest.json

* Use attr_ instead or properties in sensors.py

* Use entry_id as unique_id

* Move device info to _attr instead of property

* Register callback in FiveMEntity

* Create config flow tests

* Add loggin to fivem

* Use FiveM in config_flow

* Use update_coordinator instead of dispatcher

* Bump fivem-api to 0.1.2

* Remove leftovers

* More tests for config flow

* Add component files to .coveragerc

* Fix simple comments

* Add gamename check to config flow

* Use entity descriptions for sensors

* Move extra attributes to init

* Use [] instead of get() for server info

* Fix error in gamename test
2022-02-08 11:27:11 +02:00
J. Nick Koston f943f30492
Add discovery support to elkm1 (#65205) 2022-02-07 16:25:26 -08:00
Poltorak Serguei 3c5a667d97
Add Z-Wave.Me integration (#65473)
* Add support of Z-Wave.Me Z-Way and RaZberry server (#61182)

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: LawfulChaos <kerbalspacema@gmail.com>

* Add switch platform to Z-Wave.Me integration (#64957)

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

* Add button platform to Z-Wave.Me integration (#65109)

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Fix button controller access (#65117)

* Add lock platform to Z-Wave.Me integration #65109 (#65114)

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
Co-authored-by: Dmitry Vlasov <kerbalspacema@gmail.com>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>

* Add sensor platform to Z-Wave.Me integration (#65132)

* Sensor Entity

* Sensor fixes

* Apply suggestions from code review

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

* Inline descriotion according to review proposal

* State Classes for sensor

* Generic sensor

* Generic sensor

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

* Add binary sensor platform to Z-Wave.Me integration (#65306)

* Binary Sensor Entity

* Update docstring

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

* Add Light Entity platform to Z-Wave.Me integration (#65331)

* Light Entity

* mypy fix

* Fixes, ZWaveMePlatforms enum

* Apply suggestions from code review

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

* Fixes

* Fixes

* Fixes

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

* Add Thermostat platform to Z-Wave.Me integration #65331 (#65371)

* Climate entity

* Climate entity

* Apply suggestions from code review

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

* Climate entity fix

* Clean up

* cleanup

* Import order fix

* Correct naming

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

* Correct zwave_me .coveragerc (#65491)

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

Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: LawfulChaos <kerbalspacema@gmail.com>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-02-07 16:27:11 +01:00
starkillerOG d81139377c
Add Netgear allow/block switch (#65705)
* add allow/block switch

* keep api private

* typing

* change default to None

* retain None state

* change default to None
2022-02-07 12:00:02 +01:00
ollo69 900c793c3a
Add diagnostics support for Nut (#65893) 2022-02-06 12:00:39 -06:00
J. Nick Koston 5621e20963
WiZ Cleanups part 3 (#65819)
* WiZ Cleanups part 3

- Sockets are now using the switch platform

* tweaks

* remove rgb colorcheck

* tweaks

* tweaks

* cover

* cover
2022-02-05 18:56:17 +01:00
J. Nick Koston 2bcd4f8f93
Add discovery support to WiZ Part 1 (#65752) 2022-02-05 10:36:44 -06:00
Franck Nijhof 313387fda5
Remove deprecated GNTP integration (#65741) 2022-02-04 23:42:57 -08:00
Stephan Traub 432d9a8f19
Introduce wiz integration for the WiZ Platform (#44779)
Co-authored-by: Marvin Wichmann <marvin@fam-wichmann.de>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Jan Stienstra <65826735+j-stienstra@users.noreply.github.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-02-04 16:20:21 -08:00
ollo69 bebf5009d6
Add diagnostics support for Asuswrt (#65605)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-02-04 11:40:29 -08:00
G Johansson ca1e295662
Implement diagnostics for Sensibo (#65515) 2022-02-03 15:03:56 +01:00
G Johansson 8448462720
Rewrite sensibo integration (#64753)
* Rewrite sensibo integration

* Fixing CI

* coordinator in untested

* Fix review comments

* Additional review fixes

* Fix all conversations

* Remove extra state attributes

* Restore assumed state service

* Fix async_assume_state
2022-02-02 13:09:42 +01:00
Allen Porter 88ed2f3b3e
Improve google calendar test coverage to 97% (#65223)
* Improve google calendar test coverage to 97%

* Remove commented out code.

* Remove unnecessary (flaky) checks for token file persistence

* Remove mock code assertions

* Add debug logging to google calendar integration

* Increase alarm time to polling code to reduce flakes

* Setup every test in their own configuration directory

* Mock out filesystem calls to avoid disk dependencies

Update scope checking code to use Storage object rather than text file matching

* Update tests to check entity states when integration is loaded

* Mock out google service in multiple locations

* Update homeassistant/components/google/__init__.py

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

* Update homeassistant/components/google/__init__.py

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

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-02-01 03:14:49 +01:00
Simone Chemelli 86079375b9
Add diagnostics for SamsungTV (#65342) 2022-01-31 16:10:55 -08:00
Duco Sebel 103fe9e0ba
Add HomeWizard diagnostics (#65297)
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2022-01-31 16:08:58 -08:00
Simone Chemelli a9af29cbe0
Add diagnostics support to Fritz (#65334)
* Add diagnostics support to Fritz

* Temporary remove tests

* coveragerc
2022-01-31 23:43:46 +01:00
Simone Chemelli 17c41f4783
Introduce number platform for Shelly (#64207)
* Introduce number platform for Shelly

* coverage

* Rework based on review comment

* Improve logic around channel

* Remove unused value

* rebase

* Removed redundant properties

* Update homeassistant/components/shelly/number.py

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

* Remove channel workaround as currently not needed

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-31 22:14:59 +01:00
Brett Adams 3536271fce
Add diagnostics to Advantage Air (#65006)
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-30 20:51:39 -08:00
Simon Hansen 049fc8a945
Add config flow to ISS integration (#64987)
* Initial commit

* Wrong flowhandler name

* Add config flow tests

* Tests for config flow

* ...

* Add test for no coordinates

* ...

* Update homeassistant/components/iss/config_flow.py

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

* Update homeassistant/components/iss/config_flow.py

* Update homeassistant/components/iss/binary_sensor.py

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

* Add myself as codeowner

Co-authored-by: Shay Levy <levyshay1@gmail.com>
2022-01-29 11:41:26 +02:00
Marvin Wichmann 62584b4813
Add tests for KNX diagnostic and expose (#64938)
* Add test for KNX diagnostic

* Add test for KNX expose

* Apply review suggestions
2022-01-27 23:03:20 +01:00
Patrik Lindgren 9d404b749a
Implement coordinator class for Tradfri integration (#64166)
* Initial commit coordinator

* More coordinator implementation

* More coordinator implementation

* Allow integration reload

* Move API calls to try/catch block

* Move back fixture

* Remove coordinator test file

* Ensure unchanged file

* Ensure unchanged conftest.py file

* Remove coordinator key check

* Apply suggestions from code review

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

* Import RequestError

* Move async_setup_platforms to end of setup_entry

* Remove centralised handling of device data and device controllers

* Remove platform_type argument

* Remove exception

* Remove the correct exception

* Refactor coordinator error handling

* Apply suggestions from code review

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

* Remove platform type from base class

* Remove timeout context manager

* Refactor exception callback

* Simplify starting device observation

* Update test

* Move observe start into update method

* Remove await self.coordinator.async_request_refresh()

* Refactor cover.py

* Uncomment const.py

* Add back extra_state_attributes

* Update homeassistant/components/tradfri/coordinator.py

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

* Refactor switch platform

* Expose switch state

* Refactor sensor platform

* Put back accidentally deleted code

* Add set_hub_available

* Apply suggestions from code review

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

* Fix tests for fan platform

* Update homeassistant/components/tradfri/base_class.py

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

* Update homeassistant/components/tradfri/base_class.py

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

* Fix non-working tests

* Refresh sensor state

* Remove commented line

* Add group coordinator

* Add groups during setup

* Refactor light platform

* Fix tests

* Move outside of try...except

* Remove error handler

* Remove unneeded methods

* Update sensor

* Update .coveragerc

* Move signal

* Add signals for groups

* Fix signal

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-27 11:12:52 +01:00
Jeef 2b101dd5c2
Add IntelliFire sensors (#64600)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-01-26 16:16:25 +01:00
tokenize47 2f30fdb9b8
Add solax config flow (#56620) 2022-01-26 10:58:06 +01:00
Franck Nijhof 02d81374f8
Add full test coverage to Whois (#64899) 2022-01-25 18:33:53 +01:00
Michael 5d7d652237
Replace Synology DSM services with buttons (#57352) 2022-01-24 22:51:55 -10:00
Franck Nijhof ed924325e3
Add init tests for Whois (#64862) 2022-01-25 08:53:34 +01:00
Arto Jantunen 0ccb535f0a
Add binary sensor for Vallox post heater (#59762) 2022-01-25 08:32:31 +01:00
Joakim Sørensen 70b24b7843
Add diagnostics to Launch Library (#64871) 2022-01-24 22:59:29 +01:00
Joakim Sørensen 32f8695187
Add whois diagnostics to coveragerc (#64857) 2022-01-24 19:39:45 +01:00
Mick Vleeshouwer d6c547e9a3
Add cover platform to Overkiz integration (#64564) 2022-01-24 07:58:52 -10:00
Joakim Sørensen 7c1eabadfa
Add diagnostics to Nanoleaf (#64835) 2022-01-24 14:15:05 +01:00
Shay Levy eb48748038
Add webostv 100% tests coverage for init (#64801) 2022-01-24 09:27:24 +02:00
Franck Nijhof 88c9422b70
Add diagnostics support to Stookalert (#64747)
* Add diagnostics support to Stookalert

* coveragerc
2022-01-24 01:36:41 +02:00
Franck Nijhof 0ae2ffd467
Add diagnostics support to Verisure (#64789)
* Add diagnostics support to Verisure

* coveragerc
2022-01-24 01:36:22 +02:00
Andre Lengwenus d5ec2fe842
Add tests for LCN light platform (#64741) 2022-01-23 07:45:22 -10:00
Hans Oischinger c23b2135a3
Add vicare one-time charge (#64376)
* vicare: Add OneTime Charge

* Integrate review comments

* Simplify button entity
2022-01-23 18:27:19 +01:00
J. Nick Koston 50b2e9d794
Prevent lookin polling when push updates are coming in (#64687)
Co-authored-by: Chris Talkington <chris@talkingtontech.com>
2022-01-22 21:19:34 -10:00
Shay Levy 12780a3173
Add webostv 100% tests coverage for media player (#64723) 2022-01-22 14:06:48 -10:00
Andre Lengwenus 19e3c08c56
Add tests for LCN switch platform (#52590) 2022-01-22 10:41:25 -10:00
Franck Nijhof 511546631a
Add diagnostics support to Open-Meteo (#64645) 2022-01-22 13:47:51 +01:00
Michael 443f50cde6
Add diagnostics to Synology DSM integration (#64480) 2022-01-21 11:37:11 -08:00
jjlawren 53aed22d5c
Add diagnostics support to Sonos (#64576)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2022-01-20 13:26:54 -08:00
G Johansson 543064d7b7
Implement config flow dnsip (#62843) 2022-01-20 10:45:58 -10:00
sebfortier2288 a9785f1b41
Add support for Soma Tilt devices (#49734) 2022-01-20 10:21:54 -10:00
Guido Schmitz 144371d843
Add siren platform to devolo Home Control (#53400)
* Rework mocking

* Add siren platform

* Rebase with dev

* React on change of default tone

* Fix linting error
2022-01-20 08:10:06 -05:00
Michael 09297520c0
Let the new wrapper just extend the `FritzBoxTools` class (#64133)
* let wrapper just extend the FritzBoxTools class

* keep avm_device in method names
2022-01-20 12:43:32 +01:00
Jeef f854fdb8fd
Add Intellifire Gas Fireplace integration (#63637)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Mick Vleeshouwer <mick@imick.nl>
2022-01-20 10:01:04 +01:00
Mick Vleeshouwer 2503530b8c
Add diagnostics to Overkiz integration (#64427) 2022-01-19 15:51:52 -08:00
Matthias Alphart 10538aabbf
Add diagnostics to KNX (#64471) 2022-01-19 12:46:10 -08:00
Shay Levy e6c7c01e6c
Add webostv 100% tests coverage for notify (#64412)
* Add webostv 100% tests coverage for notify

* Apply review comments

* Fix assert
2022-01-19 13:13:55 +02:00
Franck Nijhof 8cfe6ef25a
Add diagnostics support to Tuya (#64374) 2022-01-18 12:44:09 -08:00
Joakim Sørensen 6a0c3843e5
Revamp github integration (#64190)
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
Co-authored-by: Franck Nijhof <git@frenck.dev>
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-18 20:04:01 +01:00
Mick Vleeshouwer 313ad2ecde
Add switch entity to Overkiz integration (#64000) 2022-01-17 08:21:37 -10:00
J. Nick Koston 3d7572843e
Add switch platform to nexia (#64205) 2022-01-16 09:38:29 -10:00
J. Nick Koston 187b4fad84
Update nexia climate platform to use newer standards (#64186) 2022-01-16 07:51:16 -10:00
Shay Levy dee843bf6e
Add LG webOS Smart TV config flow support (#64117)
* Add webOS Smart TV config flow support (#53256)

* Add Webostv config flow

* Fix tests mocks and apply review comments

* Apply review comments

* Change config flow to use ssdp UDN as unique_id

* Fix device info

* More review comments

* Fix _async_check_configured_entry

* Remove turn on script

* Add webOS Smart TV device triggers (#53752)

* Add webOS Smart TV config flow support (#53256)

* Add Webostv config flow

* Fix tests mocks and apply review comments

* Apply review comments

* Change config flow to use ssdp UDN as unique_id

* Fix device info

* More review comments

* Fix _async_check_configured_entry

* Remove turn on script

* Add webOS Smart TV device triggers (#53752)

* Fix webOS Smart TV mypy and pylint errors (#62620)

* Change webOS Smart TV PyPi aiopylgtv package to bscpylgtv (#62633)

* Change webOS Smart TV PyPi aiopylgtv package to bscpylgtv

* Update bscpylgtv to 0.2.8 (revised websockets requirment)

* Change webOS Smart TV PyPi package to aiowebostv (#63759)

* Change webOS Smart TV PyPi package to aiowebostv

* Apply suggestions from code review

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

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

* webOS TV check UUID for user added device (#63817)

* webOS TV check uuid when for user added device

* Apply suggestions from code review

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

* Add test for form abort and host update

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

* Rework webOS Smart TV device trigger to custom trigger platform (#63950)

* Rework webOS Smart TV device trigger to custom trigger platform

* Review comments and add tests

* Fix webOS TV import from YAML (#63996)

* Fix webOS TV import from YAML

* Fix requirements

* Migrate YAML entities unique id to UUID

* Add backoff to migration task delay

* Assert result data and unique_id

* Apply suggestions from code review

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

* Add codeowner

Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-01-14 22:48:45 +01:00
Anton Malko 6a3de6ab10
Add light platform to LOOKin (#64076) 2022-01-13 17:07:02 -10:00
Mick Vleeshouwer 5e3bfabfcf
Add select entity to Overkiz integration (#62916) 2022-01-13 12:35:44 -10:00
G Johansson c021e58ee2
Implement binary_sensor in yale_smart_alarm (#63937) 2022-01-12 23:34:43 -10:00
J. Nick Koston b23be22c67
Add light platform to SenseME (#63772)
Co-authored-by: Big Mike <mikelawrence@users.noreply.github.com>
2022-01-12 15:04:00 -08:00
Simone Chemelli bdea7fad75
Fritz: introduce wrapper.py - part 1 (sensor) (#63682)
* Revert "Improve availability for Shelly Valve"

This reverts commit d8cbd81b456820153522e6d86bbd00c4a4a31129.

* Fritz: introduce api.py - part 1 (sensor)

* Revert

* coverage

* Apply review comments

* Better naming

* Coverage

* fix naming

* Avoid "ignore[no-any-return]"
2022-01-11 17:31:52 -10:00
G Johansson 17bf51a855
Implement lock to yale_smart_alarm (#63643) 2022-01-11 09:20:15 -10:00
Jonathan Keslin 56c577c832
Expose power & energy usage of VeSync outlets as separate sensors (#61837) 2022-01-10 09:39:31 -08:00
J. Nick Koston b658c053ec
Add switch platform to SenseME (#63719) 2022-01-09 17:16:19 -10:00
J. Nick Koston 8e0b124875
Add binary_sensor platform to SenseME (#63660) 2022-01-08 19:52:51 -10:00
Simon Hansen b22a9b8669
Refactor Launch Library to use config flow (#62416)
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: Joakim Sørensen <hi@ludeeus.dev>
2022-01-08 11:47:16 +01:00
J. Nick Koston 943aaaeb3f
Add SenseME integration (#62909)
Co-authored-by: Big Mike <mikelawrence@users.noreply.github.com>
2022-01-07 22:53:05 -10:00
Tuen Lee 8b216db885
Tuya Alarm Initial commit (#60080) 2022-01-07 14:20:30 +01:00
rikroe e9dec5d03a
Add button entities to bmw_connected_drive (#63136)
Co-authored-by: Gerard <gerard33@users.noreply.github.com>
Co-authored-by: Franck Nijhof <frenck@frenck.nl>
Co-authored-by: rikroe <rikroe@users.noreply.github.com>
2022-01-06 12:05:25 +01:00
Franck Nijhof ed791aa854
Add sensor tests to PVOutput (#63400) 2022-01-05 11:15:18 +01:00
Franck Nijhof 56520b69ac
Remove deprecated Arduino integration (#63406) 2022-01-05 09:15:50 +01:00
mletenay f0acbabd48
Add Goodwe solar inverter integration (#58503)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: starkillerOG <starkiller.og@gmail.com>
2022-01-04 22:19:31 +01:00
Franck Nijhof 919aa95f97
Improve test coverage for PVOutput (#63048) 2022-01-04 20:20:39 +01:00
Joakim Plate 7c6297db86
Add support for philips js screen state (#62775) 2022-01-04 16:14:44 +01:00
Franck Nijhof b5300fb32e
Add configuration flow to Whois (#63069)
Co-authored-by: Dave T <17680170+davet2001@users.noreply.github.com>
2021-12-30 22:42:46 +01:00
Franck Nijhof c6230fef08
Add full test coverage to CPU Speed (#63042) 2021-12-29 22:59:14 +01:00
Franck Nijhof 5ab527e59c
Add configuration flow to CPU Speed (#62929) 2021-12-28 21:17:53 +01:00
Sebastian Lövdahl b5fd2e0d58
Convert Vallox integration to config flow (#62780) 2021-12-28 10:06:29 -10:00
Franck Nijhof 90a9d64f67
Add reauthentication handling to PVOutput (#62932) 2021-12-28 17:28:35 +01:00
Mick Vleeshouwer 41c497ee6e
Add binary sensor entity to Overkiz integration (#62913) 2021-12-27 23:10:39 -10:00
Mick Vleeshouwer 0bcb0a6267
Add scene entity to Overkiz integration (#62884) 2021-12-27 13:57:19 -10:00