diff --git a/Gemfile b/Gemfile index 6d996d117b5..9e3fe3b0cc0 100644 --- a/Gemfile +++ b/Gemfile @@ -10,8 +10,8 @@ group :development do gem 'stringex', '2.8.6' # > 2.1.0 causes slowdowns https://github.com/sass/sassc-ruby/issues/189 gem 'sassc', '2.1.0' - gem 'rubocop', '1.65.1' - gem 'ruby-lsp', '0.17.16' + gem 'rubocop', '1.66.0' + gem 'ruby-lsp', '0.17.17' gem 'rackup', '2.1.0' end diff --git a/Gemfile.lock b/Gemfile.lock index d0efc37323f..2fe04c9fd1c 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -26,9 +26,13 @@ GEM eventmachine (>= 0.12.9) http_parser.rb (~> 0) eventmachine (1.2.7) + ffi (1.17.0-arm64-darwin) ffi (1.17.0-x86_64-linux-gnu) forwardable-extended (2.6.0) - google-protobuf (4.27.4-x86_64-linux) + google-protobuf (4.28.0-arm64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.28.0-x86_64-linux) bigdecimal rake (>= 13) http_parser.rb (0.8.0) @@ -72,11 +76,13 @@ GEM listen (3.9.0) rb-fsevent (~> 0.10, >= 0.10.3) rb-inotify (~> 0.9, >= 0.9.10) - logger (1.6.0) + logger (1.6.1) mercenary (0.4.0) multi_json (1.15.0) - mustermann (3.0.2) + mustermann (3.0.3) ruby2_keywords (~> 0.0.1) + nokogiri (1.16.7-arm64-darwin) + racc (~> 1.4) nokogiri (1.16.7-x86_64-linux) racc (~> 1.4) parallel (1.26.3) @@ -85,7 +91,7 @@ GEM racc pathutil (0.16.2) forwardable-extended (~> 2.6) - prism (0.30.0) + prism (1.0.0) public_suffix (6.0.1) racc (1.8.1) rack (3.1.7) @@ -105,35 +111,37 @@ GEM rbs (3.5.3) logger regexp_parser (2.9.2) - rexml (3.3.6) - strscan + rexml (3.3.7) rouge (4.3.0) - rubocop (1.65.1) + rubocop (1.66.0) json (~> 2.3) language_server-protocol (>= 3.17.0) parallel (~> 1.10) parser (>= 3.3.0.2) rainbow (>= 2.2.2, < 4.0) regexp_parser (>= 2.4, < 3.0) - rexml (>= 3.2.5, < 4.0) - rubocop-ast (>= 1.31.1, < 2.0) + rubocop-ast (>= 1.32.1, < 2.0) ruby-progressbar (~> 1.7) unicode-display_width (>= 2.4.0, < 3.0) - rubocop-ast (1.32.1) + rubocop-ast (1.32.2) parser (>= 3.3.1.0) - ruby-lsp (0.17.16) + ruby-lsp (0.17.17) language_server-protocol (~> 3.17.0) - prism (>= 0.29.0, < 0.31) + prism (~> 1.0) rbs (>= 3, < 4) sorbet-runtime (>= 0.5.10782) ruby-progressbar (1.13.0) ruby2_keywords (0.0.5) safe_yaml (1.0.5) sass (3.4.25) - sass-embedded (1.77.8-x86_64-linux-gnu) - google-protobuf (~> 4.26) + sass-embedded (1.78.0-arm64-darwin) + google-protobuf (~> 4.27) + sass-embedded (1.78.0-x86_64-linux-gnu) + google-protobuf (~> 4.27) sass-globbing (1.1.5) sass (>= 3.1) + sassc (2.1.0) + ffi (~> 1.9) sassc (2.1.0-x86_64-linux) ffi (~> 1.9) sinatra (4.0.0) @@ -142,9 +150,8 @@ GEM rack-protection (= 4.0.0) rack-session (>= 2.0.0, < 3) tilt (~> 2.0) - sorbet-runtime (0.5.11549) + sorbet-runtime (0.5.11554) stringex (2.8.6) - strscan (3.1.0) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) tilt (2.4.0) @@ -156,6 +163,7 @@ GEM webrick (1.8.1) PLATFORMS + arm64-darwin-23 x86_64-linux DEPENDENCIES @@ -168,8 +176,8 @@ DEPENDENCIES nokogiri (= 1.16.7) rackup (= 2.1.0) rake (= 13.2.1) - rubocop (= 1.65.1) - ruby-lsp (= 0.17.16) + rubocop (= 1.66.0) + ruby-lsp (= 0.17.17) sass-globbing (= 1.1.5) sassc (= 2.1.0) sinatra (= 4.0.0) diff --git a/source/_docs/automation/trigger.markdown b/source/_docs/automation/trigger.markdown index 57f1c44e177..34fb20fbbd5 100644 --- a/source/_docs/automation/trigger.markdown +++ b/source/_docs/automation/trigger.markdown @@ -85,7 +85,7 @@ automation: ## Event trigger -Fires when an event is being received. Events are the raw building blocks of Home Assistant. You can match events on just the event name or also require specific event data or context to be present. +Fires when an {% term event %} is being received. Events are the raw building blocks of Home Assistant. You can match events on just the event name or also require specific event data or context to be present. Events can be fired by integrations or via the API. There is no limitation to the types. A list of built-in events can be found [here](/docs/configuration/events/). @@ -357,12 +357,22 @@ If for your use case this is undesired, you could consider using the automation ## State trigger -Fires when the state of any of given entities changes. If only `entity_id` is given, the trigger will fire for all state changes, even if only state attributes change. -If at least one of `from`, `to`, `not_from`, or `not_to` are given, the trigger will fire on any matching state change, but not if only attributes change. To trigger on all state changes, but not on changed attributes, set at least one of `from`, `to`, `not_from`, or `not_to` to `null`. +In general, the state trigger fires when the state of any of given entities **changes**. The behavior is as follows: -{% note %} -The values you see in your overview will often not be the same as the actual state of the entity. For instance, the overview may show `Connected` when the underlying entity is actually `on`. You should check the state of the entity by looking in the _States_ menu under _Developer tools_. -{% endnote %} +- If only the `entity_id` is given, the trigger fires for **all** state changes, even if only a state attribute changed. +- If at least one of `from`, `to`, `not_from`, or `not_to` are given, the trigger fires on any matching state change, but not if only an attribute changed. + - To trigger on all state changes, but not on changed attributes, set at least one of `from`, `to`, `not_from`, or `not_to` to `null`. +- Use of the `for` option doesn't survive a Home Assistant restart or the reload of automations. + - During restart or reload, automations that were awaiting `for` the trigger to pass, are reset. + - If for your use case this is undesired, you could consider using the automation to set an [`input_datetime`](/integrations/input_datetime) to the desired time and then use that [`input_datetime`](/integrations/input_datetime) as an automation trigger to perform the desired actions at the set time. + +{% tip %} +The values you see in your overview will often not be the same as the actual state of the entity. For instance, the overview may show `Connected` when the underlying entity is actually `on`. You should check the state of the entity by checking the states in the developer tool, under {% my developer_states title="**Developer Tools** > **States**" %}. +{% endtip %} + +### Examples + +This automation triggers if either Paulus or Anne-Therese are home for one minute. ```yaml automation: @@ -395,7 +405,7 @@ automation: to: "error" ``` -Trigger on all state changes, but not attributes by setting `to` to `null`: +If you want to trigger on all state changes, but not on attribute changes, you can `to` to `null` (this would also work by setting `from`, `not_from`, or `not_to` to `null`): ```yaml automation: @@ -405,7 +415,7 @@ automation: to: ``` -The `not_from` and `not_to` options are the counter parts of `from` and `to`. They can be used to trigger on state changes that are **not** the specified state. This can be useful to trigger on all state changes, except specific ones. +If you want to trigger on all state changes *except* specific ones, use `not_from` or `not_to` The `not_from` and `not_to` options are the counter parts of `from` and `to`. They can be used to trigger on state changes that are **not** the specified state. ```yaml automation: @@ -423,8 +433,8 @@ You cannot use `from` and `not_from` at the same time. The same applies to `to` ### Triggering on attribute changes When the `attribute` option is specified, the trigger only fires -when the specified attribute changes. Changes to other attributes or the -state are ignored. +when the specified attribute **changes**. Changes to other attributes or +state changes are ignored. For example, this trigger only fires when the boiler has been heating for 10 minutes: @@ -465,8 +475,8 @@ automation: for: "00:00:30" ``` -Please note, that when holding a state, changes to attributes are ignored and -do not cancel the hold time. +When holding a state, changes to attributes are ignored. Changes to attributes +don't cancel the hold time. You can also fire the trigger when the state value changed from a specific state, but hasn't returned to that state value for the specified time. @@ -528,12 +538,6 @@ The `for` template(s) will be evaluated when an entity changes as specified. Use quotes around your values for `from` and `to` to avoid the YAML parser from interpreting values as booleans. {% endtip %} -{% important %} -Use of the `for` option will not survive Home Assistant restart or the reload of automations. During restart or reload, automations that were awaiting `for` the trigger to pass, are reset. - -If for your use case this is undesired, you could consider using the automation to set an [`input_datetime`](/integrations/input_datetime) to the desired time and then use that [`input_datetime`](/integrations/input_datetime) as an automation trigger to perform the desired actions at the set time. -{% endimportant %} - ## Sun trigger ### Sunset / Sunrise trigger diff --git a/source/_docs/configuration/events.markdown b/source/_docs/configuration/events.markdown index 627114b8c2b..01d5cbce076 100644 --- a/source/_docs/configuration/events.markdown +++ b/source/_docs/configuration/events.markdown @@ -1,6 +1,11 @@ --- title: "Events" description: "Describes all there is to know about events in Home Assistant." +related: + - docs: /docs/automation/trigger/#event-trigger + title: Event triggers + - docs: /integrations/event/ + title: Event integration --- The core of Home Assistant is the event bus. The event bus allows any integration to fire or listen for events. It is the core of everything. @@ -28,12 +33,12 @@ In addition, all events contain a `data` dictionary with event-specific informat This event is fired when an service action is performed -| Field | Description | -| ----------------- | ------------------------------------------------------------------------------ | -| `domain` | Domain of the action. Example: `light`. | -| `service` | The service action that is performed. Example: `turn_on` | +| Field | Description | +| ----------------- | ---------------------------------------------------------------------- | +| `domain` | Domain of the action. Example: `light`. | +| `service` | The service action that is performed. Example: `turn_on` | | `service_data` | Dictionary with the call parameters. Example: `{ 'brightness': 120 }`. | -| `service_call_id` | String with a unique call id. Example: `23123-4`. | +| `service_call_id` | String with a unique call id. Example: `23123-4`. | ### `component_loaded` @@ -98,19 +103,19 @@ If you want to trigger automation on a Home Assistant stop event, we recommend u This event is fired when a new service action has been registered within Home Assistant. -| Field | Description | -| --------- | ----------------------------------------------------------------------- | +| Field | Description | +| --------- | ------------------------------------------------------------------------ | | `domain` | The domain of the integration that offers this action. Example: `light`. | -| `service` | The name of the service action. Example: `turn_on` | +| `service` | The name of the service action. Example: `turn_on` | ### `service_removed` This event is fired when a service action has been removed from Home Assistant. -| Field | Description | -| --------- | ----------------------------------------------------------------------- | +| Field | Description | +| --------- | ------------------------------------------------------------------------ | | `domain` | The domain of the integration that offers this action. Example: `light`. | -| `service` | The name of the service action. Example: `turn_on` | +| `service` | The name of the service action. Example: `turn_on` | ### `state_changed` diff --git a/source/_docs/locked_out.md b/source/_docs/locked_out.md index 0132a46419a..4ebded88ef1 100644 --- a/source/_docs/locked_out.md +++ b/source/_docs/locked_out.md @@ -47,20 +47,21 @@ Use this procedure only if the following conditions are met: - You know the username. - You can access the [Home Assistant console](/hassio/commandline/) **on the device itself** (not via the SSH terminal from the add-ons). -1. Connect to the console of the Home Assistant server: - - If you are using a virtual machine, connect to your virtual machine console. +1. If you are using a Home Assistant Yellow or Green, refer to their documentation. - If you are using a Home Assistant Yellow, refer to the following procedure: - - [Using the serial console on Windows](https://yellow.home-assistant.io/guides/use-serial-console-windows/) - - [Using the serial console on macOS / Linux](https://yellow.home-assistant.io/guides/use-serial-console-linux-macos/) + - [Resetting the owner password on Home Assistant Yellow](https://yellow.home-assistant.io/faq/#i-forgot-the-owner-password-for-home-assistant-how-can-i-reset-it) - If you are using a Home Assistant Green, refer to the following procedure: - - [Using the terminal](https://green.home-assistant.io/guides/use-terminal/) - - If you are using another board, connect a keyboard and monitor to your device and access the terminal. The procedure is likely very similar to the one described for the Green in the step above. -2. Once you have opened the Home Assistant command line, enter the following command: + - [Resetting the owner password on Home Assistant Green](https://green.home-assistant.io/faq/#i-forgot-the-owner-password-for-the-home-assistant-green-how-can-i-reset-it) +2. If you are not using a Yellow or Green: Connect to the console of the Home Assistant server: + - If you are using a virtual machine, connect to your virtual machine console. + - If you are using another board, connect a keyboard and monitor to your device and access the terminal. The procedure is likely very similar to the one described for the Home Assistant Green. +3. Once you have opened the Home Assistant command line, enter the following command: - Note: `existing_user` is a placeholder. Replace it with your username. - Note: `new_password` is a placeholder. Replace it with your new password. - - **Command**: `ha auth reset --username existing_user --password new_password` + - **Command**: `auth reset --username existing_user --password new_password` + ![Screencast showing how to enter the ha auth reset command](/images/docs/troubleshooting/home-assistant-cli.webp) - **Troubleshooting**: If you see the message `zsh: command not found: auth`, you likely did not enter the command in the serial console connected to the device itself, but in the terminal within Home Assistant. -3. You can now log in to Home Assistant using this new password. +4. You can now log in to Home Assistant using this new password. ### To reset a user's password, via the container command line diff --git a/source/_includes/common-tasks/enable_entities.md b/source/_includes/common-tasks/enable_entities.md index e9ddcd61272..d267862b73a 100644 --- a/source/_includes/common-tasks/enable_entities.md +++ b/source/_includes/common-tasks/enable_entities.md @@ -1,6 +1,21 @@ -## Enabling or disabling elements +## Enabling or disabling entities -Some entities are disabled by default. To enable them, follow these steps: +Some {% term entities %} are disabled by default. Whether a particular entity of a device is disable or enabled by default, depends on the integration. Diagnostic entities for example are often disabled by default so that they don't clutter Home Assistant. For example, the RSSI entity (representing the RF signal strength) provided by the ZHA integration for each Zigbee device is disabled by default. + +There are different ways to enable {% term entities %}. You can enable a single entity in the entity settings, or you can enable multiple entities at once from the list of entities. + +### To enable or disable a single entity + +1. Go to {% my integrations title="**Settings** > **Devices & services**" %} and select your integration card. +2. Select the device. +3. To see all the entities, you may need to expand the **entity not shown** section. +4. Select the entity of interest, select the cogwheel {% icon "mdi:cog-outline" %}, then select the toggle for **Enable**. +5. Select **Update**. +6. Confirm the notification stating that it will take about 30 seconds for the entity to become enabled. Select **OK**. + + ![Screencast showing how to enable a single entity](/images/docs/configuration/enable_entity.webp) + +### To enable or disable multiple entities 1. In Home Assistant, open the table of interest. - To enable or disable entities, go to {% my entities title="**Settings** > **Devices & Services** > **Entities**" %}. @@ -12,5 +27,6 @@ Some entities are disabled by default. To enable them, follow these steps: ## Related topics +- [Customizing entities](/docs/configuration/customizing-devices/) - [Grouping your assets](/docs/organizing/) - [Working with tables](/docs/organizing/tables) diff --git a/source/_integrations/august.markdown b/source/_integrations/august.markdown index fec9f55ebaf..68e33ed0f1c 100644 --- a/source/_integrations/august.markdown +++ b/source/_integrations/august.markdown @@ -29,6 +29,8 @@ ha_integration_type: integration The `august` integration allows you to integrate your [August](https://august.com/) and some Yale Access devices in Home Assistant. +For devices that use the [Yale Home](https://yalehome.com/global) app, the [Yale](/integrations/yale) integration should be used instead. + {% include integrations/config_flow.md %} ## Known working devices @@ -43,10 +45,6 @@ The `august` integration allows you to integrate your [August](https://august.co | August View | no | | Yale Assure Lock | yes | | Yale Assure Lock 2 | yes | -| Yale Conexis L1 | yes | -| Yale Conexis L2 | yes | -| Yale Doorman L3 | yes | -| Yale Linus | yes | | Yale Smart Safe | yes | Other devices not listed above have not been tested and may not function as expected. @@ -124,9 +122,7 @@ If you have an August Keypad, once you have enabled the August integration, you ## Integration with Yale Access Bluetooth -Following Assa Abloy, Yale's parent company, purchasing August in 2017, most newer devices use the Yale Access branding. - -The [Yale Access Bluetooth](/integrations/yalexs_ble) integration provides local control over Bluetooth of many Yale Access locks and some August locks that use the same system. +The [Yale Access Bluetooth](/integrations/yalexs_ble) integration provides local control over Bluetooth of many Yale Access locks and some August locks that use the same system. For locks that support the Yale Access system, the August integration can keep your offline access keys up to date to ensure you can operate your lock over Bluetooth. The following requirements must be met for the offline key updates to work: diff --git a/source/_integrations/enmax.markdown b/source/_integrations/enmax.markdown index e0dba77b7a7..574e872d759 100644 --- a/source/_integrations/enmax.markdown +++ b/source/_integrations/enmax.markdown @@ -18,3 +18,7 @@ ha_iot_class: Cloud Polling --- {% include integrations/supported_brand.md %} + +## Limitations + +Unlike other utilities that use the [{{ page.ha_supporting_integration }}](/integrations/{{ page.ha_supporting_domain }}) integration, {{ name }} only publishes monthly data. diff --git a/source/_integrations/enphase_envoy.markdown b/source/_integrations/enphase_envoy.markdown index 30b90d7549d..44ec60ddb1d 100644 --- a/source/_integrations/enphase_envoy.markdown +++ b/source/_integrations/enphase_envoy.markdown @@ -23,7 +23,16 @@ ha_platforms: ha_integration_type: integration --- -An integration for the [Enphase Envoy](https://enphase.com/en-us/products-and-services/envoy-and-combiner) solar energy gateway. This integration works with older models that only have production metrics (ie. Envoy-C) and newer models that offer both production and consumption metrics (ie. Envoy-S). Firmware version 3.9 or newer is required. +An integration for the [Enphase Envoy](https://enphase.com/en-us/products-and-services/envoy-and-combiner) solar energy gateway. This integration works with older models that only have production metrics (ie. Envoy-C) and newer models that offer both production and consumption metrics (ie. Envoy-S). + +## Prerequisites + +- The Envoy must be configured and commissioned. +- The Envoy must be on your local network with IPV4 connectivity from Home Assistant. +- Envoy firmware version 3.9 or newer. +- With Envoy firmware 7 and greater + - an Enlighten cloud username and password. + - Home Assistant 2023.9 or newer. {% include integrations/config_flow.md %} diff --git a/source/_integrations/event.markdown b/source/_integrations/event.markdown index c0e4378e5e0..eaa4f6d0c5e 100644 --- a/source/_integrations/event.markdown +++ b/source/_integrations/event.markdown @@ -10,6 +10,8 @@ ha_codeowners: - '@home-assistant/core' ha_integration_type: entity related: + - docs: /docs/automation/trigger/#event-trigger + title: Event triggers - docs: /docs/configuration/customizing-devices/ title: Customizing devices - docs: /dashboards/ diff --git a/source/_integrations/google_translate.markdown b/source/_integrations/google_translate.markdown index 549a5876eb0..b60f189fd49 100644 --- a/source/_integrations/google_translate.markdown +++ b/source/_integrations/google_translate.markdown @@ -115,7 +115,7 @@ You can also use supported BCP 47 tags like the below or the 2-2 digit format fo ## Action speak -The `tts.speak` actiion is the modern way to use Google translate TTS action. Add the `speak` action, select the entity for your Google translate TTS (it's named for the language you created it with), select the media player entity or group to send the TTS audio to, and enter the message to speak. +The `tts.speak` action is the modern way to use Google translate TTS action. Add the `speak` action, select the entity for your Google translate TTS (it's named for the language you created it with), select the media player entity or group to send the TTS audio to, and enter the message to speak. For more options about `speak`, see the Speak section on the main [TTS](/integrations/tts/#action-speak) building block page. diff --git a/source/_integrations/home_connect.markdown b/source/_integrations/home_connect.markdown index 5f59a21f60e..ea837f95b99 100644 --- a/source/_integrations/home_connect.markdown +++ b/source/_integrations/home_connect.markdown @@ -37,17 +37,20 @@ Note that it depends on the appliance and on API permissions which of the featur 1. Visit [https://developer.home-connect.com](https://developer.home-connect.com) and sign up for a developer account. 2. Enter the email of your login for the original Home Connect App from Bosch/Siemens under "Default Home Connect User Account for Testing" in the sign up process. -3. Under [Applications](https://developer.home-connect.com/applications), register a new App: +3. Go to the [Applications](https://developer.home-connect.com/applications) page and select [Register Application](https://developer.home-connect.com/application/add): - Application ID: Home Assistant (or whatever name makes sense to you) - OAuth Flow: Authorization Code Grant Flow - Redirect URI: `https://my.home-assistant.io/redirect/oauth` - Go to `https://my.home-assistant.io/` and make sure that your Home Assistant URL is set there. For example: `http://homeassistant:8123/` or `http://homeassistant.local:8123` +4. On success, you will be redirected to the **Applications** page. Select **Details** for your app. Make note of the client ID and secret - you will need it for the next step. Log out of the Home Connect developer portal. +5. In Home Assistant, find the Home Connect integration and launch it. You will be prompted to create an [Application Credential](https://www.home-assistant.io/integrations/application_credentials). You will need to provide a name (it's arbitrary) in addition to the Client ID and Secret from the previous step. Then, follow the steps in the UI to complete setup. + *Important*: - **Power on** all your appliances during the integration configuration process; otherwise appliance programs list will be empty. - To update the appliance programs list, you can reload the Home Connect integration when an appliance is turned on. If the re-initialization process is not triggered by reload, restart the Home Assistant when an appliance is turned on. - - After performing the steps above **log out** of your Home Connect Developer account. If you don't do this, the configuration steps below will fail during OAuth authentication with the message `“error”: “unauthorized_client”`. + - After performing the steps above, [log out](https://developer.home-connect.com/user/logout) of your Home Connect Developer account. If you don't do this, the configuration steps below will fail during OAuth authentication with the message `“error”: “unauthorized_client”`. - The provided Home Connect User Account email address **must** be all lowercase otherwise it will result in authentication failures. - All changes in the developer portal take 15 minutes before the change is implemented. diff --git a/source/_integrations/knx.markdown b/source/_integrations/knx.markdown index 9760f21cf40..f1304a491f4 100644 --- a/source/_integrations/knx.markdown +++ b/source/_integrations/knx.markdown @@ -74,10 +74,6 @@ There is currently support for the following device types within Home Assistant: - [Time](#time) - [Weather](#weather) -## Free KNX online training - -As a Home Assistant KNX user, you can start a FREE KNX online training and get a discounted ETS Home license on the [KNX website](https://www.knx.org/knx-en/for-your-home/home-assistant/). - {% include integrations/config_flow.md %} ## Basic configuration diff --git a/source/_integrations/light.markdown b/source/_integrations/light.markdown index b082eab302e..02d464fb8c1 100644 --- a/source/_integrations/light.markdown +++ b/source/_integrations/light.markdown @@ -15,7 +15,16 @@ This integration allows you to track and control various light bulbs. Read the i {% include integrations/building_block_integration.md %} -### Default turn-on values +## State and attributes of a light entity + +Light {% term entities %} can have the following {% term states %}: `on` or `off`. The list of available attributes depends on the {% term device %}. Refer to the integration documentation of your light. + +

