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 at the top of a panel.
Adding a badge to your dashboard
-
Go to {% my lovelace_dashboards title="Settings > Dashboards" %}.
-
If you have multiple views, open the view to which you want to add a badge.
-
In the top right of the screen, select the edit {% icon "mdi:edit" %} button.
-
To add a badge, select the plus {% icon "mdi:plus" %}button.
-
Select the entity for which you want to display a badge.
-
Configure your badge.
- The available options depend on the entity.
- Add the states you want to see.
- If you want, add a Name.
-
Under Interactions, you can define the tap behavior.
-
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.
- The available conditions are the same as the ones for the conditional card.
-
Select Save.
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: "false"
show_icon:
required: false
description: Show the icon
type: boolean
default: "true"
show_state:
required: false
description: Show the state.
type: boolean
default: "true"
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