Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit e08fa14

Browse files
authored
Merge branch 'next' into add_mill-wifi_docs
2 parents 9a4a7f7 + 45f323c commit e08fa14

File tree

95 files changed

+1786
-1883
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+1786
-1883
lines changed

.vscode/cSpell.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,8 @@
9393
"WSDTH",
9494
"WTHV",
9595
"Xiaomi",
96-
"Zigbee"
96+
"Zigbee",
97+
"Zimi"
9798
],
9899
// flagWords - list of words to be always considered incorrect
99100
// This is useful for offensive words and common spelling errors.

CODEOWNERS

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -804,6 +804,7 @@ source/_integrations/sfr_box.markdown @epenet
804804
source/_integrations/sharkiq.markdown @JeffResc @funkybunch
805805
source/_integrations/shell_command.markdown @home-assistant/core
806806
source/_integrations/shelly.markdown @balloob @bieniu @thecode @chemelli74 @bdraco
807+
source/_integrations/shelly_zwave.markdown @home-assistant/z-wave
807808
source/_integrations/shodan.markdown @fabaff
808809
source/_integrations/sia.markdown @eavanvalkenburg
809810
source/_integrations/siemens.markdown @DavidMStraub @Diegorro98 @MartinHjelmare

source/_dashboards/gauge.markdown

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,10 @@ entity:
3939
required: true
4040
description: Entity ID to show.
4141
type: string
42+
attribute:
43+
required: false
44+
description: Attribute from the selected entity to display
45+
type: string
4246
name:
4347
required: false
4448
description: Name of gauge entity.
@@ -198,3 +202,14 @@ segments:
198202
- from: 65
199203
color: var(--error-color)
200204
```
205+
206+
Display attribute of an entity instead of its state:
207+
208+
```yaml
209+
type: gauge
210+
entity: sensor.back_door_info
211+
attribute: battery_level
212+
unit: '%'
213+
max: 100
214+
```
215+
In this example, the card displays the `battery_level` attribute of the `sensor.back_door_info` entity.

source/_dashboards/map.markdown

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,11 @@ hours_to_show:
102102
description: Shows a path of previous locations. Hours to show as path on the map.
103103
type: integer
104104
default: 0
105+
cluster:
106+
required: false
107+
description: 'When set to `false`, the map will not cluster the markers. This is useful when you want to see all markers at once, but it may cause performance issues with a large number of markers.'
108+
type: boolean
109+
default: true
105110
{% endconfiguration %}
106111

107112
{% important %}
@@ -136,6 +141,10 @@ attribute:
136141
required: false
137142
description: An entity's attribute when `label_mode` set to `attribute`.
138143
type: string
144+
unit:
145+
required: false
146+
description: A unit for a value of an attribute when `label_mode` set to `attribute`.
147+
type: string
139148
focus:
140149
required: false
141150
default: true
@@ -161,6 +170,10 @@ attribute:
161170
required: false
162171
description: An entity's attribute when `label_mode` set to `attribute`.
163172
type: string
173+
unit:
174+
required: false
175+
description: A unit for a value of an attribute when `label_mode` set to `attribute`.
176+
type: string
164177
focus:
165178
required: false
166179
default: true

source/_docs/configuration/templating.markdown

Lines changed: 48 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,8 @@ Jinja supports a set of language extensions that add new functionality to the la
6363
To improve the experience of writing Jinja templates, we have enabled the following
6464
extensions:
6565
66-
- [Loop Controls](https://jinja.palletsprojects.com/en/3.0.x/extensions/#loop-controls) (`break` and `continue`)
66+
- [Loop Controls](https://jinja.palletsprojects.com/en/stable/extensions/#loop-controls) (`break` and `continue`)
67+
- [Expression Statement](https://jinja.palletsprojects.com/en/stable/extensions/#expression-statement) (`do`)
6768
6869
### Reusing templates
6970
@@ -79,7 +80,7 @@ For example, you might define a macro in a template in `config/custom_templates/
7980

8081
{% raw %}
8182

82-
```text
83+
```jinja
8384
{% macro format_entity(entity_id) %}
8485
{{ state_attr(entity_id, 'friendly_name') }} - {{ states(entity_id) }}
8586
{% endmacro %}
@@ -91,13 +92,32 @@ In your automations, you could then reuse this macro by importing it:
9192

9293
{% raw %}
9394

