Bram Kragten a2dc00b435
Release notes 2024.9 (#34575)
* build(deps-dev): bump sorbet-runtime from 0.5.11549 to 0.5.11551 (#34487)

Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) from 0.5.11549 to 0.5.11551.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps-dev): bump google-protobuf from 4.27.4 to 4.28.0 (#34488)

Bumps [google-protobuf](https://github.com/protocolbuffers/protobuf) from 4.27.4 to 4.28.0.
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/protobuf_release.bzl)
- [Commits](https://github.com/protocolbuffers/protobuf/commits)

---
updated-dependencies:
- dependency-name: google-protobuf
  dependency-type: indirect
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add limitations section to Enmax integration (#34493)

Enmax Energy only publishes monthly data via Opower, make a note in the documentation

* build(deps-dev): bump ruby-lsp from 0.17.16 to 0.17.17 (#34496)

Bumps [ruby-lsp](https://github.com/Shopify/ruby-lsp) from 0.17.16 to 0.17.17.
- [Release notes](https://github.com/Shopify/ruby-lsp/releases)
- [Commits](https://github.com/Shopify/ruby-lsp/compare/v0.17.16...v0.17.17)

---
updated-dependencies:
- dependency-name: ruby-lsp
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps-dev): bump sorbet-runtime from 0.5.11551 to 0.5.11553 (#34497)

Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) from 0.5.11551 to 0.5.11553.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Locked out: add screencast of auth reset (#34499)

* Locked out: add screencast of auth reset

* Update steps to point to Green and Yellow reset procedures

* Fix copy paste error

* Update clip

* Fix video to show standard port

* Fix typo in "default sentences" documentation (#34528)

* Add missing quote (#34519)

Signed-off-by: Matthias Beyer <mail@beyermatthias.de>

* Fix opentherm_gw gpio modes (#34501)

* home connect: Update links for registering an app and logging out (#34508)

* Update links for registering an app and logging out

* Update link

* Update source/_integrations/home_connect.markdown

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* tiny tweaks

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* build(deps-dev): bump rubocop from 1.65.1 to 1.66.0 (#34535)

Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.65.1 to 1.66.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.65.1...v1.66.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps-dev): bump logger from 1.6.0 to 1.6.1 (#34536)

Bumps [logger](https://github.com/ruby/logger) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/ruby/logger/releases)
- [Commits](https://github.com/ruby/logger/compare/v1.6.0...v1.6.1)

---
updated-dependencies:
- dependency-name: logger
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* home connect: Add instructions for getting the client ID and secret (#34509)

* home connect: Add instructions for getting the client ID and secret

* Update home_connect.markdown

* Update home_connect.markdown

* tiny tweak

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Document prerequisites for Webmin integration (#34515)

* Update webmin.markdown

Add details about prerequisites (installing XML::Parser), add additional context for user account creation, update phrasing of existing content

* Minor tweaks for verbiage, proper markdown

* Additional readability improvements for Webmin

* Fix odd wording in Webmin account benefits

"allows for" might imply that a separate account is automatically more secure; switching to "can allow for" to instead imply that things can be made more granular if desired.

* Update source/_integrations/webmin.markdown

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Tiny style tweaks

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* ubus.markdown: fix JSON syntax (#34522)

* Update unifiprotect.markdown with information about event for doorbell (#34537)

* Update unifiprotect.markdown with information about event for doorbell

Add more information about the event entity when a doorbell is rang.

* Tiny tweak

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Add Enphase_envoy prerequisites (#34539)

* Add Enphase_envoy prerequisites

* Implement review suggestions

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Remove links to custom integrations

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* build(deps-dev): bump rubocop-ast from 1.32.1 to 1.32.2 (#34547)

Bumps [rubocop-ast](https://github.com/rubocop/rubocop-ast) from 1.32.1 to 1.32.2.
- [Release notes](https://github.com/rubocop/rubocop-ast/releases)
- [Changelog](https://github.com/rubocop/rubocop-ast/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop-ast/compare/v1.32.1...v1.32.2)

---
updated-dependencies:
- dependency-name: rubocop-ast
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Enable entity (#34550)

* Enable a single entity from device page

* Add related topic

* Add term ref

* Add missing step

* Add some background info why entities are disabled by default

* Rephrase

* Fix typo

* Fix typo in google_translate (#34552)

* New WWHA blog upload (#34551)

* New WWHA blog upload

* Update source/_posts/2024-09-03-aqara-joins-works-with-home-assistant.markdown

---------

Co-authored-by: Gord <31004434+googanhiem@users.noreply.github.com>

* Split august and yale integrations (#33890)

* Add yale integration

This PR should not merge until the integration branch
in https://github.com/home-assistant/core/pull/122253 is complete

* Update source/_integrations/yale.markdown

* Tiny tweaks

* Apply suggestions from code review

* review comments

* Apply suggestions from code review

* Update source/_integrations/yale.markdown

* Update source/_integrations/yale.markdown

* Apply suggestions from code review

* Update source/_integrations/yale.markdown

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Simple Fin - Add Problem Sensor Documentation (#33979)

* Adding the problems ensor

* Tweaks

---------

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Redirect virtual integration yale_home to point to yale (#34482)

* Remove Yale (Assa Abloy) devices from the august integration docs (#34484)

* Remove Yale (Assa Abloy) devices from the august integration docs

The new yale integration should be used for these devices instead

* Remove Assa Abloy note since August is now owned by FBIN

* Change entity badge display type to 3 booleans : name, state and icon (#34503)

* Remove KNX free-online-training paragraph (#34531)

* build(deps-dev): bump sorbet-runtime from 0.5.11553 to 0.5.11554 (#34561)

Bumps [sorbet-runtime](https://github.com/sorbet/sorbet) from 0.5.11553 to 0.5.11554.
- [Release notes](https://github.com/sorbet/sorbet/releases)
- [Commits](https://github.com/sorbet/sorbet/commits)

---
updated-dependencies:
- dependency-name: sorbet-runtime
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump mustermann from 3.0.2 to 3.0.3 (#34562)

Bumps [mustermann](https://github.com/sinatra/mustermann) from 3.0.2 to 3.0.3.
- [Commits](https://github.com/sinatra/mustermann/compare/v3.0.2...v3.0.3)

---
updated-dependencies:
- dependency-name: mustermann
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps-dev): bump rexml from 3.3.6 to 3.3.7 (#34563)

Bumps [rexml](https://github.com/ruby/rexml) from 3.3.6 to 3.3.7.
- [Release notes](https://github.com/ruby/rexml/releases)
- [Changelog](https://github.com/ruby/rexml/blob/master/NEWS.md)
- [Commits](https://github.com/ruby/rexml/compare/v3.3.6...v3.3.7)

---
updated-dependencies:
- dependency-name: rexml
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps-dev): bump sass-embedded from 1.77.8 to 1.78.0 (#34564)

Bumps [sass-embedded](https://github.com/sass-contrib/sass-embedded-host-ruby) from 1.77.8 to 1.78.0.
- [Commits](https://github.com/sass-contrib/sass-embedded-host-ruby/compare/v1.77.8...v1.78.0)

---
updated-dependencies:
- dependency-name: sass-embedded
  dependency-type: indirect
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Event docs and integration: add related links (#34569)

* State trigger: rephrase (#34571)

* State trigger: rephrase

* Add intro text to example

* Light: add section on states (#34573)

* Update release notes for 2024.9

* Update 2024-09-04-release-20249.markdown

* Update 2024-09-04-release-20249.markdown

* Update 2024-09-04-release-20249.markdown

* Update 2024-09-04-release-20249.markdown

* update images

* address comments

* Update 2024-09-04-release-20249.markdown

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

* suggestions

* Apply suggestions from code review

Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: iomartin <iomartin@users.noreply.github.com>
Co-authored-by: c0ffeeca7 <38767475+c0ffeeca7@users.noreply.github.com>
Co-authored-by: Stuart Holland <soulc3@gmail.com>
Co-authored-by: Matthias Beyer <mail@beyermatthias.de>
Co-authored-by: mvn23 <schopdiedwaas@gmail.com>
Co-authored-by: Max R <mxr@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: kylehakala <kylehakala@users.noreply.github.com>
Co-authored-by: René Kliment <rene@renekliment.cz>
Co-authored-by: darkrain-nl <24763370+darkrain-nl@users.noreply.github.com>
Co-authored-by: Arie Catsman <120491684+catsmanac@users.noreply.github.com>
Co-authored-by: Luca Angemi <luca.angemi@gmail.com>
Co-authored-by: Joost Lekkerkerker <joostlek@outlook.com>
Co-authored-by: Gord <31004434+googanhiem@users.noreply.github.com>
Co-authored-by: J. Nick Koston <nick@koston.org>
Co-authored-by: Jeef <jeeftor@users.noreply.github.com>
Co-authored-by: Paul Bottein <paul.bottein@gmail.com>
Co-authored-by: Matthias Alphart <farmio@alphart.net>
2024-09-04 17:35:42 +02:00

12 KiB

title, description
title description
Badges Description of the various badges that are available.

Badges are widgets that sit at the top of a panel, above all the cards.

Badges Badges at the top of a panel.

Adding a badge to your dashboard

  1. Go to {% my lovelace_dashboards title="Settings > Dashboards" %}.

  2. If you have multiple views, open the view to which you want to add a badge.

  3. In the top right of the screen, select the edit {% icon "mdi:edit" %} button.

  4. To add a badge, select the plus {% icon "mdi:plus" %}button.

    Screenshot showing how to add a badge

  5. Select the entity for which you want to display a badge.

  6. Configure your badge.

    • The available options depend on the entity.
    • Add the states you want to see.
    • If you want, add a Name.

    Screenshot showing how to configure a badge

  7. Under Interactions, you can define the tap behavior.

  8. If you want this badge to be visible only to specific users or under a certain condition, open the Visibility tab to define those conditions.

  9. Select Save.

screencast showing how to add a badge to a dashboard Adding a badge to a dashboard.

Entity badge

The Entity badge allows you to display the state of an entity on a badge. This badge supports actions.

type: entity
entity: light.living_room

{% configuration entity %} type: required: true description: "entity" type: string entity: required: true description: Entity ID. type: string name: required: false description: Overwrites the entity name. type: string icon: required: false description: Overwrites the entity icon. type: string color: required: false description: Set the color when the entity is active. By default, the color is based on state, domain, and device_class of your entity. It accepts color token or hex color code. type: string default: state show_entity_picture: required: false description: If your entity has a picture, it will replace the icon. type: boolean default: false show_name: required: false 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: > Content to display for the state. Can be state, last_changed, last_updated, or any attribute of the entity. Can be either a string with a single item, or a list of string items. Default depends on the entity domain. type: [string, list] tap_action: required: false description: Action taken on card tap. See action documentation. By default, it will show the "more-info" dialog. type: map hold_action: required: false description: Action taken on tap-and-hold. See action documentation. type: map double_tap_action: required: false description: Action taken on double tap. See action documentation. type: map {% endconfiguration %}

Entity Filter Badge

This badge allows you to define a list of entities that you want to track only when in a certain state. Very useful for showing lights that you forgot to turn off or show a list of people only when they're at home.

{% configuration filter_badge %} type: required: true description: "entity-filter" type: string entities: required: true description: A list of entity IDs or entity objects, see below. type: list conditions: required: false description: List of conditions to check. See available conditions.* type: list state_filter: required: false description: (legacy) List of strings representing states or filters to check. See available legacy filters.* type: list {% endconfiguration %}

*one is required (conditions or state_filter)

Options for entities

If you define entities as objects instead of strings (by adding entity: before entity ID), you can add more customization and configurations:

{% configuration entities %} type: required: false description: "Sets a custom badge type: custom:my-custom-badge" type: string entity: required: true description: Entity ID. type: string name: required: false description: Overwrites friendly name. type: string icon: required: false description: Overwrites icon or entity picture. You can use any icon from Material Design Icons. Prefix the icon name with mdi:, ie mdi:home. type: string conditions: required: false description: List of conditions to check. See available conditions.* type: list state_filter: required: false description: (legacy) List of strings representing states or filters to check. See available legacy filters.* type: list {% endconfiguration %}

*only one filter will be applied: conditions or state_filter if conditions is not present

You may also add any additional configuration options to an entity which are supported by the chosen badge type (Entity badge type if no type is chosen).

Conditions options

You can specify multiple conditions, in which case the entity will be displayed if it matches all conditions.

State

Tests if an entity has a specified state.

type: entity-filter
entities:
  - climate.thermostat_living_room
  - climate.thermostat_bed_room
conditions:
  - condition: state
    state: heat
type: entity-filter
entities:
  - climate.thermostat_living_room
  - climate.thermostat_bed_room
conditions:
  - condition: state
    state_not: "off"
type: entity-filter
entities:
  - sensor.gas_station_1
  - sensor.gas_station_2
  - sensor.gas_station_3
conditions:
  - condition: state
    state: sensor.gas_station_lowest_price

{% configuration condition_state %} condition: required: true description: "state" type: string state: required: false description: Entity state or ID to be equal to this value. Can contain an array of states.* type: [list, string] state_not: required: false description: Entity state or ID to not be equal to this value. Can contain an array of states.* type: [list, string] {% endconfiguration %}

*one is required (state or state_not)

Numeric state

Tests if an entity state matches the thresholds.

type: entity-filter
entities:
  - sensor.outside_temperature
  - sensor.living_room_temperature
  - sensor.bed_room_temperature
conditions:
  - condition: numeric_state
    above: 10
    below: 20

{% configuration condition_numeric_state %} condition: required: true description: "numeric_state" type: string above: required: false description: Entity state or ID to be above this value.* type: string below: required: false description: Entity state or ID to be below this value.* type: string {% endconfiguration %}

*at least one is required (above or below), both are also possible for values between.

Screen

Specify the visibility of the entity per screen size. Some screen size presets are available in the UI but you can use any CSS media query you want in YAML.

type: entity-filter
entities:
  - sensor.outside_temperature
  - sensor.living_room_temperature
  - sensor.bed_room_temperature
conditions:
  - condition: screen
    media_query: "(min-width: 1280px)"

{% configuration condition_screen %} condition: required: true description: "screen" type: string media_query: required: true description: Media query to check which screen size are allowed to display the entity. type: string {% endconfiguration %}

User

Specify the visibility of the entity per user.

type: entity-filter
entities:
  - sensor.outside_temperature
  - sensor.living_room_temperature
  - sensor.bed_room_temperature
conditions:
  - condition: user
    users:
      - 581fca7fdc014b8b894519cc531f9a04

{% configuration condition_user %} condition: required: true description: "user" type: string users: required: true description: User ID that can see the entity (unique hex value found on the Users configuration page). type: list {% endconfiguration %}

And

Specify that both conditions must be met.

type: entity-filter
entities:
  - sensor.outside_temperature
  - sensor.living_room_temperature
  - sensor.bed_room_temperature
conditions:
  - condition: and
    conditions:
      - condition: numeric_state
        above: 0
      - condition: user
        users:
          - 581fca7fdc014b8b894519cc531f9a04

{% configuration condition_and %} condition: required: true description: "and" type: string conditions: required: false description: List of conditions to check. See available conditions. type: list {% endconfiguration %}

Or

Specify that at least one of the conditions must be met.

type: entity-filter
entities:
  - sensor.outside_temperature
  - sensor.living_room_temperature
  - sensor.bed_room_temperature
conditions:
  - condition: or
    conditions:
      - condition: numeric_state
        above: 0
      - condition: user
        users:
          - 581fca7fdc014b8b894519cc531f9a04

{% configuration condition_or %} condition: required: true description: "or" type: string conditions: required: false description: List of conditions to check. See available conditions. type: list {% endconfiguration %}

Legacy state filters

String filter

Show only active switches or lights in the house.

type: entity-filter
entities:
  - entity: light.bed_light
    name: Bed
  - light.kitchen_lights
  - light.ceiling_lights
state_filter:
  - "on"

You can also specify multiple state_filter conditions, in which case the entity will be displayed if it matches any condition.

If you define state_filter as objects instead of strings, you can add more customization to your filter, as described below.

Operator filter

Tests if an entity state correspond to the applied operator.

{% configuration condition_operator %} value: required: true description: String representing the state. type: string operator: required: true description: Operator to use in the comparison. Can be ==, <=, <, >=, >, !=, in, not in, or regex. type: string attribute: required: false description: Attribute of the entity to use instead of the state. type: string {% endconfiguration %}

Examples

Displays everyone who is at home or at work.

type: entity-filter
entities:
  - device_tracker.demo_paulus
  - device_tracker.demo_anne_therese
  - device_tracker.demo_home_boy
state_filter:
  - operator: "=="
    value: home
  - operator: "=="
    value: work

Specify filter for a single entity.

type: entity-filter
state_filter:
  - "on"
  - operator: ">"
    value: 90
entities:
  - sensor.water_leak
  - sensor.outside_temp
  - entity: sensor.humidity_and_temp
    state_filter:
      - operator: ">"
        value: 50
        attribute: humidity

Use a regex filter against entity attributes. This regex filter below looks for expressions that are 1 digit in length and where the number is between 0-7 (so show holidays today or in the next 7 days) and displays those holidays as entities in the Entity Filter badge.

type: entity-filter
state_filter:
  - operator: regex
    value: "^([0-7]{1})$"
    attribute: eta
entities:
  - entity: sensor.upcoming_ical_holidays_0
  - entity: sensor.upcoming_ical_holidays_1
  - entity: sensor.upcoming_ical_holidays_2
  - entity: sensor.upcoming_ical_holidays_3
  - entity: sensor.upcoming_ical_holidays_4
show_empty: false