+ Screenshot showing three lights with differents states: `on`, `off`, or `unavailable` + Three lights with differents states: `on`, `off`, or `unavailable`. +

+ +## Default turn-on values To set the default color, brightness and transition values when the light is turned on, create a custom `light_profiles.csv`, normally located in the default configuration folder where you find {% term "`configuration.yaml`" %}. @@ -33,7 +42,7 @@ The `.default` suffix should be added to the entity identifier of each light to If a light entity is in the `on` state, the default profile brightness will only be applied if it is called in the action data attribute `profile`, like any other named profile. The transition attribute will be applied for all `light.turn_on`, `light.toggle`, and `light.turn_off` actions, unless specified otherwise in the action data. {% endnote %} -### Action `light.turn_on` +## Action `light.turn_on` Turns one light on or multiple lights on using [groups](/integrations/group/). @@ -101,7 +110,7 @@ automation: If no data is sent, and a default profile exists, the default profile will be applied. {% endnote %} -### Action `light.turn_off` +## Action `light.turn_off` Turns one or multiple lights off. @@ -111,7 +120,7 @@ Turns one or multiple lights off. | `transition` | yes | Integer that represents the time the light should take to transition to the new state in seconds. | | `flash` | yes | Tell light to flash, can be either value `short` or `long`. | -### Action `light.toggle` +## Action `light.toggle` Toggles the state of one or multiple lights. Takes the same arguments as the [`light.turn_on`](#action-lightturn_on) action. diff --git a/source/_integrations/opentherm_gw.markdown b/source/_integrations/opentherm_gw.markdown index fa3d1c257ed..41537746529 100644 --- a/source/_integrations/opentherm_gw.markdown +++ b/source/_integrations/opentherm_gw.markdown @@ -538,14 +538,14 @@ Possible modes and their meaning for the GPIO pins are listed here: Bulletpoints and numbers to match the LED mode layout below. {% endcomment %} -- 1\. No function, default for both ports on a freshly flashed chip. -- 2\. Ground - A permanently low output (0V). Could be used for a power LED. -- 3\. Vcc - A permanently high output (5V). Can be used as a short-proof power supply for some external circuitry used by the other GPIO port. -- 4\. LED E - An additional LED if you want to present more than 4 LED functions. -- 5\. LED F - An additional LED if you want to present more than 5 LED functions. -- 6\. Home - Set thermostat to setback temperature when pulled low. -- 7\. Away - Set thermostat to setback temperature when pulled high. -- 8\. DS1820 (GPIO port B only) - Data line for a DS18S20 or DS18B20 temperature sensor used to measure the outside temperature. A 4k7 resistor should be connected between GPIO port B and Vcc. +- 0\. Input - default for both ports on a freshly flashed chip. +- 1\. Ground - A permanently low output (0V). Could be used for a power LED. +- 2\. Vcc - A permanently high output (5V). Can be used as a short-proof power supply for some external circuitry used by the other GPIO port. +- 3\. LED E - An additional LED if you want to present more than 4 LED functions. +- 4\. LED F - An additional LED if you want to present more than 5 LED functions. +- 5\. Home - Set thermostat to setback temperature when pulled low. +- 6\. Away - Set thermostat to setback temperature when pulled high. +- 7\. DS1820 (GPIO port B only) - Data line for a DS18S20 or DS18B20 temperature sensor used to measure the outside temperature. A 4k7 resistor should be connected between GPIO port B and Vcc. ## LED modes diff --git a/source/_integrations/simplefin.markdown b/source/_integrations/simplefin.markdown index a90adf53fa8..db630b7674c 100644 --- a/source/_integrations/simplefin.markdown +++ b/source/_integrations/simplefin.markdown @@ -32,5 +32,6 @@ Each `account` will be set up as a device in Home Assistant, and it will contain |Sensor|Description| |-------|---------------| -|Balance|Account balance| |Age| This sensor shows when the data was retrieved by the SimpleFin API | +|Balance|Account balance| +|Problem| Binary sensor that indicates whether the account sync may have a problem | diff --git a/source/_integrations/spaceapi.markdown b/source/_integrations/spaceapi.markdown index 83df0538349..6cee5f660f9 100644 --- a/source/_integrations/spaceapi.markdown +++ b/source/_integrations/spaceapi.markdown @@ -289,7 +289,7 @@ spaceapi: issue_report_channels: - email state: - entity_id: binary_sensor.front_door" + entity_id: "binary_sensor.front_door" icon_open: https://eastermundigen.ch/open.png icon_closed: https://eastermundigen.ch/close.png sensors: diff --git a/source/_integrations/ubus.markdown b/source/_integrations/ubus.markdown index 917632db8ba..523308d0c41 100644 --- a/source/_integrations/ubus.markdown +++ b/source/_integrations/ubus.markdown @@ -49,7 +49,7 @@ Then, create an ACL file at `/usr/share/rpcd/acl.d/hass.json` for the user `hass "ubus": { "hostapd.*": ["get_clients"], "uci": ["get"] - }, + } }, "write": {} } diff --git a/source/_integrations/unifiprotect.markdown b/source/_integrations/unifiprotect.markdown index 20b5ce24db2..84cbf0d32c5 100644 --- a/source/_integrations/unifiprotect.markdown +++ b/source/_integrations/unifiprotect.markdown @@ -269,6 +269,8 @@ These URLs work great when trying to send notifications. Home Assistant will aut The easiest way to find the `nvr_id`, `camera_id`, `start`, and `end` times is by viewing one of the videos from UniFi Protect in the Media browser. If you open the video in a new browser tab, you will see all these values in the URL. The `start` time is the last_changed timestamp of the event when the sensor started detecting motion. The `end` time is the last_changed timestamp of the event when the sensor stopped detecting motion. Similarly, to see the `event_id` of the image, go to {% my developer_states title="**Developer Tools** > **States**" %} and find the event when the sensor started detecting motion. +When a Doorbell rings, there is a specific event {% term entity %} that provides the `event_id`. You can use this to get the thumbnail, for example, `event.g4_doorbell_pro_doorbell`. + ## Troubleshooting ### Delay in video feed diff --git a/source/_integrations/webmin.markdown b/source/_integrations/webmin.markdown index 4a0e32ca59f..178203fc2cc 100644 --- a/source/_integrations/webmin.markdown +++ b/source/_integrations/webmin.markdown @@ -21,19 +21,50 @@ This {% term integration %} provides sensors for monitoring the CPU and memory u ## Prerequisites -For best security, create a specific Webmin user for Home Assistant with a strong password and only "Can accept RPC calls" permission (under "Permissions for all modules") and remove the "Can accept RPC calls" permission for all other users. +### Authentication setup + +{% warning %} +Always consider your own setup and security needs before exposing services with system-level access. +{% endwarning %} + +As a good security practice, create a Webmin User specific to Home Assistant. A dedicated account allows for this integration to operate uninterrupted should you change your primary login for Webmin, and it can allow for more granular access so that only the necessary data and access is made available to Home Assistant. + +#### Suggested User Setup + +- Create the account with a strong password, +- Only enable the _"Can accept RPC calls"_ permission (under "Permissions for all modules"), +- Consider disabling the _"Can accept RPC calls"_ permission for other users (unless specifically required), +- Consider limiting this account to only have access via the IP address of your Home Assistant instance (if appropriate). +- {% note %} -Be aware that the Webmin API ignores any 2FA set up via the frontend, e.g. it is even with enabled 2FA possible to use the API with only username and password. +The Webmin API ignores any 2FA set up via the frontend. Even with 2FA enabled, it is still possible to use the API with only a username and password. {% endnote %} +### Required Webmin Perl Module + +Ensure the `XML::Parser` Perl module is installed via [Webmin Perl Modules](https://webmin.com/docs/modules/perl-modules/) before configuring the integration. + +#### Installing XML::Parser Perl Module + +1. In the Webmin UI, go to **Tools** > **Perl Modules**. +2. Under the **Install module** tab, enter `XML::Parser` into the **From CPAN** text field. +3. Select **Install** at the bottom of the dialog. +4. Confirm that the installation is successful. + - If the installation succeeds: + - Continue with any remaining steps for Home Assistant. + - If the installation fails: + - Refer to [Webmin documentation for Perl Modules](https://webmin.com/docs/modules/perl-modules/) to resolve any Webmin issues. + - Retry the module installation and confirm that `XML::Parser` is listed on the Perl Modules page under **Existing Modules**. {% include integrations/config_flow.md %} ## Sensors -**All entities are disabled by default, you need to enable the entities that you wish to use.** +{% note %} +All entities are **disabled** by default. You must enable any entities that you wish to use. +{% endnote %} -Following sensors will be added: +The following sensors are provided: - Load (1m) - Load (5m) diff --git a/source/_integrations/yale.markdown b/source/_integrations/yale.markdown new file mode 100644 index 00000000000..61a946f7ef4 --- /dev/null +++ b/source/_integrations/yale.markdown @@ -0,0 +1,156 @@ +--- +title: Yale +description: Instructions on how to integrate your Yale devices into Home Assistant. +ha_category: + - Binary sensor + - Button + - Camera + - Doorbell + - Event + - Lock + - Sensor +ha_release: 2024.9 +ha_iot_class: Cloud Push +ha_config_flow: true +ha_codeowners: + - '@bdraco' +ha_domain: yale +ha_dhcp: true +ha_platforms: + - binary_sensor + - button + - camera + - diagnostics + - event + - lock + - sensor +ha_integration_type: integration +--- + +The **Yale** integration allows you to integrate your [Yale](https://www.assaabloy.com/vn/en/solutions/products/yale) devices in Home Assistant. + +The login credentials used to authenticate the integration are the same as the ones used in the Yale Home app. + +{% include integrations/config_flow.md %} + +## Known working devices + +| Device | Requires [Connect Bridge](https://www.yalehome.com/vn/en/products/yale-smart-door-lock/smart-accessories/yale-connect-wi-fi-bridge) or Doorbell | +| --------------------------------- | ------------------------------------| +| Yale Assure Lock | yes | +| Yale Conexis L1 | yes | +| Yale Conexis L2 | yes | +| Yale Doorman L3 | yes | +| Yale Linus | yes | +| Yale Smart Safe | yes | + +Other devices not listed above have not been tested and may not function as expected. + +There is currently support for the following device types within Home Assistant: + +- Doorbell +- Binary sensor +- Button +- Sensor +- Camera +- Lock + +{% note %} +Most devices will need either a Yale Connect Bridge or a Doorbell to connect to Home Assistant. +{% endnote %} + +## Push updates not available for some entities + +While most entities can be updated via the push API, Yale/Yale does not offer a push API for some data, which means these entities will update slower: + +- Doorbell ding sensor (Doorman models only) +- Lock Battery sensor +- Lock Operation sensor + +## Binary sensor + +If you have a Yale Doorbell, once you have enabled the Yale integration, you should see the following sensors: + +- Doorbell ding sensor +- Doorbell motion sensor +- Doorbell online sensor + +If you have a Yale Smart Lock with DoorSense, once you have enabled the Yale integration, you should see the following sensors: + +- Door sensor + +## Button + +Buttons are created to wake locks from a deep sleep. If your lock is not reporting a status, it may be in a deep sleep, and the button can be used to wake it. Locks are not automatically woken from deep sleep to preserve battery life. + +## Event + +If you have a Yale doorbell or lock that has a built-in doorbell, once you have enabled the Yale integration, you should see the following event entities: + +- Doorbell +- Motion + +Not all models include motion sensors and support for locks with built-in doorbells is limited to Yale Doorman models type 7 and 10. + +## Camera + +The `yale` camera platform allows you to view the latest camera image (triggered by motion) by your [Yale](https://yale.com/) device in Home Assistant. + +## Sensor + +If you have a Yale Doorbell with a battery, once you have enabled the Yale integration, you should see the following sensors: + +- Doorbell Battery + +If you have a Yale Smart Lock, once you have enabled the Yale integration, you should see the following sensors: + +- Lock Battery +- Lock Operation + +If you have a Yale Keypad, once you have enabled the Yale integration, you should see the following sensors: + +- Keypad Battery + +## Integration with Yale Access Bluetooth + +Following Assa Abloy, Yale's parent company, purchasing Yale in 2017, most newer devices use the Yale Home branding. + +The [Yale Access Bluetooth](/integrations/yalexs_ble) integration provides local control over Bluetooth of many Yale Home locks that use the same system. + +For locks that support the Yale Access system, the Yale integration can keep your offline access keys up to date to ensure you can operate your lock over Bluetooth. The following requirements must be met for the offline key updates to work: + +- The Yale integration must support the lock. +- The [Yale Access Bluetooth integration](/integrations/yalexs_ble) must support the lock. +- The Bluetooth integration must be active and functional. +- The lock must be discoverable by the [Yale Access Bluetooth integration](/integrations/yalexs_ble). +- The account logged in with the Yale integration must have the offline keys. + +### Troubleshooting offline key updates + +- If you do not know which account has the offline keys, configure Yale integration with each different Owner account until you find the one that holds the keys. You may need to make a new owner account and grant the account access to your lock to force the keys to synchronize with the cloud service. +- Ensure the lock is in range and discoverable by the [Yale Access Bluetooth integration](/integrations/yalexs_ble). + +## Presence detection with lock operation + +Using the lock operation sensors, you can detect when a user operates a lock and is physically present (not remote). The below automation example (added to `automations.yaml`) will trigger when the user named “John Doe” in Yale locks or unlocks the door either from the keypad (if present), via Bluetooth from their phone, or by auto-unlock. The state of the sensor will be the name of the party operating the lock as returned by Yale. + +{% raw %} + +```yaml +- id: "1583706446906" + alias: "joe_doe_front_door_operate" + description: John Doe locks or unlocks the Front Door + trigger: + - entity_id: sensor.front_door_operator + platform: state + to: John Doe + condition: + - condition: template + value_template: "{{ not state_attr('sensor.front_door_operator', 'remote') }}" + action: + - data: {} + entity_id: camera.inside + service: camera.turn_off +``` + +{% endraw %} diff --git a/source/_integrations/yale_home.markdown b/source/_integrations/yale_home.markdown index 9981d222a44..b874c85a401 100644 --- a/source/_integrations/yale_home.markdown +++ b/source/_integrations/yale_home.markdown @@ -1,6 +1,6 @@ --- title: Yale Home -description: Connect and control your Yale Home devices using the August integration +description: Connect and control your Yale Home devices using the Yale integration ha_category: - Binary sensor - Button @@ -12,8 +12,8 @@ ha_category: ha_release: 0.64 ha_domain: yale_home ha_integration_type: virtual -ha_supporting_domain: august -ha_supporting_integration: August +ha_supporting_domain: yale +ha_supporting_integration: Yale ha_codeowners: - '@bdraco' ha_config_flow: true diff --git a/source/_posts/2024-09-03-aqara-joins-works-with-home-assistant.markdown b/source/_posts/2024-09-03-aqara-joins-works-with-home-assistant.markdown new file mode 100644 index 00000000000..34002793393 --- /dev/null +++ b/source/_posts/2024-09-03-aqara-joins-works-with-home-assistant.markdown @@ -0,0 +1,46 @@ +--- +layout: post +title: "Aqara joins Works with Home Assistant" +description: "We have certified 4 Aqara devices, all of which are the first to use our Works via Matter with Home Assistant badge." +date: 2024-09-03 00:00:01 +date_formatted: "September 3, 2024" +author: Guy Sie +comments: true +categories: Announcements +og_image: /images/blog/2024-09-aqara-wwha/art.jpg +--- +Aqara joins Works with Home Assistant + +We're excited to announce that Aqara is bringing several of their devices to our [Works with Home Assistant](https://partner.home-assistant.io/) program. We know that Aqara is a brand that many in the community like to recommend for its solid options for Zigbee and Matter. + +This will be the first partner to join since [our recent update to the program](/blog/2024/08/08/works-with-home-assistant-becomes-part-ohf/), meaning it is the first to join certifying specific devices, making it much easier to see what will give you the best experience in Home Assistant. It will also be the first partner to use our "Works via Matter with Home Assistant" badge, giving some great options to use with Home Assistant's [industry-leading Matter support](https://www.matteralpha.com/news/new-home-assistant-update-matter-1-3-ai-automation). + + + +## Matter materializes + +Aqara has been an early adopter of Matter, and many of its new products support the standard, which is great for [connecting to Home Assistant](/blog/2024/01/25/matter-livestream-blog/). Matter allows for local control by directly connecting devices to Home Assistant, keeping your smart home data in your home. Matter is a completely local IP-based protocol that leverages your existing Ethernet and Wi-Fi networks, but it can also use [Thread](/integrations/thread/), which many Aqara devices take advantage of. Thread devices can be directly connected to Home Assistant using a [Connect ZBT-1](/connectzbt1), or can be connected to Home Assistant via an existing hub (Thread Border Router) you may already have from another [smart home ecosystem](/integrations/thread#google), including the Aqara Hub M3. + +One superpower of Matter compared to other standards is being able to control these devices with multiple different ecosystems simultaneously. For instance, an Aqara lock could be unlocked with a Home Assistant automation and then locked with a voice command directed to an Apple Homepod. + +## Devices joining the program + +Aqara has had the following three devices Works with Home Assistant certified. All of which can be directly connected to Home Assistant without an account. + +- [Motion and Light Sensor P2](https://www.aqara.com/en/product/motion-and-light-sensor-p2/) - Matter over Thread battery-powered motion and lux sensor. + +- [Door and Window Sensor P2](https://www.aqara.com/en/product/door-and-window-sensor-p2/) - Matter over Thread battery-powered cover sensor. + +- [Smart Lock U200](https://www.aqara.com/en/product/smart-lock-u200/) - Matter over Thread battery-powered lock. + +We're also testing the yet-to-be-launched Smart Lock U300, which we hope to see added soon. + +We have also certified a hub that makes it easy to connect an existing Aqara-based smart home to Home Assistant using Matter. + +- [Hub M3](https://www.aqara.com/en/product/hub-m3/) - It has many functions, but we have certified it as a Matter Bridge. This means you can use it to bridge your existing Aqara Zigbee devices to Matter. It can also act as a Thread Border Router for Home Assistant. + +If you have some Aqara products that are not listed above, rest assured that they will continue to work as they always have. The program is a way to clearly indicate which devices provide the best experience with Home Assistant. We've ensured this by testing these devices' compatibility ourselves. We also get assurances from the brand that they will provide responsive support and maintenance, while being a positive brand in the Home Assistant community. + +Works with Home Assistant is now run by the non-profit [Open Home Foundation](https://www.openhomefoundation.org/), which means it is not a profit-making endeavor. It is about encouraging brands to go above and beyond in the Home Assistant community, and we're excited to have Aqara join. + +When shopping for devices to connect to your home, we recommend first looking at our Works with Home Assistant partner's products. These products always prioritize long-term support and local control. diff --git a/source/_posts/2024-09-04-release-20249.markdown b/source/_posts/2024-09-04-release-20249.markdown index ceae017e03d..bb0d2a86cc0 100644 --- a/source/_posts/2024-09-04-release-20249.markdown +++ b/source/_posts/2024-09-04-release-20249.markdown @@ -1,8 +1,8 @@ --- layout: post -title: "2024.9: Beta release notes" -description: "Beta release notes for Home Assistant 2024.9" -date: 2024-08-28 00:00:00 +title: "2024.9: Sections go BIG" +description: "Bigger wider sections for big cards, smarter energy monitoring, a new LLM option, Works with Home Assistant Matter devices, and more open source." +date: 2024-09-04 00:00:00 date_formatted: "September 4, 2024" author: Gordon Cameron comments: true @@ -14,75 +14,31 @@ og_image: /images/blog/2024-09/social.jpg -{% note %} +Home Assistant 2024.9! 🎉 -**Welcome to the beta release notes for Home Assistant 2024.9** 🎉 +Many community members based in the northern hemisphere have taken advantage of the nicer weather to take a little time off. Home Assistant releases have continued to grow for some time, and this one might not be as gargantuan in size as previous releases, but it still packs some really cool features and announcements. -
+This release includes bigger sections, smarter energy monitoring, and a new LLM option. We've added [five](#new-integrations) new integrations, along with [one](#now-available-to-set-up-from-the-ui) existing integration being added to the UI. On top of all that, we've announced a new Works with Home Assistant partner, and the culmination of a project to ensure our project is truly open source. -Please note that these release notes are a work in progress. 👷‍♀️ We will be -completing them over the next couple of days. Not all features might be final -yet, and some features _**may not** make it into the final release_. +We hope you've been able to enjoy some time in, and away, from your smart home this month as well. -
- -**Want to help test the beta?** Awesome! ❤️ We have documented how you -[can join our beta channel and install the beta here](/common-tasks/os/#running-a-beta-version). - -
- -While running the beta, we highly recommend joining our _#beta_ channel on -the [Home Assistant Discord chat](/join-chat)! 💬 Most developers and beta -testers are in this channel during the beta period to share experiences, ideas, -and iterate over new features, fine-tuning them before the final release. -It's a really fun place to hang out. 😎 - -
- -**Reporting issues**: As this is a beta test, you might encounter unexpected -behavior or issues. 🐞 We use the GitHub issue tracker to track beta issues. -You can find our issue trackers and the reported issues during beta here: - -
- -- [Report(ed) beta **dashboards/UI/frontend** issues](https://github.com/home-assistant/frontend/milestone/123) -- [Report(ed) beta **integrations/automations/backend/core** issues](https://github.com/home-assistant/core/milestone/686) -- [Report(ed) beta **documentation** issues](https://github.com/home-assistant/home-assistant.io/milestone/130) - -🙏 When reporting issues, **make sure to mention the exact beta version you are -running** in the issue description. This will help us identify and track the -issue correctly. Read more about [reporting issues here](/help/reporting_issues/). - -
- -Issues introduced in the beta are processed with priority. 🔝 - -{% endnote %} +Enjoy the release! {% tip %} -Don't forget to [join our release party live stream on YouTube](https://www.youtube.com/watch?v=X) +Don't forget to [join our release party live stream on YouTube](https://www.youtube.com/watch?v=dSbCzRhbOVA) 4 September 2024, at 20:00 GMT / 12:00 PST / 21:00 CEST! {% endtip %} -Home Assistant 2024.9! 🎉 - -For many of us in the community based in the northern hemisphere we've been taking advantage of the nicer weather to take a little time off. Home Assistant releases have continued to grow for some time, and this one might not be as gargantuan in size as previous releases, but it still packs some really cool features and announcements. - -This release includes bigger sections, smarter energy monitoring, and a new LLM option. We’ve added [five](#new-integrations) new integrations, along with [one](#now-available-to-set-up-from-the-ui) existing integration being added to the UI. On top of all that, we’ve announced a new Works with Home Assistant partner, and the culmination of a project to ensure our project is truly open source. - -We hope you've been able to enjoy some time in, and away, from your smart home this month as well. - -Enjoy the (beta) release! - - - [Sections go BIG](#sections-go-big) - [Wider sections](#wider-sections) - [Full span cards](#full-span-cards) + - [Badges](#badges) - [Tracking your untracked energy](#tracking-your-untracked-energy) - [LLM agent options grow](#llm-agent-options-grow) +- [Aqara joins Works with Home Assistant](#aqara-joins-works-with-home-assistant) - [Open source compliance](#open-source-compliance) - [Integrations](#integrations) - [New integrations](#new-integrations) @@ -98,7 +54,10 @@ Enjoy the (beta) release! In the drive to give our users more customization and organization options for their dashboards, we've added some new options to our Sections view that really lets us take big advantage of [resizable cards](/blog/2024/07/03/release-20247/#resize-the-cards-on-your-dashboard). These powerful customization features can affect the [predictability of where cards or sections will go](/blog/2024/03/04/dashboard-chapter-1/#drag-and-drop-rearrangement-of-cards-and-sections), especially when switching between desktop and mobile views, and we have found it works best with large cards. As always, the choice of how to use it is up to you. -Temporary screenshot +
+ Screenshot showing sections that are all 1 section wide, on the right showing a section that is 2 sections wide. + Screenshots showing a section that is 2 sections wide. +
### Wider sections @@ -108,15 +67,23 @@ Cards and sections will continue to follow the [Z-Grid rules](/blog/2024/03/04/d When switching to smaller screens, these larger sections will revert to one section wide (if this causes issues for certain big cards, we would recommend using our device [visibility settings](/blog/2024/06/05/release-20246/#control-visibility-of-cards)). +Screenshot of the section settings + ### Full span cards Larger sections mean larger cards. Instead of just stretching out the layout of a card, there is also a new option on cards to have them always use the full width of the section. +### Badges + +Talking about dashboards, the newly styled badges we [introduced](/blog/2024/08/07/release-20248/#new-badges-for-your-dashboard) in last release, are now more configurable. + +Instead of using display mode, you can decide for yourself what element you want to show. This allows you, for example, to hide the icon of an badge and only show the state of the device you want to show in your badge. + ## Tracking your untracked energy In April, we introduced a [new energy graph for individual devices](/blog/2024/03/06/release-20243/#new-energy-graph-for-individual-devices) in our energy dashboard. This allows you to aggregate all your energy monitoring into one graph, giving you a quick way to see your house's biggest energy-using devices. Big thanks to [@karwosts](https://github.com/karwosts), the original creator of this graph, who has now updated it. -Temporary screenshot +Screenshot of the individual device energy graph We can't all have energy tracking for every device, and if you have whole-home energy tracking (like a smart meter or [something more DIY](/home-energy-management)) the updated graph will calculate the difference and show your home's untracked usage. So hop onto your [energy dashboard](https://my.home-assistant.io/redirect/energy/) and start to tackle your phantom energy load. @@ -124,11 +91,23 @@ We can't all have energy tracking for every device, and if you have whole-home e When we added the ability to use [Large Language Models (LLMs)](/blog/2024/06/05/release-20246/#dipping-our-toes-in-the-world-of-ai-using-llms) in our Voice Assistant, it began with a limited number of conversation agents. These included the cloud-based [OpenAI](/components/openai_conversation/) and [Google AI](/components/google_generative_ai_conversation/) integrations, along with the locally-run [Ollama](/integrations/ollama/) integration. All three can now control the devices in your home. -[@Shulyaka](https://github.com/Shulyaka) has now added another cloud option with [Anthropic](/integrations/anthropic) - thanks again for giving us another option for experimenting with AI in Home Assistant. Setting it up can be a little different than other conversation agents so take a look at the [documents](/integrations/anthropic) if you're interested. +[@Shulyaka](https://github.com/Shulyaka) has now added another cloud option with [Anthropic](/integrations/anthropic) - thanks again for giving us another option for experimenting with AI in Home Assistant. Setting it up can be a little different than other conversation agents, so take a look at the [documentation](/integrations/anthropic). + +We have updated our [LLM leaderboard](https://github.com/allenporter/home-assistant-datasets/tree/main/reports) to include Anthropic. Both Claude 3 Haiku and Claude 3 Sonnet score very high on our benchmarks and now rank among the top. Based on the results of the benchmark, we have set the cheaper Claude 3 Haiku as the default model for the Anthropic integration. + +[@allenporter] added the ability to configure the context window size of the [Ollama](/integrations/ollama) integration. The default size was increased, making it perform 20% better! + +## Aqara joins Works with Home Assistant + +Aqara join Works via Matter with Home Assistant + +We [recently announced](/blog/2024/09/03/aqara-joins-works-with-home-assistant/) that four Aqara devices are joining our [Works with Home Assistant](https://partner.home-assistant.io/) program. What's really exciting is that these are all Matter devices, and Aqara will be the first partner to use our "Works via Matter with Home Assistant" badge, giving some great options to use with Home Assistant's amazing Matter integration. + +What's more, this will be the first partner to join since [our recent update to the program](/blog/2024/08/08/works-with-home-assistant-becomes-part-ohf/), meaning device-by-device certification that we tested ourselves. This makes it really easy to see what will give you the best experience in Home Assistant. ## Open source compliance -We have put a lot of work into making sure that Home Assistance is truly open source, from top to bottom. This means ensuring that every library our integrations rely on uses the compliant license. We're now at more than 2,800 integrations, so as you can imagine, this was not a small task. Working with code owners and library developers, we have painstakingly checked that every library is now using an [OSI-approved license](https://opensource.org/license). +We have put a lot of work into making sure that Home Assistant is truly open source, from top to bottom. This means ensuring that every library our integrations rely on uses the compliant license. We're now at more than 2,800 integrations, so as you can imagine, this was not a small task. Working with code owners and library developers, we have painstakingly checked that every library is now using an [OSI-approved license](https://opensource.org/license). This might seem like a small procedural thing, but it is critical to keep integrations and Home Assistant functional far into the future. If you're not aware, libraries are what many device and service integrations rely on to function, by calling in additional protocol specific code that [purposely](https://developers.home-assistant.io/docs/api_lib_index/) sits outside of the Home Assistant project. If an individual or corporation can no longer maintain libraries, a proper open source license allows it to be picked up and continued by others. @@ -151,6 +130,8 @@ We welcome the following new integrations in this release: Manage SMLIGHT SLZB-06 adaptors from Home Assistant. - **[Roth Touchline SL]**, added by [@jnsgruk]
A new integration for the Roth Touchline SL underfloor heating system. +- **[Yale]**, added by [@bdraco]
+ The Yale Home brand now has its own integration and will no longer be using the [August] integration. If you use a Yale Home device with the August integration, you should migrate to the new Yale integration. [Anthropic Conversation]: /integrations/anthropic [Anthropic]: https://anthropic.com/ @@ -160,12 +141,15 @@ We welcome the following new integrations in this release: [Fujitsu FGLair]: /integrations/fujitsu_fglair [SMLIGHT]: /integrations/smlight [Roth Touchline SL]: /integrations/touchline_sl +[Yale]: /integrations/yale +[August]: /integrations/august [@Shulyaka]: https://github.com/Shulyaka [@IceBotYT]: https://github.com/IceBotYT [@crevetor]: https://github.com/crevetor [@tl-sl]: https://github.com/tl-sl [@jnsgruk]: https://github.com/jnsgruk +[@bdraco]: https://github.com/bdraco This release also has a new virtual integration. Virtual integrations are stubs that are handled by other (existing) integrations to help with @@ -183,13 +167,15 @@ It is not just new {% term integrations %} that have been added; existing integrations are also being constantly improved. Here are some of the noteworthy changes to existing integrations: -- Add apsystems diagnostic binary sensors ([@CM000n] - [#123045]) ([apsystems docs]) (new-platform) -- Add sensor platform for Mastodon ([@andrew-codechimp] - [#123434]) ([mastodon docs]) (new-platform) -- Add update platform to AirGradient ([@joostlek] - [#123534]) ([airgradient docs]) (new-platform) -- Add favorite position buttons to Motion Blinds ([@starkillerOG] - [#123489]) ([motion_blinds docs]) (new-platform) -- Add switch platform to chacon_dio integration ([@cnico] - [#122514]) ([chacon_dio docs]) (new-platform) -- Add nest event platform ([@allenporter] - [#123042]) ([nest docs]) (new-platform) -- Add SimpleFin binary sensor for errors ([@jeeftor] - [#122554]) ([simplefin docs]) (new-platform) +- The Mosquitto MQTT broker add-on can now be installed and started automatically when you setup [MQTT](/integrations/mqtt). Great work [@jbouwh]! +- In the [UI for KNX that was introduced last release](/blog/2024/08/07/release-20248/#knx-can-now-be-managed-via-the-ui), you can now also add switch and light entities! Thanks [@farmio]! +- [@allenporter] added event entities to the [Nest](integrations/nest) integration. +- [@bdraco] made it easier to add battery operated [Shelly](/integrations/shelly) devices, you no longer have to manually set an outbound WebSocket configuration. +- [MotionBlinds](/integrations/motion_blinds) now has a button for your favorite position. Thanks [@starkillerOG]. +- [@joostlek] added the abilitiy to update your [AirGradient](/integrations/airgradient) devices from Home Assistant. +- [@CM000n] added diagnostic binary sensors to the [APsystems](/integrations/apsystems) integration. +- The [Mastodon](/integrations/mastodon) integration now shows information about your account, like how many followers you have. Thanks [@andrew-codechimp]! + [@CM000n]: https://github.com/CM000n [@andrew-codechimp]: https://github.com/andrew-codechimp @@ -236,22 +222,6 @@ of this release: deprecated and now removed. They have been using a deprecated mailbox feature that is no longer available. -## Other noteworthy changes - -There are many more improvements in this release; here are some of the other -noteworthy changes this release: - -- Auto configure outbound websocket for sleepy shelly RPC devices [#124545] -- Install and start Mosquitto MQTT broker add-on from MQTT config flow [#124106] -- Use BIGINT SQL type for ID columns [#123973] -- Add UI to create KNX switch and light entities [#122630] -- Add Ollama context window size configuration [#124555] - -[#124545]: https://github.com/home-assistant/core/pull/124545 -[#124106]: https://github.com/home-assistant/core/pull/124106 -[#123973]: https://github.com/home-assistant/core/pull/123973 -[#122630]: https://github.com/home-assistant/core/pull/122630 -[#124555]: https://github.com/home-assistant/core/pull/124555 ## Need help? Join the community! @@ -278,9 +248,186 @@ it is inevitable. We always make sure to document these changes to make the transition as easy as possible for you. This release has the following backward-incompatible changes: +{% details "Recorder database upgrade notice" %} + +This notice applies only if you use the recorder integration with a MySQL or +PostgreSQL database. If you are using the default SQLite database, +you can ignore it. + +Last release included a database upgrade/migration that increases the size of +the number we can store for the identifier fields. + +Not all migrations were successful despite being marked as successful. This +release will do the migration again, but will catch unsuccessful migrations. + +This can cause the database upgrade to take longer than usual, depending on +the size of your database. + +Please be patient and let the upgrade process finish. Do not interrupt the +upgrade process, as this can lead to a corrupted database. + +([@emontnemery] - [#123973]) ([documentation](/integrations/recorder)) + +[@emontnemery]: https://github.com/emontnemery +[#123973]: https://github.com/home-assistant/core/pull/123973 + +{% enddetails %} + +{% details "Asterisk Call Detail Records" %} + +Asterisk Call Detail Records has been deprecated in 2024.3.0 and has now been removed. + +It was using a deprecated mailbox feature that is no longer available. + +([@joostlek] - [#123180]) + +[#123180]: https://github.com/home-assistant/core/pull/123180 + +{% enddetails %} + +{% details "Asterisk Voicemail" %} + +Asterisk Voicemail has been deprecated in 2024.3.0 and has now been removed. + +It was using a deprecated mailbox feature that is no longer available. + +([@joostlek] - [#123180]) + +[#123180]: https://github.com/home-assistant/core/pull/123180 + +{% enddetails %} + +{% details "August" %} + +If you are using a Yale Home device with the [August] integration, you should migrate to the new [Yale] integration. + +Yale Home devices will soon stop working with the August integration. + +([@bdraco] - [#124895]) ([august documentation](/integrations/august) - [yale documentation](/integrations/yale)) + +[#124895]: https://github.com/home-assistant/core/pull/124895 + +{% enddetails %} + +{% details "Ecovacs" %} + +The YAML configuration for the Ecovacs integration was removed. The configuration has been moved to the UI in Home Assistant 2024.2. + +The YAML configuration was automatically imported and should be removed from your YAML configuration. + +[@gjohansson-ST] - [#123605] ([documentation](/integrations/ecovacs)) + +[@gjohansson-ST]: https://github.com/gjohansson-ST +[#123605]: https://github.com/home-assistant/core/pull/123605 + +{% enddetails %} + +{% details "GPSD" %} + +The YAML configuration for the GPSD integration was removed. The configuration has been moved to the UI in Home Assistant 2024.2. + +The YAML configuration was automatically imported and should be removed from your YAML configuration. + +([@gjohansson-ST] - [#123725]) ([documentation](/integrations/gpsd)) + +[#123725]: https://github.com/home-assistant/core/pull/123725 + +{% enddetails %} + +{% details "KNX" %} + +The KNX Climate preset modes are renamed to match the KNX specifications. + +| KNX specifications | Previous | Now | +|---------------------|----------|----------------| +| Auto | none | auto | +| Comfort | comfort | comfort | +| Standby | away | standby | +| Economy | sleep | economy | +| Building protection | eco | building_protection | + +[@farmio] - [#123964] ([documentation](/integrations/knx)) + +[@farmio]: http://gtihub.com/farmio +[#123964]: https://github.com/home-assistant/core/pull/123964 + +{% enddetails %} + +{% details "Logi circle" %} + +Logitech stopped accepting applications for access to the Logi Circle API in May 2022, and the Logi Circle integration has now been removed. + +[@gjohansson-ST] - [#123727] + +[#123727]: https://github.com/home-assistant/core/pull/123727 + +{% enddetails %} + +{% details "Lupusec" %} + +The YAML configuration for the Lupusec integration was removed. The configuration has been moved to the UI in Home Assistant 2024.2. + +The YAML configuration was automatically imported and should be removed from your YAML configuration. + +[@gjohansson-ST] - [#123606] ([documentation](/integrations/lupusec)) + +[#123606]: https://github.com/home-assistant/core/pull/123606 + +{% enddetails %} + +{% details "Lutron" %} + +In Home Assistant 2024.2, fans where converted from a light entity to a fan entity. +The old light entities will no longer work in this release and can be removed. + +[@gjohansson-ST] - [#123607] ([documentation](/integrations/lutron)) + +[#123607]: https://github.com/home-assistant/core/pull/123607 + +{% enddetails %} + +{% details "Mailbox" %} + +The Mailbox platform that was previously deprecated has been removed. + + [@gjohansson-ST] - [#123741] + +[#123741]: https://github.com/home-assistant/core/pull/123741 + +{% enddetails %} + +{% details "MQTT" %} + +The schema option was removed from the MQTT vacuum schema in Home Assistant 2024.2. You should remove this from your YAML configuration if set. + +Manual configured MQTT vacuum entities will break if the schema option is still configured. +When using MQTT discovery the option will be silently ignored. + +[@jbouwh] - [#124722] ([documentation](/integrations/mqtt)) + +[@jbouwh]: https://github.com/jbouwh +[#124722]: https://github.com/home-assistant/core/pull/124722 + +{% enddetails %} + +{% details "Overkiz" %} + + Atlantic CozyTouch Water Heaters will now show the Manual operation mode as Electric. + + A binary sensor was added to indicate if the manual mode is activated. + + Users that have automations or scripts using these entities together with the Manual mode should update the automations or scripts accordingly. + +[@ALERTua] - [#124619] ([documentation](/integrations/overkiz)) + +[@ALERTua]: https://github.com/ALERTua +[#124619]: https://github.com/home-assistant/core/pull/124619 + +{% enddetails %} + {% details "Proximity" %} -In [2024.2 we introduced new sensor entities](/blog/2024/02/07/release-20242/#revamped-proximity-integration) +In 2024.2, [we introduced new sensor entities](/blog/2024/02/07/release-20242/#revamped-proximity-integration) to the [Proximity](/integrations/proximity) {% term integration %} and therefore deprecated the `proximity` entity. Now this deprecated `proximity` entity has been removed. @@ -292,41 +439,23 @@ Now this deprecated `proximity` entity has been removed. {% enddetails %} -{% details "Asterisk Call Detail Records" %} +{% details "Sensibo" %} -Remove deprecated asterisk_cdr integration ([@joostlek] - [#123180]) +The previous PM2.5 sensor for Pure devices was incorrectly reporting a PM2.5 value, but it's actually a number representing an AQI level. The sensor will now provide the new states of 'good', 'moderate', and 'bad'. -[#123180]: https://github.com/home-assistant/core/pull/123180 +[@gjohansson-ST] - [#124151] ([documentation](/integrations/sensibo)) -{% enddetails %} - -{% details "Asterisk Voicemail" %} - -Remove deprecated asterisk_mbox integration ([@joostlek] - [#123180]) - -[#123180]: https://github.com/home-assistant/core/pull/123180 - -{% enddetails %} - -{% details "Lutron" %} - -Remove deprecated fan as light in lutron ([@gjohansson-ST] - [#123607]) ([lutron docs]) (breaking-change) - -[#123607]: https://github.com/home-assistant/core/pull/123607 - -{% enddetails %} - -{% details "Lupusec" %} - -Remove deprecated yaml import from lupusec ([@gjohansson-ST] - [#123606]) ([lupusec docs]) (breaking-change) - -[#123606]: https://github.com/home-assistant/core/pull/123606 +[#124151]: https://github.com/home-assistant/core/pull/124151 {% enddetails %} {% details "Starline" %} -Remove deprecated horn switch in starline ([@gjohansson-ST] - [#123608]) ([starline docs]) (breaking-change) +The horn switch has been deprecated since 2024.1 and is now removed. + +Instead of a switch a horn button entity was added. Please update your automations accordingly. + +([@gjohansson-ST] - [#123608]) ([documentation](/integrations/starline)) [#123608]: https://github.com/home-assistant/core/pull/123608 @@ -334,89 +463,54 @@ Remove deprecated horn switch in starline ([@gjohansson-ST] - [#123608]) ([starl {% details "System monitor" %} -Remove deprecated process sensor from System monitor ([@gjohansson-ST] - [#123616]) ([systemmonitor docs]) (breaking-change) +Removes the deprecated process sensor from the System Monitor integration. +This sensor has been provided as a binary sensor for 6 months, raising a repair issue. + +[@gjohansson-ST] - [#123616] ([documentation](/integrations/systemmonitor)) [#123616]: https://github.com/home-assistant/core/pull/123616 {% enddetails %} -{% details "Ecovacs" %} +{% details "TP-Link Smart Home" %} -Remove deprecated yaml import from Ecovacs ([@gjohansson-ST] - [#123605]) ([ecovacs docs]) (breaking-change) +The binary sensor for "Update available" will no longer be provided by the TP-Link Smart Home integration. -[#123605]: https://github.com/home-assistant/core/pull/123605 +It will be replaced in a subsequent release with the Update entity but is disabled for now due to stability issues when calling the TP-Link cloud API to check the latest firmware version. This may cause devices to go offline. They need to be power-cycled to function again. The sensor was also unreliable and may have returned incorrect data because of rate limiting from the TP-Link cloud. -{% enddetails %} +[@sdb9696] - [#124930] ([documentation](/integrations/tplink)) -{% details "Logi circle" %} - -Remove deprecated logi_circle integration ([@gjohansson-ST] - [#123727]) ([logi_circle docs]) (breaking-change) - -[#123727]: https://github.com/home-assistant/core/pull/123727 - -{% enddetails %} - -{% details "gpsd" %} - -Remove deprecated yaml import for gpsd ([@gjohansson-ST] - [#123725]) ([gpsd docs]) (breaking-change) - -[#123725]: https://github.com/home-assistant/core/pull/123725 +[@sdb9696]: https://github.com/sdb9696 +[#124930]: https://github.com/home-assistant/core/pull/124930 {% enddetails %} {% details "Velux" %} -Remove deprecated yaml import for velux ([@gjohansson-ST] - [#123724]) ([velux docs]) (breaking-change) +The YAML configuration for the Velux integration was removed. The configuration has been moved to the UI in Home Assistant 2024.2. + +The YAML configuration was automatically imported and should be removed from your YAML configuration. + +[@gjohansson-ST] - [#123724] ([documentation](/integrations/velux)) [#123724]: https://github.com/home-assistant/core/pull/123724 {% enddetails %} -{% details "Mailbox" %} +{% details "Zigbee Home Automation" %} -Remove demo mailbox ([@gjohansson-ST] - [#123741]) ([demo docs]) (breaking-change) +- The IKEA Starkvind fan modes have been updated. Automations that used to set the fan to 10% speed to switch it to "auto mode", should now be updated to set the preset to "auto." +In auto mode, the actual fan speed is now properly displayed. -[#123741]: https://github.com/home-assistant/core/pull/123741 + For more information, see the [PR in the ZHA repo](https://github.com/zigpy/zha/pull/87). -{% enddetails %} +- The firmware update entity logic has changed. A device will only be considered "up-to-date" if there is a known firmware update for it and the current firmware version is greater than the firmware update version. If there is no known firmware update, the device firmware state will be considered "unknown", as we can't tell if it's up to date or not. +Previously, we showed "up-to-date" if there was no known firmware which misrepresented the state for many devices. -{% details "KNX" %} +[@puddly] - [#124804] ([documentation](/integrations/zha)) -Rename KNX Climate preset modes according to specification ([@farmio] - [#123964]) ([knx docs]) (breaking-change) - -[#123964]: https://github.com/home-assistant/core/pull/123964 - -{% enddetails %} - -{% details "Sensibo" %} - -Fix Pure AQI value sensor in Sensibo ([@gjohansson-ST] - [#124151]) ([sensibo docs]) (breaking-change) - -[#124151]: https://github.com/home-assistant/core/pull/124151 - -{% enddetails %} - -{% details "Overkiz" %} - -Update overkiz Atlantic Water Heater operation mode switching ([@ALERTua] - [#124619]) ([overkiz docs]) (breaking-change) - -[#124619]: https://github.com/home-assistant/core/pull/124619 - -{% enddetails %} - -{% details "Sisyphus" %} - -Disable sisyphus integration ([@bdraco] - [#124742]) ([sisyphus docs]) (breaking-change) - -[#124742]: https://github.com/home-assistant/core/pull/124742 - -{% enddetails %} - -{% details "MQTT" %} - -Cleanup removed `schema` option from mqtt vacuum platform ([@jbouwh] - [#124722]) ([mqtt docs]) (breaking-change) - -[#124722]: https://github.com/home-assistant/core/pull/124722 +[@puddly]: https://github.com/puddly +[#124804]: https://github.com/home-assistant/core/pull/124804 {% enddetails %} @@ -425,6 +519,9 @@ new features available for your integration: Be sure to follow our [developer blog][devblog]. The following are the most notable for this release: - [New returning type in LawnMowerActivity](https://developers.home-assistant.io/blog/2024/08/23/lawn-mower-activity-returning) +- [Validation of entity action schemas](https://developers.home-assistant.io/blog/2024/08/27/entity-service-schema-validation) +- [Changes to the icon translations schema](https://developers.home-assistant.io/blog/2024/08/27/changed-icon-translations-schema) +- [Template.hass is no longer automatically set when rendering templates](https://developers.home-assistant.io/blog/2024/09/02/template-hass-required) [devblog]: https://developers.home-assistant.io/blog/ diff --git a/source/changelogs/core-2024.9.markdown b/source/changelogs/core-2024.9.markdown index c4b7802430f..770a5cbf6f2 100644 --- a/source/changelogs/core-2024.9.markdown +++ b/source/changelogs/core-2024.9.markdown @@ -9,50 +9,6 @@ These are all the changes included in the Home Assistant Core 2024.9 release. For a summary in a more readable format: [Release notes blog for this release](/blog/2024/09/04/release-20249/). -## New Integrations - -- Anthropic Claude conversation integration ([@Shulyaka] - [#122526]) ([anthropic docs]) (new-integration) -- Add ArtSound as a virtual integration ([@dukeofphilberg] - [#122636]) ([artsound docs]) (new-integration) -- Add Nice G.O. integration ([@IceBotYT] - [#122748]) ([linear_garage_door docs]) (new-integration) -- Add Fujitsu FGLair integration ([@crevetor] - [#109335]) ([fujitsu_hvac docs]) (new-integration) -- New Integration: SMLIGHT SLZB-06 Adapters Integration ([@tl-sl] - [#118675]) ([smlight docs]) (new-integration) -- Add touchlinesl integration ([@jnsgruk] - [#124557]) ([touchlinesl docs]) (new-integration) - -## New Platforms - -- Add apsystems diagnostic binary sensors ([@CM000n] - [#123045]) ([apsystems docs]) (new-platform) -- Add sensor platform for Mastodon ([@andrew-codechimp] - [#123434]) ([mastodon docs]) (new-platform) -- Add update platform to AirGradient ([@joostlek] - [#123534]) ([airgradient docs]) (new-platform) -- Add favorite position buttons to Motion Blinds ([@starkillerOG] - [#123489]) ([motion_blinds docs]) (new-platform) -- Add switch platform to chacon_dio integration ([@cnico] - [#122514]) ([chacon_dio docs]) (new-platform) -- Add light platform to Nice G.O. ([@IceBotYT] - [#124019]) ([nice_go docs]) (new-platform) -- Add switch platform to Nice G.O. ([@IceBotYT] - [#124237]) ([nice_go docs]) (new-platform) -- Add event platform to Nice G.O. ([@IceBotYT] - [#124253]) ([nice_go docs]) (new-platform) -- Add nest event platform ([@allenporter] - [#123042]) ([nest docs]) (new-platform) -- Add SimpleFin binary sensor for errors ([@jeeftor] - [#122554]) ([simplefin docs]) (new-platform) - -## Breaking Changes - -- Remove deprecated asterisk_cdr integration ([@joostlek] - [#123180]) ([asterisk_cdr docs]) (breaking-change) -- Remove deprecated asterisk_mbox integration ([@joostlek] - [#123174]) ([asterisk_mbox docs]) (breaking-change) -- Remove deprecated proximity entity ([@mib1185] - [#123158]) ([proximity docs]) (breaking-change) -- Remove deprecated fan as light in lutron ([@gjohansson-ST] - [#123607]) ([lutron docs]) (breaking-change) -- Remove deprecated yaml import from lupusec ([@gjohansson-ST] - [#123606]) ([lupusec docs]) (breaking-change) -- Remove deprecated horn switch in starline ([@gjohansson-ST] - [#123608]) ([starline docs]) (breaking-change) -- Remove deprecated process sensor from System monitor ([@gjohansson-ST] - [#123616]) ([systemmonitor docs]) (breaking-change) -- Remove deprecated yaml import from Ecovacs ([@gjohansson-ST] - [#123605]) ([ecovacs docs]) (breaking-change) -- Remove deprecated logi_circle integration ([@gjohansson-ST] - [#123727]) ([logi_circle docs]) (breaking-change) -- Remove deprecated yaml import for gpsd ([@gjohansson-ST] - [#123725]) ([gpsd docs]) (breaking-change) -- Remove deprecated yaml import for velux ([@gjohansson-ST] - [#123724]) ([velux docs]) (breaking-change) -- Remove demo mailbox ([@gjohansson-ST] - [#123741]) ([demo docs]) (breaking-change) -- Rename KNX Climate preset modes according to specification ([@farmio] - [#123964]) ([knx docs]) (breaking-change) -- Fix Pure AQI value sensor in Sensibo ([@gjohansson-ST] - [#124151]) ([sensibo docs]) (breaking-change) -- Update overkiz Atlantic Water Heater operation mode switching ([@ALERTua] - [#124619]) ([overkiz docs]) (breaking-change) -- Disable sisyphus integration ([@bdraco] - [#124742]) ([sisyphus docs]) (breaking-change) -- Cleanup removed `schema` option from mqtt vacuum platform ([@jbouwh] - [#124722]) ([mqtt docs]) (breaking-change) - -## All changes - - Bump version to 2024.9.0dev0 ([@frenck] - [#122975]) - Skip binary wheels for pymicro-vad ([@frenck] - [#122982]) - Fix implicit-return in squeezebox ([@epenet] - [#122928]) ([squeezebox docs]) @@ -87,7 +43,7 @@ For a summary in a more readable format: - Improve alignment of live logbook and historical logbook models ([@bdraco] - [#123070]) ([logbook docs]) - Speed up logbook timestamp processing ([@bdraco] - [#123126]) ([logbook docs]) - Optimize logbook row matching ([@bdraco] - [#123127]) ([logbook docs]) -- Bump actions/upload-artifact from 4.3.4 to 4.3.5 ([@dependabot[bot]] - [#123170]) +- Bump actions/upload-artifact from 4.3.4 to 4.3.5 (@dependabot - [#123170]) - Add apsystems diagnostic binary sensors ([@CM000n] - [#123045]) ([apsystems docs]) (new-platform) - Add spaces for readability in licenses.py ([@barryvdh] - [#123173]) - Clean up useless logging handler setting ([@arturpragacz] - [#120974]) @@ -106,13 +62,13 @@ For a summary in a more readable format: - Bump uvcclient to 0.12.1 ([@joostlek] - [#123237]) ([uvc docs]) - Remove myself from DSMR codeowners ([@frenck] - [#123243]) ([dsmr docs]) - Detect blocking ssl context creation in the event loop ([@bdraco] - [#123240]) -- Bump github/codeql-action from 3.25.15 to 3.26.0 ([@dependabot[bot]] - [#123273]) -- Bump actions/upload-artifact from 4.3.5 to 4.3.6 ([@dependabot[bot]] - [#123272]) +- Bump github/codeql-action from 3.25.15 to 3.26.0 (@dependabot - [#123273]) +- Bump actions/upload-artifact from 4.3.5 to 4.3.6 (@dependabot - [#123272]) - remove unneeded type attributes on WebsocketNotification ([@terencehonles] - [#123238]) ([bang_olufsen docs]) - Reload config entry for anthropic on update ([@balloob] - [#123280]) ([anthropic docs]) - Refactor spc tests ([@joostlek] - [#123287]) ([spc docs]) - Fix implicit-return in konnected ([@epenet] - [#122915]) ([konnected docs]) -- Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 ([@dependabot[bot]] - [#123335]) +- Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (@dependabot - [#123335]) - Remove unneeded logs from Yamaha ([@frenck] - [#123349]) - Fix implicit-return in yeelight ([@epenet] - [#122943]) ([yeelight docs]) - Enable Ruff RET501 ([@autinerd] - [#115031]) @@ -315,8 +271,8 @@ For a summary in a more readable format: - Raise on database error in recorder.migration._drop_foreign_key_constraints ([@emontnemery] - [#123645]) ([recorder docs]) - Enable confirm error button in Husqvarna Automower by default ([@Thomas55555] - [#123927]) ([husqvarna_automower docs]) - Rename KNX Climate preset modes according to specification ([@farmio] - [#123964]) ([knx docs]) (breaking-change) -- Bump github/codeql-action from 3.26.0 to 3.26.2 ([@dependabot[bot]] - [#123966]) -- Bump home-assistant/builder from 2024.03.5 to 2024.08.1 ([@dependabot[bot]] - [#123967]) +- Bump github/codeql-action from 3.26.0 to 3.26.2 (@dependabot - [#123966]) +- Bump home-assistant/builder from 2024.03.5 to 2024.08.1 (@dependabot - [#123967]) - Improve code quality of Tesla Fleet tests ([@Bre77] - [#123959]) ([tesla_fleet docs]) - Pass None instead of empty dict when registering entity services ([@emontnemery] - [#123879]) - Fix flaky recorder migration tests ([@emontnemery] - [#123971]) ([recorder docs]) @@ -495,8 +451,8 @@ For a summary in a more readable format: - Improve config flow type hints (part 1) ([@epenet] - [#124343]) - Improve config flow type hints (part 4) ([@epenet] - [#124348]) - Bump dbus-fast to 2.23.0 ([@bdraco] - [#124384]) ([bluetooth docs]) -- Bump github/codeql-action from 3.26.2 to 3.26.4 ([@dependabot[bot]] - [#124390]) -- Bump home-assistant/builder from 2024.08.1 to 2024.08.2 ([@dependabot[bot]] - [#124341]) +- Bump github/codeql-action from 3.26.2 to 3.26.4 (@dependabot - [#124390]) +- Bump home-assistant/builder from 2024.08.1 to 2024.08.2 (@dependabot - [#124341]) - Fix typo in Alexa resources docstring ([@spongebobberts] - [#124388]) ([alexa docs]) - Install and start Mosquitto MQTT broker add on from MQTT config flow ([@jbouwh] - [#124106]) ([mqtt docs]) - Use setup_test_component_platform in Climate tests ([@gjohansson-ST] - [#123941]) ([climate docs]) @@ -583,7 +539,7 @@ For a summary in a more readable format: - Revert "Use speex for noise suppression and auto gain" ([@balloob] - [#124620]) ([voip docs]) ([assist_pipeline docs]) - Handle LCN entity instances only in corresponding platform ([@alengwenus] - [#124589]) ([lcn docs]) - Add test showing we prefer tts entity over legacy tts provider ([@emontnemery] - [#124624]) ([tts docs]) -- Bump github/codeql-action from 3.26.4 to 3.26.5 ([@dependabot[bot]] - [#124615]) +- Bump github/codeql-action from 3.26.4 to 3.26.5 (@dependabot - [#124615]) - Add conductivity sensor to bthome ([@darkfader] - [#124312]) ([bthome docs]) - Prefer stt entity over legacy stt provider ([@emontnemery] - [#124625]) ([stt docs]) - Bump cached-ipaddress to 0.5.0 ([@bdraco] - [#124602]) ([dhcp docs]) @@ -645,7 +601,7 @@ For a summary in a more readable format: - Handle single state requests from ESPHome ([@jesserockz] - [#124660]) ([esphome docs]) - Bump aioambient to 2024.08.0 ([@bdraco] - [#124729]) ([ambient_station docs]) ([ambient_network docs]) - Bump aioshelly to 11.3.0 ([@bdraco] - [#124741]) ([shelly docs]) -- Disable sisyphus integration ([@bdraco] - [#124742]) ([sisyphus docs]) (breaking-change) +- Disable sisyphus integration ([@bdraco] - [#124742]) ([sisyphus docs]) - Remove unnecessary assertion for the Yellow firmware type ([@puddly] - [#124747]) ([homeassistant_yellow docs]) - Bump pyspeex-noise to 1.0.2 ([@synesthesiam] - [#124721]) ([assist_pipeline docs]) - Use ssl util in Tibber ([@functionpointer] - [#123369]) ([tibber docs]) @@ -662,6 +618,131 @@ For a summary in a more readable format: - Standardize import step variable name (part 5) ([@epenet] - [#124698]) ([enocean docs]) ([point docs]) ([smartthings docs]) ([yeelight docs]) ([songpal docs]) ([heos docs]) ([soma docs]) - Bump reolink_aio to 0.9.8 ([@starkillerOG] - [#124763]) ([reolink docs]) - Allow specifying icons for service sections ([@emontnemery] - [#124656]) ([kitchen_sink docs]) +- Use Position instead of Angle for TiltOnlyDevice in motion blinds ([@starkillerOG] - [#123521]) ([motion_blinds docs]) +- Set default name for KNX outgoing telegram source ([@farmio] - [#124439]) ([knx docs]) +- Use KNX group address format from project ([@farmio] - [#124084]) ([knx docs]) +- Improve mediabrowser names for DUO lens Reolink cameras ([@starkillerOG] - [#124766]) ([reolink docs]) +- Improve config flow type hints in vesync ([@epenet] - [#124351]) ([vesync docs]) +- Improve config flow type hints in sense ([@epenet] - [#124350]) ([sense docs]) +- Cleanup unused import in solarlog config flow ([@epenet] - [#124713]) ([solarlog docs]) +- Cleanup unused import in upb config flow ([@epenet] - [#124694]) ([upb docs]) +- Improve config flow type hints in sms ([@epenet] - [#124352]) ([sms docs]) +- Standardize reauth step variable name in config flows ([@epenet] - [#124760]) +- Standardize reauth step variable name in permobil ([@epenet] - [#124764]) ([permobil docs]) +- Add start_reauth helper method to MockConfigEntry ([@epenet] - [#124767]) ([axis docs]) ([abode docs]) ([august docs]) ([airvisual docs]) ([awair docs]) +- Use reauth_confirm in sharkiq ([@epenet] - [#124762]) ([sharkiq docs]) +- Use reauth_confirm in weatherflow_cloud ([@epenet] - [#124761]) ([weatherflow_cloud docs]) +- Handle KNX expose conversion exceptions and unavailable states ([@farmio] - [#124776]) ([knx docs]) +- Simplify aussie_broadband reauth flow ([@epenet] - [#124774]) ([aussie_broadband docs]) +- Standardize reauth step variable name in aseko_pool_live ([@epenet] - [#124765]) ([aseko_pool_live docs]) +- Update icons.json to new service schema part 1 ([@emontnemery] - [#124768]) +- Update icons.json to new service schema part 2 ([@emontnemery] - [#124769]) +- Update icons.json to new service schema part 3 ([@emontnemery] - [#124770]) +- Update icons.json to new service schema part 4 ([@emontnemery] - [#124771]) +- Deduplicate TTS mocks ([@emontnemery] - [#124773]) ([tts docs]) ([assist_pipeline docs]) +- Enforce new service icon schema for core integrations ([@emontnemery] - [#124772]) +- Add YoLink lock V2 support ([@matrixd2] - [#124202]) ([yolink docs]) +- Trigger full CI run on Blueprint integration changes ([@emontnemery] - [#124778]) +- Fix translation for AVM Fritz!Box Tools ([@mib1185] - [#124784]) ([fritz docs]) +- Fix OAuth reauth in Tesla Fleet ([@Bre77] - [#124744]) ([tesla_fleet docs]) +- Prevent nesting sections in data entry flows ([@emontnemery] - [#124645]) +- Use start_reauth helper method in integration tests (h-l) ([@epenet] - [#124787]) +- Use start_reauth helper method in integration tests (e-g) ([@epenet] - [#124785]) +- Use start_reauth helper method in config flow tests (a-d) ([@epenet] - [#124780]) +- Update aioazuredevops to 2.2.1 ([@timmo001] - [#124788]) ([azure_devops docs]) +- Use start_reauth helper method in integration tests (m-o) ([@epenet] - [#124790]) +- Add get_queue action for Sonos ([@PeteRager] - [#124707]) ([sonos docs]) +- Use start_reauth helper method in integration tests (p-r) ([@epenet] - [#124792]) +- Use start_reauth helper method in broadlink and bthome ([@epenet] - [#124783]) ([broadlink docs]) +- Update frontend to 20240828.0 ([@piitaya] - [#124791]) ([frontend docs]) +- Build hassfest docker image and pushlish it on beta/stable releases ([@edenhaus] - [#124706]) +- Remove deprecated mailbox platform ([@gjohansson-ST] - [#123740]) ([mailbox docs]) (breaking-change) +- Use start_reauth helper method in integration tests (t) ([@epenet] - [#124794]) +- Use start_reauth helper method in integration tests (s) ([@epenet] - [#124793]) +- Use start_reauth helper method in integration tests (u-z) ([@epenet] - [#124796]) +- Split august and yale integrations ([@bdraco] - [#124677]) ([august docs]) ([yale docs]) (new-integration) +- Enable Ruff TCH rules ([@autinerd] - [#124396]) +- Add current intraday price ranking to Tibber price sensor ([@haugene] - [#124595]) ([tibber docs]) +- Check KNX integration is loaded on websocket calls ([@farmio] - [#123178]) ([knx docs]) +- 2024.9.0b0: It's beta time ([@edenhaus] - [#124807]) (new-platform) +- Bump pyatmo to 8.1.0 ([@cgtobi] - [#124340]) ([netatmo docs]) (beta fix) +- Bump pydaikin to 2.13.5 ([@fredrike] - [#124802]) ([daikin docs]) (beta fix) +- Address yale review comments ([@bdraco] - [#124810]) ([yale docs]) (beta fix) +- Fix sonos get_queue service call to restrict to sonos media_player entities ([@PeteRager] - [#124815]) ([sonos docs]) (beta fix) +- Redirect virtual integration yale_home to point to yale ([@bdraco] - [#124817]) ([yale_home docs]) (beta fix) +- Add missing dependencies to yale ([@bdraco] - [#124821]) ([yale docs]) (beta fix) +- Update utility_account_id in Opower to be lowercase in statistic id ([@AutonomousOwl] - [#124837]) ([opower docs]) (beta fix) +- Fix Mastodon migrate config entry log warning ([@andrew-codechimp] - [#124848]) ([mastodon docs]) (beta fix) +- Bump pydaikin to 2.13.6 ([@fredrike] - [#124852]) ([daikin docs]) (beta fix) +- Add missing translation key in Knocki ([@joostlek] - [#124862]) ([knocki docs]) (beta fix) +- Update frontend to 20240829.0 ([@bramkragten] - [#124864]) ([frontend docs]) (beta fix) +- Bump aioruckus to v0.41 removing blocking call to load_default_certs from ruckus_unleashed integration ([@ms264556] - [#123974]) ([ruckus_unleashed docs]) (beta fix) +- Bump weatherflow4py to 0.2.23 ([@jeeftor] - [#124072]) ([weatherflow_cloud docs]) (beta fix) +- Attempt to fix IndexError in Opower ([@tronikos] - [#124478]) ([opower docs]) (beta fix) +- Bump ZHA to 0.0.32 ([@puddly] - [#124804]) ([zha docs]) (breaking-change) (beta fix) +- Address august review comments ([@bdraco] - [#124819]) ([august docs]) (beta fix) +- Optimize hassfest image ([@edenhaus] - [#124855]) (beta fix) +- Bump PyTurboJPEG to 1.7.5 ([@edenhaus] - [#124865]) ([camera docs]) ([stream docs]) (beta fix) +- Bump `nice-go` to 0.3.8 ([@IceBotYT] - [#124872]) ([nice_go docs]) (beta fix) +- Handle CancelledError in bluesound integration ([@LouisChrist] - [#124873]) ([bluesound docs]) (beta fix) +- Bump intents to 2024.8.29 ([@synesthesiam] - [#124874]) ([conversation docs]) (beta fix) +- Address yale review comments part 2 ([@bdraco] - [#124887]) ([yale docs]) (beta fix) +- Fix ZHA group removal entity registry cleanup ([@TheJulianJES] - [#124889]) ([zha docs]) (beta fix) +- Bump aioesphomeapi to 25.3.1 ([@bdraco] - [#124890]) ([esphome docs]) (beta fix) +- Bump yalexs to 8.5.5 ([@bdraco] - [#124891]) ([august docs]) ([yale docs]) (beta fix) +- Add a repair issue for Yale Home users using the August integration ([@bdraco] - [#124895]) ([august docs]) (breaking-change) (beta fix) +- Bump lmcloud to 1.2.1 ([@zweckj] - [#124908]) ([lamarzocco docs]) (beta fix) +- Bump lmcloud 1.2.2 ([@zweckj] - [#124911]) ([lamarzocco docs]) (beta fix) +- Bump aiomealie to 0.9.0 ([@joostlek] - [#124924]) ([mealie docs]) (beta fix) +- Bump Intellifire to 4.1.9 ([@jeeftor] - [#121091]) ([intellifire docs]) (beta fix) +- Fix Tado fan speed for AC ([@EtienneSOU] - [#122415]) ([tado docs]) (beta fix) +- Restore sisyphus integration ([@bdraco] - [#124749]) ([sisyphus docs]) (beta fix) +- Bump renault-api to v0.2.7 ([@vhkristof] - [#124858]) ([renault docs]) (beta fix) +- Bump aioshelly to 11.4.1 to accomodate shelly GetStatus calls that take a few seconds to respond ([@bdraco] - [#124893]) ([shelly docs]) (beta fix) +- Make set_value required in number template ([@joostlek] - [#124917]) ([template docs]) (beta fix) +- Bump python-kasa to 0.7.2 ([@sdb9696] - [#124930]) ([tplink docs]) (breaking-change) (beta fix) +- Exclude tplink firmware entities ([@sdb9696] - [#124935]) ([tplink docs]) (beta fix) +- Define household support in Mealie ([@joostlek] - [#124950]) ([mealie docs]) (beta fix) +- Bump yarl to 1.9.6 ([@bdraco] - [#124955]) (beta fix) +- Bump aiopulse to 0.4.6 ([@atmurray] - [#124964]) ([acmeda docs]) (beta fix) +- Fix ollama blocking on load_default_certs ([@rikroe] - [#125012]) ([ollama docs]) (beta fix) +- Fix telegram_bot blocking on load_default_certs ([@rikroe] - [#125014]) ([telegram_bot docs]) (beta fix) +- Fix BMW client blocking on load_default_certs ([@rikroe] - [#125015]) ([bmw_connected_drive docs]) (beta fix) +- Bump aiomealie to 0.9.1 ([@joostlek] - [#125017]) ([mealie docs]) (beta fix) +- Bump python-telegram-bot to 21.5 ([@MartinHjelmare] - [#125025]) ([telegram_bot docs]) (beta fix) +- Add ConductivityConverter in websocket_api.py ([@dontinelli] - [#125029]) ([recorder docs]) (beta fix) +- Add diagnostics platform to modern forms ([@mib1185] - [#125032]) ([modern_forms docs]) (beta fix) +- Bump yarl to 1.9.7 ([@bdraco] - [#125035]) (beta fix) +- Bump aioshelly to 11.4.2 ([@thecode] - [#125036]) ([shelly docs]) (beta fix) +- Don't raise when registering entity service with invalid schema ([@emontnemery] - [#125057]) (beta fix) +- Bump habluetooth to 3.4.0 ([@bdraco] - [#125058]) ([bluetooth docs]) (beta fix) +- Fix motionblinds_ble tests ([@emontnemery] - [#125060]) ([motionblinds_ble docs]) (beta fix) +- Bump androidtvremote2 to 0.1.2 to fix blocking event loop when loading ssl certificate chain ([@tronikos] - [#125061]) ([androidtv_remote docs]) (beta fix) +- Bump fyta_cli to 0.6.6 ([@dontinelli] - [#125065]) ([fyta docs]) (beta fix) +- Update frontend to 20240902.0 ([@piitaya] - [#125093]) ([frontend docs]) (beta fix) +- Call async_write_ha_state after ring update ([@sdb9696] - [#125096]) ([ring docs]) (beta fix) +- Fix updating insteon modem configuration while disconnected ([@UltimateGG] - [#121918]) ([insteon docs]) (beta fix) +- Add Linkplay mTLS/HTTPS and improve logging ([@dukeofphilberg] - [#124307]) ([linkplay docs]) (beta fix) +- Handle telegram polling errors ([@MartinHjelmare] - [#124327]) ([telegram_bot docs]) (beta fix) +- Update nest to only include the image attachment payload for cameras that support fetching media ([@allenporter] - [#124590]) ([nest docs]) (beta fix) +- Increase timeout for fetching buienradar weather data ([@mjj4791] - [#124597]) ([buienradar docs]) (beta fix) +- Fix blocking calls for OpenAI conversation ([@rikroe] - [#125010]) ([openai_conversation docs]) (beta fix) +- Bump py-madvr2 to 1.6.32 ([@iloveicedgreentea] - [#125049]) ([madvr docs]) (beta fix) +- Fix area registry indexing when there is a name collision ([@arturpragacz] - [#125050]) (beta fix) +- Bump aiolifx to 1.0.9 and remove unused HomeKit model prefixes ([@Djelibeybi] - [#125055]) ([lifx docs]) (beta fix) +- Bump yalexs to 8.6.0 ([@bdraco] - [#125102]) ([august docs]) ([yale docs]) (beta fix) +- Bump PySwitchbot to 0.48.2 ([@Michal4K] - [#125113]) ([switchbot docs]) (beta fix) +- Fix unhandled exception with missing IQVIA data ([@bachya] - [#125114]) ([iqvia docs]) (beta fix) +- Fix Onkyo action select_hdmi_output ([@arturpragacz] - [#125115]) ([onkyo docs]) (beta fix) +- Pass hass clientsession to ring config flow ([@sdb9696] - [#125119]) ([ring docs]) (beta fix) +- Correct device serial for ViCare integration ([@CFenner] - [#125125]) ([vicare docs]) (beta fix) +- Fix energy sensor for ThirdReality Matter powerplug ([@marcelveldt] - [#125140]) ([matter docs]) (beta fix) +- Log deprecation warning when `cv.template` is called from wrong thread ([@emontnemery] - [#125141]) (beta fix) +- Log deprecation warning when `template.Template` is created without `hass` ([@emontnemery] - [#125142]) (beta fix) +- Restore unnecessary assignment of Template.hass in event helper ([@emontnemery] - [#125143]) (beta fix) +- Bump aiomealie to 0.9.2 ([@andrew-codechimp] - [#125153]) ([mealie docs]) (beta fix) +- Update frontend to 20240903.1 ([@piitaya] - [#125160]) ([frontend docs]) (beta fix) +- Bump yalexs to 8.6.2 ([@bdraco] - [#125162]) ([august docs]) ([yale docs]) (beta fix) [#108664]: https://github.com/home-assistant/core/pull/108664 [#109335]: https://github.com/home-assistant/core/pull/109335 @@ -686,6 +767,7 @@ For a summary in a more readable format: [#120668]: https://github.com/home-assistant/core/pull/120668 [#120973]: https://github.com/home-assistant/core/pull/120973 [#120974]: https://github.com/home-assistant/core/pull/120974 +[#121091]: https://github.com/home-assistant/core/pull/121091 [#121229]: https://github.com/home-assistant/core/pull/121229 [#121483]: https://github.com/home-assistant/core/pull/121483 [#121484]: https://github.com/home-assistant/core/pull/121484 @@ -694,11 +776,13 @@ For a summary in a more readable format: [#121849]: https://github.com/home-assistant/core/pull/121849 [#121877]: https://github.com/home-assistant/core/pull/121877 [#121878]: https://github.com/home-assistant/core/pull/121878 +[#121918]: https://github.com/home-assistant/core/pull/121918 [#121943]: https://github.com/home-assistant/core/pull/121943 [#121969]: https://github.com/home-assistant/core/pull/121969 [#122193]: https://github.com/home-assistant/core/pull/122193 [#122235]: https://github.com/home-assistant/core/pull/122235 [#122320]: https://github.com/home-assistant/core/pull/122320 +[#122415]: https://github.com/home-assistant/core/pull/122415 [#122460]: https://github.com/home-assistant/core/pull/122460 [#122477]: https://github.com/home-assistant/core/pull/122477 [#122510]: https://github.com/home-assistant/core/pull/122510 @@ -770,6 +854,7 @@ For a summary in a more readable format: [#123170]: https://github.com/home-assistant/core/pull/123170 [#123173]: https://github.com/home-assistant/core/pull/123173 [#123174]: https://github.com/home-assistant/core/pull/123174 +[#123178]: https://github.com/home-assistant/core/pull/123178 [#123180]: https://github.com/home-assistant/core/pull/123180 [#123185]: https://github.com/home-assistant/core/pull/123185 [#123197]: https://github.com/home-assistant/core/pull/123197 @@ -822,6 +907,7 @@ For a summary in a more readable format: [#123500]: https://github.com/home-assistant/core/pull/123500 [#123505]: https://github.com/home-assistant/core/pull/123505 [#123515]: https://github.com/home-assistant/core/pull/123515 +[#123521]: https://github.com/home-assistant/core/pull/123521 [#123522]: https://github.com/home-assistant/core/pull/123522 [#123523]: https://github.com/home-assistant/core/pull/123523 [#123531]: https://github.com/home-assistant/core/pull/123531 @@ -904,6 +990,7 @@ For a summary in a more readable format: [#123725]: https://github.com/home-assistant/core/pull/123725 [#123727]: https://github.com/home-assistant/core/pull/123727 [#123734]: https://github.com/home-assistant/core/pull/123734 +[#123740]: https://github.com/home-assistant/core/pull/123740 [#123741]: https://github.com/home-assistant/core/pull/123741 [#123753]: https://github.com/home-assistant/core/pull/123753 [#123756]: https://github.com/home-assistant/core/pull/123756 @@ -1016,6 +1103,7 @@ For a summary in a more readable format: [#123971]: https://github.com/home-assistant/core/pull/123971 [#123972]: https://github.com/home-assistant/core/pull/123972 [#123973]: https://github.com/home-assistant/core/pull/123973 +[#123974]: https://github.com/home-assistant/core/pull/123974 [#123977]: https://github.com/home-assistant/core/pull/123977 [#123985]: https://github.com/home-assistant/core/pull/123985 [#123990]: https://github.com/home-assistant/core/pull/123990 @@ -1049,11 +1137,13 @@ For a summary in a more readable format: [#124065]: https://github.com/home-assistant/core/pull/124065 [#124067]: https://github.com/home-assistant/core/pull/124067 [#124069]: https://github.com/home-assistant/core/pull/124069 +[#124072]: https://github.com/home-assistant/core/pull/124072 [#124074]: https://github.com/home-assistant/core/pull/124074 [#124075]: https://github.com/home-assistant/core/pull/124075 [#124076]: https://github.com/home-assistant/core/pull/124076 [#124078]: https://github.com/home-assistant/core/pull/124078 [#124082]: https://github.com/home-assistant/core/pull/124082 +[#124084]: https://github.com/home-assistant/core/pull/124084 [#124101]: https://github.com/home-assistant/core/pull/124101 [#124102]: https://github.com/home-assistant/core/pull/124102 [#124106]: https://github.com/home-assistant/core/pull/124106 @@ -1078,6 +1168,7 @@ For a summary in a more readable format: [#124194]: https://github.com/home-assistant/core/pull/124194 [#124197]: https://github.com/home-assistant/core/pull/124197 [#124200]: https://github.com/home-assistant/core/pull/124200 +[#124202]: https://github.com/home-assistant/core/pull/124202 [#124203]: https://github.com/home-assistant/core/pull/124203 [#124204]: https://github.com/home-assistant/core/pull/124204 [#124205]: https://github.com/home-assistant/core/pull/124205 @@ -1125,20 +1216,26 @@ For a summary in a more readable format: [#124292]: https://github.com/home-assistant/core/pull/124292 [#124293]: https://github.com/home-assistant/core/pull/124293 [#124302]: https://github.com/home-assistant/core/pull/124302 +[#124307]: https://github.com/home-assistant/core/pull/124307 [#124308]: https://github.com/home-assistant/core/pull/124308 [#124310]: https://github.com/home-assistant/core/pull/124310 [#124312]: https://github.com/home-assistant/core/pull/124312 [#124321]: https://github.com/home-assistant/core/pull/124321 [#124322]: https://github.com/home-assistant/core/pull/124322 +[#124327]: https://github.com/home-assistant/core/pull/124327 [#124329]: https://github.com/home-assistant/core/pull/124329 [#124332]: https://github.com/home-assistant/core/pull/124332 [#124334]: https://github.com/home-assistant/core/pull/124334 +[#124340]: https://github.com/home-assistant/core/pull/124340 [#124341]: https://github.com/home-assistant/core/pull/124341 [#124343]: https://github.com/home-assistant/core/pull/124343 [#124344]: https://github.com/home-assistant/core/pull/124344 [#124346]: https://github.com/home-assistant/core/pull/124346 [#124348]: https://github.com/home-assistant/core/pull/124348 [#124349]: https://github.com/home-assistant/core/pull/124349 +[#124350]: https://github.com/home-assistant/core/pull/124350 +[#124351]: https://github.com/home-assistant/core/pull/124351 +[#124352]: https://github.com/home-assistant/core/pull/124352 [#124360]: https://github.com/home-assistant/core/pull/124360 [#124361]: https://github.com/home-assistant/core/pull/124361 [#124363]: https://github.com/home-assistant/core/pull/124363 @@ -1149,6 +1246,7 @@ For a summary in a more readable format: [#124390]: https://github.com/home-assistant/core/pull/124390 [#124392]: https://github.com/home-assistant/core/pull/124392 [#124393]: https://github.com/home-assistant/core/pull/124393 +[#124396]: https://github.com/home-assistant/core/pull/124396 [#124398]: https://github.com/home-assistant/core/pull/124398 [#124399]: https://github.com/home-assistant/core/pull/124399 [#124406]: https://github.com/home-assistant/core/pull/124406 @@ -1162,6 +1260,7 @@ For a summary in a more readable format: [#124432]: https://github.com/home-assistant/core/pull/124432 [#124433]: https://github.com/home-assistant/core/pull/124433 [#124437]: https://github.com/home-assistant/core/pull/124437 +[#124439]: https://github.com/home-assistant/core/pull/124439 [#124445]: https://github.com/home-assistant/core/pull/124445 [#124447]: https://github.com/home-assistant/core/pull/124447 [#124451]: https://github.com/home-assistant/core/pull/124451 @@ -1170,6 +1269,7 @@ For a summary in a more readable format: [#124465]: https://github.com/home-assistant/core/pull/124465 [#124474]: https://github.com/home-assistant/core/pull/124474 [#124475]: https://github.com/home-assistant/core/pull/124475 +[#124478]: https://github.com/home-assistant/core/pull/124478 [#124485]: https://github.com/home-assistant/core/pull/124485 [#124486]: https://github.com/home-assistant/core/pull/124486 [#124489]: https://github.com/home-assistant/core/pull/124489 @@ -1203,7 +1303,10 @@ For a summary in a more readable format: [#124582]: https://github.com/home-assistant/core/pull/124582 [#124587]: https://github.com/home-assistant/core/pull/124587 [#124589]: https://github.com/home-assistant/core/pull/124589 +[#124590]: https://github.com/home-assistant/core/pull/124590 [#124591]: https://github.com/home-assistant/core/pull/124591 +[#124595]: https://github.com/home-assistant/core/pull/124595 +[#124597]: https://github.com/home-assistant/core/pull/124597 [#124601]: https://github.com/home-assistant/core/pull/124601 [#124602]: https://github.com/home-assistant/core/pull/124602 [#124604]: https://github.com/home-assistant/core/pull/124604 @@ -1223,6 +1326,7 @@ For a summary in a more readable format: [#124637]: https://github.com/home-assistant/core/pull/124637 [#124639]: https://github.com/home-assistant/core/pull/124639 [#124641]: https://github.com/home-assistant/core/pull/124641 +[#124645]: https://github.com/home-assistant/core/pull/124645 [#124646]: https://github.com/home-assistant/core/pull/124646 [#124648]: https://github.com/home-assistant/core/pull/124648 [#124651]: https://github.com/home-assistant/core/pull/124651 @@ -1237,6 +1341,7 @@ For a summary in a more readable format: [#124673]: https://github.com/home-assistant/core/pull/124673 [#124674]: https://github.com/home-assistant/core/pull/124674 [#124676]: https://github.com/home-assistant/core/pull/124676 +[#124677]: https://github.com/home-assistant/core/pull/124677 [#124678]: https://github.com/home-assistant/core/pull/124678 [#124679]: https://github.com/home-assistant/core/pull/124679 [#124680]: https://github.com/home-assistant/core/pull/124680 @@ -1246,15 +1351,19 @@ For a summary in a more readable format: [#124685]: https://github.com/home-assistant/core/pull/124685 [#124688]: https://github.com/home-assistant/core/pull/124688 [#124692]: https://github.com/home-assistant/core/pull/124692 +[#124694]: https://github.com/home-assistant/core/pull/124694 [#124696]: https://github.com/home-assistant/core/pull/124696 [#124697]: https://github.com/home-assistant/core/pull/124697 [#124698]: https://github.com/home-assistant/core/pull/124698 [#124699]: https://github.com/home-assistant/core/pull/124699 [#124705]: https://github.com/home-assistant/core/pull/124705 +[#124706]: https://github.com/home-assistant/core/pull/124706 +[#124707]: https://github.com/home-assistant/core/pull/124707 [#124709]: https://github.com/home-assistant/core/pull/124709 [#124710]: https://github.com/home-assistant/core/pull/124710 [#124711]: https://github.com/home-assistant/core/pull/124711 [#124712]: https://github.com/home-assistant/core/pull/124712 +[#124713]: https://github.com/home-assistant/core/pull/124713 [#124716]: https://github.com/home-assistant/core/pull/124716 [#124721]: https://github.com/home-assistant/core/pull/124721 [#124722]: https://github.com/home-assistant/core/pull/124722 @@ -1265,15 +1374,113 @@ For a summary in a more readable format: [#124737]: https://github.com/home-assistant/core/pull/124737 [#124741]: https://github.com/home-assistant/core/pull/124741 [#124742]: https://github.com/home-assistant/core/pull/124742 +[#124744]: https://github.com/home-assistant/core/pull/124744 [#124746]: https://github.com/home-assistant/core/pull/124746 [#124747]: https://github.com/home-assistant/core/pull/124747 +[#124749]: https://github.com/home-assistant/core/pull/124749 [#124750]: https://github.com/home-assistant/core/pull/124750 [#124754]: https://github.com/home-assistant/core/pull/124754 [#124756]: https://github.com/home-assistant/core/pull/124756 [#124758]: https://github.com/home-assistant/core/pull/124758 +[#124760]: https://github.com/home-assistant/core/pull/124760 +[#124761]: https://github.com/home-assistant/core/pull/124761 +[#124762]: https://github.com/home-assistant/core/pull/124762 [#124763]: https://github.com/home-assistant/core/pull/124763 +[#124764]: https://github.com/home-assistant/core/pull/124764 +[#124765]: https://github.com/home-assistant/core/pull/124765 +[#124766]: https://github.com/home-assistant/core/pull/124766 +[#124767]: https://github.com/home-assistant/core/pull/124767 +[#124768]: https://github.com/home-assistant/core/pull/124768 +[#124769]: https://github.com/home-assistant/core/pull/124769 +[#124770]: https://github.com/home-assistant/core/pull/124770 +[#124771]: https://github.com/home-assistant/core/pull/124771 +[#124772]: https://github.com/home-assistant/core/pull/124772 +[#124773]: https://github.com/home-assistant/core/pull/124773 +[#124774]: https://github.com/home-assistant/core/pull/124774 +[#124776]: https://github.com/home-assistant/core/pull/124776 +[#124778]: https://github.com/home-assistant/core/pull/124778 +[#124780]: https://github.com/home-assistant/core/pull/124780 +[#124783]: https://github.com/home-assistant/core/pull/124783 +[#124784]: https://github.com/home-assistant/core/pull/124784 +[#124785]: https://github.com/home-assistant/core/pull/124785 +[#124787]: https://github.com/home-assistant/core/pull/124787 +[#124788]: https://github.com/home-assistant/core/pull/124788 +[#124790]: https://github.com/home-assistant/core/pull/124790 +[#124791]: https://github.com/home-assistant/core/pull/124791 +[#124792]: https://github.com/home-assistant/core/pull/124792 +[#124793]: https://github.com/home-assistant/core/pull/124793 +[#124794]: https://github.com/home-assistant/core/pull/124794 +[#124796]: https://github.com/home-assistant/core/pull/124796 +[#124802]: https://github.com/home-assistant/core/pull/124802 +[#124804]: https://github.com/home-assistant/core/pull/124804 +[#124807]: https://github.com/home-assistant/core/pull/124807 +[#124810]: https://github.com/home-assistant/core/pull/124810 +[#124815]: https://github.com/home-assistant/core/pull/124815 +[#124817]: https://github.com/home-assistant/core/pull/124817 +[#124819]: https://github.com/home-assistant/core/pull/124819 +[#124821]: https://github.com/home-assistant/core/pull/124821 +[#124837]: https://github.com/home-assistant/core/pull/124837 +[#124848]: https://github.com/home-assistant/core/pull/124848 +[#124852]: https://github.com/home-assistant/core/pull/124852 +[#124855]: https://github.com/home-assistant/core/pull/124855 +[#124858]: https://github.com/home-assistant/core/pull/124858 +[#124862]: https://github.com/home-assistant/core/pull/124862 +[#124864]: https://github.com/home-assistant/core/pull/124864 +[#124865]: https://github.com/home-assistant/core/pull/124865 +[#124872]: https://github.com/home-assistant/core/pull/124872 +[#124873]: https://github.com/home-assistant/core/pull/124873 +[#124874]: https://github.com/home-assistant/core/pull/124874 +[#124887]: https://github.com/home-assistant/core/pull/124887 +[#124889]: https://github.com/home-assistant/core/pull/124889 +[#124890]: https://github.com/home-assistant/core/pull/124890 +[#124891]: https://github.com/home-assistant/core/pull/124891 +[#124893]: https://github.com/home-assistant/core/pull/124893 +[#124895]: https://github.com/home-assistant/core/pull/124895 +[#124908]: https://github.com/home-assistant/core/pull/124908 +[#124911]: https://github.com/home-assistant/core/pull/124911 +[#124917]: https://github.com/home-assistant/core/pull/124917 +[#124924]: https://github.com/home-assistant/core/pull/124924 +[#124930]: https://github.com/home-assistant/core/pull/124930 +[#124935]: https://github.com/home-assistant/core/pull/124935 +[#124950]: https://github.com/home-assistant/core/pull/124950 +[#124955]: https://github.com/home-assistant/core/pull/124955 +[#124964]: https://github.com/home-assistant/core/pull/124964 +[#125010]: https://github.com/home-assistant/core/pull/125010 +[#125012]: https://github.com/home-assistant/core/pull/125012 +[#125014]: https://github.com/home-assistant/core/pull/125014 +[#125015]: https://github.com/home-assistant/core/pull/125015 +[#125017]: https://github.com/home-assistant/core/pull/125017 +[#125025]: https://github.com/home-assistant/core/pull/125025 +[#125029]: https://github.com/home-assistant/core/pull/125029 +[#125032]: https://github.com/home-assistant/core/pull/125032 +[#125035]: https://github.com/home-assistant/core/pull/125035 +[#125036]: https://github.com/home-assistant/core/pull/125036 +[#125049]: https://github.com/home-assistant/core/pull/125049 +[#125050]: https://github.com/home-assistant/core/pull/125050 +[#125055]: https://github.com/home-assistant/core/pull/125055 +[#125057]: https://github.com/home-assistant/core/pull/125057 +[#125058]: https://github.com/home-assistant/core/pull/125058 +[#125060]: https://github.com/home-assistant/core/pull/125060 +[#125061]: https://github.com/home-assistant/core/pull/125061 +[#125065]: https://github.com/home-assistant/core/pull/125065 +[#125093]: https://github.com/home-assistant/core/pull/125093 +[#125096]: https://github.com/home-assistant/core/pull/125096 +[#125102]: https://github.com/home-assistant/core/pull/125102 +[#125113]: https://github.com/home-assistant/core/pull/125113 +[#125114]: https://github.com/home-assistant/core/pull/125114 +[#125115]: https://github.com/home-assistant/core/pull/125115 +[#125119]: https://github.com/home-assistant/core/pull/125119 +[#125125]: https://github.com/home-assistant/core/pull/125125 +[#125140]: https://github.com/home-assistant/core/pull/125140 +[#125141]: https://github.com/home-assistant/core/pull/125141 +[#125142]: https://github.com/home-assistant/core/pull/125142 +[#125143]: https://github.com/home-assistant/core/pull/125143 +[#125153]: https://github.com/home-assistant/core/pull/125153 +[#125160]: https://github.com/home-assistant/core/pull/125160 +[#125162]: https://github.com/home-assistant/core/pull/125162 [@ALERTua]: https://github.com/ALERTua [@Anrijs]: https://github.com/Anrijs +[@AutonomousOwl]: https://github.com/AutonomousOwl [@Bre77]: https://github.com/Bre77 [@CFenner]: https://github.com/CFenner [@CM000n]: https://github.com/CM000n @@ -1281,12 +1488,16 @@ For a summary in a more readable format: [@DCSBL]: https://github.com/DCSBL [@DeathCamel58]: https://github.com/DeathCamel58 [@Djelibeybi]: https://github.com/Djelibeybi +[@EtienneSOU]: https://github.com/EtienneSOU [@IceBotYT]: https://github.com/IceBotYT [@JoramQ]: https://github.com/JoramQ [@Jordi1990]: https://github.com/Jordi1990 [@Kane610]: https://github.com/Kane610 [@LaStrada]: https://github.com/LaStrada [@LennP]: https://github.com/LennP +[@LouisChrist]: https://github.com/LouisChrist +[@MartinHjelmare]: https://github.com/MartinHjelmare +[@Michal4K]: https://github.com/Michal4K [@Moustachauve]: https://github.com/Moustachauve [@NECH2004]: https://github.com/NECH2004 [@Noltari]: https://github.com/Noltari @@ -1294,7 +1505,9 @@ For a summary in a more readable format: [@PeteRager]: https://github.com/PeteRager [@Petro31]: https://github.com/Petro31 [@Shulyaka]: https://github.com/Shulyaka +[@TheJulianJES]: https://github.com/TheJulianJES [@Thomas55555]: https://github.com/Thomas55555 +[@UltimateGG]: https://github.com/UltimateGG [@ViViDboarder]: https://github.com/ViViDboarder [@WebSpider]: https://github.com/WebSpider [@YogevBokobza]: https://github.com/YogevBokobza @@ -1304,21 +1517,24 @@ For a summary in a more readable format: [@amitfin]: https://github.com/amitfin [@andrew-codechimp]: https://github.com/andrew-codechimp [@arturpragacz]: https://github.com/arturpragacz +[@atmurray]: https://github.com/atmurray [@austinmroczek]: https://github.com/austinmroczek [@autinerd]: https://github.com/autinerd +[@bachya]: https://github.com/bachya [@balloob]: https://github.com/balloob [@barryvdh]: https://github.com/barryvdh [@bdraco]: https://github.com/bdraco [@bieniu]: https://github.com/bieniu +[@bramkragten]: https://github.com/bramkragten [@c0ffeeca7]: https://github.com/c0ffeeca7 [@carlos-sarmiento]: https://github.com/carlos-sarmiento [@cdce8p]: https://github.com/cdce8p +[@cgtobi]: https://github.com/cgtobi [@cmbuckley]: https://github.com/cmbuckley [@cnico]: https://github.com/cnico [@crevetor]: https://github.com/crevetor [@dalinicus]: https://github.com/dalinicus [@darkfader]: https://github.com/darkfader -[@dependabot[bot]]: https://github.com/apps/dependabot [@dknowles2]: https://github.com/dknowles2 [@dmulcahey]: https://github.com/dmulcahey [@dontinelli]: https://github.com/dontinelli @@ -1333,10 +1549,12 @@ For a summary in a more readable format: [@farmio]: https://github.com/farmio [@flabbamann]: https://github.com/flabbamann [@formatBCE]: https://github.com/formatBCE +[@fredrike]: https://github.com/fredrike [@frenck]: https://github.com/frenck [@functionpointer]: https://github.com/functionpointer [@gjohansson-ST]: https://github.com/gjohansson-ST [@gunkaaa]: https://github.com/gunkaaa +[@haugene]: https://github.com/haugene [@iloveicedgreentea]: https://github.com/iloveicedgreentea [@jbergler]: https://github.com/jbergler [@jbouwh]: https://github.com/jbouwh @@ -1350,15 +1568,19 @@ For a summary in a more readable format: [@jschlyter]: https://github.com/jschlyter [@kimdv]: https://github.com/kimdv [@liudger]: https://github.com/liudger +[@marcelveldt]: https://github.com/marcelveldt [@matrixd2]: https://github.com/matrixd2 [@mawoka-myblock]: https://github.com/mawoka-myblock [@miaucl]: https://github.com/miaucl [@mib1185]: https://github.com/mib1185 [@mikey0000]: https://github.com/mikey0000 [@mj23000]: https://github.com/mj23000 +[@mjj4791]: https://github.com/mjj4791 +[@ms264556]: https://github.com/ms264556 [@mvn23]: https://github.com/mvn23 [@noahhusby]: https://github.com/noahhusby [@pfrazer]: https://github.com/pfrazer +[@piitaya]: https://github.com/piitaya [@puddly]: https://github.com/puddly [@raman325]: https://github.com/raman325 [@red-island]: https://github.com/red-island @@ -1372,311 +1594,343 @@ For a summary in a more readable format: [@tdfountain]: https://github.com/tdfountain [@terencehonles]: https://github.com/terencehonles [@thecode]: https://github.com/thecode +[@timmo001]: https://github.com/timmo001 [@tl-sl]: https://github.com/tl-sl [@tr4nt0r]: https://github.com/tr4nt0r [@tronikos]: https://github.com/tronikos +[@vhkristof]: https://github.com/vhkristof [@yangqian]: https://github.com/yangqian [@yarikoptic]: https://github.com/yarikoptic [@yuxincs]: https://github.com/yuxincs +[@zweckj]: https://github.com/zweckj [@zxdavb]: https://github.com/zxdavb -[acer_projector docs]: https://www.home-assistant.io/integrations/acer_projector/ -[advantage_air docs]: https://www.home-assistant.io/integrations/advantage_air/ -[airgradient docs]: https://www.home-assistant.io/integrations/airgradient/ -[airthings_ble docs]: https://www.home-assistant.io/integrations/airthings_ble/ -[airvisual_pro docs]: https://www.home-assistant.io/integrations/airvisual_pro/ -[airzone docs]: https://www.home-assistant.io/integrations/airzone/ -[airzone_cloud docs]: https://www.home-assistant.io/integrations/airzone_cloud/ -[alarm_control_panel docs]: https://www.home-assistant.io/integrations/alarm_control_panel/ -[alert docs]: https://www.home-assistant.io/integrations/alert/ -[alexa docs]: https://www.home-assistant.io/integrations/alexa/ -[amazon_polly docs]: https://www.home-assistant.io/integrations/amazon_polly/ -[ambient_network docs]: https://www.home-assistant.io/integrations/ambient_network/ -[ambient_station docs]: https://www.home-assistant.io/integrations/ambient_station/ -[anthropic docs]: https://www.home-assistant.io/integrations/anthropic/ -[apache_kafka docs]: https://www.home-assistant.io/integrations/apache_kafka/ -[apcupsd docs]: https://www.home-assistant.io/integrations/apcupsd/ -[apple_tv docs]: https://www.home-assistant.io/integrations/apple_tv/ -[application_credentials docs]: https://www.home-assistant.io/integrations/application_credentials/ -[apsystems docs]: https://www.home-assistant.io/integrations/apsystems/ -[aquacell docs]: https://www.home-assistant.io/integrations/aquacell/ -[aranet docs]: https://www.home-assistant.io/integrations/aranet/ -[arest docs]: https://www.home-assistant.io/integrations/arest/ -[artsound docs]: https://www.home-assistant.io/integrations/artsound/ -[assist_pipeline docs]: https://www.home-assistant.io/integrations/assist_pipeline/ -[asterisk_cdr docs]: https://www.home-assistant.io/integrations/asterisk_cdr/ -[asterisk_mbox docs]: https://www.home-assistant.io/integrations/asterisk_mbox/ -[august docs]: https://www.home-assistant.io/integrations/august/ -[auth docs]: https://www.home-assistant.io/integrations/auth/ -[automation docs]: https://www.home-assistant.io/integrations/automation/ -[bang_olufsen docs]: https://www.home-assistant.io/integrations/bang_olufsen/ -[binary_sensor docs]: https://www.home-assistant.io/integrations/binary_sensor/ -[blebox docs]: https://www.home-assistant.io/integrations/blebox/ -[bluetooth docs]: https://www.home-assistant.io/integrations/bluetooth/ -[bmw_connected_drive docs]: https://www.home-assistant.io/integrations/bmw_connected_drive/ -[bring docs]: https://www.home-assistant.io/integrations/bring/ -[broadlink docs]: https://www.home-assistant.io/integrations/broadlink/ -[brother docs]: https://www.home-assistant.io/integrations/brother/ -[bsblan docs]: https://www.home-assistant.io/integrations/bsblan/ -[bthome docs]: https://www.home-assistant.io/integrations/bthome/ -[buienradar docs]: https://www.home-assistant.io/integrations/buienradar/ -[camera docs]: https://www.home-assistant.io/integrations/camera/ -[canary docs]: https://www.home-assistant.io/integrations/canary/ -[cert_expiry docs]: https://www.home-assistant.io/integrations/cert_expiry/ -[chacon_dio docs]: https://www.home-assistant.io/integrations/chacon_dio/ -[climate docs]: https://www.home-assistant.io/integrations/climate/ -[cloud docs]: https://www.home-assistant.io/integrations/cloud/ -[command_line docs]: https://www.home-assistant.io/integrations/command_line/ -[control4 docs]: https://www.home-assistant.io/integrations/control4/ -[conversation docs]: https://www.home-assistant.io/integrations/conversation/ -[coolmaster docs]: https://www.home-assistant.io/integrations/coolmaster/ -[deconz docs]: https://www.home-assistant.io/integrations/deconz/ -[demo docs]: https://www.home-assistant.io/integrations/demo/ -[denonavr docs]: https://www.home-assistant.io/integrations/denonavr/ -[derivative docs]: https://www.home-assistant.io/integrations/derivative/ -[dhcp docs]: https://www.home-assistant.io/integrations/dhcp/ -[doods docs]: https://www.home-assistant.io/integrations/doods/ -[doorbird docs]: https://www.home-assistant.io/integrations/doorbird/ -[drop_connect docs]: https://www.home-assistant.io/integrations/drop_connect/ -[dsmr docs]: https://www.home-assistant.io/integrations/dsmr/ -[duckdns docs]: https://www.home-assistant.io/integrations/duckdns/ -[dweet docs]: https://www.home-assistant.io/integrations/dweet/ -[dynalite docs]: https://www.home-assistant.io/integrations/dynalite/ -[eafm docs]: https://www.home-assistant.io/integrations/eafm/ -[ecovacs docs]: https://www.home-assistant.io/integrations/ecovacs/ -[elevenlabs docs]: https://www.home-assistant.io/integrations/elevenlabs/ -[emby docs]: https://www.home-assistant.io/integrations/emby/ -[emoncms docs]: https://www.home-assistant.io/integrations/emoncms/ -[emulated_kasa docs]: https://www.home-assistant.io/integrations/emulated_kasa/ -[energy docs]: https://www.home-assistant.io/integrations/energy/ -[enigma2 docs]: https://www.home-assistant.io/integrations/enigma2/ -[enocean docs]: https://www.home-assistant.io/integrations/enocean/ -[esphome docs]: https://www.home-assistant.io/integrations/esphome/ -[evohome docs]: https://www.home-assistant.io/integrations/evohome/ -[ffmpeg docs]: https://www.home-assistant.io/integrations/ffmpeg/ -[file docs]: https://www.home-assistant.io/integrations/file/ -[filesize docs]: https://www.home-assistant.io/integrations/filesize/ -[flic docs]: https://www.home-assistant.io/integrations/flic/ -[flick_electric docs]: https://www.home-assistant.io/integrations/flick_electric/ -[flipr docs]: https://www.home-assistant.io/integrations/flipr/ -[flux docs]: https://www.home-assistant.io/integrations/flux/ -[fritzbox docs]: https://www.home-assistant.io/integrations/fritzbox/ -[fronius docs]: https://www.home-assistant.io/integrations/fronius/ -[fujitsu_fglair docs]: https://www.home-assistant.io/integrations/fujitsu_fglair/ -[fujitsu_hvac docs]: https://www.home-assistant.io/integrations/fujitsu_hvac/ -[fully_kiosk docs]: https://www.home-assistant.io/integrations/fully_kiosk/ -[fyta docs]: https://www.home-assistant.io/integrations/fyta/ -[geonetnz_volcano docs]: https://www.home-assistant.io/integrations/geonetnz_volcano/ -[google docs]: https://www.home-assistant.io/integrations/google/ -[google_assistant docs]: https://www.home-assistant.io/integrations/google_assistant/ -[google_translate docs]: https://www.home-assistant.io/integrations/google_translate/ -[gpsd docs]: https://www.home-assistant.io/integrations/gpsd/ -[habitica docs]: https://www.home-assistant.io/integrations/habitica/ -[hassio docs]: https://www.home-assistant.io/integrations/hassio/ -[heos docs]: https://www.home-assistant.io/integrations/heos/ -[history docs]: https://www.home-assistant.io/integrations/history/ -[history_stats docs]: https://www.home-assistant.io/integrations/history_stats/ -[hive docs]: https://www.home-assistant.io/integrations/hive/ -[homeassistant docs]: https://www.home-assistant.io/integrations/homeassistant/ -[homeassistant_hardware docs]: https://www.home-assistant.io/integrations/homeassistant_hardware/ -[homeassistant_sky_connect docs]: https://www.home-assistant.io/integrations/homeassistant_sky_connect/ -[homeassistant_yellow docs]: https://www.home-assistant.io/integrations/homeassistant_yellow/ -[homekit docs]: https://www.home-assistant.io/integrations/homekit/ -[homekit_controller docs]: https://www.home-assistant.io/integrations/homekit_controller/ -[homematic docs]: https://www.home-assistant.io/integrations/homematic/ -[homematicip_cloud docs]: https://www.home-assistant.io/integrations/homematicip_cloud/ -[homewizard docs]: https://www.home-assistant.io/integrations/homewizard/ -[homeworks docs]: https://www.home-assistant.io/integrations/homeworks/ -[hp_ilo docs]: https://www.home-assistant.io/integrations/hp_ilo/ -[husqvarna_automower docs]: https://www.home-assistant.io/integrations/husqvarna_automower/ -[hydrawise docs]: https://www.home-assistant.io/integrations/hydrawise/ -[influxdb docs]: https://www.home-assistant.io/integrations/influxdb/ -[input_datetime docs]: https://www.home-assistant.io/integrations/input_datetime/ -[insteon docs]: https://www.home-assistant.io/integrations/insteon/ -[intent_script docs]: https://www.home-assistant.io/integrations/intent_script/ -[iotawatt docs]: https://www.home-assistant.io/integrations/iotawatt/ -[iron_os docs]: https://www.home-assistant.io/integrations/iron_os/ -[ista_ecotrend docs]: https://www.home-assistant.io/integrations/ista_ecotrend/ -[jewish_calendar docs]: https://www.home-assistant.io/integrations/jewish_calendar/ -[jvc_projector docs]: https://www.home-assistant.io/integrations/jvc_projector/ -[keba docs]: https://www.home-assistant.io/integrations/keba/ -[kitchen_sink docs]: https://www.home-assistant.io/integrations/kitchen_sink/ -[knx docs]: https://www.home-assistant.io/integrations/knx/ -[konnected docs]: https://www.home-assistant.io/integrations/konnected/ -[lametric docs]: https://www.home-assistant.io/integrations/lametric/ -[landisgyr_heat_meter docs]: https://www.home-assistant.io/integrations/landisgyr_heat_meter/ -[lawn_mower docs]: https://www.home-assistant.io/integrations/lawn_mower/ -[lcn docs]: https://www.home-assistant.io/integrations/lcn/ -[ld2410_ble docs]: https://www.home-assistant.io/integrations/ld2410_ble/ -[led_ble docs]: https://www.home-assistant.io/integrations/led_ble/ -[lifx docs]: https://www.home-assistant.io/integrations/lifx/ -[linear_garage_door docs]: https://www.home-assistant.io/integrations/linear_garage_door/ -[linkplay docs]: https://www.home-assistant.io/integrations/linkplay/ -[locative docs]: https://www.home-assistant.io/integrations/locative/ -[logbook docs]: https://www.home-assistant.io/integrations/logbook/ -[logi_circle docs]: https://www.home-assistant.io/integrations/logi_circle/ -[lupusec docs]: https://www.home-assistant.io/integrations/lupusec/ -[lutron docs]: https://www.home-assistant.io/integrations/lutron/ -[lyric docs]: https://www.home-assistant.io/integrations/lyric/ -[madvr docs]: https://www.home-assistant.io/integrations/madvr/ -[mailgun docs]: https://www.home-assistant.io/integrations/mailgun/ -[manual docs]: https://www.home-assistant.io/integrations/manual/ -[manual_mqtt docs]: https://www.home-assistant.io/integrations/manual_mqtt/ -[mastodon docs]: https://www.home-assistant.io/integrations/mastodon/ -[matrix docs]: https://www.home-assistant.io/integrations/matrix/ -[matter docs]: https://www.home-assistant.io/integrations/matter/ -[media_extractor docs]: https://www.home-assistant.io/integrations/media_extractor/ -[media_player docs]: https://www.home-assistant.io/integrations/media_player/ -[meteoalarm docs]: https://www.home-assistant.io/integrations/meteoalarm/ -[mfi docs]: https://www.home-assistant.io/integrations/mfi/ -[minio docs]: https://www.home-assistant.io/integrations/minio/ -[mobile_app docs]: https://www.home-assistant.io/integrations/mobile_app/ -[mochad docs]: https://www.home-assistant.io/integrations/mochad/ -[modbus docs]: https://www.home-assistant.io/integrations/modbus/ -[motion_blinds docs]: https://www.home-assistant.io/integrations/motion_blinds/ -[motionblinds_ble docs]: https://www.home-assistant.io/integrations/motionblinds_ble/ -[mpd docs]: https://www.home-assistant.io/integrations/mpd/ -[mqtt docs]: https://www.home-assistant.io/integrations/mqtt/ -[mysensors docs]: https://www.home-assistant.io/integrations/mysensors/ -[nest docs]: https://www.home-assistant.io/integrations/nest/ -[nextcloud docs]: https://www.home-assistant.io/integrations/nextcloud/ -[nextdns docs]: https://www.home-assistant.io/integrations/nextdns/ -[nfandroidtv docs]: https://www.home-assistant.io/integrations/nfandroidtv/ -[nice_go docs]: https://www.home-assistant.io/integrations/nice_go/ -[notify docs]: https://www.home-assistant.io/integrations/notify/ -[number docs]: https://www.home-assistant.io/integrations/number/ -[nut docs]: https://www.home-assistant.io/integrations/nut/ -[nx584 docs]: https://www.home-assistant.io/integrations/nx584/ -[nzbget docs]: https://www.home-assistant.io/integrations/nzbget/ -[ollama docs]: https://www.home-assistant.io/integrations/ollama/ -[onkyo docs]: https://www.home-assistant.io/integrations/onkyo/ -[onvif docs]: https://www.home-assistant.io/integrations/onvif/ -[openai_conversation docs]: https://www.home-assistant.io/integrations/openai_conversation/ -[openalpr_cloud docs]: https://www.home-assistant.io/integrations/openalpr_cloud/ -[opentherm_gw docs]: https://www.home-assistant.io/integrations/opentherm_gw/ -[openuv docs]: https://www.home-assistant.io/integrations/openuv/ -[opower docs]: https://www.home-assistant.io/integrations/opower/ -[otbr docs]: https://www.home-assistant.io/integrations/otbr/ -[overkiz docs]: https://www.home-assistant.io/integrations/overkiz/ -[owntracks docs]: https://www.home-assistant.io/integrations/owntracks/ -[panasonic_viera docs]: https://www.home-assistant.io/integrations/panasonic_viera/ -[person docs]: https://www.home-assistant.io/integrations/person/ -[pilight docs]: https://www.home-assistant.io/integrations/pilight/ -[plex docs]: https://www.home-assistant.io/integrations/plex/ -[point docs]: https://www.home-assistant.io/integrations/point/ -[powerwall docs]: https://www.home-assistant.io/integrations/powerwall/ -[private_ble_device docs]: https://www.home-assistant.io/integrations/private_ble_device/ -[prometheus docs]: https://www.home-assistant.io/integrations/prometheus/ -[proximity docs]: https://www.home-assistant.io/integrations/proximity/ -[prusalink docs]: https://www.home-assistant.io/integrations/prusalink/ -[ps4 docs]: https://www.home-assistant.io/integrations/ps4/ -[purpleair docs]: https://www.home-assistant.io/integrations/purpleair/ -[pyload docs]: https://www.home-assistant.io/integrations/pyload/ -[python_script docs]: https://www.home-assistant.io/integrations/python_script/ -[rainforest_eagle docs]: https://www.home-assistant.io/integrations/rainforest_eagle/ -[rainmachine docs]: https://www.home-assistant.io/integrations/rainmachine/ -[recollect_waste docs]: https://www.home-assistant.io/integrations/recollect_waste/ -[recorder docs]: https://www.home-assistant.io/integrations/recorder/ -[reolink docs]: https://www.home-assistant.io/integrations/reolink/ -[repairs docs]: https://www.home-assistant.io/integrations/repairs/ -[rest docs]: https://www.home-assistant.io/integrations/rest/ -[rest_command docs]: https://www.home-assistant.io/integrations/rest_command/ -[rfxtrx docs]: https://www.home-assistant.io/integrations/rfxtrx/ -[ridwell docs]: https://www.home-assistant.io/integrations/ridwell/ -[ring docs]: https://www.home-assistant.io/integrations/ring/ -[risco docs]: https://www.home-assistant.io/integrations/risco/ -[roborock docs]: https://www.home-assistant.io/integrations/roborock/ -[rpi_power docs]: https://www.home-assistant.io/integrations/rpi_power/ -[rss_feed_template docs]: https://www.home-assistant.io/integrations/rss_feed_template/ -[russound_rio docs]: https://www.home-assistant.io/integrations/russound_rio/ -[scrape docs]: https://www.home-assistant.io/integrations/scrape/ -[sensibo docs]: https://www.home-assistant.io/integrations/sensibo/ -[sensor docs]: https://www.home-assistant.io/integrations/sensor/ -[serial docs]: https://www.home-assistant.io/integrations/serial/ -[seventeentrack docs]: https://www.home-assistant.io/integrations/seventeentrack/ -[sharkiq docs]: https://www.home-assistant.io/integrations/sharkiq/ -[shelly docs]: https://www.home-assistant.io/integrations/shelly/ -[sia docs]: https://www.home-assistant.io/integrations/sia/ -[simplefin docs]: https://www.home-assistant.io/integrations/simplefin/ -[siren docs]: https://www.home-assistant.io/integrations/siren/ -[sisyphus docs]: https://www.home-assistant.io/integrations/sisyphus/ -[slack docs]: https://www.home-assistant.io/integrations/slack/ -[sma docs]: https://www.home-assistant.io/integrations/sma/ -[smart_meter_texas docs]: https://www.home-assistant.io/integrations/smart_meter_texas/ -[smartthings docs]: https://www.home-assistant.io/integrations/smartthings/ -[smarttub docs]: https://www.home-assistant.io/integrations/smarttub/ -[smlight docs]: https://www.home-assistant.io/integrations/smlight/ -[snmp docs]: https://www.home-assistant.io/integrations/snmp/ -[solarlog docs]: https://www.home-assistant.io/integrations/solarlog/ -[soma docs]: https://www.home-assistant.io/integrations/soma/ -[somfy_mylink docs]: https://www.home-assistant.io/integrations/somfy_mylink/ -[songpal docs]: https://www.home-assistant.io/integrations/songpal/ -[sonos docs]: https://www.home-assistant.io/integrations/sonos/ -[spc docs]: https://www.home-assistant.io/integrations/spc/ -[spotify docs]: https://www.home-assistant.io/integrations/spotify/ -[sql docs]: https://www.home-assistant.io/integrations/sql/ -[squeezebox docs]: https://www.home-assistant.io/integrations/squeezebox/ -[ssdp docs]: https://www.home-assistant.io/integrations/ssdp/ -[starline docs]: https://www.home-assistant.io/integrations/starline/ -[stream docs]: https://www.home-assistant.io/integrations/stream/ -[stt docs]: https://www.home-assistant.io/integrations/stt/ -[subaru docs]: https://www.home-assistant.io/integrations/subaru/ -[swiss_public_transport docs]: https://www.home-assistant.io/integrations/swiss_public_transport/ -[switcher_kis docs]: https://www.home-assistant.io/integrations/switcher_kis/ -[synology_dsm docs]: https://www.home-assistant.io/integrations/synology_dsm/ -[systemmonitor docs]: https://www.home-assistant.io/integrations/systemmonitor/ -[tado docs]: https://www.home-assistant.io/integrations/tado/ -[tasmota docs]: https://www.home-assistant.io/integrations/tasmota/ -[tcp docs]: https://www.home-assistant.io/integrations/tcp/ -[technove docs]: https://www.home-assistant.io/integrations/technove/ -[telegram_bot docs]: https://www.home-assistant.io/integrations/telegram_bot/ -[telnet docs]: https://www.home-assistant.io/integrations/telnet/ -[template docs]: https://www.home-assistant.io/integrations/template/ -[tensorflow docs]: https://www.home-assistant.io/integrations/tensorflow/ -[tesla_fleet docs]: https://www.home-assistant.io/integrations/tesla_fleet/ -[teslemetry docs]: https://www.home-assistant.io/integrations/teslemetry/ -[thread docs]: https://www.home-assistant.io/integrations/thread/ -[tibber docs]: https://www.home-assistant.io/integrations/tibber/ -[tile docs]: https://www.home-assistant.io/integrations/tile/ -[tod docs]: https://www.home-assistant.io/integrations/tod/ -[todoist docs]: https://www.home-assistant.io/integrations/todoist/ -[toon docs]: https://www.home-assistant.io/integrations/toon/ -[totalconnect docs]: https://www.home-assistant.io/integrations/totalconnect/ -[touchlinesl docs]: https://www.home-assistant.io/integrations/touchlinesl/ -[tplink docs]: https://www.home-assistant.io/integrations/tplink/ -[traccar docs]: https://www.home-assistant.io/integrations/traccar/ -[trafikverket_train docs]: https://www.home-assistant.io/integrations/trafikverket_train/ -[tts docs]: https://www.home-assistant.io/integrations/tts/ -[ukraine_alarm docs]: https://www.home-assistant.io/integrations/ukraine_alarm/ -[unifi docs]: https://www.home-assistant.io/integrations/unifi/ -[unifiprotect docs]: https://www.home-assistant.io/integrations/unifiprotect/ -[universal docs]: https://www.home-assistant.io/integrations/universal/ -[upb docs]: https://www.home-assistant.io/integrations/upb/ -[upnp docs]: https://www.home-assistant.io/integrations/upnp/ -[uvc docs]: https://www.home-assistant.io/integrations/uvc/ -[vacuum docs]: https://www.home-assistant.io/integrations/vacuum/ -[valve docs]: https://www.home-assistant.io/integrations/valve/ -[velbus docs]: https://www.home-assistant.io/integrations/velbus/ -[velux docs]: https://www.home-assistant.io/integrations/velux/ -[venstar docs]: https://www.home-assistant.io/integrations/venstar/ -[vesync docs]: https://www.home-assistant.io/integrations/vesync/ -[vicare docs]: https://www.home-assistant.io/integrations/vicare/ -[voip docs]: https://www.home-assistant.io/integrations/voip/ -[water_heater docs]: https://www.home-assistant.io/integrations/water_heater/ -[watttime docs]: https://www.home-assistant.io/integrations/watttime/ -[weatherflow_cloud docs]: https://www.home-assistant.io/integrations/weatherflow_cloud/ -[webostv docs]: https://www.home-assistant.io/integrations/webostv/ -[websocket_api docs]: https://www.home-assistant.io/integrations/websocket_api/ -[wemo docs]: https://www.home-assistant.io/integrations/wemo/ -[wilight docs]: https://www.home-assistant.io/integrations/wilight/ -[withings docs]: https://www.home-assistant.io/integrations/withings/ -[xiaomi docs]: https://www.home-assistant.io/integrations/xiaomi/ -[xiaomi_aqara docs]: https://www.home-assistant.io/integrations/xiaomi_aqara/ -[xiaomi_miio docs]: https://www.home-assistant.io/integrations/xiaomi_miio/ -[yale_smart_alarm docs]: https://www.home-assistant.io/integrations/yale_smart_alarm/ -[yandex_transport docs]: https://www.home-assistant.io/integrations/yandex_transport/ -[yeelight docs]: https://www.home-assistant.io/integrations/yeelight/ -[yolink docs]: https://www.home-assistant.io/integrations/yolink/ -[zeroconf docs]: https://www.home-assistant.io/integrations/zeroconf/ -[zerproc docs]: https://www.home-assistant.io/integrations/zerproc/ -[zha docs]: https://www.home-assistant.io/integrations/zha/ -[zwave_js docs]: https://www.home-assistant.io/integrations/zwave_js/ \ No newline at end of file +[abode docs]: /integrations/abode/ +[acer_projector docs]: /integrations/acer_projector/ +[acmeda docs]: /integrations/acmeda/ +[advantage_air docs]: /integrations/advantage_air/ +[airgradient docs]: /integrations/airgradient/ +[airthings_ble docs]: /integrations/airthings_ble/ +[airvisual docs]: /integrations/airvisual/ +[airvisual_pro docs]: /integrations/airvisual_pro/ +[airzone docs]: /integrations/airzone/ +[airzone_cloud docs]: /integrations/airzone_cloud/ +[alarm_control_panel docs]: /integrations/alarm_control_panel/ +[alert docs]: /integrations/alert/ +[alexa docs]: /integrations/alexa/ +[amazon_polly docs]: /integrations/amazon_polly/ +[ambient_network docs]: /integrations/ambient_network/ +[ambient_station docs]: /integrations/ambient_station/ +[androidtv_remote docs]: /integrations/androidtv_remote/ +[anthropic docs]: /integrations/anthropic/ +[apache_kafka docs]: /integrations/apache_kafka/ +[apcupsd docs]: /integrations/apcupsd/ +[apple_tv docs]: /integrations/apple_tv/ +[application_credentials docs]: /integrations/application_credentials/ +[apsystems docs]: /integrations/apsystems/ +[aquacell docs]: /integrations/aquacell/ +[aranet docs]: /integrations/aranet/ +[arest docs]: /integrations/arest/ +[artsound docs]: /integrations/artsound/ +[aseko_pool_live docs]: /integrations/aseko_pool_live/ +[assist_pipeline docs]: /integrations/assist_pipeline/ +[asterisk_cdr docs]: /integrations/asterisk_cdr/ +[asterisk_mbox docs]: /integrations/asterisk_mbox/ +[august docs]: /integrations/august/ +[aussie_broadband docs]: /integrations/aussie_broadband/ +[auth docs]: /integrations/auth/ +[automation docs]: /integrations/automation/ +[awair docs]: /integrations/awair/ +[axis docs]: /integrations/axis/ +[azure_devops docs]: /integrations/azure_devops/ +[bang_olufsen docs]: /integrations/bang_olufsen/ +[binary_sensor docs]: /integrations/binary_sensor/ +[blebox docs]: /integrations/blebox/ +[bluesound docs]: /integrations/bluesound/ +[bluetooth docs]: /integrations/bluetooth/ +[bmw_connected_drive docs]: /integrations/bmw_connected_drive/ +[bring docs]: /integrations/bring/ +[broadlink docs]: /integrations/broadlink/ +[brother docs]: /integrations/brother/ +[bsblan docs]: /integrations/bsblan/ +[bthome docs]: /integrations/bthome/ +[buienradar docs]: /integrations/buienradar/ +[camera docs]: /integrations/camera/ +[canary docs]: /integrations/canary/ +[cert_expiry docs]: /integrations/cert_expiry/ +[chacon_dio docs]: /integrations/chacon_dio/ +[climate docs]: /integrations/climate/ +[cloud docs]: /integrations/cloud/ +[command_line docs]: /integrations/command_line/ +[control4 docs]: /integrations/control4/ +[conversation docs]: /integrations/conversation/ +[coolmaster docs]: /integrations/coolmaster/ +[daikin docs]: /integrations/daikin/ +[deconz docs]: /integrations/deconz/ +[demo docs]: /integrations/demo/ +[denonavr docs]: /integrations/denonavr/ +[derivative docs]: /integrations/derivative/ +[dhcp docs]: /integrations/dhcp/ +[doods docs]: /integrations/doods/ +[doorbird docs]: /integrations/doorbird/ +[drop_connect docs]: /integrations/drop_connect/ +[dsmr docs]: /integrations/dsmr/ +[duckdns docs]: /integrations/duckdns/ +[dweet docs]: /integrations/dweet/ +[dynalite docs]: /integrations/dynalite/ +[eafm docs]: /integrations/eafm/ +[ecovacs docs]: /integrations/ecovacs/ +[elevenlabs docs]: /integrations/elevenlabs/ +[emby docs]: /integrations/emby/ +[emoncms docs]: /integrations/emoncms/ +[emulated_kasa docs]: /integrations/emulated_kasa/ +[energy docs]: /integrations/energy/ +[enigma2 docs]: /integrations/enigma2/ +[enocean docs]: /integrations/enocean/ +[esphome docs]: /integrations/esphome/ +[evohome docs]: /integrations/evohome/ +[ffmpeg docs]: /integrations/ffmpeg/ +[file docs]: /integrations/file/ +[filesize docs]: /integrations/filesize/ +[flic docs]: /integrations/flic/ +[flick_electric docs]: /integrations/flick_electric/ +[flipr docs]: /integrations/flipr/ +[flux docs]: /integrations/flux/ +[fritz docs]: /integrations/fritz/ +[fritzbox docs]: /integrations/fritzbox/ +[fronius docs]: /integrations/fronius/ +[frontend docs]: /integrations/frontend/ +[fujitsu_fglair docs]: /integrations/fujitsu_fglair/ +[fujitsu_hvac docs]: /integrations/fujitsu_hvac/ +[fully_kiosk docs]: /integrations/fully_kiosk/ +[fyta docs]: /integrations/fyta/ +[geonetnz_volcano docs]: /integrations/geonetnz_volcano/ +[google docs]: /integrations/google/ +[google_assistant docs]: /integrations/google_assistant/ +[google_translate docs]: /integrations/google_translate/ +[gpsd docs]: /integrations/gpsd/ +[habitica docs]: /integrations/habitica/ +[hassio docs]: /integrations/hassio/ +[heos docs]: /integrations/heos/ +[history docs]: /integrations/history/ +[history_stats docs]: /integrations/history_stats/ +[hive docs]: /integrations/hive/ +[homeassistant docs]: /integrations/homeassistant/ +[homeassistant_hardware docs]: /integrations/homeassistant_hardware/ +[homeassistant_sky_connect docs]: /integrations/homeassistant_sky_connect/ +[homeassistant_yellow docs]: /integrations/homeassistant_yellow/ +[homekit docs]: /integrations/homekit/ +[homekit_controller docs]: /integrations/homekit_controller/ +[homematic docs]: /integrations/homematic/ +[homematicip_cloud docs]: /integrations/homematicip_cloud/ +[homewizard docs]: /integrations/homewizard/ +[homeworks docs]: /integrations/homeworks/ +[hp_ilo docs]: /integrations/hp_ilo/ +[husqvarna_automower docs]: /integrations/husqvarna_automower/ +[hydrawise docs]: /integrations/hydrawise/ +[influxdb docs]: /integrations/influxdb/ +[input_datetime docs]: /integrations/input_datetime/ +[insteon docs]: /integrations/insteon/ +[intellifire docs]: /integrations/intellifire/ +[intent_script docs]: /integrations/intent_script/ +[iotawatt docs]: /integrations/iotawatt/ +[iqvia docs]: /integrations/iqvia/ +[iron_os docs]: /integrations/iron_os/ +[ista_ecotrend docs]: /integrations/ista_ecotrend/ +[jewish_calendar docs]: /integrations/jewish_calendar/ +[jvc_projector docs]: /integrations/jvc_projector/ +[keba docs]: /integrations/keba/ +[kitchen_sink docs]: /integrations/kitchen_sink/ +[knocki docs]: /integrations/knocki/ +[knx docs]: /integrations/knx/ +[konnected docs]: /integrations/konnected/ +[lamarzocco docs]: /integrations/lamarzocco/ +[lametric docs]: /integrations/lametric/ +[landisgyr_heat_meter docs]: /integrations/landisgyr_heat_meter/ +[lawn_mower docs]: /integrations/lawn_mower/ +[lcn docs]: /integrations/lcn/ +[ld2410_ble docs]: /integrations/ld2410_ble/ +[led_ble docs]: /integrations/led_ble/ +[lifx docs]: /integrations/lifx/ +[linear_garage_door docs]: /integrations/linear_garage_door/ +[linkplay docs]: /integrations/linkplay/ +[locative docs]: /integrations/locative/ +[logbook docs]: /integrations/logbook/ +[logi_circle docs]: /integrations/logi_circle/ +[lupusec docs]: /integrations/lupusec/ +[lutron docs]: /integrations/lutron/ +[lyric docs]: /integrations/lyric/ +[madvr docs]: /integrations/madvr/ +[mailbox docs]: /integrations/mailbox/ +[mailgun docs]: /integrations/mailgun/ +[manual docs]: /integrations/manual/ +[manual_mqtt docs]: /integrations/manual_mqtt/ +[mastodon docs]: /integrations/mastodon/ +[matrix docs]: /integrations/matrix/ +[matter docs]: /integrations/matter/ +[mealie docs]: /integrations/mealie/ +[media_extractor docs]: /integrations/media_extractor/ +[media_player docs]: /integrations/media_player/ +[meteoalarm docs]: /integrations/meteoalarm/ +[mfi docs]: /integrations/mfi/ +[minio docs]: /integrations/minio/ +[mobile_app docs]: /integrations/mobile_app/ +[mochad docs]: /integrations/mochad/ +[modbus docs]: /integrations/modbus/ +[modern_forms docs]: /integrations/modern_forms/ +[motion_blinds docs]: /integrations/motion_blinds/ +[motionblinds_ble docs]: /integrations/motionblinds_ble/ +[mpd docs]: /integrations/mpd/ +[mqtt docs]: /integrations/mqtt/ +[mysensors docs]: /integrations/mysensors/ +[nest docs]: /integrations/nest/ +[netatmo docs]: /integrations/netatmo/ +[nextcloud docs]: /integrations/nextcloud/ +[nextdns docs]: /integrations/nextdns/ +[nfandroidtv docs]: /integrations/nfandroidtv/ +[nice_go docs]: /integrations/nice_go/ +[notify docs]: /integrations/notify/ +[number docs]: /integrations/number/ +[nut docs]: /integrations/nut/ +[nx584 docs]: /integrations/nx584/ +[nzbget docs]: /integrations/nzbget/ +[ollama docs]: /integrations/ollama/ +[onkyo docs]: /integrations/onkyo/ +[onvif docs]: /integrations/onvif/ +[openai_conversation docs]: /integrations/openai_conversation/ +[openalpr_cloud docs]: /integrations/openalpr_cloud/ +[opentherm_gw docs]: /integrations/opentherm_gw/ +[openuv docs]: /integrations/openuv/ +[opower docs]: /integrations/opower/ +[otbr docs]: /integrations/otbr/ +[overkiz docs]: /integrations/overkiz/ +[owntracks docs]: /integrations/owntracks/ +[panasonic_viera docs]: /integrations/panasonic_viera/ +[permobil docs]: /integrations/permobil/ +[person docs]: /integrations/person/ +[pilight docs]: /integrations/pilight/ +[plex docs]: /integrations/plex/ +[point docs]: /integrations/point/ +[powerwall docs]: /integrations/powerwall/ +[private_ble_device docs]: /integrations/private_ble_device/ +[prometheus docs]: /integrations/prometheus/ +[proximity docs]: /integrations/proximity/ +[prusalink docs]: /integrations/prusalink/ +[ps4 docs]: /integrations/ps4/ +[purpleair docs]: /integrations/purpleair/ +[pyload docs]: /integrations/pyload/ +[python_script docs]: /integrations/python_script/ +[rainforest_eagle docs]: /integrations/rainforest_eagle/ +[rainmachine docs]: /integrations/rainmachine/ +[recollect_waste docs]: /integrations/recollect_waste/ +[recorder docs]: /integrations/recorder/ +[renault docs]: /integrations/renault/ +[reolink docs]: /integrations/reolink/ +[repairs docs]: /integrations/repairs/ +[rest docs]: /integrations/rest/ +[rest_command docs]: /integrations/rest_command/ +[rfxtrx docs]: /integrations/rfxtrx/ +[ridwell docs]: /integrations/ridwell/ +[ring docs]: /integrations/ring/ +[risco docs]: /integrations/risco/ +[roborock docs]: /integrations/roborock/ +[rpi_power docs]: /integrations/rpi_power/ +[rss_feed_template docs]: /integrations/rss_feed_template/ +[ruckus_unleashed docs]: /integrations/ruckus_unleashed/ +[russound_rio docs]: /integrations/russound_rio/ +[scrape docs]: /integrations/scrape/ +[sense docs]: /integrations/sense/ +[sensibo docs]: /integrations/sensibo/ +[sensor docs]: /integrations/sensor/ +[serial docs]: /integrations/serial/ +[seventeentrack docs]: /integrations/seventeentrack/ +[sharkiq docs]: /integrations/sharkiq/ +[shelly docs]: /integrations/shelly/ +[sia docs]: /integrations/sia/ +[simplefin docs]: /integrations/simplefin/ +[siren docs]: /integrations/siren/ +[sisyphus docs]: /integrations/sisyphus/ +[slack docs]: /integrations/slack/ +[sma docs]: /integrations/sma/ +[smart_meter_texas docs]: /integrations/smart_meter_texas/ +[smartthings docs]: /integrations/smartthings/ +[smarttub docs]: /integrations/smarttub/ +[smlight docs]: /integrations/smlight/ +[sms docs]: /integrations/sms/ +[snmp docs]: /integrations/snmp/ +[solarlog docs]: /integrations/solarlog/ +[soma docs]: /integrations/soma/ +[somfy_mylink docs]: /integrations/somfy_mylink/ +[songpal docs]: /integrations/songpal/ +[sonos docs]: /integrations/sonos/ +[spc docs]: /integrations/spc/ +[spotify docs]: /integrations/spotify/ +[sql docs]: /integrations/sql/ +[squeezebox docs]: /integrations/squeezebox/ +[ssdp docs]: /integrations/ssdp/ +[starline docs]: /integrations/starline/ +[stream docs]: /integrations/stream/ +[stt docs]: /integrations/stt/ +[subaru docs]: /integrations/subaru/ +[swiss_public_transport docs]: /integrations/swiss_public_transport/ +[switchbot docs]: /integrations/switchbot/ +[switcher_kis docs]: /integrations/switcher_kis/ +[synology_dsm docs]: /integrations/synology_dsm/ +[systemmonitor docs]: /integrations/systemmonitor/ +[tado docs]: /integrations/tado/ +[tasmota docs]: /integrations/tasmota/ +[tcp docs]: /integrations/tcp/ +[technove docs]: /integrations/technove/ +[telegram_bot docs]: /integrations/telegram_bot/ +[telnet docs]: /integrations/telnet/ +[template docs]: /integrations/template/ +[tensorflow docs]: /integrations/tensorflow/ +[tesla_fleet docs]: /integrations/tesla_fleet/ +[teslemetry docs]: /integrations/teslemetry/ +[thread docs]: /integrations/thread/ +[tibber docs]: /integrations/tibber/ +[tile docs]: /integrations/tile/ +[tod docs]: /integrations/tod/ +[todoist docs]: /integrations/todoist/ +[toon docs]: /integrations/toon/ +[totalconnect docs]: /integrations/totalconnect/ +[touchlinesl docs]: /integrations/touchlinesl/ +[tplink docs]: /integrations/tplink/ +[traccar docs]: /integrations/traccar/ +[trafikverket_train docs]: /integrations/trafikverket_train/ +[tts docs]: /integrations/tts/ +[ukraine_alarm docs]: /integrations/ukraine_alarm/ +[unifi docs]: /integrations/unifi/ +[unifiprotect docs]: /integrations/unifiprotect/ +[universal docs]: /integrations/universal/ +[upb docs]: /integrations/upb/ +[upnp docs]: /integrations/upnp/ +[uvc docs]: /integrations/uvc/ +[vacuum docs]: /integrations/vacuum/ +[valve docs]: /integrations/valve/ +[velbus docs]: /integrations/velbus/ +[velux docs]: /integrations/velux/ +[venstar docs]: /integrations/venstar/ +[vesync docs]: /integrations/vesync/ +[vicare docs]: /integrations/vicare/ +[voip docs]: /integrations/voip/ +[water_heater docs]: /integrations/water_heater/ +[watttime docs]: /integrations/watttime/ +[weatherflow_cloud docs]: /integrations/weatherflow_cloud/ +[webostv docs]: /integrations/webostv/ +[websocket_api docs]: /integrations/websocket_api/ +[wemo docs]: /integrations/wemo/ +[wilight docs]: /integrations/wilight/ +[withings docs]: /integrations/withings/ +[xiaomi docs]: /integrations/xiaomi/ +[xiaomi_aqara docs]: /integrations/xiaomi_aqara/ +[xiaomi_miio docs]: /integrations/xiaomi_miio/ +[yale docs]: /integrations/yale/ +[yale_home docs]: /integrations/yale_home/ +[yale_smart_alarm docs]: /integrations/yale_smart_alarm/ +[yandex_transport docs]: /integrations/yandex_transport/ +[yeelight docs]: /integrations/yeelight/ +[yolink docs]: /integrations/yolink/ +[zeroconf docs]: /integrations/zeroconf/ +[zerproc docs]: /integrations/zerproc/ +[zha docs]: /integrations/zha/ +[zwave_js docs]: /integrations/zwave_js/ \ No newline at end of file diff --git a/source/dashboards/badges.markdown b/source/dashboards/badges.markdown index 163819cbeae..4ee0e273412 100644 --- a/source/dashboards/badges.markdown +++ b/source/dashboards/badges.markdown @@ -71,11 +71,21 @@ show_entity_picture: description: If your entity has a picture, it will replace the icon. type: boolean default: false -display_type: +show_name: required: false - description: Type of display for the badge. It can be either `minimal` (icon only), `standard` (icon and state), or `complete` (icon, state, and name). - type: string - default: standard + description: Show the name + type: boolean + default: "true" +show_icon: + required: false + description: Show the icon + type: boolean + default: "true" +show_state: + required: false + description: Show the state. + type: boolean + default: "false" state_content: required: false description: > diff --git a/source/images/blog/2024-09-aqara-wwha/art.jpg b/source/images/blog/2024-09-aqara-wwha/art.jpg new file mode 100644 index 00000000000..bcaab5a8535 Binary files /dev/null and b/source/images/blog/2024-09-aqara-wwha/art.jpg differ diff --git a/source/images/blog/2024-09/section-settings.png b/source/images/blog/2024-09/section-settings.png new file mode 100644 index 00000000000..9ce98d5036f Binary files /dev/null and b/source/images/blog/2024-09/section-settings.png differ diff --git a/source/images/blog/2024-09/sections-after.png b/source/images/blog/2024-09/sections-after.png new file mode 100644 index 00000000000..ae9d307201b Binary files /dev/null and b/source/images/blog/2024-09/sections-after.png differ diff --git a/source/images/blog/2024-09/sections-before.png b/source/images/blog/2024-09/sections-before.png new file mode 100644 index 00000000000..efe124dc378 Binary files /dev/null and b/source/images/blog/2024-09/sections-before.png differ diff --git a/source/images/blog/2024-09/sections-go-big.png b/source/images/blog/2024-09/sections-go-big.png deleted file mode 100644 index 71006e9b59f..00000000000 Binary files a/source/images/blog/2024-09/sections-go-big.png and /dev/null differ diff --git a/source/images/blog/2024-09/social.jpg b/source/images/blog/2024-09/social.jpg index 2d2603aeff7..7c1df8a5e09 100644 Binary files a/source/images/blog/2024-09/social.jpg and b/source/images/blog/2024-09/social.jpg differ diff --git a/source/images/blog/2024-09/untracked-energy.png b/source/images/blog/2024-09/untracked-energy.png index 2ee7f46431f..f170a2e8d1f 100644 Binary files a/source/images/blog/2024-09/untracked-energy.png and b/source/images/blog/2024-09/untracked-energy.png differ diff --git a/source/images/dashboards/badge_configure.png b/source/images/dashboards/badge_configure.png index c0d9942e103..bef9122b908 100644 Binary files a/source/images/dashboards/badge_configure.png and b/source/images/dashboards/badge_configure.png differ diff --git a/source/images/docs/configuration/enable_entity.webp b/source/images/docs/configuration/enable_entity.webp new file mode 100644 index 00000000000..1cc2c0b69e6 Binary files /dev/null and b/source/images/docs/configuration/enable_entity.webp differ diff --git a/source/images/docs/troubleshooting/home-assistant-cli.webp b/source/images/docs/troubleshooting/home-assistant-cli.webp new file mode 100644 index 00000000000..6ba10aad709 Binary files /dev/null and b/source/images/docs/troubleshooting/home-assistant-cli.webp differ diff --git a/source/images/integrations/light/state_light.png b/source/images/integrations/light/state_light.png new file mode 100644 index 00000000000..270103e6fad Binary files /dev/null and b/source/images/integrations/light/state_light.png differ diff --git a/source/voice_control/builtin_sentences.markdown b/source/voice_control/builtin_sentences.markdown index dec11f67504..5e6f62456fe 100644 --- a/source/voice_control/builtin_sentences.markdown +++ b/source/voice_control/builtin_sentences.markdown @@ -48,7 +48,7 @@ These sentences allow you, for example, to: - **Run a script** - *"Run stealth mode script"* - **Activate a scene** - - *"Activate dinner scence"* + - *"Activate dinner scene"* - *"Turn kitchen dinner scene on"* - **Inquire about people (that have device tracking activated in Home Assistant)** - *"How many people are in the kitchen"*