core/homeassistant/generated/config_flows.py

716 lines
14 KiB
Python
Raw Normal View History

"""Automatically generated file.
To update, run python3 -m script.hassfest
"""
2022-03-21 03:38:13 +00:00
FLOWS = {
2022-11-09 15:58:20 +00:00
"helper": [
"derivative",
"generic_hygrostat",
"generic_thermostat",
2022-11-09 15:58:20 +00:00
"group",
"history_stats",
2022-11-09 15:58:20 +00:00
"integration",
"min_max",
"mold_indicator",
"random",
"statistics",
2022-11-09 15:58:20 +00:00
"switch_as_x",
"template",
2022-11-09 15:58:20 +00:00
"threshold",
"tod",
"trend",
2022-11-09 15:58:20 +00:00
"utility_meter",
],
2022-03-21 03:38:13 +00:00
"integration": [
"abode",
"acaia",
2022-03-21 03:38:13 +00:00
"accuweather",
"acmeda",
"adax",
"adguard",
"advantage_air",
"aemet",
"aftership",
2022-03-21 03:38:13 +00:00
"agent_dvr",
2024-05-09 08:54:29 +00:00
"airgradient",
2022-03-21 03:38:13 +00:00
"airly",
"airnow",
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 22:13:57 +00:00
"airq",
2022-03-21 03:38:13 +00:00
"airthings",
"airthings_ble",
2022-03-21 03:38:13 +00:00
"airtouch4",
"airtouch5",
2022-03-21 03:38:13 +00:00
"airvisual",
"airvisual_pro",
2022-03-21 03:38:13 +00:00
"airzone",
Add Airzone Cloud integration (#93238) * airzone-cloud: add new integration Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * Add missing aioairzone-cloud to test requirements Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * Update aioairzone-cloud to v0.0.4 Allows to handle TooManyRequests exception on coordinator. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * aioairzone_cloud: reduce API requests Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: remove system_zone_id As opposed to the Local API of Airzone devices, the Cloud API provides unique IDs for both systems and zones, so we can remove the system_zone_id copied from the Local API integration. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: minor improvements Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * tests: airzone_cloud: simplify mock_get_webserver Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * Update aioairzone to v0.0.5 - Add token refresh and relogin support. - Improve fetching installation devices. Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: add to strict typing Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * Update aioairzone to v0.0.7 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * trigger CI * airzone_cloud: remove unneeded api_get_user call Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * Add Airzone brand Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * Update aioairzone to v0.1.1 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: use unique_id instead of entry_id Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: remove special handling of TooManyRequests Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: bump coordinator timeout to 30s Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: make AirzoneEntity an ABC Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * airzone_cloud: fix strings typo Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * tests: airzone_cloud: simplify webserver mock Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> * Update aioairzone-cloud to v0.1.2 Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com> --------- Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2023-05-23 17:22:50 +00:00
"airzone_cloud",
2022-03-21 03:38:13 +00:00
"alarmdecoder",
"amberelectric",
"ambient_network",
2022-03-21 03:38:13 +00:00
"ambient_station",
Add Homeassistant Analytics Insights integration (#107634) * Add Homeassistant Analytics integration * Add Homeassistant Analytics integration * Add Homeassistant Analytics integration * Fix feedback * Fix test * Update conftest.py * Add some testcases * Make code clear * log exception * Bump python-homeassistant-analytics to 0.2.1 * Bump python-homeassistant-analytics to 0.3.0 * Change domain to homeassistant_analytics_consumer * Add integration name to config flow selector * Update homeassistant/components/homeassistant_analytics_consumer/manifest.json Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> * Fix hassfest * Apply suggestions from code review Co-authored-by: Robert Resch <robert@resch.dev> * Bump python-homeassistant-analytics to 0.4.0 * Rename to Home Assistant Analytics Insights * Update homeassistant/components/analytics_insights/config_flow.py Co-authored-by: Robert Resch <robert@resch.dev> * Update homeassistant/components/analytics_insights/manifest.json Co-authored-by: Robert Resch <robert@resch.dev> * Rename to Home Assistant Analytics Insights * add test * Fallback to 0 when there is no data found * Allow to select any integration * Fix tests * Fix tests * Update tests/components/analytics_insights/conftest.py Co-authored-by: Robert Resch <robert@resch.dev> * Update tests/components/analytics_insights/test_sensor.py Co-authored-by: Robert Resch <robert@resch.dev> * Fix format * Fix tests --------- Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> Co-authored-by: Robert Resch <robert@resch.dev>
2024-01-23 09:32:31 +00:00
"analytics_insights",
"android_ip_webcam",
2022-03-21 03:38:13 +00:00
"androidtv",
"androidtv_remote",
Add Anova integration (#86254) * init setup of Anova Sous Vide * bump anova-wifi to 0.2.4 * Removed yaml support * Bump to anova-wifi 0.2.5 * Added support for adding sous vide while offline * Added basic test for sensor * added better tests for sensors and init * expanded code coverage * Decreased timedelta to lowest functioning value. * Updating my username * migrate to async_forward_entry_setups * applying pr recommended changes * bump anova-wifi to 0.2.7 * Improvements to hopefully get this review ready * formatting changes * clean ups for pr review * remove unneeded unique id check. * bump ao anova_wifi 0.3.0 * rename device_id to device_unique_id * renamed to 'anova' * added unique_id to MockConfigEntry * removed leftover anova sous vides * added device id to strings * added error for incorrect device id * add has_entity_name * added attr name for tests * added authentication functionality * bump to 0.4.3 * split entity into its own class/object * pulling firmware version out of async_setup Co-authored-by: J. Nick Koston <nick@koston.org> * addressed pr changes * fixed pytest * added anova data model * removed unneeded time change * add logging in package * rework step_user * Update homeassistant/components/anova/sensor.py Co-authored-by: J. Nick Koston <nick@koston.org> * Removed lower from attr unique id Co-authored-by: J. Nick Koston <nick@koston.org> * Removed unneeded member variables in sensor Co-authored-by: J. Nick Koston <nick@koston.org> * removed repeated subclass attr Co-authored-by: J. Nick Koston <nick@koston.org> * simplify update_failed test * created descriptionentity * bump to 0.6.1 limit ws connect * add translation for sensor entities * version bump - support pro model * add anova to strict typing * fixed sensor not getting datas type * Apply suggestions from code review Co-authored-by: J. Nick Koston <nick@koston.org> * Check for new devices in init * style changes * return false instead of config entry not ready * move serialize_device_list to utils * move repeating device check into api * moved unneeded code out of try except * fixed tests to get 100% cov * Update homeassistant/components/anova/strings.json Co-authored-by: J. Nick Koston <nick@koston.org> --------- Co-authored-by: J. Nick Koston <nick@koston.org>
2023-04-22 23:05:14 +00:00
"anova",
"anthemav",
"anthropic",
2023-12-08 16:17:42 +00:00
"aosmith",
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 07:14:04 +00:00
"apcupsd",
2022-03-21 03:38:13 +00:00
"apple_tv",
"aprilaire",
"apsystems",
"aquacell",
2022-10-31 03:50:46 +00:00
"aranet",
2022-03-21 03:38:13 +00:00
"arcam_fmj",
2024-04-08 15:24:32 +00:00
"arve",
2022-03-21 03:38:13 +00:00
"aseko_pool_live",
"asuswrt",
"atag",
"august",
"aurora",
"aurora_abb_powerone",
"aussie_broadband",
"autarco",
2022-03-21 03:38:13 +00:00
"awair",
"axis",
"azure_data_explorer",
2022-03-21 03:38:13 +00:00
"azure_devops",
"azure_event_hub",
"baf",
2022-03-21 03:38:13 +00:00
"balboa",
Add bang_olufsen integration (#93462) * Add bangolufsen integration * add untested files to .coveragerc * Simplify integration to media_player platform * Remove missing files from .coveragerc * Add beolink_set_relative_volume custom service Tweaks * Remove custom services Remove grouping as it was dependent on custom services * Update API to 3.2.1.150.0 Reduce and optimize code with feedback from joostlek Tweaks * Updated testing * Remove unused options schema * Fix bugfix setting wrong state * Fix wrong initial state * Bump API * Fix Beosound Level not reconnecting properly * Remove unused constant * Fix wrong variable checked to determine source * Update integration with feedback from emontnemery * Update integration with feedback from emontnemery * Remove unused code * Move API client into dataclass Fix not all config_flow exceptions caught Tweaks * Add Bang & Olufsen brand * Revert "Add Bang & Olufsen brand" This reverts commit 57b2722078ae0b563880306c6457d2cf3f528070. * Remove volume options from setup Simplify device checks rename integration to bang_olufsen update tests to pass Update API * Remove _device from base Add _device to websocket * Move SW version device update to websocket Sort websocket variables * Add WebSocket connection test * Remove unused constants * Remove confirmation form Make discovered devices get added to Home Assistant immediately Fix device not being available on mdns discovery Change config flow aborts to forms with error * Update tests for new config_flow Add missing api_exception test * Restrict manual and discovered IP addresses to IPv4 * Re-add confirmation step for zeroconf discovery Improve error messages Move exception mapping dict to module level * Enable remote control WebSocket listener * Update tests
2024-01-24 11:00:51 +00:00
"bang_olufsen",
2022-03-21 03:38:13 +00:00
"blebox",
"blink",
"blue_current",
"bluemaestro",
"bluesound",
"bluetooth",
2022-03-21 03:38:13 +00:00
"bmw_connected_drive",
"bond",
"bosch_shc",
"braviatv",
Add bring integration (#108027) * add bring integration * fix typings and remove from strictly typed - wait for python-bring-api to be ready for strictly typed * make entity unique to user and list - before it was only list, therefore the same list imported by two users would have failed * simplify bring attribute Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * cleanup and code simplification * remove empty fields in manifest * __init__.py aktualisieren Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * __init__.py aktualisieren Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * strings.json aktualisieren Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * streamline async calls * use coordinator refresh * fix order in update call and simplify bring list * simplify the config_flow * Update homeassistant/components/bring/manifest.json Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> * add unit testing for __init__.py * cleanup comments * use dict instead of list * Update homeassistant/components/bring/todo.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * clean up * update attribute name * update more attribute name * improve unit tests - remove patch and use mock in conftest * clean up tests even more * more unit test inprovements * remove optional type * minor unit test cleanup * Update .coveragerc Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
2024-01-29 14:08:11 +00:00
"bring",
2022-03-21 03:38:13 +00:00
"broadlink",
"brother",
"brottsplatskartan",
2022-03-21 03:38:13 +00:00
"brunt",
Add Bryant Evolution Integration (#119788) * Add an integration for Bryant Evolution HVAC systems. * Update newly created tests so that they pass. * Improve compliance with home assistant guidelines. * Added tests * remove xxx * Minor test cleanups * Add a test for reading HVAC actions. * Update homeassistant/components/bryant_evolution/__init__.py Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Update homeassistant/components/bryant_evolution/climate.py Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Update homeassistant/components/bryant_evolution/climate.py Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Update homeassistant/components/bryant_evolution/climate.py Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Update homeassistant/components/bryant_evolution/climate.py Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Update homeassistant/components/bryant_evolution/climate.py Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Update homeassistant/components/bryant_evolution/config_flow.py Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Address reviewer comments. * Address additional reviewer comments. * Use translation for exception error messages. * Simplify config flow. * Continue addressing comments * Use mocking rather than DI to provide a for-test client in tests. * Fix a failure in test_config_flow.py * Track host->filename in strings.json. * Use config entry ID for climate entity unique id * Guard against fan mode returning None in async_update. * Move unavailable-client check from climate.py to init.py. * Improve test coverage * Bump evolutionhttp version * Address comments * update comment * only have one _can_reach_device fn * Auto-detect which systems and zones are attached. * Add support for reconfiguration * Fix a few review comments * Introduce multiple devices * Track evolutionhttp library change that returns additional per-zone information during enumeration * Move construction of devices to init * Avoid triplicate writing * rework tests to use mocks * Correct attribute name to unbreak test * Pull magic tuple of system-zone into a constant * Address some test comments * Create test_init.py * simplify test_reconfigure * Replace disable_auto_entity_update with mocks. * Update tests/components/bryant_evolution/test_climate.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/bryant_evolution/test_climate.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/bryant_evolution/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/bryant_evolution/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/bryant_evolution/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/bryant_evolution/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * fix test errors * do not access runtime_data in tests * use snapshot_platform and type fixtures --------- Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-07-29 09:25:04 +00:00
"bryant_evolution",
2022-03-21 03:38:13 +00:00
"bsblan",
"bthome",
2022-03-21 03:38:13 +00:00
"buienradar",
"caldav",
"cambridge_audio",
2022-03-21 03:38:13 +00:00
"canary",
"cast",
New integration Midea ccm15 climate (#94824) * Initial commit * Correct settings for config flow * Use scan interval * Store proper data * Remove circular dependency * Remove circular dependency * Integration can be initialized * Fix defaults * Add setup entry * Add setup entry * Dont block forever * Poll during async_setup_entry * Remove not needed async methods * Add debug info * Parse binary data * Parse binary data * Use data to update device * Use data to update device * Add CCM15DeviceState * Use DataCoordinator * Use DataCoordinator * Use DataCoordinator * Use CoordinatorEntity * Use CoordinatorEntity * Call update API * Call update API * Call update API * Call update API * Use dataclass * Use dataclass * Use dataclass * Use dataclass * Use dataclass * Use dataclass * Use dataclass * Use dataclass * Fix bugs * Implement swing * Support swing mode, read only * Add unit test * Swing should work * Set swing mode * Add DeviceInfo * Add error code * Add error code * Add error code * Add error code * Initial commit * Refactor * Remove comment code * Try remove circular ref * Try remove circular ref * Remove circular ref * Fix bug * Fix tests * Fix tests * Increase test coverage * Increase test coverage * Increase test coverrage * Add more unit tests * Increase coverage * Update coordinator.py * Fix ruff * Set unit of temperature * Add bounds check * Fix unit tests * Add test coverage * Use Py-ccm15 * Update tests * Upgrade dependency * Apply PR feedback * Upgrade dependency * Upgrade dependency * Upgrade dependency * Force ruff * Delete not needed consts * Fix mypy * Update homeassistant/components/ccm15/coordinator.py Co-authored-by: Robert Resch <robert@resch.dev> * Apply PR Feedback * Apply PR Feedback * Apply PR Feedback * Apply PR Feedback * Apply PR Feedback * Apply PR Feedback * Fix unit tests * Move climate instance * Revert "Move climate instance" This reverts commit cc5b9916b79e805b77cc0062da67aea61e22e7c5. * Apply PR feedback * Apply PR Feedback * Remove scan internal parameter * Update homeassistant/components/ccm15/coordinator.py Co-authored-by: Robert Resch <robert@resch.dev> * Remove empty keys * Fix tests * Use attr fields * Try refactor * Check for multiple hosts * Check for duplicates * Fix tests * Use PRECISION_WHOLE * Use str(ac_index) * Move {self._ac_host}.{self._ac_index} to construtor * Make it fancy * Update homeassistant/components/ccm15/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Move const to class variables * Use actual config host * Move device info to construtor * Update homeassistant/components/ccm15/climate.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Set name to none, dont ask for poll * Undo name change * Dont use coordinator in config flow * Dont use coordinator in config flow * Check already configured * Apply PR comments * Move above * Use device info name * Update tests/components/ccm15/test_coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/ccm15/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Apply feedback * Remove logger debug calls * Add new test to check for dupplicates * Test error * Use better name for test * Update homeassistant/components/ccm15/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/ccm15/climate.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/ccm15/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Use prop data for all getters * Fix tests * Improve tests * Improve tests, v2 * Replace log message by comment * No need to do bounds check * Update config_flow.py * Update test_config_flow.py * Update test_coordinator.py * Update test_coordinator.py * Create test_climate.py * Delete tests/components/ccm15/test_coordinator.py * Update coordinator.py * Update __init__.py * Create test_climate.ambr * Update conftest.py * Update test_climate.py * Create test_init.py * Update .coveragerc * Update __init__.py * We need to check bounds after all * Add more test coverage * Test is not None * Use better naming * fix tests * Add available property * Update homeassistant/components/ccm15/climate.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Use snapshots to simulate netwrok failure or power failure * Remove not needed test * Use walrus --------- Co-authored-by: Robert Resch <robert@resch.dev> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-12-23 20:24:52 +00:00
"ccm15",
2022-03-21 03:38:13 +00:00
"cert_expiry",
"chacon_dio",
2022-03-21 03:38:13 +00:00
"cloudflare",
"co2signal",
"coinbase",
"color_extractor",
"comelit",
2022-03-21 03:38:13 +00:00
"control4",
2024-12-12 19:23:14 +00:00
"cookidoo",
2022-03-21 03:38:13 +00:00
"coolmaster",
"cpuspeed",
"crownstone",
"daikin",
"deako",
2022-03-21 03:38:13 +00:00
"deconz",
2022-03-23 04:01:24 +00:00
"deluge",
2022-03-21 03:38:13 +00:00
"denonavr",
"devialet",
2022-03-21 03:38:13 +00:00
"devolo_home_control",
"devolo_home_network",
"dexcom",
"dialogflow",
"directv",
2022-03-30 11:18:48 +00:00
"discord",
Add new integration Discovergy (#54280) * Add discovergy integration * Capitalize measurement type as it is in uppercase * Some logging and typing * Add all-time total production power and check if meter has value before adding it * Add tests for Discovergy and changing therefor library import * Disable phase-specific sensor per default, set user_input as default for schema and implement some other suggestions form code review * Removing translation, fixing import and some more review implementation * Fixing CI issues * Check if acces token keys are in dict the correct way * Implement suggestions after code review * Correcting property function * Change state class to STATE_CLASS_TOTAL_INCREASING * Add reauth workflow for Discovergy * Bump pydiscovergy * Implement code review * Remove _meter from __init__ * Bump pydiscovergy & minor changes * Add gas meter support * bump pydiscovergy & error handling * Add myself to CODEOWNERS for test directory * Resorting CODEOWNERS * Implement diagnostics and reduce API use * Make homeassistant imports absolute * Exclude diagnostics.py from coverage report * Add sensors with different keys * Reformatting files * Use new naming style * Refactoring and moving to basic auth for API authentication * Remove device name form entity name * Add integration type to discovergy and implement new unit of measurement * Add system health to discovergy integration * Use right array key when using an alternative_key & using UnitOfElectricPotential.VOLT * Add options for precision and update interval to Discovergy * Remove precision config option and let it handle HA * Rename precision attribute and remove translation file * Some formatting tweaks * Some more tests * Move sensor names to strings.json * Redacting title and unique_id as it contains user email address
2023-06-06 17:44:00 +00:00
"discovergy",
2023-01-11 00:10:56 +00:00
"dlink",
2022-03-21 03:38:13 +00:00
"dlna_dmr",
"dlna_dms",
"dnsip",
"doorbird",
"dormakaba_dkey",
Add Downloader config flow, including tests (#98722) * Adding base line, including tests * Adding validatge input and expanding tests * Updating manifest * Minor patch * Revert minor patch, wrong nesting * Adding proper translations * Including abort message * Update homeassistant/components/downloader/config_flow.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Rename exception class * Refactor import * Update strings * Apply suggestions from code review * Update homeassistant/components/downloader/__init__.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Update homeassistant/components/downloader/__init__.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Update homeassistant/components/downloader/__init__.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Update homeassistant/components/downloader/__init__.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Update homeassistant/components/downloader/__init__.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Update homeassistant/components/downloader/__init__.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Update homeassistant/components/downloader/__init__.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * Reverting back filename and fix typing * Reverting back mutex/lock * Upgrade version * Adding typing * Removing coroutine * Removing unload entry (for now) * Removing comment * Change type * Putting download back in setup_entry * Revert back code --------- Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-03-18 15:16:24 +00:00
"downloader",
"dremel_3d_printer",
Add DROP integration (#104319) * Add DROP integration * Remove all but one platform for first PR * Simplify initialization of hass.data[] structure * Remove unnecessary mnemonic 'DROP_' prefix from DOMAIN constants * Remove unnecessary whitespace * Clarify configuration 'confirm' step description * Remove unnecessary whitespace * Use device class where applicable * Remove unnecessary constructor and change its elements to class variables * Change base entity inheritance to CoordinatorEntity * Make sensor definitions more concise * Rename HA domain from drop to drop_connect * Remove underscores from class and function names * Remove duplicate temperature sensor * Change title capitalization * Refactor using SensorEntityDescription * Remove unnecessary intermediate dict layer * Remove generated translations file * Remove currently unused string values * Use constants in sensor definitions * Replace values with constants * Move translation keys * Remove unnecessary unique ID and config entry references * Clean up DROPEntity initialization * Clean up sensors * Rename vars and functions according to style * Remove redundant self references * Clean up DROPSensor initializer * Add missing state classes * Simplify detection of configured devices * Change entity identifiers to create device linkage * Move device_info to coordinator * Remove unnecessary properties * Correct hub device IDs * Remove redundant attribute * Replace optional UID with assert * Remove redundant attribute * Correct coordinator initialization * Fix mypy error * Move API functionality to 3rd party library * Abstract device to sensor map into a dict * Unsubscribe MQTT on unload * Move entity device information * Make type checking for mypy conditional * Bump dropmqttapi to 1.0.1 * Freeze dataclass to match parent class * Fix race condition in MQTT unsubscribe setup * Ensure unit tests begin with invalid MQTT state * Change unit tests to reflect device firmware * Move MQTT subscription out of the coordinator * Tidy up initializer * Move entirety of MQTT subscription out of the coordinator * Make drop_api a class property * Remove unnecessary type checks * Simplify some unit test asserts * Remove argument matching default * Add entity category to battery and cartridge life sensors
2023-12-22 13:24:08 +00:00
"drop_connect",
2022-03-21 03:38:13 +00:00
"dsmr",
"dsmr_reader",
"duke_energy",
2022-03-21 03:38:13 +00:00
"dunehd",
"duotecno",
"dwd_weather_warnings",
2022-03-21 03:38:13 +00:00
"dynalite",
"eafm",
2023-02-03 18:56:17 +00:00
"easyenergy",
2022-03-21 03:38:13 +00:00
"ecobee",
Add ecoforest integration (#100647) * Add ecoforest integration * fix file title * remove host default from schema, hints will be given in the documentation * moved input validation to async_step_user * ensure we can receive device data while doing entry setup * remove unecessary check before unique id is set * added shorter syntax for async create entry Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * use variable to set unique id Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Use _attr_has_entity_name from base entity Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * remove unecessary comments in coordinator * use shorthand for device information * remove empty objects from manifest * remove unecessary flag Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * use _async_abort_entries_match to ensure device is not duplicated * remove unecessary host attr * fixed coordinator host attr to be used by entities to identify device * remove unecessary assert * use default device class temperature trasnlation key * reuse base entity description * use device serial number as identifier * remove unused code * Improve logging message Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Remove unused errors Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Raise a generic update failed Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * use coordinator directly Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * No need to check for serial number Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * rename variable Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * use renamed variable Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * improve assertion Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * use serial number in entity unique id Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * raise config entry not ready on setup when error in connection * improve test readability * Improve python syntax Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * abort when device already configured with same serial number * improve tests * fix test name * use coordinator data Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * improve asserts Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * fix ci * improve error handling --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-21 13:18:55 +00:00
"ecoforest",
2022-03-21 03:38:13 +00:00
"econet",
"ecovacs",
"ecowitt",
"edl21",
2022-03-21 03:38:13 +00:00
"efergy",
"electrasmart",
"electric_kiwi",
"elevenlabs",
2022-03-21 03:38:13 +00:00
"elgato",
"elkm1",
"elmax",
2024-01-31 13:47:37 +00:00
"elvia",
Migrate emoncms to config flow (#121336) * Migrate emoncms to config flow * tests coverage 98% * use runtime_data * Remove pyemoncms bump. * Remove not needed yaml parameters add async_update_data to coordinator * Reduce snapshot size * Remove CONF_UNIT_OF_MEASUREMENT * correct path in emoncms_client mock * Remove init connexion check as done by config_entry_first_refresh since async_update_data catches exceptionand raise UpdateFailed * Remove CONF_EXCLUDE_FEEDID from config flow * Update homeassistant/components/emoncms/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/emoncms/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/emoncms/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Use options in options flow and common strings * Extend the ConfigEntry type * Define the type explicitely * Add data description in strings.json * Update tests/components/emoncms/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/emoncms/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Add test import same yaml conf + corrections * Add test user flow * Use data_description... * Use snapshot_platform in test_sensor * Transfer all fixtures in conftest * Add async_step_choose_feeds to ask flows to user * Test abortion reason in test_flow_import_failure * Add issue when value_template is i yaml conf * make text more expressive in strings.json * Add issue when no feed imported during migration. * Update tests/components/emoncms/test_config_flow.py * Update tests/components/emoncms/test_config_flow.py --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-03 15:21:13 +00:00
"emoncms",
2022-03-21 03:38:13 +00:00
"emonitor",
"emulated_roku",
"energenie_power_sockets",
2023-01-03 21:28:16 +00:00
"energyzero",
"enigma2",
2022-03-21 03:38:13 +00:00
"enocean",
"enphase_envoy",
"environment_canada",
Add Epic Games Store integration (#104725) * Add Epic Games Store integration Squashed commit of the following PR: #81167 * Bump epicstore-api to 0.1.7 as it handle better error 1004 Thanks to https://github.com/SD4RK/epicstore_api/commit/d7469f7c99508c06b3867fecbcf291ebf86c4c72 * Use extra_state_attributes instead of overriding state_attributes * Review: change how config_flow.validate_input is handled * Use LanguageSelector and rename locale to language * Review: init-better use of hass.data.setdefault Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Review: don't need to update at init Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Revert "Review: don't need to update at init" --> not working otherwise This reverts commit 1445a87c8e9b7247f1c9835bf2e2d7297dd02586. * Review: fix config_flow.validate_input/retactor following lib bump * review: merge async_update function with event property Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * hassfest * Fix duplicates data from applied comment review 5035055 * review: thanks to 5035055 async_add_entities update_before_add param is not required anymore Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Fix Christmas special "Holiday sale" case * gen_requirements_all * Use CONF_LANGUAGE from HA const * Move CalendarType to const * manifest: integration_type -> service Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> * calendar: remove date start/end assert Co-authored-by: Erik Montnemery <erik@montnemery.com> * const: rename SUPPORTED_LANGUAGES * hassfest * config: Move to ConfigFlowResult * coordinator: main file comment Co-authored-by: Erik Montnemery <erik@montnemery.com> * ruff & hassfest * review: do not guess country * Add @hacf-fr as codeowner * review: remove games extra_attrs Was dropped somehow: - 73c20f34803b0a0ec242bf0740494f17a68f6f59 review: move games extra_attrs to data service - other commit that removed the service part * review: remove unused error class was removed: - 040cf945bb5346b6d42b3782b5061a13fb7b1f6b --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-04-22 07:54:47 +00:00
"epic_games_store",
"epion",
2022-03-21 03:38:13 +00:00
"epson",
"eq3btsmart",
"escea",
2022-03-21 03:38:13 +00:00
"esphome",
"eufylife_ble",
2022-03-21 03:38:13 +00:00
"evil_genius_labs",
"ezviz",
"faa_delays",
"fastdotcom",
"feedreader",
"fibaro",
"file",
"filesize",
2022-03-21 03:38:13 +00:00
"fireservicerota",
"fitbit",
2022-03-21 03:38:13 +00:00
"fivem",
"fjaraskupan",
"flexit_bacnet",
2022-03-21 03:38:13 +00:00
"flick_electric",
"flipr",
"flo",
"flume",
"flux_led",
"folder_watcher",
2022-03-21 03:38:13 +00:00
"forecast_solar",
"forked_daapd",
"foscam",
"freebox",
"freedompro",
"fritz",
"fritzbox",
"fritzbox_callmonitor",
"fronius",
"frontier_silicon",
Add Fujitsu FGLair integration (#109335) * Add support for Fujitsu HVAC devices * Add the entity code to .coveragerc * Only include code that can fail in the try/except block Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Remove empty keys from manifest * Remove VERSION as it's already the default * Remve the get_devices function and use asyncio.gather to parallelize dev updates * Move initial step to a function * Let KeyError bubble up. If we are passed an invalid mode it's probably worth raising an exception. * Await the gather * Use the async version of the refresh_auth call * Use the serial number as unique id * Use HA constant for precision * Use dev instead of self._dev * Move to property decorated methods * Remove bidict dependency * Setup one config entry for our api credentials instead of per device * Remove bidict from requirements * Signout and remove our api object on unload * Use app credentials from ayla_iot_unofficial * Use entry_id as a key to store our API object * Delete unused code * Create reverse mappings from forward mapping instead of hardcoding them * Clean up the property methods * Only import part of config_entries we are using * Implement suggested changes * Fix tests to use new API consts * Add support for reauth * Use a coordinator instead of doing per-entity refresh * Auto is equivalent to HEAT_COOL not AUTO * Add ON and OFF to list of supported features * Use the mock_setup_entry fixture for the reauth tests * Parametrize testing of config flow exceptions * Only wrap fallable code in try/except * Add tests for coordinator * Use self.coordinator_context instead of self._dev.device_serial_number * Move timeout to ayla_iot_unofficial * Add description for is_europe field * Bump version of ayla-iot-unofficial * Remove turn_on/turn_off warning * Move coordinator creating to __init__ * Add the type of coordinator to the CoordiatorEntity * Update docstring for FujitsuHVACDevice constructor * Fix missed self._dev to dev * Abort instead of showing the form again with an error when usernames are different * Remove useless argument * Fix tests * Implement some suggestions * Use a device property the maps to the coordinator data * Fix api sign out when unloading the entry * Address comments * Fix device lookup * Move API sign in to coordinator setup * Get rid of FujitsuHVACConfigData * Fix async_setup_entry signature * Fix mock_ayla_api * Cleanup common errors * Add test to check that re adding the same account fails * Also patch new_ayla_api in __init__.py * Create a fixture to generate test devices * Add a setup_integration function that does the setup for a mock config entry * Rework unit tests for the coordinator * Fix typos * Use hass session * Rework reauth config flow to only modify password * Update name to be more use-friendly * Fix wrong type for entry in async_unload_entry * Let TimeoutError bubble up as teh base class handles it * Make the mock ayla api return some devices by default * Move test to test_climate.py * Move tests to test_init.py * Remove reauth flow * Remove useless mock setup * Make our mock devices look real * Fix tests * Rename fujitsu_hvac to fujitsu_fglair and rename the integration to FGLair * Add the Fujitsu brand * Add a helper function to generate an entity_id from a device * Use entity_id to remove hardcoded entity ids * Add a test to increase code coverage --------- Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> Co-authored-by: Erik Montnemery <erik@montnemery.com> Co-authored-by: Joostlek <joostlek@outlook.com>
2024-08-18 13:37:33 +00:00
"fujitsu_fglair",
"fully_kiosk",
Add Fyta integration (#110816) * Initial commit for fyta integration * Update __init__.py Delete BinarySensor for first PR * Update __init__.py Rewind wrongful deletion of comma * Delete homeassistant/components/fyta/binary_sensor.py Delete binary_sensor for first pr of integration * Update manifest.json Updated requirement to new version of fyta_cli 0.2.1, where bug in import of modules has been resolved. * Update requirements_test_all.txt adjust to updated manifest * Update requirements_all.txt adjust to updated manifest * Update test_config_flow.py * Update config_flow.py update file to correct error with _entry attribute * Fyta integration - update initial PR based on review in initial PR #110816 (#2) * adjustments to pass test for config_flow * backport of changes in intitial PR to dev * update text_config_flow * changes based on review in initial PR #110816 * Update homeassistant/components/fyta/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/strings.json Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> * Update homeassistant/components/fyta/strings.json Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> * Update homeassistant/components/fyta/manifest.json Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> * Adjustments based on PR-commet of Feb 19 (#3) * add test for config_flow.validate_input * update based on pr review * update based on pr review * further refinings based on PR review * Update tests/components/fyta/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update test_config_flow.py Update tests based on PR comment * Update homeassistant/components/fyta/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * add handling and test for duplicate entry * Update homeassistant/components/fyta/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update test_config_flow.py parametrize test for exceptions * Update config_flow.py Move _async_abort_entries_match, add arguments * Update coordinator.py * Update typing in coordinator.py * Update coordinator.py update typing * Update coordinator.py corrected typo * Update coordinator.py * Update entity.py * Update sensor.py * Update icons.json * Update homeassistant/components/fyta/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update entity.py * Update test_config_flow.py * Update config_flow.py (change FlowResult to ConfigFlowResult) * Update config_flow.py * Update homeassistant/components/fyta/config_flow.py Co-authored-by: Robert Resch <robert@resch.dev> * Update homeassistant/components/fyta/config_flow.py Co-authored-by: Robert Resch <robert@resch.dev> * Update homeassistant/components/fyta/coordinator.py Co-authored-by: Robert Resch <robert@resch.dev> * Update coordinator.py * Update config_flow.py (typing FlowResult -> ConfigFlowResult) * Update config_flow.py * Aktualisieren von config_flow.py * remove coordinator entities * Update strings.json remove plant_number * Update icons.json remove plant_number * Update manifest.json Update requirement to latest fyta_cli version * Update requirements_all.txt * Update requirements_test_all.txt * Update homeassistant/components/fyta/sensor.py * Update homeassistant/components/fyta/sensor.py * Update homeassistant/components/fyta/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/fyta/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/fyta/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/fyta/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * move test-helpers into conftest.py, adjust import of coordinator.py --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> Co-authored-by: Robert Resch <robert@resch.dev>
2024-03-15 17:13:35 +00:00
"fyta",
2022-03-21 03:38:13 +00:00
"garages_amsterdam",
"gardena_bluetooth",
2022-03-21 03:38:13 +00:00
"gdacs",
"generic",
"geniushub",
"geo_json_events",
"geocaching",
2022-03-21 03:38:13 +00:00
"geofency",
"geonetnz_quakes",
"geonetnz_volcano",
"gios",
"github",
"glances",
"goalzero",
"gogogate2",
"goodwe",
"google",
"google_assistant_sdk",
"google_cloud",
"google_generative_ai_conversation",
"google_mail",
"google_photos",
"google_sheets",
"google_tasks",
"google_translate",
2022-03-21 03:38:13 +00:00
"google_travel_time",
"govee_ble",
"govee_light_local",
2024-01-31 17:38:14 +00:00
"gpsd",
2022-03-21 03:38:13 +00:00
"gpslogger",
"gree",
"growatt_server",
"guardian",
"habitica",
"harmony",
"heos",
"here_travel_time",
2022-03-21 03:38:13 +00:00
"hisense_aehw4a1",
"hive",
"hko",
2022-03-21 03:38:13 +00:00
"hlk_sw16",
Add Holiday integration (#103795) * Add Holiday integration * Localize holiday names * Changes based on review feedback * Add tests * Add device info * Bump holidays to 0.36 * Default to Home Assistant country setting * Update homeassistant/components/holiday/calendar.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update homeassistant/components/holiday/calendar.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update homeassistant/components/holiday/config_flow.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * black * Move time * Stop creating duplicate holiday calendars * Set default language using python-holiday * Use common translation * Set _attr_name to None to fix friendly name * Fix location * Update homeassistant/components/holiday/__init__.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update homeassistant/components/holiday/calendar.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update homeassistant/components/holiday/calendar.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update tests/components/holiday/test_init.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * cleanup * Set up the integration and test the state * Test that configuring more than one instance is rejected * Set default_language to user's language, fallback to country's default language * Improve tests * Update homeassistant/components/holiday/calendar.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Cleanup * Add next year so we don't run out * Update tests/components/holiday/test_init.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Cleanup * Set default language in `__init__` * Add strict typing * Change default language: HA's language `en` is `en_US` in holidays, apart from Canada * CONF_PROVINCE can be None * Fix test * Fix default_language * Refactor tests * Province can be None * Add test for translated title * Address feedback * Address feedback * Change test to use service call * Address feedback * Apply suggestions from code review Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Changes based on review feedback * Update homeassistant/components/holiday/calendar.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update homeassistant/components/holiday/calendar.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Add a test if next event is missing * Rebase * Set device to service * Remove not needed translation key --------- Co-authored-by: G Johansson <goran.johansson@shiftit.se>
2023-12-03 15:28:53 +00:00
"holiday",
2022-03-21 03:38:13 +00:00
"home_connect",
"homeassistant_sky_connect",
2022-03-21 03:38:13 +00:00
"homekit",
"homekit_controller",
"homematicip_cloud",
"homewizard",
2024-03-04 18:09:39 +00:00
"homeworks",
2022-03-21 03:38:13 +00:00
"honeywell",
"html5",
2022-03-21 03:38:13 +00:00
"huawei_lte",
"hue",
"huisbaasje",
"hunterdouglas_powerview",
Add Husqvarna Automower integration (#109073) * Add Husqvarna Automower * Update homeassistant/components/husqvarna_automower/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/husqvarna_automower/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/husqvarna_automower/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/husqvarna_automower/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/husqvarna_automower/lawn_mower.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/husqvarna_automower/lawn_mower.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * address review * add test_config_non_unique_profile * add missing const * WIP tests * tests * tests * Update homeassistant/components/husqvarna_automower/api.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/husqvarna_automower/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/husqvarna_automower/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/husqvarna_automower/conftest.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * . * loop through test * Update homeassistant/components/husqvarna_automower/entity.py * Update homeassistant/components/husqvarna_automower/coordinator.py * Update homeassistant/components/husqvarna_automower/coordinator.py * Apply suggestions from code review * ruff --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-02-07 08:27:04 +00:00
"husqvarna_automower",
"husqvarna_automower_ble",
Add Huum integration (#106420) * Add Huum integration * Use DeviceInfo instead of name property for huum climate * Simplify entry setup for huum climate entry * Don’t take status as attribute for huum climate init * Remove unused import * Set unique id as entity id in huum init * Remove unused import for huum climate * Use entry ID as unique ID for device entity * Remove extra newline in huum climate * Upgrade pyhuum to 0.7.4 This version no longer users Pydantic * Parameterize error huum tests * Update all requirements after pyhuum upgrade * Use Huum specific naming for ConfigFlow * Use constants for username and password in huum config flow * Use constants for temperature units * Fix typing and pylint issues * Update pyhuum to 0.7.5 * Use correct enums for data entry flow in Huum tests * Remove test for non-thrown CannotConnect in huum flow tests * Refactor failure config test to also test a successful flow after failure * Fix ruff-format issues * Move _status outside of __init__ and type it * Type temperature argument for _turn_on in huum climate * Use constants for auth in huum config flow test * Refactor validate_into into a inline call in huum config flow * Refactor current and target temperature to be able to return None values * Remove unused huum exceptions * Flip if-statment in async_step_user flow setup to simplify code * Change current and target temperature to be more future proof * Log exception instead of error * Use custom pyhuum exceptions * Add checks for duplicate entries * Use min temp if no target temp has been fetched yet when heating huum * Fix tests so that mock config entry also include username and password * Fix ruff styling issues I don’t know why it keeps doing this. I run `ruff` locally, and then it does not complain, but CI must be doing something else here. * Remove unneded setting of unique id * Update requirements * Refactor temperature setting to support settings target temparature properly
2024-01-25 11:55:55 +00:00
"huum",
2022-03-21 03:38:13 +00:00
"hvv_departures",
Add config flow to Hydrawise (#95589) * Add config flow to Hydrawise * Raise an issue when a YAML config is detected * Add a test for YAML import * Add missing __init__.py * Update CODEOWNERS * Update requirements_test_all.txt * Add config flow data to strings.json * Hande scan_interval not being in YAML on import * Fix requirements * Update deprecation dates * Update requirements_test_all.txt * Changes from review * Update homeassistant/components/hydrawise/__init__.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Add already_configured to strings.json * Add back setup_platform functions * Apply suggestions from code review Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Add back setup_platform * Update requirements_test_all.txt * Run black on hydrawise/*.py * Add missing import of HOMEASSISTANT_DOMAIN * Use more specific errors in config flow * Add additional tests * Update config flow to use pydrawise.legacy * Re-work YAML deprecation issues * Revert some changes to binary_sensor, as requested in review * Changes requested during review * Apply suggestions from code review Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Remove unused STE_USER_DATA_SCHEMA Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update comment in setup_platform * Re-work the config flow again * Apply suggestions from code review Co-authored-by: G Johansson <goran.johansson@shiftit.se> * Update tests * Add back the _default_watering_timer attribute * Bump deprecation dates * Update requirements_test_all.txt * Update CODEOWNERS --------- Co-authored-by: G Johansson <goran.johansson@shiftit.se> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-23 22:03:07 +00:00
"hydrawise",
2022-03-21 03:38:13 +00:00
"hyperion",
"ialarm",
"iaqualink",
"ibeacon",
2022-03-21 03:38:13 +00:00
"icloud",
"idasen_desk",
2022-03-21 03:38:13 +00:00
"ifttt",
"imap",
"imgw_pib",
"improv_ble",
"incomfort",
2022-07-22 03:17:09 +00:00
"inkbird",
2022-03-21 03:38:13 +00:00
"insteon",
"intellifire",
"ios",
"iotawatt",
Add integration for iotty Smart Home (#103073) * Initial import 0.0.2 * Fixes to URL, and removed commits * Initial import 0.0.2 * Fixes to URL, and removed commits * Added first test for iotty * First release * Reviewers request #1 - Removed clutter - Added support for new naming convention for IottySmartSwitch entity * Removed commmented code * Some modifications * Modified REST EP for iotty CloudApi * Initial import 0.0.2 * Fixes to URL, and removed commits * Added first test for iotty * First release * Rebased and resolved conflicts * Reviewers request #1 - Removed clutter - Added support for new naming convention for IottySmartSwitch entity * Removed commmented code * Some modifications * Modified REST EP for iotty CloudApi * Removed empty entries in manifest.json * Added test_config_flow * Fix as requested by @edenhaus * Added test_init * Removed comments, added one assert * Added TEST_CONFIG_FLOW * Added test for STORE_ENTITY * Increased code coverage * Full coverage for api.py * Added tests for switch component * Converted INFO logs onto DEBUG logs * Removed .gitignore from commits * Modifications to SWITCH.PY * Initial import 0.0.2 * Fixes to URL, and removed commits * Added first test for iotty * First release * Rebased and resolved conflicts * Fixed conflicts * Reviewers request #1 - Removed clutter - Added support for new naming convention for IottySmartSwitch entity * Removed commmented code * Some modifications * Modified REST EP for iotty CloudApi * Removed empty entries in manifest.json * Added test_config_flow * Some modifications * Fix as requested by @edenhaus * Added test_init * Removed comments, added one assert * Added TEST_CONFIG_FLOW * Added test for STORE_ENTITY * Increased code coverage * Full coverage for api.py * Added tests for switch component * Converted INFO logs onto DEBUG logs * Removed .gitignore from commits * Modifications to SWITCH.PY * Fixed tests for SWITCH * First working implementation of Coordinator * Increased code coverage * Full code coverage * Missing a line in testing * Update homeassistant/components/iotty/__init__.py Co-authored-by: Robert Resch <robert@resch.dev> * Update homeassistant/components/iotty/__init__.py Co-authored-by: Robert Resch <robert@resch.dev> * Modified coordinator as per request by edenhaus * use coordinator entities for switches * move platforms to constants * fix whitespace with ruff-format * correct iotty entry in application_credentials list * minor style improvements * refactor function name * handle new and deleted devices * improve code for adding devices after first initialization * use typed config entry instead of adding known devices to hass.data * improve iotty entity removal * test listeners update cycle * handle iotty as devices and not only as entities * fix test typing for mock config entry * test with fewer mocks for an integration test style opposed to the previous unit test style * remove useless tests and add more integration style tests * check if device_to_remove is None * integration style tests for turning switches on and off * remove redundant coordinator tests * check device status after issuing command in tests * remove unused fixtures * add strict typing for iotty * additional asserts and named snapshots in tests * fix mypy issues after enabling strict typing * upgrade iottycloud version to 0.1.3 * move coordinator to runtime_data * remove entity name * fix typing issues * coding style fixes * improve tests coding style and assertion targets * test edge cases when apis are not working * improve tests comments and assertions --------- Co-authored-by: Robert Resch <robert@resch.dev> Co-authored-by: Shapour Nemati <shapour.nemati@iotty.com> Co-authored-by: Erik Montnemery <erik@montnemery.com> Co-authored-by: shapournemati-iotty <130070037+shapournemati-iotty@users.noreply.github.com>
2024-07-19 10:10:39 +00:00
"iotty",
2022-03-21 03:38:13 +00:00
"ipma",
"ipp",
"iqvia",
"iron_os",
"iskra",
2022-03-21 03:38:13 +00:00
"islamic_prayer_times",
"israel_rail",
2022-03-21 03:38:13 +00:00
"iss",
"ista_ecotrend",
2022-03-21 03:38:13 +00:00
"isy994",
2024-12-09 19:19:15 +00:00
"ituran",
2022-03-21 03:38:13 +00:00
"izone",
"jellyfin",
Add config flow to Jewish Calendar (#84464) * Initial commit * add basic tests (will probably fail) * Set basic UID for now * Various improvements * use new naming convention? * bit by bit, still not working tho * Add tz selection * Remove failing tests * update unique_id * add the tests again * revert to previous binary_sensor test * remove translations * apply suggestions * remove const.py * Address review * revert changes * Initial fixes for tests * Initial commit * add basic tests (will probably fail) * Set basic UID for now * Various improvements * use new naming convention? * bit by bit, still not working tho * Add tz selection * Remove failing tests * update unique_id * add the tests again * revert to previous binary_sensor test * remove translations * apply suggestions * remove const.py * Address review * revert changes * Fix bad merges in rebase * Get tests to run again * Fixes due to fails in ruff/pylint * Fix binary sensor tests * Fix config flow tests * Fix sensor tests * Apply review * Adjust candle lights * Apply suggestion * revert unrelated change * Address some of the comments * We should only allow a single jewish calendar config entry * Make data schema easier to read * Add test and confirm only single entry is allowed * Move OPTIONS_SCHEMA to top of file * Add options test * Simplify import tests * Test import end2end * Use a single async_forward_entry_setups statement * Revert schema updates for YAML schema * Remove unneeded brackets * Remove CONF_NAME from config_flow * Assign hass.data[DOMAIN][config_entry.entry_id] to a local variable before creating the sensors * Data doesn't have a name remove slugifying of it * Test that the entry has been created correctly * Simplify setup_entry * Use suggested values helper and flatten location dictionary * Remove the string for name exists as this error doesn't exist * Remove name from config entry * Remove _attr_has_entity_name - will be added in a subsequent PR * Don't override entity id's - we'll fixup the naming later * Make location optional - will by default revert to the user's home location * Update homeassistant/components/jewish_calendar/strings.json Co-authored-by: Erik Montnemery <erik@montnemery.com> * No need for local lat/long variable * Return name attribute, will deal with it in another PR * Revert unique_id changes, will deal with this in a subsequent PR * Add time zone data description * Don't break the YAML config until the user has removed it. * Cleanup initial config flow test --------- Co-authored-by: Tsvi Mostovicz <ttmost@gmail.com> Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-05-24 12:04:17 +00:00
"jewish_calendar",
"juicenet",
"justnimbus",
"jvc_projector",
2022-03-21 03:38:13 +00:00
"kaleidescape",
"keenetic_ndms2",
"kegtron",
"keymitt_ble",
2022-03-21 03:38:13 +00:00
"kmtronic",
"knocki",
2022-03-21 03:38:13 +00:00
"knx",
"kodi",
"konnected",
"kostal_plenticore",
"kraken",
"kulersky",
"lacrosse_view",
"lamarzocco",
"lametric",
"landisgyr_heat_meter",
"lastfm",
2022-03-21 03:38:13 +00:00
"launch_library",
"laundrify",
"lcn",
2023-01-06 02:15:03 +00:00
"ld2410_ble",
2024-01-24 08:08:20 +00:00
"leaone",
"led_ble",
Add lektrico integration (#102371) * Add Lektrico Integration * Make the changes proposed by Lash-L: new coordinator.py, new entity.py; use: translation_key, last_update_sucess, PlatformNotReady; remove: global variables * Replace FlowResult with ConfigFlowResult and add tests. * Remove unused lines. * Remove Options from condif_flow * Fix ruff and mypy. * Fix CODEOWNERS. * Run python3 -m script.hassfest. * Correct rebase mistake. * Make modifications suggested by emontnemery. * Add pytest fixtures. * Remove meaningless patches. * Update .coveragerc * Replace CONF_FRIENDLY_NAME with CONF_NAME. * Remove underscores. * Update tests. * Update test file with is and no config_entries. . * Set serial_number in DeviceInfo and add return type of the async_update_data to DataUpdateCoordinator. * Use suggested_unit_of_measurement for KILO_WATT and replace Any in value_fn (sensor file). * Add device class duration to charging_time sensor. * Change raising PlatformNotReady to raising IntegrationError. * Test the unique id of the entry. * Rename PF Lx with Power factor Lx and remove PF from strings.json. * Remove comment. * Make state and limit reason sensors to be enum sensors. * Use result variable to check unique_id in test. * Remove CONF_NAME from entry and __init__ from LektricoFlowHandler. * Remove session parameter from LektricoDeviceDataUpdateCoordinator. * Use config_entry: ConfigEntry in coordinator. * Replace Connected,NeedAuth with Waiting for Authentication. * Use lektricowifi 0.0.29. * Use lektricowifi 0.0.39 * Use lektricowifi 0.0.40 * Use lektricowifi 0.0.41 * Replace hass.data with entry.runtime_data * Delete .coveragerc * Restructure the user step * Fix tests * Add returned value of _async_update_data to class DataUpdateCoordinator * Use hw_version at DeviceInfo * Remove a variable * Use StateType * Replace friendly_name with device_name * Use sentence case in translation strings * Uncomment and fix test_discovered_zeroconf * Add type LektricoConfigEntry * Remove commented code * Remove the type of coordinator in sensor async_setup_entry * Make zeroconf test end in ABORT, not FORM * Remove all async_block_till_done from tests * End test_user_setup_device_offline with CREATE_ENTRY * Patch the full Device * Add snapshot tests * Overwrite the type LektricoSensorEntityDescription outside of the constructor * Test separate already_configured for zeroconf --------- Co-authored-by: mihaela.tarjoianu <mihaela.tarjoianu@scada.ro> Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-08-30 11:20:15 +00:00
"lektrico",
"lg_netcast",
"lg_soundbar",
"lg_thinq",
2022-09-20 15:51:29 +00:00
"lidarr",
2022-03-21 03:38:13 +00:00
"lifx",
"linear_garage_door",
"linkplay",
2022-03-21 03:38:13 +00:00
"litejet",
"litterrobot",
2022-11-07 13:40:23 +00:00
"livisi",
2022-11-30 20:20:21 +00:00
"local_calendar",
"local_file",
2022-03-21 03:38:13 +00:00
"local_ip",
"local_todo",
2022-03-21 03:38:13 +00:00
"locative",
"lookin",
2023-06-28 07:42:12 +00:00
"loqed",
2022-03-21 03:38:13 +00:00
"luftdaten",
Add ConfigFlow for Lupusec (#108740) * init support for config flow for lupusec * correctly iterate over BinarySensorDeviceClass values for device class * bump lupupy to 0.3.2 * Updated device info for lupusec * revert bump lupupy for separate pr * fixed lupusec test-cases * Change setup to async_setup * remove redundant check for hass.data.setdefault * init support for config flow for lupusec * correctly iterate over BinarySensorDeviceClass values for device class * bump lupupy to 0.3.2 * Updated device info for lupusec * revert bump lupupy for separate pr * fixed lupusec test-cases * Change setup to async_setup * remove redundant check for hass.data.setdefault * resolve merge error lupupy * connection check when setting up config entry * removed unique_id and device_info for separate pr * changed name to friendly name * renamed LUPUSEC_PLATFORMS to PLATFORMS * preparation for code review * necessary changes for pr * changed config access * duplicate entry check * types added for setup_entry and test_host_connection * removed name for lupusec system * removed config entry from LupusecDevice * fixes for sensors * added else block for try * added integration warning * pass config to config_flow * fix test cases for new config flow * added error strings * changed async_create_entry invocation * added tests for exception handling * use parametrize * use parametrize for tests * recover test * test unique id * import from yaml tests * import error test cases * Update tests/components/lupusec/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * fixed test case * removed superfluous test cases * self._async_abort_entries_match added * lib patching call * _async_abort_entries_match * patch lupupy lib instead of test connection * removed statements * test_flow_source_import_already_configured * Update homeassistant/components/lupusec/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * removed unique_id from mockentry * added __init__.py to .coveragerc --------- Co-authored-by: suaveolent <suaveolent@users.noreply.github.com> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-01-25 17:52:30 +00:00
"lupusec",
"lutron",
2022-03-21 03:38:13 +00:00
"lutron_caseta",
"lyric",
Add madvr envy integration (#120382) * feat: Add madvr envy * fix: await and pass entry directly * fix: add attributes and unique id for sensors * fix: reflect power state well, improve state detection * fix: don't connect on init, add options, add reload on change, keep on during test * fix: cancel tasks on unload * fix: test connection via library * fix: wait for boot time * docs: add readme and license * fix: broken pipe in lib * fix: detect out of band power off * fix: improve extra attributes * fix: fix unloading, add config flow test, limit to one platform * fix: use conf, refresh coordinator, other comments * fix: remove event data * fix: fix tests passing, remove wake on lan * fix: dont allow to proceed unless connection works * chore: update dep * fix: update config flow, add constants * fix: write state, use runtime data instead * fix: remove await * fix: move unloading and stuff to coordinator/init * fix: pass in config entry with correct type * fix: move queue and tasks to library * fix: config flow error flow, tests, name, and update lib * fix: update lib, leave connection open on setup * fix: update lib * fix: address comments, remove wol from lib * fix: remove unneeded options * fix: remove fields * fix: simplify code, address comments * fix: move error to lib * fix: fix test * fix: stronger types * fix: update lib * fix: missing text from options flow * chore: remove options flow * chore: remove import * chore: update comments * fix: get mac from device, persist * fix: add mac stuff to test * fix: startup import errors * chore: stale comment * fix: get mac from persisted config * chore: update lib * fix: persist mac in a better way * feat: use mac as unique ID for entry * fix: use unique ID from mac, add proper device * fix: will not be set in init potentially * fix: access mac * fix: optimize, move error to lib * feat: add coordinator test, use conf * fix: use one mock, add init test * fix: not async * feat: add remote test * fix: types * fix: patch client, expand remote tests * fix: use snapshot test * fix: update branding * fix: add description, fix type check * fix: update tests * fix: test * fix: update test * fix: camelcase * Fix * feat: strict typing * fix: strict typing in lib * fix: type will never be None * fix: reference to mac, all tests passing --------- Co-authored-by: Joostlek <joostlek@outlook.com>
2024-07-07 18:41:53 +00:00
"madvr",
2022-03-21 03:38:13 +00:00
"mailgun",
"mastodon",
"matter",
2024-06-21 09:04:55 +00:00
"mealie",
"meater",
"medcom_ble",
"media_extractor",
2022-03-21 03:38:13 +00:00
"melcloud",
"melnor",
2022-03-21 03:38:13 +00:00
"met",
"met_eireann",
"meteo_france",
"meteoclimatic",
"metoffice",
Add microBees integration (#99573) * Create a new homeassistan integration for microBees * black --fast homeassistant tests * Switch platform * rename folder * rename folder * Update owners * aiohttp removed in favor of hass * Update config_flow.py * Update __init__.py * Update const.py * Update manifest.json * Update string.json * Update servicesMicrobees.py * Update switch.py * Update __init__.py * Update it.json * Create a new homeassistan integration for microBees * black --fast homeassistant tests * Switch platform * rename folder * rename folder * Update owners * aiohttp removed in favor of hass * Update config_flow.py * Update __init__.py * Update const.py * Update manifest.json * Update string.json * Update servicesMicrobees.py * Update switch.py * Update __init__.py * Update it.json * fixes review * fixes review * fixes review * pyproject.toml * Update package_constraints.txt * fixes review * bug fixes * bug fixes * delete microbees connector * add other productID in switch * added coordinator and enanchments * added coordinator and enanchments * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * fixes from suggestions * add test * add test * add test * add test * requested commit * requested commit * requested commit * requested commit * reverting .strict-typing and added microbees to .coveragerc * remove log * remove log * remove log * remove log * add test for microbeesExeption and Exeption * add test for microbeesExeption and Exeption * add test for microbeesException and Exception * add test for microbeesException and Exception * add test for microbeesException and Exception --------- Co-authored-by: FedDam <noceracity@gmail.com> Co-authored-by: Federico D'Amico <48856240+FedDam@users.noreply.github.com>
2024-02-19 14:12:03 +00:00
"microbees",
2022-03-21 03:38:13 +00:00
"mikrotik",
"mill",
"minecraft_server",
"mjpeg",
"moat",
2022-03-21 03:38:13 +00:00
"mobile_app",
"modem_callerid",
"modern_forms",
"moehlenhoff_alpha2",
Add Monarch Money Integration (#124014) * Initial commit * Second commit - with some coverage but errors abount * Updated testing coverage * Should be just about ready for PR * Adding some error handling for wonky acocunts * Adding USD hardcoded as this is all that is currently supported i believe * updating snapshots * updating entity descrition a little * Addign cashflow in * adding aggregate sensors * tweak icons * refactor some type stuff as well as initialize the pr comment addressing process * remove empty fields from manifest * Update homeassistant/components/monarchmoney/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * move stuff * get logging out of try block * get logging out of try block * using Subscription ID as stored in config entry for unique id soon * new unique id * giving cashflow a better unique id * Moving subscription id stuff into setup of coordinator * Update homeassistant/components/monarchmoney/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * ruff ruff * ruff ruff * split ot value and balance sensors... need to go tos leep * removed icons * Moved summary into a data class * efficenty increase * Update homeassistant/components/monarchmoney/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/monarchmoney/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/monarchmoney/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/monarchmoney/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * refactor continues * removed a comment * forgot to add a little bit of info * updated snapshot * Updates to monarch money using the new typed/wrapper setup * backing lib update * fixing manifest * fixing manifest * fixing manifest * Version 0.2.0 * fixing some types * more type fixes * cleanup and bump * no check * i think i got it all * the last thing * update domain name * i dont know what is in this commit * The Great Renaming * Moving to dict style accounting - as per request * updating backing deps * Update homeassistant/components/monarch_money/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/monarch_money/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/monarch_money/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/monarch_money/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/monarch_money/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * some changes * fixing capitalizaton * test test test * Adding dupe test * addressing pr stuff * forgot snapshot * Fix * Fix * Update homeassistant/components/monarch_money/sensor.py --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-11 15:09:16 +00:00
"monarch_money",
2022-03-21 03:38:13 +00:00
"monoprice",
Add Monzo integration (#101731) * Initial monzo implementation * Tests and fixes * Extracted api to pypi package * Add app confirmation step * Corrected data path for accounts * Removed useless check * Improved tests * Exclude partially tested files from coverage check * Use has_entity_name naming * Bumped monzopy to 1.0.10 * Remove commented out code * Remove reauth from initial PR * Remove useless code * Correct comment * Remove reauth tests * Remove device triggers from intial PR * Set attr outside constructor * Remove f-strings where no longer needed in entity.py * Rename field to make clearer it's a Callable * Correct native_unit_of_measurement * Remove pot transfer service from intial PR * Remove reauth string * Remove empty fields in manifest.json * Freeze SensorEntityDescription and remove Mixin Also use list comprehensions for producing sensor lists * Use consts in application_credentials.py * Revert "Remove useless code" Apparently this wasn't useless This reverts commit c6b7109e47202f866c766ea4c16ce3eb0588795b. * Ruff and pylint style fixes * Bumped monzopy to 1.1.0 Adds support for joint/business/etc account pots * Update test snapshot * Rename AsyncConfigEntryAuth * Use dataclasses instead of dictionaries * Move OAuth constants to application_credentials.py * Remove remaining constants and dependencies for services from this PR * Remove empty manifest entry * Fix comment * Set device entry_type to service * ACC_SENSORS -> ACCOUNT_SENSORS * Make value_fn of sensors return StateType * Rename OAuthMonzoAPI again * Fix tests * Patch API instead of integration for unavailable test * Move pot constant to sensor.py * Improve type safety in async_get_monzo_api_data() * Update async_oauth_create_entry() docstring --------- Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-05-07 18:38:58 +00:00
"monzo",
2022-03-21 03:38:13 +00:00
"moon",
"mopeka",
2022-03-21 03:38:13 +00:00
"motion_blinds",
Add Motionblinds BLE integration (#109497) * initial fork * intial tests * Initial test coverage * extra coverage * complete config flow tests * fix generated * Update CODEOWNERS * Move logic to PyPi library and update to pass config_flow test and pre-commit * Remove Button, Select and Sensor platform for initial PR * Update manifest.json * Change info logs to debug in cover * Use _abort_if_unique_id_configured instead of custom loop checking existing entries * Change platforms list to PLATFORMS global Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Remove VERSION from ConfigFlow Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Replace all info logs by debug * Use instance attributes in ConfigFlow Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Add return type and docstring to init in ConfigFlow * Add recovery to tests containing errors * Make NoBluetoothAdapter and NoDevicesFound abort instead of show error * Change info logs to debug * Add and change integration type from hub to device * Use CONF_ADDRESS from homeassistant.const * Move cover attributes initialization out of constructor * Change CONF_ADDRESS in tests from const to homeassistant.const * Remove unused part of tests * Change 'not motion_device' to 'motion_device is None' * Change _attr_connection_type to _connection_type * Add connections to DeviceInfo * Add model to DeviceInfo and change MotionBlindType values * Remove identifiers from DeviceInfo * Move constants from const to library * Move calibration and running to library, re-add all platforms * Remove platforms from init * Remove button platform * Remove select platform * Remove sensor platform * Bump motionblindsble to 0.0.4 * Remove closed, opening and closing attribute default values Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Remove CONFIG_SCHEMA from init Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> * Remove unused platform attributes and icons * Re-add _attr_is_closed to GenericBlind to fix error * Use entry.async_create_background_task for library instead of entry.async_create_task * Move updating of position on disconnect to library * Remove type hints, keep for _attr_is_closed * Use DISPLAY_NAME constant from library for display name * Add TYPE_CHECKING condition to assert in config_flow * Re-add CONFIG_SCHEMA to __init__ to pass hassfest * Change FlowResult type to ConfigFlowResult * Fix import in tests * Fix ruff import * Fix tests by using value of enum * Use lowercase name of MotionBlindType enum for data schema selector and translation * Fix using name instead of value for MotionBlindType * Improve position None handling Co-authored-by: starkillerOG <starkiller.og@gmail.com> * Improve tilt None handling Co-authored-by: starkillerOG <starkiller.og@gmail.com> * Change BLIND_TO_ENTITY_TYPE name * Set entity name of cover to None and use DeviceInfo name * Add base entity * Move async_update to base entity * Move unique ID with suffix to base class * Add entity.py to .coveragerc * Remove extra state attribute connection type * Remove separate line hass.data.setdefault(DOMAIN, {}) * Remove use of field for key and translation_key in MotionCoverEntityDescription * Remove entity translation with extra state_attributes from strings.json * Use super().__init__(device, entry) Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Change if block in async_update_running * Use if blocks in async_update_position * Add additional scanner check before show_form * Remove default value of device_class in MotionCoverEntityDescription * Fix entry.data[CONF_BLIND_TYPE] uppercase * Fix device info model name * Bump motionblindsble to 0.0.5 * Fix tests * Move entity_description to MotionblindsBLEEntity * Change double roller blind name * Bump motionblindsble to 0.0.6 * Fix ruff * Use status_query for async_update * Bump motionblindsble to 0.0.7 * Change bluetooth local name * Set kw_only=True for dataclass * Change name of GenericBlind * Change scanner_count conditional * Wrap async_register_callback in entry.async_on_unload * Bump motionblindsble to 0.0.8 * Use set_create_task_factory and set_call_later_factory * Update bluetooth.py generated * Simplify COVER_TYPES dictionary * Move registering callbacks to async_added_to_hass * Remove check for ATTR_POSITION and ATTR_TILT_POSITION in kwargs * Add naming consistency for device and entry * Use if block instead of ternary for _attr_unique_id * Improve errors ternary in config_flow * Use set instead of list for running_type * Improve errors ternary in config_flow * Remove init from MotionblindsBLECoverEntity and move debug log to async_added_to_hass * Update debug log create cover * Fix ruff * Use identity check instead of equals * Use identity check instead of equals * Change MotionblindsBLECoverEntityDescription name * Change debug log text * Remove ATTR_CONNECTION from const * Add types for variables in async_setup_entry * Add types for variables in async_setup_entry * Change PositionBlind class name to PositionCover etc * Improve docstrings * Improve docstrings --------- Co-authored-by: starkillerOG <starkiller.og@gmail.com> Co-authored-by: Josef Zweck <24647999+zweckj@users.noreply.github.com> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-03-26 08:52:04 +00:00
"motionblinds_ble",
2022-03-21 03:38:13 +00:00
"motioneye",
Add integration for Vogel's MotionMount (#103498) * Skeleton for Vogel's MotionMount support. * Generated updates. * Add validation of the discovered information. * Add manual configuration * Use a mac address as a unique id * Add tests for config_flow * Add a 'turn' sensor entity. * Add all needed sensors. * Add number and select entity for control of MotionMount * Update based on development checklist * Preset selector now updates when a preset is chosen * Fix adding presets selector to device * Remove irrelevant TODO * Bump python-MotionMount requirement * Invert direction of turn slider * Prepare for PR * Make sure entities have correct values when created * Use device's mac address as unique id for entities. * Fix missing files in .coveragerc * Remove typing ignore from device library. Improved typing also gave rise to the need to improve the callback mechanism * Improve typing * Convert property to shorthand form * Remove unneeded CONF_NAME in ConfigEntry * Add small comment * Refresh coordinator on notification from MotionMount * Use translation for entity * Bump python-MotionMount * Raise `ConfigEntryNotReady` when connect fails * Use local variable * Improve exception handling * Reduce duplicate code * Make better use of constants * Remove unneeded callback * Remove other occurrence of unneeded callback * Improve removal of suffix * Catch 'getaddrinfo' exception * Add config flow tests for invalid hostname * Abort if device with same hostname is already configured * Make sure we connect to a device with the same unique id as configured * Convert function names to snake_case * Remove unneeded commented-out code * Use tuple * Make us of config_entry id when mac is missing * Prevent update of entities when nothing changed * Don't store data in `hass.data` until we know we will proceed * Remove coordinator * Handle situation where mac is EMPTY_MAC * Disable polling * Fix failing hassfest * Avoid calling unique-id-less discovery handler for situations where we've an unique id
2023-12-22 11:04:58 +00:00
"motionmount",
2024-07-07 12:54:29 +00:00
"mpd",
2022-03-21 03:38:13 +00:00
"mqtt",
"mullvad",
"music_assistant",
2022-03-21 03:38:13 +00:00
"mutesync",
"mysensors",
Add config flow to mystrom (#74719) * rebase * fixed review comments * fix test * Update tests * increase test coverage * implement some review comments * Enhance device check for old FWs and add tests * Reworked exception handling * small code optimizations * fix test * Increase test coverage * Update __init__.py changed from hass.config_entries.async_setup_platforms(entry, PLATFORMS) to await hass.config_entries.async_forward_entry_setups(entry, PLATFORMS) * Update __init__.py remove spaces * Bump python-mystrom to 2.2.0 * Migrate to get_device_info from python-mystrom * Migrate to get_device_info from python-mystrom * Update __init__.py * update requirements_all.txt * update config_flow * fix tests * Update homeassistant/components/mystrom/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Implemented review changes * increase test coverage * Implemented user defined title * implemented user defined title * Additional review comments * fix test * fix linter * fix linter * Update homeassistant/components/mystrom/models.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * fix review comments * fix missing import * simplify * Update homeassistant/components/mystrom/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/mystrom/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/mystrom/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/mystrom/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/mystrom/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_init.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_init.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_init.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_init.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/mystrom/light.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/mystrom/switch.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * fix review comments * fix review comments * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * fix review comment * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/mystrom/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> --------- Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-06 12:16:27 +00:00
"mystrom",
"myuplink",
2022-03-21 03:38:13 +00:00
"nam",
"nanoleaf",
Add NASweb integration (#98118) * Add NASweb integration * Fix DeviceInfo import * Remove commented out code * Change class name for uniquness * Drop CoordinatorEntity inheritance * Rename class Output to more descriptive: RelaySwitch * Update required webio-api version * Implement on-the-fly addition/removal of entities * Set coordinator name matching device name * Set entities with too old status as unavailable * Drop Optional in favor of modern typing * Fix spelling of a variable * Rename commons to more fitting name: helper * Remove redundant code * Let unload fail when there is no coordinator * Fix bad docstring * Rename cord to coordinator for clarity * Remove default value for pop and let it raise exception * Drop workaround and use get_url from helper.network * Use webhook to send data from device * Deinitialize coordinator when no longer needed * Use Python formattable string * Use dataclass to store integration data in hass.data * Raise ConfigEntryNotReady when appropriate * Refactor NASwebData class * Move RelaySwitch to switch.py * Fix ConfigFlow tests * Create issues when entry fails to load * Respond when correctly received status update * Depend on webhook instead of http * Create issue when status is not received during entry set up * Make issue_id unique across integration entries * Remove unnecessary initializations * Inherit CoordinatorEntity to avoid code duplication * Optimize property access via assignment in __init__ * Use preexisting mechanism to fill schema with user input * Fix translation strings * Handle unavailable or unreachable internal url * Implement custom coordinator for push driven data updates * Move module-specific constants to respective modules * Fix requirements_all.txt * Fix CODEOWNERS file * Raise ConfigEntryError instead of issue creation * Fix entity registry import * Use HassKey as key in hass.data * Use typed ConfigEntry * Store runtime data in config entry * Rewrite to be more Pythonic * Move add/remove of switch entities to switch.py * Skip unnecessary check * Remove unnecessary type hints * Remove unnecessary nonlocal * Use a more descriptive docstring * Add docstrings to NASwebCoordinator * Fix formatting * Use correct return type * Fix tests to align with changed code * Remove commented code * Use serial number as config entry id * Catch AbortFlow exception * Update tests to check ConfigEntry Unique ID * Remove unnecessary form abort
2024-11-08 11:03:32 +00:00
"nasweb",
2022-03-21 03:38:13 +00:00
"neato",
"nest",
"netatmo",
"netgear",
"netgear_lte",
2022-03-21 03:38:13 +00:00
"nexia",
2023-09-19 15:10:29 +00:00
"nextbus",
"nextcloud",
"nextdns",
2022-03-21 03:38:13 +00:00
"nfandroidtv",
"nibe_heatpump",
"nice_go",
2022-03-21 03:38:13 +00:00
"nightscout",
"niko_home_control",
2022-03-21 03:38:13 +00:00
"nina",
"nmap_tracker",
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 08:11:40 +00:00
"nobo_hub",
2024-11-08 14:10:51 +00:00
"nordpool",
2022-03-21 03:38:13 +00:00
"notion",
"nuheat",
"nuki",
"nut",
"nws",
"nyt_games",
2022-03-21 03:38:13 +00:00
"nzbget",
Add Config Flow to Obihai (#88627) * Obihai: Config Flow Only * Remove reboot service * Update .coveragerc Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * PR Feedback * Use Issue Registry * Add config_flow tests * Another pass with pre-commit * Resolve cyclical import and move sensorClasses to sensor * Update homeassistant/components/obihai/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/obihai/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/obihai/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/obihai/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Another round of feedback * More PR feedback * Offline testing, already_configured is required * Update homeassistant/components/obihai/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/obihai/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/obihai/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Cleanup * Update homeassistant/components/obihai/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * PR feedback * Backout today's changes: Fix mypy error * Update tests/components/obihai/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/obihai/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/obihai/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update tests/components/obihai/test_config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Don't plan ahead * PR feedback * Update homeassistant/components/obihai/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Cleanup strings --------- Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-02-27 16:22:15 +00:00
"obihai",
2022-03-21 03:38:13 +00:00
"octoprint",
"ollama",
2022-03-21 03:38:13 +00:00
"omnilogic",
"oncue",
"ondilo_ico",
"onewire",
"onkyo",
2022-03-21 03:38:13 +00:00
"onvif",
"open_meteo",
"openai_conversation",
"openexchangerates",
2022-03-21 03:38:13 +00:00
"opengarage",
"openhome",
"opensky",
2022-03-21 03:38:13 +00:00
"opentherm_gw",
"openuv",
"openweathermap",
"opower",
"oralb",
"osoenergy",
"otbr",
"otp",
"ourgroceries",
2022-03-21 03:38:13 +00:00
"overkiz",
"ovo_energy",
"owntracks",
"p1_monitor",
"palazzetti",
2022-03-21 03:38:13 +00:00
"panasonic_viera",
Add PECO power outage counter integration (#65194) * Create a new NWS Alerts integration * Create a new NWS Alerts integration * Create new PECO integration * Remove empty keys * Revert "Create a new NWS Alerts integration" This reverts commit 38309c5a878d78f26df56a62e56cb602d9dc9a9e. * Revert "Create a new NWS Alerts integration" This reverts commit aeabdd37b86c370bdb8009e885806bdac6e464d8. * Fix test with new mock data * Add init and sensor to .coveragerc and more tests for config flow * Small fixes and replacing patch with pytest.raises in testing invalid county * Add type defs and fix test_config_flow to use MultipleValid instead * Fix issues with 'typing.Dict' * Move API communication to seperate PyPI library * Switch PyPI library from httpx to aiohttp to allow for passing in websessions * Commit file changes requested by farmio as listed here: https://github.com/home-assistant/core/pull/65194/files/d267e4300a4d359d88ef33e43b66d0e961ac154d * Add suggestions requested by farmio as listed here: https://github.com/home-assistant/core/pull/65194/files/586d8ffa42d7860d91e25fb82b2d6eace6645a82 * Move native_unit_of_measurement from prop to attr * Update PLATFORMS constant type annotation Co-authored-by: Matthias Alphart <farmio@alphart.net> * Add peco to .strict-typing I am from school so I can't run mypy atm * Forgot to import Final * Do as requested [here](https://github.com/home-assistant/core/runs/5070634928?check_suite_focus=true) * Updated mypy.ini, checks should pass now * Fix to conform to mypy restrictions https://github.com/home-assistant/core/runs/5072861837\?check_suite_focus\=true * Fix type annotations * Fix tests * Use cast in async_update_data * Add data type to CoordinatorEntity and DataUpdateCoordinator * More cleanup from suggestions here: https://github.com/home-assistant/core/pull/65194\#pullrequestreview-908183493 * Fix tests for new code * Cleaning up a speck of dust * Remove unused variable from the peco sensor * Add rounding to percentage, and extra clean-up * Final suggestions from @farmio * Update SCAN_INTERVAL to be a little bit faster * Change the SCAN_INTERVAL to be somewhat near the update interval of the outage map, as noted by farmio * New UpdateCoordinator typing
2022-03-21 22:56:53 +00:00
"peco",
2023-07-26 07:12:39 +00:00
"pegel_online",
"permobil",
2022-03-21 03:38:13 +00:00
"philips_js",
"pi_hole",
"picnic",
2023-11-17 19:30:30 +00:00
"ping",
2022-03-21 03:38:13 +00:00
"plaato",
"plex",
"plugwise",
"plum_lightpad",
"point",
"poolsense",
2024-12-03 23:35:50 +00:00
"powerfox",
2022-03-21 03:38:13 +00:00
"powerwall",
"private_ble_device",
2022-03-21 03:38:13 +00:00
"profiler",
"progettihwsw",
"prosegur",
"proximity",
"prusalink",
2022-03-21 03:38:13 +00:00
"ps4",
"pure_energie",
2022-12-13 03:32:11 +00:00
"purpleair",
"pushbullet",
"pushover",
2022-03-21 03:38:13 +00:00
"pvoutput",
"pvpc_hourly_pricing",
"pyload",
Add config flow to qBittorrent (#82560) * qbittorrent: implement config_flow Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: add English translations Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: create sensors with config_flow Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: set unique_id and icon Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: add tests for config_flow Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: detect duplicate config entries Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: import YAML config Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: update coveragerc Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> * qbittorrent: delete translations file * create `deprecated_yaml` issue in `setup_platform` * move qbittorrent test fixtures to conftest.py * improve code quality & remove wrong unique_id * keep PLATFORM_SCHEMA until YAML support is removed * remove CONF_NAME in config entry, fix setup_entry * improve test suite * clean up QBittorrentSensor class * improve user flow tests * explicit result assertion & minor tweaks in tests Co-authored-by: epenet <epenet@users.noreply.github.com> * implement entry unloading Co-authored-by: epenet <epenet@users.noreply.github.com> * add type hints * tweak config_flow data handling --------- Signed-off-by: Chris Xiao <30990835+chrisx8@users.noreply.github.com> Co-authored-by: epenet <epenet@users.noreply.github.com>
2023-03-29 20:13:41 +00:00
"qbittorrent",
"qingping",
Add config_flow to QNAP (#80450) * Create config_flow.py * Update __init__.py * Create const.py * Create strings.json * Update sensor.py * Update manifest.json * Update manifest.json * Add device name to entities * Correcting health sensor * Update manifest.json * Adding integration_type * Update sensor.py * Update __init__.py * Enums * Update sensor.py * Removed unused notify_create * Switch to SensorDeviceClass.TEMPERATURE * Update enums * Remove SENSOR_TYPES from const.py * Add SENSOR_TYPES to sensor.py * Removed dependancies * Removed import yaml * Removed entity_registry_enabled_default * Update const.py remove dups * Update manifest.json removed dups * Update __init__.py * Update const.py * Update manifest.json * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py remove unused * Update sensor.py add docstring * Update sensor.py add super * Remove FOLDER sensors * Remove VOLUME_NAME * fix cli * fix cli * Add config flow tests * Update requirements_test_all.txt * Update CODEOWNERS * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update __init__.py Change unload to walrus Remove async_setup * Update const.py remove PLATFORMS * Update __init__.py add Platform Enum As per epenet * Update __init__.py * Update config_flow.py * Update sensor.py * Update __init__.py ruff * Update config_flow.py Ruff * Update sensor.py * Update const.py remove attrs * Update sensor.py add attrs * Revert tuple for sensor extend * Update sensor.py * Update coordinator.py * Update coordinator.py * Update sensor.py * Update coordinator.py * Update homeassistant/components/qnap/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/__init__.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update coordinator.py * Update __init__.py * Update coordinator.py * Update sensor.py * Add device_info * Update sensor.py * Update sensor.py self._attr_unique_id * Update sensor.py * Update sensor.py * Type Hints * Move tuples * Drive sensor name * Remove caps * Remove caps * Add YAML import * Update sensor.py fix ruff * Revert tuples * Update sensor.py as per review * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * Update sensor.py * assert uid is not None * Update homeassistant/components/qnap/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/sensor.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update .coveragerc Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/config_flow.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update homeassistant/components/qnap/const.py Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: epenet <6771947+epenet@users.noreply.github.com> * Update sensor.py * Update config_flow.py add imports * Update const.py * Update sensor.py move confs to const * Update config_flow.py add const * Update test_config_flow.py remove const name * Update test_config_flow.py remove standard result const * Update test_config_flow.py * Combine tests * Update test_config_flow.py * Update config_flow.py * Update test_config_flow.py * Update config_flow.py * Update test_config_flow.py * Update test_config_flow.py * Update sensor.py change UID as requested * Update sensor.py added check for monitor_device * fix tests * Remove rounding * Revert "Remove rounding" This reverts commit 61bf653c069d37cd7c20e3dd2f555f80b6e5d94f. --------- Co-authored-by: starkillerOG <starkiller.og@gmail.com> Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2023-06-27 15:42:27 +00:00
"qnap",
"qnap_qsw",
Add new Rabbit Air integration (#66130) * Add new Rabbit Air integration * Remove py.typed file It is not needed and was just accidentally added to the commit. * Enable strict type checking for rabbitair component Keeping the code fully type hinted is a good idea. * Add missing type annotations * Remove translation file * Prevent data to be added to hass.data if refresh fails * Reload the config entry when the options change * Add missing type parameters for generics * Avoid using assert in production code * Move zeroconf to optional dependencies * Remove unnecessary logging Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Remove unused keys from the manifest Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Replace property with attr Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Allow to return None for power The type of the is_on property now allows this. Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Remove unnecessary method call Co-authored-by: Franck Nijhof <frenck@frenck.nl> * Update the python library The new version properly re-exports names from the package root. * Remove options flow Scan interval should not be part of integration configuration. This was the only option, so the options flow can be fully removed. * Replace properties with attrs * Remove multiline ternary operator * Use NamedTuple for hass.data * Remove unused logger variable * Move async_setup_entry up in the file * Adjust debouncer settings to use request_refresh * Prevent status updates during the cooldown period * Move device polling code to the update coordinator * Fix the problem with the switch jumping back and forth The UI seems to have a timeout of 2 seconds somewhere, which is just a little bit less than what we normally need to get an updated state. So the power switch would jump to its previous state and then immediately return to the new state. * Update the python library The new version fixes errors when multiple requests are executed simultaneously. * Fix incorrect check for pending call in debouncer This caused the polling to stop. * Fix tests * Update .coveragerc to exclude new file. * Remove test for Options Flow. * Update the existing entry when device access details change * Add Zeroconf discovery step * Fix tests The ZeroconfServiceInfo constructor now requires one more argument. * Fix typing for CoordinatorEntity * Fix signature of async_turn_on * Fix depreciation warnings * Fix manifest formatting * Fix warning about debouncer typing relates to 5ae5ae5392729b4c94a8004bd02e147d60227341 * Wait for config entry platform forwards * Apply some of the suggested changes * Do not put the MAC address in the title. Use a fixed title instead. * Do not format the MAC to use as a unique ID. * Do not catch exceptions in _async_update_data(). * Remove unused _entry field in the base entity class. * Use the standard attribute self._attr_is_on to keep the power state. * Store the MAC in the config entry data * Change the order of except clauses OSError is an ancestor class of TimeoutError, so TimeoutError should be handled first * Fix depreciation warnings * Fix tests The ZeroconfServiceInfo constructor arguments have changed. * Fix DeviceInfo import * Rename the method to make it clearer what it does * Apply suggestions from code review * Fix tests * Change speed/mode logic to use is_on from the base class * A zero value is more appropriate than None since None means "unknown", but we actually know that the speed is zero when the power is off. --------- Co-authored-by: Franck Nijhof <frenck@frenck.nl> Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-01-05 15:34:28 +00:00
"rabbitair",
2022-03-21 03:38:13 +00:00
"rachio",
2022-09-23 02:16:24 +00:00
"radarr",
2022-03-21 03:38:13 +00:00
"radio_browser",
2022-06-05 23:59:52 +00:00
"radiotherm",
"rainbird",
2022-03-21 03:38:13 +00:00
"rainforest_eagle",
Add Rainforest RAVEn integration (#80061) * Add Rainforest RAVEn integration * Add Rainforest Automation brand * Add diagnostics to Rainforest RAVEn integration * Drop a test assertion for an undefined behavior * Add DEVICE_NAME test constant * Catch up with reality * Use Platform.SENSOR Co-authored-by: Robert Resch <robert@resch.dev> * Make rainforest_raven translatable * Stop setting device_class on unsupported scenarios * Rename rainforest_raven.data -> rainforest_raven.coordinator * Make _generate_unique_id more reusable * Move device synchronization into third party library * Switch from asyncio_timeout to asyncio.timeout * Ignore non-electric meters Co-authored-by: Robert Resch <robert@resch.dev> * Drop direct dependency on iso4217, bump aioraven * Use RAVEn-specific exceptions * Add timeouts to data updates * Move DeviceInfo generation from Sensor to Coordinator * Store meter macs as strings * Convert to using SelectSelector * Drop test_flow_user_invalid_mac This test isn't necessary now that SelectSelector is used. * Implement PR feedback - Split some long format lines - Simplify meter mac_id extraction in diagnostics - Expose unique_id using an attribute instead of a property - Add a comment about the meters dictionary shallow copy Co-authored-by: Erik Montnemery <erik@montnemery.com> * Simplify mac address redaction Co-authored-by: Joakim Sørensen <ludeeus@ludeeus.dev> * Freeze RAVEnSensorEntityDescription dataclass Co-authored-by: Erik Montnemery <erik@montnemery.com> --------- Co-authored-by: Robert Resch <robert@resch.dev> Co-authored-by: Erik Montnemery <erik@montnemery.com> Co-authored-by: Joakim Sørensen <ludeeus@ludeeus.dev>
2024-01-05 13:00:54 +00:00
"rainforest_raven",
2022-03-21 03:38:13 +00:00
"rainmachine",
"rapt_ble",
2022-03-21 03:38:13 +00:00
"rdw",
"recollect_waste",
"refoss",
2022-03-21 03:38:13 +00:00
"renault",
Renson integration (#56374) * Implemented Renson integration * - renamed component to a better name - Made cleaner code by splitting up files into different one - Fixed issues regarding getting data from library - Added service.yaml file * Added Renson services * cleanup translations * added config_flow tests * changed config_flow, removed all services * use SensorEntityDescription + introduced new binarySensor * fixed config_flow test * renamed renson_endura_delta to renson * refactored sensors and implemented binary_sensor * Changed some sensors to non measurement and added entity_registery_enabled_default for config sensors * Enabled binary_sensor * changed import to new renamed module * Merge files into correct files + cleaned some code * Change use of EntityDescription * Update codeowners * Fixed lint issues * Fix sensor * Create test.yml * Update test.yml * add github action tests * Format json files * Remove deprecated code * Update homeassistant/components/renson/binary_sensor.py Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io> * Use Coordinqte in Sensor * Migrated binary sensor to use coordinate * Removed firmwareSensor * Add entity_catogory to binary_sensor * Add services * Revert "Add services" This reverts commit 028760d8d8454ce98cf14eed0c7927d228ccd5e6. * update requirements of Renson integration * Add services and fan * Fixed some issue + fixed PR comments * Cleanup code * Go back 2 years ago to the bare minimum for PR approval * Refactored code and added a lot of device classes to the entities * Fix some bugs * Add unique Id and some device class * Show the level value for CURRENT_LEVEL_FIELD instead of the raw data * Remove FILTER_PRESET_FIELD for now * Make the _attr_unique_id unique * Changed Renson tests * Moved Renson hass data into @dataclass * Changed test + added files to .coveragerc * Add device_class=SensorDeviceClass.Duration * Fix syntax --------- Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io> Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-06-10 07:21:33 +00:00
"renson",
"reolink",
2022-03-21 03:38:13 +00:00
"rfxtrx",
"rhasspy",
2022-03-21 03:38:13 +00:00
"ridwell",
"ring",
"risco",
"rituals_perfume_genie",
Add new Roborock Integration (#89456) * init roborock commit * init commit of roborock * removed some non-vacuum related code * removed some non-needed constants * removed translations * removed options flow * removed manual control * remove password login * removed go-to * removed unneeded function and improved device_stat * removed utils as it is unused * typing changes in vacuum.py * fixed test patch paths * removed unneeded records * removing unneeded code in tests * remove password from strings * removed maps in code * changed const, reworked functions * remove menu * fixed tests * 100% code coverage config_flow * small changes * removed unneeded patch * bump to 0.1.7 * removed services * removed extra functions and mop * add () to configEntryNotReady * moved coordinator into seperate file * update roborock testing * removed stale options code * normalize username for unique id * removed unneeded variables * fixed linter problems * removed stale comment * additional pr changes * simplify config_flow * fix config flow test * Apply suggestions from code review Co-authored-by: Allen Porter <allen.porter@gmail.com> * First pass at resolving PR comments * reworked config flow * moving vacuum attr * attempt to clean up conflig flow more * update package and use offline functionality * Fixed errors and fan bug * rework model and some other small changes * bump version * used default factory * moved some client creation into coord * fixed patch * Update homeassistant/components/roborock/coordinator.py Co-authored-by: Allen Porter <allen.porter@gmail.com> * moved async functions into gather * reworked gathers * removed random line * error catch if networking doesn't exist or timeout * bump to 0.6.5 * fixed mocked data reference url * change checking if we have no network information Co-authored-by: Allen Porter <allen.porter@gmail.com> --------- Co-authored-by: Allen Porter <allen.porter@gmail.com> Co-authored-by: Allen Porter <allen@thebends.org>
2023-04-20 14:02:58 +00:00
"roborock",
2022-03-21 03:38:13 +00:00
"roku",
"romy",
2022-03-21 03:38:13 +00:00
"roomba",
"roon",
"rova",
2022-03-21 03:38:13 +00:00
"rpi_power",
"rtsp_to_webrtc",
"ruckus_unleashed",
"russound_rio",
"ruuvi_gateway",
2022-11-09 14:35:30 +00:00
"ruuvitag_ble",
"rympro",
"sabnzbd",
2022-03-21 03:38:13 +00:00
"samsungtv",
"sanix",
"schlage",
"scrape",
2022-03-21 03:38:13 +00:00
"screenlogic",
"season",
"sense",
"sensibo",
"sensirion_ble",
"sensorpro",
"sensorpush",
"sensoterra",
2022-03-21 03:38:13 +00:00
"sentry",
2022-04-14 22:29:31 +00:00
"senz",
Add ConfigFlow for seventeentrack integration (#111196) * Add config flow to 17Track * Import config from configuration.yaml * 1. move import to async_setup_platform 2. add USERNAME (email) in title for uniqueness * Add options flow * Add tests * Add CONF_SHOW_ARCHIVED and CONF_SHOW_DELIVERED to data from options * Update homeassistant/components/seventeentrack/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/manifest.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/config_flow.py Co-authored-by: Christopher Fenner <9592452+CFenner@users.noreply.github.com> * Update homeassistant/components/seventeentrack/__init__.py Co-authored-by: Christopher Fenner <9592452+CFenner@users.noreply.github.com> * Update homeassistant/components/seventeentrack/sensor.py Co-authored-by: Christopher Fenner <9592452+CFenner@users.noreply.github.com> * 1. Added repair issues 2. _async_validate_input inlined 3. added unique id 4. take default scan interval * fix * 1. move async_create_issue to async_setup_platform 2. fix tests 3. black + pylint * combine USER_SCHEMA and OPTIONS_SCHEMA * small fix * remove async_setup * fix tests and add 100% coverage * 1. remove CONFIG_SCHEMA 2. remove error log 3. add issue with more description when import issues happen 4. some linting * Update homeassistant/components/seventeentrack/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * use freezer use AsyncMock fix tests * add test_flow_fails parametrize tests where needed test_import_flow_already_configured - where a unique id already configured (abort flow) * lint * fix rebase issues * some more fix * 17Track revert tests and put them in a different PR * adapt tests to MockConfigEntry * Update tests/components/seventeentrack/test_sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/seventeentrack/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/seventeentrack/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * 1. create fixture for config and another with options 2. set options with default values 3. remove CONFIG_SCHEMA * Update tests/components/seventeentrack/conftest.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/seventeentrack/conftest.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * 1. get options from import data and default if not present 2. rename mock_config_entry_no_options -> mock_config_entry_with_default_options * move ACCOUNT_ID to mock_seventeentrack_api.return_value.profile.account_id * Apply suggestions from code review * Update tests/components/seventeentrack/test_config_flow.py --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> Co-authored-by: Christopher Fenner <9592452+CFenner@users.noreply.github.com>
2024-03-11 11:47:39 +00:00
"seventeentrack",
"sfr_box",
2022-03-21 03:38:13 +00:00
"sharkiq",
"shelly",
"shopping_list",
"sia",
Add SimpleFIN integration (#108336) * reset to latest dev branch * Update homeassistant/components/simplefin/sensor.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * formatting tweak * Removed info errors * fix bad billing error message * addressing PR * addressing PR * reauth abort and already_confiugred added to strings.json * adding the reauth message * ruff * update reqs * reset to latest dev branch * Update homeassistant/components/simplefin/sensor.py Co-authored-by: Erik Montnemery <erik@montnemery.com> * formatting tweak * Removed info errors * fix bad billing error message * addressing PR * addressing PR * reauth abort and already_confiugred added to strings.json * adding the reauth message * ruff * update reqs * Update homeassistant/components/simplefin/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Addressing a few PR comments - removing nix - and adding runtime data * updated comments * rename config flow * pulling reauth :( - inline stuff * inline more * fixed a tab issue * reverting changes * various PR updates and code removal * generator async add * Update homeassistant/components/simplefin/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/simplefin/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/simplefin/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/simplefin/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/simplefin/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * always callable * Update homeassistant/components/simplefin/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * no-verify * type * fixing missing domain * it looks like this file is gone now * typing * sorta pass * fix license * Update homeassistant/components/simplefin/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/simplefin/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * addressing PR * Update homeassistant/components/simplefin/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * move property to entity.py * moved stuff out to else block * Initial Snappshot Testing ... still have unadressed changes to make * Addressing PR Comments * pushing back to joost * removing non-needed file * added more asserts * reducing mocks - need to fix patch paths still * Changed patch to be more localized to config_flow * Removed unneeded fixture * Moved coordinator around * Cleaning up the code * Removed a NOQA" * Upping the number of asserts * cleanup * fixed abort call * incremental update - for Josot... changed a function signature and removed an annotatoin * no-verify * Added an abort test * ruff * increased coverage but it might not pass muster for JOOST * increased coverage but it might not pass muster for JOOST * Much nicer test now * tried to simplify * Fix nits --------- Co-authored-by: Erik Montnemery <erik@montnemery.com> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-07-10 10:44:04 +00:00
"simplefin",
"simplepush",
2022-03-21 03:38:13 +00:00
"simplisafe",
"sky_remote",
2022-06-05 02:37:08 +00:00
"skybell",
"slack",
2022-03-21 03:38:13 +00:00
"sleepiq",
"slide_local",
"slimproto",
2022-03-21 03:38:13 +00:00
"sma",
"smappee",
"smart_meter_texas",
"smartthings",
"smarttub",
"smarty",
2022-03-21 03:38:13 +00:00
"smhi",
New Integration: SMLIGHT SLZB-06 Adapters Integration (#118675) * Initial SMLIGHT integration Signed-off-by: Tim Lunn <tl@smlight.tech> * Generated content Signed-off-by: Tim Lunn <tl@smlight.tech> * Cleanup LOGGING * Use runtime data * Call super first * coordinator instance attributes * Move coordinatorEntity and attr to base class * cleanup sensors * update strings to use sentence case * Improve reauth flow on incorrect credentials * Use fixture for config_flow tests and test to completion * Split uptime hndling into a new uptime sensor entity * Drop server side events and internet callback will bring this back with binary sensor Platform * consolidate coordinator setup * entity always include connections * get_hostname tweak * Add tests for init, coordinator and sensor * Use custom type SmConfigEntry * update sensor snapshot * Drop reauth flow for later PR * Use _async_setup for initial setup * drop internet to be set later * sensor fixes * config flow re * typing fixes * Bump pysmlight dependency to 0.0.12 * dont trigger invalid auth message when first loading auth step * Merge uptime sensors back into main sensor class * clarify uptime handling * Apply suggestions from code review Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * address review comments * pass host as parameter to the dataCoordinator * drop uptime sensors for a later PR * update sensor test snapshot * move coordinator unique_id to _async_setup * fix CI * Apply suggestions from code review Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * drop invalid_auth test tag * use snapshot_platform, update fixtures * Finish all tests with abort or create entry * drop coordinator tests and remove hostname support * add test for update failure on connection error * use freezer for update_failed test * fix pysmlight imports --------- Signed-off-by: Tim Lunn <tl@smlight.tech> Co-authored-by: Tim Lunn <tim@feathertop.org> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-08-20 08:44:06 +00:00
"smlight",
2022-03-21 03:38:13 +00:00
"sms",
"snapcast",
"snooz",
2022-03-21 03:38:13 +00:00
"solaredge",
"solarlog",
"solax",
"soma",
"somfy_mylink",
"sonarr",
"songpal",
"sonos",
"soundtouch",
2022-03-21 03:38:13 +00:00
"speedtestdotnet",
"spotify",
"sql",
2022-03-21 03:38:13 +00:00
"squeezebox",
"srp_energy",
"starline",
"starlink",
"steam_online",
2022-03-21 03:38:13 +00:00
"steamist",
"stookwijzer",
"streamlabswater",
2022-03-21 03:38:13 +00:00
"subaru",
"suez_water",
2022-03-21 03:38:13 +00:00
"sun",
"sunweg",
2022-03-21 03:38:13 +00:00
"surepetcare",
"swiss_public_transport",
"switchbee",
2022-03-21 03:38:13 +00:00
"switchbot",
"switchbot_cloud",
2022-03-21 03:38:13 +00:00
"switcher_kis",
"syncthing",
"syncthru",
"synology_dsm",
"system_bridge",
"systemmonitor",
2022-03-21 03:38:13 +00:00
"tado",
"tailscale",
"tailwind",
"tami4",
"tankerkoenig",
2022-03-21 03:38:13 +00:00
"tasmota",
"tautulli",
Implement TechnoVE integration (#106029) * Implement TechnoVE integration Only the basic sensors for now. * Add technoVE to strict typing * Implement TechnoVE PR suggestions * Remove Diagnostic from TechnoVE initial PR * Switch status sensor to Enum device class * Revert zeroconf for adding it back in subsequent PR * Implement changes from feedback in TechnoVE PR * Update homeassistant/components/technove/models.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/technove/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/technove/models.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Remove unnecessary translation keys * Fix existing technoVE tests * Use snapshot testing for TechnoVE sensors * Improve unit tests for TechnoVE * Add missing coverage for technoVE config flow * Add TechnoVE coordinator tests * Modify device_fixture for TechnoVE from PR Feedback * Change CONF_IP_ADDRESS to CONF_HOST for TechnoVE * Update homeassistant/components/technove/config_flow.py Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com> * Update homeassistant/components/technove/models.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/technove/models.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Implement feedback from TechnoVE PR * Add test_sensor_update_failure to TechnoVE sensor tests * Add test for error recovery during config flow of TechnoVE * Remove test_coordinator.py from TechnoVE --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> Co-authored-by: Sid <27780930+autinerd@users.noreply.github.com>
2024-01-17 10:04:35 +00:00
"technove",
Add tedee integration (#102846) * init tedee * init tests * add config flow tests * liniting * test * undo * linting * pylint * add tests * more tests * more tests * update snapshot * more tests * typing * strict typing * cleanups * cleanups, fix tests * remove extra platforms * remove codeowner * improvements * catch tedeeclientexception * allow bridge selection in CF * allow bridge selection in CF * allow bridge selection in CF * allow bridge selection in CF * abort earlier * auto-select bridge * remove cloud token, optionsflow to remove size * remove options flow leftovers * improve coverage * defer coordinator setting to after first update * define coordinator * some improvements * remove diagnostics, webhook * remove reauth flow, freeze data classes * fix lock test * Update homeassistant/components/tedee/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * requested changes * requested changes * Update lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update entity.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * requested changes * Update tests/components/tedee/test_lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/tedee/test_lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/tedee/test_lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/tedee/test_lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/tedee/conftest.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/tedee/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/tedee/lock.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * requested changes * requested changes * requested changes * revert load fixture * change tests * Update test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update coordinator.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * remove warning * move stuff out of try * add docstring * tedee lowercase, time.time * back to some uppercase, time.time * awaitable --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-12-29 13:55:41 +00:00
"tedee",
2022-03-21 03:38:13 +00:00
"tellduslive",
"tesla_fleet",
2022-03-21 03:38:13 +00:00
"tesla_wall_connector",
"teslemetry",
"tessie",
"thermobeacon",
"thermopro",
Upgrade thethingsnetwork to v3 (#113375) * thethingsnetwork upgrade to v3 * add en translations and requirements_all * fix most of the findings * hassfest * use ttn_client v0.0.3 * reduce content of initial release * remove features that trigger errors * remove unneeded * add initial testcases * Exception warning * add strict type checking * add strict type checking * full coverage * rename to conftest * review changes * avoid using private attributes - use protected instead * simplify config_flow * remove unused options * review changes * upgrade client * add types client library - no need to cast * use add_suggested_values_to_schema * add ruff fix * review changes * remove unneeded comment * use typevar for TTN value * use typevar for TTN value * review * ruff error not detected in local * test review * re-order fixture * fix test * reviews * fix case * split testcases * review feedback * Update homeassistant/components/thethingsnetwork/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/thethingsnetwork/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/thethingsnetwork/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Remove deprecated var * Update tests/components/thethingsnetwork/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Remove unused import * fix ruff warning --------- Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-05-26 14:30:33 +00:00
"thethingsnetwork",
"thread",
2022-03-21 03:38:13 +00:00
"tibber",
"tile",
"tilt_ble",
"time_date",
"todoist",
2022-03-21 03:38:13 +00:00
"tolo",
"tomorrowio",
"toon",
"totalconnect",
"touchline_sl",
2022-03-21 03:38:13 +00:00
"tplink",
"tplink_omada",
2022-03-21 03:38:13 +00:00
"traccar",
"traccar_server",
2022-03-21 03:38:13 +00:00
"tractive",
"tradfri",
"trafikverket_camera",
"trafikverket_ferry",
"trafikverket_train",
2022-03-21 03:38:13 +00:00
"trafikverket_weatherstation",
"transmission",
Add TRIGGERcmd integration (#121268) * Initial commit with errors * Commitable * Use triggercmd user id as hub name * Validate the token * Use switch type, no trigger yet * Working integration * Use triggercmd module instead of httpx * Add tests for triggercmd integration * Add triggercmd to requirements_test_all.txt * Add untested triggercmd files to .coveragerc * Implement cgarwood's PR suggestions * Address PR feedback * Update homeassistant/components/triggercmd/config_flow.py Co-authored-by: Robert Resch <robert@resch.dev> * Update homeassistant/components/triggercmd/hub.py Co-authored-by: Robert Resch <robert@resch.dev> * Update homeassistant/components/triggercmd/strings.json Co-authored-by: Robert Resch <robert@resch.dev> * Update homeassistant/components/triggercmd/hub.py Co-authored-by: Robert Resch <robert@resch.dev> * Get user id via triggercmd module, and better check for status 200 code * PR feedback fixes * Update homeassistant/components/triggercmd/switch.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/triggercmd/switch.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * More PR feedback fixes * Update homeassistant/components/triggercmd/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/triggercmd/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/triggercmd/switch.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * More PR feedback fixes * Update tests/components/triggercmd/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Changes for PR feedback * Changes to address PR comments * Fix connection error when no internet * Update homeassistant/components/triggercmd/__init__.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/triggercmd/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/triggercmd/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/triggercmd/config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update tests/components/triggercmd/test_config_flow.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Updates for PR feedback * Update tests/components/triggercmd/test_config_flow.py --------- Co-authored-by: Robert Resch <robert@resch.dev> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-11 13:49:37 +00:00
"triggercmd",
2022-03-21 03:38:13 +00:00
"tuya",
"twentemilieu",
"twilio",
"twinkly",
"twitch",
"ukraine_alarm",
2022-03-21 03:38:13 +00:00
"unifi",
"unifiprotect",
"upb",
"upcloud",
"upnp",
"uptime",
"uptimerobot",
"v2c",
2022-03-21 03:38:13 +00:00
"vallox",
"velbus",
"velux",
2022-03-21 03:38:13 +00:00
"venstar",
"vera",
"verisure",
"version",
"vesync",
"vicare",
"vilfo",
"vizio",
"vlc_telnet",
"vodafone_station",
"voip",
2022-03-21 03:38:13 +00:00
"volumio",
"volvooncall",
"vulcan",
"wake_on_lan",
2022-03-21 03:38:13 +00:00
"wallbox",
"waqi",
"watergate",
2022-03-21 03:38:13 +00:00
"watttime",
"waze_travel_time",
Add WeatherFlow integration (#75530) * merge upstream * Update homeassistant/components/weatherflow/__init__.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * feat: Removing unused keys * feat: Addressing PR to remove DEFAULT_HOST from init * feat: Addressing PR abort case * feat: Ensure there is a default host always * feat: Addressing PR comments and fixing entity names via local testing * feat: Tested units * feat: updated variable names to hopefully add some clarity to the function * feat: added more var names for clarity * feat: Fixed abort * Update homeassistant/components/weatherflow/__init__.py Co-authored-by: G Johansson <goran.johansson@shiftit.se> * feat: Removed an unnecessary line * feat: Test updates * feat: Removed unreachable code * feat: Tons of improvements * removed debug code * feat: small tweaks * feat: Fixed density into HA Compatibility * feat: Handled the options incorrectly... now fixed * feat: Handled the options incorrectly... now fixed * Update homeassistant/components/weatherflow/manifest.json Co-authored-by: J. Nick Koston <nick@koston.org> * Cleaned up callback in __init__ Cleaning up config_flow as well * feat: Cleaned up a stupid test * feat: Simulating a timeout event * feat: Triggering timeout in mocking * feat: trying to pass tests * refactor: Moved code around so easier to test * Update homeassistant/components/weatherflow/__init__.py Co-authored-by: J. Nick Koston <nick@koston.org> * feat: Incremental changes moving along well * feat: Last fix before re-review * feat: Hopefully the tests shall pass * feat: Remove domian from unique id * feat: Fixed entity name * feat: Removed unneeded lambda - to make thread safe * Working version... * working * working * feat: Remove tuff * feat: Removed dual call * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * feat: updates based on pr * feat: removed some self refrences * feat: Mod RSSI * feat: Removed the custom Air Density (will add in a later PR) * feat: Significant cleanup of config flow * feat: Reworked the configflwo with the help of Joostlek * feat: Updated test coverage * feat: Removing bakcing lib attribute * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * feat: Updated translations * feat: Renamed CUSTOM to VOC * feat: Extreme simplification of config flow * feat: Pushing incremental changes * feat: Fixing test coverage * feat: Added lambda expressions for attributes and removed the custom AirDensity sensor * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: J. Nick Koston <nick@koston.org> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: J. Nick Koston <nick@koston.org> * feat: Removed default lambda expression from raw_data_conv_fn * feat: Added back default variable for lambda * feat: Updated tests accordingly * feat: Updated tests * made sure to patch correct import * made sure to patch correct import * feat: Fixed up tests ... added missing asserts * feat: Dropped model * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: J. Nick Koston <nick@koston.org> * Refactor: Updated code * refactor: Removed commented code * feat: close out all tests * feat: Fixing the patch * feat: Removed a bunch of stuff * feat: Cleaning up tests even more * fixed patch and paramaterized a test * feat: Addressing most recent comments * updates help of joostlek * feat: Updated coverage for const * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Update homeassistant/components/weatherflow/sensor.py Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * feat: Addressing more PR issues... probably still a few remain * using const logger * Update homeassistant/components/weatherflow/strings.json Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> --------- Co-authored-by: G Johansson <goran.johansson@shiftit.se> Co-authored-by: J. Nick Koston <nick@koston.org> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2023-09-27 15:28:05 +00:00
"weatherflow",
"weatherflow_cloud",
"weatherkit",
"webmin",
2022-03-21 03:38:13 +00:00
"webostv",
Add weheat core integration (#123057) * Add empty weheat integration * Add first sensor to weheat integration * Add weheat entity to provide device information * Fixed automatic selection for a single heat pump * Replaced integration specific package and removed status sensor * Update const.py * Add reauthentication support for weheat integration * Add test cases for the config flow of the weheat integration * Changed API and OATH url to weheat production environment * Add empty weheat integration * Add first sensor to weheat integration * Add weheat entity to provide device information * Fixed automatic selection for a single heat pump * Replaced integration specific package and removed status sensor * Add reauthentication support for weheat integration * Update const.py * Add test cases for the config flow of the weheat integration * Changed API and OATH url to weheat production environment * Resolved merge conflict after adding weheat package * Apply suggestions from code review Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com> * Added translation keys, more type info and version bump the weheat package * Adding native property value for weheat sensor * Removed reauth, added weheat sensor description and changed discovery of heat pumps * Added unique ID of user to entity * Replaced string by constants, added test case for duplicate unique id * Removed duplicate constant * Added offline scope * Removed re-auth related code * Simplified oath implementation * Cleanup tests for weheat integration * Added oath scope to tests --------- Co-authored-by: kjell-van-straaten <kjell.van.straaten@wefabricate.com> Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
2024-09-06 09:58:01 +00:00
"weheat",
2022-03-21 03:38:13 +00:00
"wemo",
"whirlpool",
"whois",
"wiffi",
"wilight",
"withings",
"wiz",
"wled",
"wmspro",
2022-03-21 03:38:13 +00:00
"wolflink",
"workday",
"worldclock",
"ws66i",
"wyoming",
2022-03-21 03:38:13 +00:00
"xbox",
"xiaomi_aqara",
"xiaomi_ble",
2022-03-21 03:38:13 +00:00
"xiaomi_miio",
"yale",
2022-03-21 03:38:13 +00:00
"yale_smart_alarm",
"yalexs_ble",
2022-03-21 03:38:13 +00:00
"yamaha_musiccast",
"yardian",
2022-03-21 03:38:13 +00:00
"yeelight",
"yolink",
2022-03-21 03:38:13 +00:00
"youless",
"youtube",
2022-10-26 16:35:12 +00:00
"zamg",
2022-03-21 03:38:13 +00:00
"zerproc",
"zeversolar",
2022-03-21 03:38:13 +00:00
"zha",
"zodiac",
2022-03-21 03:38:13 +00:00
"zwave_js",
"zwave_me",
2022-03-21 03:38:13 +00:00
],
}