94-
```text
95+
```jinja
9596
{% from 'formatter.jinja' import format_entity %}
9697
{{ format_entity('sensor.temperature') }}
9798
```
9899

100+
{$ endraw %}
101+
102+
Home Assistant also allows you to write macros with non-string return values by
103+
taking a named argument called `returns` and calling it with a return value. Once created,
104+
pass the macro into the `as_function` filter to use the returned value:
105+
106+
{% raw %}
107+
108+
```jinja
109+
{%- macro macro_is_switch(entity_name, returns) -%}
110+
{%- do returns(entity_name.startswith('switch.')) -%}
111+
{%- endmacro -%}
112+
{%- set is_switch = macro_is_switch | as_function -%}
113+
{{ "It's a switch!" if is_switch("switch.my_switch") else "Not a switch!" }}
114+
```
115+
99116
{% endraw %}
100117

118+
In this way, you can export utility functions that return scalar or complex values rather than
119+
just macros that render to strings.
120+
101121
## Home Assistant template extensions
102122

103123
Extensions allow templates to access all of the Home Assistant specific states and adds other convenience functions and filters.
@@ -1174,6 +1194,8 @@ Some examples:
11741194
- Filter `urlencode` will convert an object to a percent-encoded ASCII text string (e.g., for HTTP requests using `application/x-www-form-urlencoded`).
11751195
- Filter `slugify(separator="_")` will convert a given string into a "slug".
11761196
- Filter `ordinal` will convert an integer into a number defining a position in a series (e.g., `1st`, `2nd`, `3rd`, `4th`, etc).
1197+
- Filter `value | from_hex` Decodes a hex string to raw bytes.
1198+
- Filter `value | base64_encode` Encodes a string or bytes to a base 64 string.
11771199
- Filter `value | base64_decode` Decodes a base 64 string to a string, by default utf-8 encoding is used.
11781200
- Filter `value | base64_decode("ascii")` Decodes a base 64 string to a string, using ascii encoding.
11791201
- Filter `value | base64_decode(None)` Decodes a base 64 string to raw bytes.
@@ -1182,9 +1204,11 @@ Some examples:
11821204

11831205
Some examples:
11841206
{% raw %}
1185-
1207+
- `{{ "homeassistant" | base64_encode }}` - renders as `aG9tZWFzc2lzdGFudA==`
11861208
- `{{ "aG9tZWFzc2lzdGFudA==" | base64_decode }}` - renders as `homeassistant`
11871209
- `{{ "aG9tZWFzc2lzdGFudA==" | base64_decode(None) }}` - renders as `b'homeassistant'`
1210+
- `{{ "0F010003" | from_hex }}` - renders as `b'\x0f\x01\x00\x03'`
1211+
- `{{ "0F010003" | from_hex | base64_encode }}` - renders as `DwEAAw==`
11881212

11891213
{% endraw %}
11901214

@@ -1357,6 +1381,26 @@ Some examples:
13571381

13581382
{% endraw %}
13591383

1384+
### Working with macros
1385+
1386+
Home Assistant provides two additional functions that make macros much more powerful.
1387+
1388+
{% raw %}
1389+
1390+
- `apply` is both a filter and a test that allows you to use any callable (macros or functions) wherever
1391+
you can use other filters and tests. `apply` also passes along any additional parameters to the function.
1392+
For example, if you had a function called `double`, you could call
1393+
`{{ [1, 2, 3, 4] | map('apply', double) | list }}`, which would render as `[2, 4, 6, 8]`.
1394+
Alternatively, if you had a function called `is_multiple_of`, you could call
1395+
`{{ [1, 2, 3, 4] | select('apply', is_multiple_of, 2) | list }}`, which would render as `[2, 4]`.
1396+
- `as_function` is a filter that takes a macro that has a named parameter called `returns`. The macro can
1397+
then call `{%- do returns(return_value) -%}`. After passing this macro into `as_function`, the resulting
1398+
function returns your return value directly, preserving the underlying data type rather than rendering
1399+
a string. You can return dictionaries, numbers, `True`/`False` (allowing you to write your own tests when
1400+
used with `apply`), or any other value your code might produce.
1401+
1402+
{% endraw %}
1403+
13601404
## Merge action responses
13611405

13621406
Using action responses we can collect information from various entities at the same time.
Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
---
2+
title: Alexa Devices
3+
description: Instructions on how to integrate Alexa Devices into Home Assistant.
4+
ha_category:
5+
- Binary Sensor
6+
- Notify
7+
ha_release: '2025.6'
8+
ha_domain: alexa_devices
9+
ha_config_flow: true
10+
ha_codeowners:
11+
- '@chemelli74'
12+
ha_iot_class: Local Polling
13+
ha_platforms:
14+
- binary_sensor
15+
- notify
16+
ha_integration_type: hub
17+
ha_quality_scale: bronze
18+
---
19+
20+
The **Alexa Devices** {% term integration %} lets you control Alexa-enabled devices connected to your Amazon account.
21+
22+
The integration provides information on connected devices and enables control of the main features.
23+
24+
## Supported devices
25+
26+
There is support for the following device families within Home Assistant:
27+
28+
- **Amazon Echo Auto**
29+
- **Amazon Echo Dot**
30+
- **Amazon Echo Flex**
31+
- **Amazon Echo Plus**
32+
- **Amazon Echo Show**
33+
- **Amazon Fire TV Stick**
34+
- **Fire Tablet**
35+
36+
and all 3rd party that has Alexa capabilities built-in
37+
38+
{% warning %}
39+
40+
Currently, only MFA-protected Amazon accounts via the authenticator app are supported.
41+
42+
{% endwarning %}
43+
44+
{% include integrations/config_flow.md %}
45+
46+
{% configuration_basic %}
47+
country:
48+
description: The country of your Amazon account.
49+
username:
50+
description: The email address of your Amazon account.
51+
password:
52+
description: The password of your Amazon account.
53+
otp:
54+
description: One-time password via Authenticator App.
55+
{% endconfiguration_basic %}
56+
57+
{% note %}
58+
When trying to set up the integration, the form may show the message "Cannot connect".
59+
This means that the specified country may need a special setting.
60+
Open a issue with all details to investigate
61+
{% endnote %}
62+
63+
## Examples
64+
65+
### Automation: Announce welcome when you arrive home
66+
67+
```yaml
68+
automation:
69+
- alias: "Alexa Announce"
70+
id: "alexa_announce"
71+
triggers:
72+
- platform: state
73+
entity_id: person.simone
74+
to: "home"
75+
actions:
76+
- action: notify.send_message
77+
data:
78+
message: Welcome home Simone
79+
target:
80+
entity_id: notify.announce_echo_dot_livingroom
81+
```
82+
83+
### Automation: Start Radio on all Echo dots
84+
85+
```yaml
86+
automation:
87+
- alias: Start Radio B.B.C.
88+
id: "start_radio_bbc"
89+
trigger:
90+
- platform: sun
91+
event: sunset
92+
condition:
93+
conditions:
94+
- alias: "condition alias (home)"
95+
condition: state
96+
entity_id: group.person_family
97+
state: "home"
98+
action:
99+
- action: notify.send_message
100+
data:
101+
message: Play B.B.C. on Tunein
102+
target:
103+
entity_id: notify.custom_everywhere
104+
```
105+
106+
## Data updates
107+
108+
This integration {% term polling polls %} data from the device every 30 seconds by default.
109+
110+
## Supported functionality
111+
112+
The **Alexa Devices** {% term integration %} provides the following entities:
113+
114+
- Binary sensor - main and Bluetooth connectivity
115+
- Notify - Speak and Announce notifications
116+
117+
## Removing the integration
118+
119+
This integration follows standard integration removal. No extra steps are required.
120+
121+
{% include integrations/remove_device_service.md %}

source/_integrations/aquacell.markdown

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ This integration provides {% term sensors %} for the following information from
5353
- Time remaining until 0% salt level is reached.
5454
- i-Lid battery level.
5555
- Wi-Fi signal strength.
56+
- Last update time. The time the softener last reported data to the cloud.
5657

5758
## Use cases
5859

source/_integrations/backup.markdown

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
title: Backup
33
description: Allow creating backups of container and core installations.
44
ha_category:
5+
- Event
56
- Other
67
- Sensor
78
ha_release: 2022.4
@@ -12,6 +13,7 @@ ha_codeowners:
1213
ha_iot_class: Calculated
1314
ha_platforms:
1415
- diagnostics
16+
- event
1517
- sensor
1618
ha_integration_type: service
1719
related:
@@ -76,6 +78,8 @@ action: backup.create
7678
This is a YAML example for an automation that initiate a backup every night
7779
at 3 AM:
7880

81+
{% raw %}
82+
7983
```yaml
8084
automation:
8185
- alias: "Backup Home Assistant every night at 3 AM"
@@ -87,10 +91,49 @@ automation:
8791
action: backup.create
8892
```
8993

94+
{% endraw %}
95+
9096
## Restoring a backup
9197

9298
To restore a backup, follow the steps described in [Restoring a backup](/common-tasks/general/#restoring-a-backup).
9399

100+
## Event entity
101+
102+
The **Backup** {% term integration %} provides an {% term "Event entity" %} which represents the state of the last automatic backup (_completed, in progress, failed_). It also provides several event attributes which can be used in automations.
103+
104+
| Attribute | Description |
105+
| --- | --- |
106+
| `event_type` | The translated state of the last automatic backup task (_possible states: completed, in progress, failed_)
107+
| `backup_stage` | The current automatic backup stage (_is `None` when `event_type` is not in progress_) |
108+
| `failed_reason` | The reason for a failed automatic backup (_is `None` when `event_type` is completed or in progress_) |
109+
110+
### Usage examples
111+
112+
Send notification to mobile app, when an automatic backup failed.
113+
114+
{% raw %}
115+
116+
```yaml
117+
alias: Backup failed
118+
triggers:
119+
- trigger: state
120+
entity_id:
121+
- event.backup_automatic_backup
122+
conditions:
123+
- condition: state
124+
entity_id: event.backup_automatic_backup
125+
attribute: event_type
126+
state: failed
127+
actions:
128+
- data:
129+
title: Automatic backup failed
130+
message: The last automatic backup failed due to {{ state_attr('event.backup_automatic_backup', 'failed_reason') }}
131+
action: notify.mobile-app
132+
mode: single
133+
```
134+
135+
{% endraw %}
136+
94137
## Sensors
95138

96139
The **Backup** {% term integration %} provides several sensors.
@@ -108,6 +151,10 @@ The current state of the backup system. Possible states are:
108151

109152
The timestamp of the next scheduled automatic backup.
110153

154+
### Last attempted automatic backup
155+
156+
The timestamp of the last attempted automatic backup.
157+
111158
### Last successful automatic backup
112159

113160
The timestamp of the last successful automatic backup.

0 commit comments

Comments
 (0)