mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-22 16:56:50 +00:00
Bunch of YAML styling improvements - part 2 (#16379)
This commit is contained in:
parent
c7bf104952
commit
03d8d34bf8
@ -96,7 +96,7 @@ homeassistant:
|
||||
- type: totp
|
||||
name: Authenticator app
|
||||
- type: notify
|
||||
message: 'I almost forget, to get into my clubhouse, you need to say {}'
|
||||
message: "I almost forget, to get into my clubhouse, you need to say {}"
|
||||
```
|
||||
|
||||
After restarting Home Assistant, go to your [profile page](/docs/authentication/#your-account-profile) and there should be a "Multi-factor Authentication Modules" section. Click _Enable_ on the _Notify One-Time Password_ option.
|
||||
|
@ -45,7 +45,7 @@ Conditions can also be part of an action. You can combine multiple service calls
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: 'Office at evening'
|
||||
- alias: "Office at evening"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.office_occupancy
|
||||
|
@ -13,11 +13,11 @@ Example of using condition:
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: 'Enciende Despacho'
|
||||
- alias: "Enciende Despacho"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.mini_despacho
|
||||
to: 'on'
|
||||
to: "on"
|
||||
condition:
|
||||
condition: or
|
||||
conditions:
|
||||
@ -38,11 +38,11 @@ The `condition` option of an automation, also accepts a single condition templat
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: 'Enciende Despacho'
|
||||
- alias: "Enciende Despacho"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.mini_despacho
|
||||
to: 'on'
|
||||
to: "on"
|
||||
condition: "{{ state_attr('sun.sun', 'elevation') < 4 }}"
|
||||
action:
|
||||
- service: scene.turn_on
|
||||
|
@ -29,7 +29,7 @@ automation 2:
|
||||
service: >
|
||||
notify.{{ trigger.topic.split('/')[-1] }}
|
||||
data:
|
||||
message: '{{ trigger.payload }}'
|
||||
message: "{{ trigger.payload }}"
|
||||
|
||||
automation 3:
|
||||
trigger:
|
||||
@ -39,9 +39,9 @@ automation 3:
|
||||
- light.bedroom_closet
|
||||
- light.kiddos_closet
|
||||
- light.linen_closet
|
||||
to: 'on'
|
||||
to: "on"
|
||||
# Trigger when someone leaves one of those lights on for 10 minutes.
|
||||
for: '00:10:00'
|
||||
for: "00:10:00"
|
||||
action:
|
||||
- service: light.turn_off
|
||||
data:
|
||||
|
@ -450,7 +450,7 @@ automation:
|
||||
- trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.motion
|
||||
to: 'on'
|
||||
to: "on"
|
||||
action:
|
||||
- service: climate.turn_on
|
||||
entity_id: climate.office
|
||||
|
@ -31,16 +31,16 @@ Example of a YAML based automation that you can add to `configuration.yaml`.
|
||||
automation my_lights:
|
||||
# Turns on lights 1 hour before sunset if people are home
|
||||
# and if people get home between 16:00-23:00
|
||||
- alias: 'Rule 1 Light on in the evening'
|
||||
- alias: "Rule 1 Light on in the evening"
|
||||
trigger:
|
||||
# Prefix the first line of each trigger configuration
|
||||
# with a '-' to enter multiple
|
||||
- platform: sun
|
||||
event: sunset
|
||||
offset: '-01:00:00'
|
||||
offset: "-01:00:00"
|
||||
- platform: state
|
||||
entity_id: all
|
||||
to: 'home'
|
||||
to: "home"
|
||||
condition:
|
||||
# Prefix the first line of each condition configuration
|
||||
# with a '-'' to enter multiple
|
||||
@ -48,25 +48,25 @@ automation my_lights:
|
||||
entity_id: all
|
||||
state: "home"
|
||||
- condition: time
|
||||
after: '16:00:00'
|
||||
before: '23:00:00'
|
||||
after: "16:00:00"
|
||||
before: "23:00:00"
|
||||
action:
|
||||
# With a single service call, we don't need a '-' before service - though you can if you want to
|
||||
service: homeassistant.turn_on
|
||||
entity_id: group.living_room
|
||||
|
||||
# Turn off lights when everybody leaves the house
|
||||
- alias: 'Rule 2 - Away Mode'
|
||||
- alias: "Rule 2 - Away Mode"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: all
|
||||
to: 'not_home'
|
||||
to: "not_home"
|
||||
action:
|
||||
service: light.turn_off
|
||||
entity_id: all
|
||||
|
||||
# Notify when Paulus leaves the house in the evening
|
||||
- alias: 'Leave Home notification'
|
||||
- alias: "Leave Home notification"
|
||||
trigger:
|
||||
platform: zone
|
||||
event: leave
|
||||
@ -74,14 +74,14 @@ automation my_lights:
|
||||
entity_id: device_tracker.paulus
|
||||
condition:
|
||||
condition: time
|
||||
after: '20:00'
|
||||
after: "20:00"
|
||||
action:
|
||||
service: notify.notify
|
||||
data:
|
||||
message: 'Paulus left the house'
|
||||
message: "Paulus left the house"
|
||||
|
||||
# Send a notification via Pushover with the event of a Xiaomi cube. Custom event from the Xiaomi component.
|
||||
- alias: 'Xiaomi Cube Action'
|
||||
- alias: "Xiaomi Cube Action"
|
||||
initial_state: false
|
||||
trigger:
|
||||
platform: event
|
||||
|
@ -145,14 +145,14 @@ This (large) sensor configuration gives us another example:
|
||||
### sensor.yaml
|
||||
### METEOBRIDGE #############################################
|
||||
- platform: tcp
|
||||
name: 'Outdoor Temp (Meteobridge)'
|
||||
name: "Outdoor Temp (Meteobridge)"
|
||||
host: 192.168.2.82
|
||||
timeout: 6
|
||||
payload: "Content-type: text/xml; charset=UTF-8\n\n"
|
||||
value_template: "{% raw %}{{value.split (' ')[2]}}{% endraw %}"
|
||||
unit: C
|
||||
- platform: tcp
|
||||
name: 'Outdoor Humidity (Meteobridge)'
|
||||
name: "Outdoor Humidity (Meteobridge)"
|
||||
host: 192.168.2.82
|
||||
port: 5556
|
||||
timeout: 6
|
||||
@ -173,10 +173,10 @@ This (large) sensor configuration gives us another example:
|
||||
- 'date'
|
||||
- platform: worldclock
|
||||
time_zone: Etc/UTC
|
||||
name: 'UTC'
|
||||
name: "UTC"
|
||||
- platform: worldclock
|
||||
time_zone: America/New_York
|
||||
name: 'Ann Arbor'
|
||||
name: "Ann Arbor"
|
||||
```
|
||||
|
||||
You'll notice that this example includes a secondary parameter section (under the steam section) as well as a better example of the way comments can be used to break down files into sections.
|
||||
@ -231,7 +231,7 @@ automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
to: 'home'
|
||||
to: "home"
|
||||
action:
|
||||
service: light.turn_on
|
||||
entity_id: light.entryway
|
||||
@ -239,7 +239,7 @@ automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
from: 'home'
|
||||
from: "home"
|
||||
action:
|
||||
service: light.turn_off
|
||||
entity_id: light.entryway
|
||||
@ -260,7 +260,7 @@ alias: Automation 1
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
to: 'home'
|
||||
to: "home"
|
||||
action:
|
||||
service: light.turn_on
|
||||
entity_id: light.entryway
|
||||
@ -273,7 +273,7 @@ alias: Automation 2
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
from: 'home'
|
||||
from: "home"
|
||||
action:
|
||||
service: light.turn_off
|
||||
entity_id: light.entryway
|
||||
@ -370,7 +370,7 @@ automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
to: 'home'
|
||||
to: "home"
|
||||
action:
|
||||
service: light.turn_on
|
||||
entity_id: light.entryway
|
||||
@ -378,7 +378,7 @@ automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
from: 'home'
|
||||
from: "home"
|
||||
action:
|
||||
service: light.turn_off
|
||||
entity_id: light.entryway
|
||||
@ -399,7 +399,7 @@ automation: !include_dir_merge_list automation/
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
to: 'home'
|
||||
to: "home"
|
||||
action:
|
||||
service: light.turn_on
|
||||
entity_id: light.entryway
|
||||
@ -407,7 +407,7 @@ automation: !include_dir_merge_list automation/
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: device_tracker.iphone
|
||||
from: 'home'
|
||||
from: "home"
|
||||
action:
|
||||
service: light.turn_off
|
||||
entity_id: light.entryway
|
||||
|
@ -238,7 +238,7 @@ If you change the configuration you have to restart the server. To do that you h
|
||||
As the Docker command becomes more complex, switching to `docker-compose` can be preferable and support automatically restarting on failure or system restart. Create a `docker-compose.yml` file:
|
||||
|
||||
```yaml
|
||||
version: '3'
|
||||
version: "3"
|
||||
services:
|
||||
homeassistant:
|
||||
container_name: home-assistant
|
||||
@ -285,7 +285,7 @@ $ docker run --init -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config \
|
||||
or in a `docker-compose.yml` file:
|
||||
|
||||
```yaml
|
||||
version: '3'
|
||||
version: "3"
|
||||
services:
|
||||
homeassistant:
|
||||
container_name: home-assistant
|
||||
|
@ -14,11 +14,11 @@ To customize the MQTT Birth and Last Will messages, add the following section to
|
||||
# Example configuration.yaml entry
|
||||
mqtt:
|
||||
birth_message:
|
||||
topic: 'hass/status'
|
||||
payload: 'online'
|
||||
topic: "hass/status"
|
||||
payload: "online"
|
||||
will_message:
|
||||
topic: 'hass/status'
|
||||
payload: 'offline'
|
||||
topic: "hass/status"
|
||||
payload: "offline"
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
|
@ -107,13 +107,13 @@ Delays are useful for temporarily suspending your script and start it at a later
|
||||
```yaml
|
||||
# HH:MM
|
||||
# Waits 1 hour
|
||||
- delay: '01:00'
|
||||
- delay: "01:00"
|
||||
```
|
||||
|
||||
```yaml
|
||||
# HH:MM:SS
|
||||
# Waits 1.5 minutes
|
||||
- delay: '00:01:30'
|
||||
- delay: "00:01:30"
|
||||
```
|
||||
|
||||
```yaml
|
||||
@ -170,7 +170,7 @@ This action can use the same triggers that are available in an automation's `tri
|
||||
event_type: MY_EVENT
|
||||
- platform: state
|
||||
entity_id: light.LIGHT
|
||||
to: 'on'
|
||||
to: "on"
|
||||
for: 10
|
||||
```
|
||||
|
||||
@ -185,7 +185,7 @@ With both types of waits it is possible to set a timeout after which the script
|
||||
```yaml
|
||||
# Wait for sensor to change to 'on' up to 1 minute before continuing to execute.
|
||||
- wait_template: "{{ is_state('binary_sensor.entrance', 'on') }}"
|
||||
timeout: '00:01:00'
|
||||
timeout: "00:01:00"
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
@ -406,7 +406,7 @@ automation:
|
||||
- trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.xyz
|
||||
to: 'on'
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.something
|
||||
@ -471,7 +471,7 @@ automation:
|
||||
- trigger:
|
||||
- platform: state
|
||||
entity_id: binary_sensor.motion
|
||||
to: 'on'
|
||||
to: "on"
|
||||
action:
|
||||
- choose:
|
||||
# IF nobody home, sound the alarm!
|
||||
@ -517,7 +517,7 @@ automation:
|
||||
- trigger:
|
||||
- platform: state
|
||||
entity_id: input_boolean.simulate
|
||||
to: 'on'
|
||||
to: "on"
|
||||
mode: restart
|
||||
action:
|
||||
- choose:
|
||||
|
@ -16,10 +16,10 @@ condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
entity_id: "device_tracker.paulus"
|
||||
state: "home"
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
entity_id: "sensor.temperature"
|
||||
below: 20
|
||||
```
|
||||
|
||||
@ -30,10 +30,10 @@ The following configuration works the same as the one listed above:
|
||||
```yaml
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
entity_id: "device_tracker.paulus"
|
||||
state: "home"
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
entity_id: "sensor.temperature"
|
||||
below: 20
|
||||
```
|
||||
|
||||
@ -48,10 +48,10 @@ condition:
|
||||
condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
entity_id: "device_tracker.paulus"
|
||||
state: "home"
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
entity_id: "sensor.temperature"
|
||||
below: 20
|
||||
```
|
||||
|
||||
@ -65,7 +65,7 @@ condition:
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: 'device_tracker.paulus'
|
||||
entity_id: "device_tracker.paulus"
|
||||
state: "home"
|
||||
- condition: or
|
||||
conditions:
|
||||
@ -73,7 +73,7 @@ condition:
|
||||
entity_id: sensor.weather_precip
|
||||
state: "rain"
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
entity_id: "sensor.temperature"
|
||||
below: 20
|
||||
```
|
||||
|
||||
@ -392,7 +392,7 @@ condition:
|
||||
conditions:
|
||||
- "{{ is_state('device_tracker.iphone', 'away') }}"
|
||||
- condition: numeric_state
|
||||
entity_id: 'sensor.temperature'
|
||||
entity_id: "sensor.temperature"
|
||||
below: 20
|
||||
```
|
||||
|
||||
@ -442,8 +442,8 @@ The time condition can test if it is after a specified time, before a specified
|
||||
condition:
|
||||
condition: time
|
||||
# At least one of the following is required.
|
||||
after: '15:00:00'
|
||||
before: '02:00:00'
|
||||
after: "15:00:00"
|
||||
before: "02:00:00"
|
||||
weekday:
|
||||
- mon
|
||||
- wed
|
||||
@ -534,8 +534,8 @@ condition:
|
||||
entity_id: light.living_room
|
||||
state: "off"
|
||||
- condition: time
|
||||
before: '23:00:00'
|
||||
after: '14:00:00'
|
||||
before: "23:00:00"
|
||||
after: "14:00:00"
|
||||
- condition: state
|
||||
entity_id: script.light_turned_off_5min
|
||||
state: "off"
|
||||
|
@ -109,7 +109,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
|
||||
```yaml
|
||||
- id: mini_1_pressed
|
||||
alias: 'Minimote Button 1 Pressed'
|
||||
alias: "Minimote Button 1 Pressed"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -117,7 +117,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
entity_id: zwave.aeon_labs_minimote_1
|
||||
scene_id: 1
|
||||
- id: mini_1_held
|
||||
alias: 'Minimote Button 1 Held'
|
||||
alias: "Minimote Button 1 Held"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -125,7 +125,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
entity_id: zwave.aeon_labs_minimote_1
|
||||
scene_id: 2
|
||||
- id: mini_2_pressed
|
||||
alias: 'Minimote Button 2 Pressed'
|
||||
alias: "Minimote Button 2 Pressed"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -133,7 +133,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
entity_id: zwave.aeon_labs_minimote_1
|
||||
scene_id: 3
|
||||
- id: mini_2_held
|
||||
alias: 'Minimote Button 2 Held'
|
||||
alias: "Minimote Button 2 Held"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -141,7 +141,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
entity_id: zwave.aeon_labs_minimote_1
|
||||
scene_id: 4
|
||||
- id: mini_3_pressed
|
||||
alias: 'Minimote Button 3 Pressed'
|
||||
alias: "Minimote Button 3 Pressed"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -149,7 +149,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
entity_id: zwave.aeon_labs_minimote_1
|
||||
scene_id: 5
|
||||
- id: mini_3_held
|
||||
alias: 'Minimote Button 3 Held'
|
||||
alias: "Minimote Button 3 Held"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -157,7 +157,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
entity_id: zwave.aeon_labs_minimote_1
|
||||
scene_id: 6
|
||||
- id: mini_4_pressed
|
||||
alias: 'Minimote Button 4 Pressed'
|
||||
alias: "Minimote Button 4 Pressed"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -165,7 +165,7 @@ Here's a handy configuration for the Aeon Labs Minimote that defines all possibl
|
||||
entity_id: zwave.aeon_labs_minimote_1
|
||||
scene_id: 7
|
||||
- id: mini_4_held
|
||||
alias: 'Minimote Button 4 Held'
|
||||
alias: "Minimote Button 4 Held"
|
||||
trigger:
|
||||
- platform: event
|
||||
event_type: zwave.scene_activated
|
||||
@ -1080,7 +1080,7 @@ Double-press | 3
|
||||
Let's see how this works in an automation for a Scene Master that's assigned as Node 7:
|
||||
|
||||
```yaml
|
||||
- id: '1234567890'
|
||||
- id: "1234567890"
|
||||
alias: Double-press Button 2 to toggle all lights
|
||||
trigger:
|
||||
- platform: event
|
||||
|
@ -96,7 +96,7 @@ Some devices (like the HomeSeer wall switches) allow you to do things like doubl
|
||||
```yaml
|
||||
# Example configuration.yaml automation entry
|
||||
automation
|
||||
- alias: 'Dining room dimmer - double tap up'
|
||||
- alias: "Dining room dimmer - double tap up"
|
||||
trigger:
|
||||
- event_type: zwave.scene_activated
|
||||
platform: event
|
||||
|
@ -30,7 +30,7 @@ To enable ADS, add the following lines to your `configuration.yaml` file:
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
ads:
|
||||
device: '127.0.0.1.1.1'
|
||||
device: "127.0.0.1.1.1"
|
||||
port: 801
|
||||
```
|
||||
|
||||
@ -138,7 +138,7 @@ file:
|
||||
sensor:
|
||||
- platform: ads
|
||||
adsvar: GVL.temperature
|
||||
unit_of_measurement: '°C'
|
||||
unit_of_measurement: "°C"
|
||||
adstype: int
|
||||
```
|
||||
|
||||
|
@ -84,7 +84,7 @@ command_topic:
|
||||
required: true
|
||||
type: string
|
||||
device:
|
||||
description: 'Information about the device this alarm panel is a part of to tie it into the [device registry](https://developers.home-assistant.io/docs/en/device_registry_index.html). Only works through [MQTT discovery](/docs/mqtt/discovery/) and when [`unique_id`](#unique_id) is set.'
|
||||
description: "Information about the device this alarm panel is a part of to tie it into the [device registry](https://developers.home-assistant.io/docs/en/device_registry_index.html). Only works through [MQTT discovery](/docs/mqtt/discovery/) and when [`unique_id`](#unique_id) is set."
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
@ -93,27 +93,27 @@ device:
|
||||
required: false
|
||||
type: list
|
||||
identifiers:
|
||||
description: 'A list of IDs that uniquely identify the device. For example a serial number.'
|
||||
description: "A list of IDs that uniquely identify the device. For example a serial number."
|
||||
required: false
|
||||
type: [list, string]
|
||||
manufacturer:
|
||||
description: 'The manufacturer of the device.'
|
||||
description: "The manufacturer of the device."
|
||||
required: false
|
||||
type: string
|
||||
model:
|
||||
description: 'The model of the device.'
|
||||
description: "The model of the device."
|
||||
required: false
|
||||
type: string
|
||||
name:
|
||||
description: 'The name of the device.'
|
||||
description: "The name of the device."
|
||||
required: false
|
||||
type: string
|
||||
sw_version:
|
||||
description: 'The firmware version of the device.'
|
||||
description: "The firmware version of the device."
|
||||
required: false
|
||||
type: string
|
||||
via_device:
|
||||
description: 'Identifier of a device that routes messages between this device and Home Assistant. Examples of such devices are hubs, or parent devices of a sub-device. This is used to show device topology in Home Assistant.'
|
||||
description: "Identifier of a device that routes messages between this device and Home Assistant. Examples of such devices are hubs, or parent devices of a sub-device. This is used to show device topology in Home Assistant."
|
||||
required: false
|
||||
type: string
|
||||
json_attributes_template:
|
||||
|
@ -163,7 +163,7 @@ binary_sensor:
|
||||
sensors:
|
||||
motion_battery_low:
|
||||
value_template: "{{ state_attr('sensor.motion', 'battery') < 15 }}"
|
||||
friendly_name: 'Motion battery is low'
|
||||
friendly_name: "Motion battery is low"
|
||||
|
||||
alert:
|
||||
motion_battery:
|
||||
|
@ -84,7 +84,7 @@ Say to all `media_player` device entities:
|
||||
```yaml
|
||||
- service: tts.amazon_polly_say
|
||||
data:
|
||||
message: '<speak>Hello from Amazon Polly</speak>'
|
||||
message: "<speak>Hello from Amazon Polly</speak>"
|
||||
```
|
||||
|
||||
or
|
||||
|
@ -246,9 +246,9 @@ camera_image: camera.lakehouse
|
||||
camera_view: live # or auto for snapshot view
|
||||
elements:
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-up'
|
||||
icon: "mdi:arrow-up"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 25px
|
||||
bottom: 50px
|
||||
tap_action:
|
||||
@ -258,9 +258,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: up
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-down'
|
||||
icon: "mdi:arrow-down"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 25px
|
||||
bottom: 0px
|
||||
tap_action:
|
||||
@ -270,9 +270,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: down
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-left'
|
||||
icon: "mdi:arrow-left"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 50px
|
||||
bottom: 25px
|
||||
tap_action:
|
||||
@ -282,9 +282,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: left
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-right'
|
||||
icon: "mdi:arrow-right"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 0px
|
||||
bottom: 25px
|
||||
tap_action:
|
||||
@ -294,9 +294,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: right
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-top-left'
|
||||
icon: "mdi:arrow-top-left"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 50px
|
||||
bottom: 50px
|
||||
tap_action:
|
||||
@ -306,9 +306,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: left_up
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-top-right'
|
||||
icon: "mdi:arrow-top-right"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 0px
|
||||
bottom: 50px
|
||||
tap_action:
|
||||
@ -318,9 +318,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: right_up
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-bottom-left'
|
||||
icon: "mdi:arrow-bottom-left"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 50px
|
||||
bottom: 0px
|
||||
tap_action:
|
||||
@ -330,9 +330,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: left_down
|
||||
- type: icon
|
||||
icon: 'mdi:arrow-bottom-right'
|
||||
icon: "mdi:arrow-bottom-right"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
right: 0px
|
||||
bottom: 0px
|
||||
tap_action:
|
||||
@ -342,9 +342,9 @@ elements:
|
||||
entity_id: camera.lakehouse
|
||||
movement: right_down
|
||||
- type: icon
|
||||
icon: 'mdi:magnify'
|
||||
icon: "mdi:magnify"
|
||||
style:
|
||||
background: 'rgba(255, 255, 255, 0.25)'
|
||||
background: "rgba(255, 255, 255, 0.25)"
|
||||
bottom: 25px
|
||||
right: 25px
|
||||
tap_action:
|
||||
|
@ -181,7 +181,7 @@ binary_sensor:
|
||||
name: Kitchen Motion
|
||||
device_class: motion
|
||||
resource: http://IP_ADDRESS:PORT/sensors.json?sense=motion_active
|
||||
value_template: '{{ value_json.motion_active.data[0][1][0] | round(0) }}'
|
||||
value_template: "{{ value_json.motion_active.data[0][1][0] | round(0) }}"
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
@ -217,14 +217,14 @@ start_netflix:
|
||||
- service: media_player.select_source
|
||||
data:
|
||||
entity_id: media_player.fire_tv_living_room
|
||||
source: 'com.netflix.ninja'
|
||||
source: "com.netflix.ninja"
|
||||
|
||||
stop_netflix:
|
||||
sequence:
|
||||
- service: media_player.select_source
|
||||
data:
|
||||
entity_id: media_player.fire_tv_living_room
|
||||
source: '!com.netflix.ninja'
|
||||
source: "!com.netflix.ninja"
|
||||
```
|
||||
|
||||
### `androidtv.adb_command`
|
||||
|
@ -142,7 +142,7 @@ Once you have enabled the [Arlo component](/integrations/arlo), add the followin
|
||||
# Example configuration.yaml entry
|
||||
camera:
|
||||
- platform: arlo
|
||||
ffmpeg_arguments: '-pred 1 -q:v 2'
|
||||
ffmpeg_arguments: "-pred 1 -q:v 2"
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
|
@ -105,7 +105,7 @@ Using the lock operation sensors, you can detect when a user operates a lock and
|
||||
{% raw %}
|
||||
|
||||
```yaml
|
||||
- id: '1583706446906'
|
||||
- id: "1583706446906"
|
||||
alias: joe_doe_front_door_operate
|
||||
description: John Doe locks or unlocks the Front Door
|
||||
trigger:
|
||||
|
@ -32,7 +32,7 @@ Add the following to your `configuration.yaml` file:
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: aurora_abb_powerone
|
||||
device: 'SERIAL_PORT'
|
||||
device: "SERIAL_PORT"
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
@ -57,5 +57,5 @@ name:
|
||||
sensor:
|
||||
- platform: aurora_abb_powerone
|
||||
address: 2
|
||||
device: '/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0'
|
||||
device: "/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A50285BI-if00-port0"
|
||||
```
|
||||
|
@ -24,10 +24,10 @@ binary_sensor:
|
||||
- platform: bayesian
|
||||
prior: 0.1
|
||||
observations:
|
||||
- entity_id: 'switch.kitchen_lights'
|
||||
- entity_id: "switch.kitchen_lights"
|
||||
prob_given_true: 0.6
|
||||
prob_given_false: 0.2
|
||||
platform: 'state'
|
||||
platform: "state"
|
||||
to_state: "on"
|
||||
```
|
||||
|
||||
@ -90,27 +90,27 @@ The following is an example for the `state` observation platform.
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
name: 'in_bed'
|
||||
platform: 'bayesian'
|
||||
name: "in_bed"
|
||||
platform: "bayesian"
|
||||
prior: 0.25
|
||||
probability_threshold: 0.95
|
||||
observations:
|
||||
- platform: 'state'
|
||||
entity_id: 'sensor.living_room_motion'
|
||||
- platform: "state"
|
||||
entity_id: "sensor.living_room_motion"
|
||||
prob_given_true: 0.4
|
||||
prob_given_false: 0.2
|
||||
to_state: "off"
|
||||
- platform: 'state'
|
||||
entity_id: 'sensor.basement_motion'
|
||||
- platform: "state"
|
||||
entity_id: "sensor.basement_motion"
|
||||
prob_given_true: 0.5
|
||||
prob_given_false: 0.4
|
||||
to_state: "off"
|
||||
- platform: 'state'
|
||||
entity_id: 'sensor.bedroom_motion'
|
||||
- platform: "state"
|
||||
entity_id: "sensor.bedroom_motion"
|
||||
prob_given_true: 0.5
|
||||
to_state: "on"
|
||||
- platform: 'state'
|
||||
entity_id: 'sun.sun'
|
||||
- platform: "state"
|
||||
entity_id: "sun.sun"
|
||||
prob_given_true: 0.7
|
||||
to_state: "below_horizon"
|
||||
```
|
||||
@ -121,13 +121,13 @@ as seen in the configuration it requires `below` and/or `above` instead of `to_s
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
name: 'Heat On'
|
||||
platform: 'bayesian'
|
||||
name: "Heat On"
|
||||
platform: "bayesian"
|
||||
prior: 0.2
|
||||
probability_threshold: 0.9
|
||||
observations:
|
||||
- platform: 'numeric_state'
|
||||
entity_id: 'sensor.outside_air_temperature_fahrenheit'
|
||||
- platform: "numeric_state"
|
||||
entity_id: "sensor.outside_air_temperature_fahrenheit"
|
||||
prob_given_true: 0.95
|
||||
below: 50
|
||||
```
|
||||
@ -139,8 +139,8 @@ Finally, here's an example for `template` observation platform, as seen in the c
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
binary_sensor:
|
||||
name: 'Paulus Home'
|
||||
platform: 'bayesian'
|
||||
name: "Paulus Home"
|
||||
platform: "bayesian"
|
||||
prior: 0.5
|
||||
probability_threshold: 0.9
|
||||
observations:
|
||||
|
@ -239,7 +239,7 @@ binary_sensor:
|
||||
my_device:
|
||||
value_template: >-
|
||||
{{ is_state('device_tracker.my_device_nmap','home') or is_state('device_tracker.my_device_gps','home') }}
|
||||
device_class: 'presence'
|
||||
device_class: "presence"
|
||||
attribute_templates:
|
||||
latitude: >-
|
||||
{% if is_state('device_tracker.my_device_nmap','home') %}
|
||||
@ -301,7 +301,7 @@ binary_sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
has_unavailable_states:
|
||||
value_template: '{{ states | selectattr('state', 'in', ['unavailable', 'unknown', 'none']) | list | count }}'
|
||||
value_template: "{{ states | selectattr('state', 'in', ['unavailable', 'unknown', 'none']) | list | count }}"
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
@ -315,7 +315,7 @@ binary_sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
has_sensor_unavailable_states:
|
||||
value_template: '{{ states.sensor | selectattr('state', 'in', ['unavailable', 'unknown', 'none']) | list | count }}'
|
||||
value_template: "{{ states.sensor | selectattr('state', 'in', ['unavailable', 'unknown', 'none']) | list | count }}"
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
@ -42,8 +42,8 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
from: "off"
|
||||
to: "on"
|
||||
condition:
|
||||
condition: numeric_state
|
||||
entity_id: sensor.illumination_34ce00xxxx11
|
||||
@ -60,8 +60,8 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.motion_sensor_158d000xxxxxc2
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
from: "on"
|
||||
to: "off"
|
||||
for:
|
||||
minutes: 5
|
||||
action:
|
||||
@ -79,32 +79,32 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
service: climate.set_operation_mode
|
||||
entity_id: climate.livingroom
|
||||
data:
|
||||
operation_mode: 'Off'
|
||||
operation_mode: "Off"
|
||||
- alias: If the window is closed for 5 minutes turn on the radiator again
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.door_window_sensor_158d000xxxxxc2
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
from: "on"
|
||||
to: "off"
|
||||
for:
|
||||
minutes: 5
|
||||
action:
|
||||
service: climate.set_operation_mode
|
||||
entity_id: climate.livingroom
|
||||
data:
|
||||
operation_mode: 'Smart schedule'
|
||||
operation_mode: "Smart schedule"
|
||||
- alias: Notify if door is opened when away
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.door_window_sensor_15xxxxxxc9xx6b
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
from: "off"
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: group.family
|
||||
@ -112,7 +112,7 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra
|
||||
action:
|
||||
- service: notify.notify_person
|
||||
data:
|
||||
message: 'The door has been opened'
|
||||
message: "The door has been opened"
|
||||
```
|
||||
|
||||
#### Smoke
|
||||
@ -122,8 +122,8 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.smoke_sensor_158d0001574899
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
- service: notify.html5
|
||||
data:
|
||||
@ -143,13 +143,13 @@ The requirement is that you have setup the [`xiaomi aqara` integration](/integra
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.natgas_sensor_158dxxxxxxxxxx
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
- service: notify.html5
|
||||
data:
|
||||
title: Gas alarm!
|
||||
message: 'Gas with a density of {% raw %}{{ state_attr('binary_sensor.natgas_sensor_158dxxxxxxxxxx', 'density') }}{% endraw %} detected.'
|
||||
message: "Gas with a density of {% raw %}{{ state_attr('binary_sensor.natgas_sensor_158dxxxxxxxxxx', 'density') }}{% endraw %} detected."
|
||||
```
|
||||
|
||||
#### Xiaomi Wireless Button
|
||||
|
@ -121,7 +121,7 @@ Here, this example assumes your blink module is named `My Sync Module` and that
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: all
|
||||
to: 'not_home'
|
||||
to: "not_home"
|
||||
action:
|
||||
service: alarm_control_panel.alarm_arm_away
|
||||
entity_id: alarm_control_panel.blink_my_sync_module
|
||||
@ -137,7 +137,7 @@ Similar to the previous example, this automation will disarm blink when arriving
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: all
|
||||
to: 'home'
|
||||
to: "home"
|
||||
action:
|
||||
service: alarm_control_panel.alarm_disarm
|
||||
entity_id: alarm_control_panel.blink_my_sync_module
|
||||
@ -157,7 +157,7 @@ Again, this example assumes your camera's name (in the blink app) is `My Camera`
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.blink_my_camera_motion_detected
|
||||
to: 'on'
|
||||
to: "on"
|
||||
action:
|
||||
service: blink.save_video
|
||||
data:
|
||||
|
@ -45,12 +45,12 @@ You can configure Home Assistant to alert you when the printer jams or runs out
|
||||
sensors:
|
||||
laser_out_of_paper:
|
||||
value_template: "{{ is_state('sensor.hl_l2340d_status', 'no paper') }}"
|
||||
friendly_name: 'Laser Printer Out of Paper'
|
||||
friendly_name: "Laser Printer Out of Paper"
|
||||
- platform: template
|
||||
sensors:
|
||||
laser_paper_jam:
|
||||
value_template: "{{ is_state('sensor.hl_l2340d_status', 'paper jam') }}"
|
||||
friendly_name: 'Laser Printer Paper Jam'
|
||||
friendly_name: "Laser Printer Paper Jam"
|
||||
```
|
||||
|
||||
{% endraw %}
|
||||
|
@ -59,7 +59,7 @@ A full configuration example:
|
||||
# Example configuration.yaml entry
|
||||
weather:
|
||||
- platform: buienradar
|
||||
name: 'volkel'
|
||||
name: "volkel"
|
||||
# Force 'Meetstation Volkel' to be used:
|
||||
latitude: 51.65
|
||||
longitude: 5.70
|
||||
|
@ -56,12 +56,12 @@ calendar:
|
||||
password: !secret caldav
|
||||
url: https://baikal.my-server.net/cal.php/calendars/john.doe@test.com/default
|
||||
custom_calendars:
|
||||
- name: 'HomeOffice'
|
||||
calendar: 'Agenda'
|
||||
search: 'HomeOffice'
|
||||
- name: 'WarmupFlat'
|
||||
calendar: 'Agenda'
|
||||
search: 'Warmup'
|
||||
- name: "HomeOffice"
|
||||
calendar: "Agenda"
|
||||
search: "HomeOffice"
|
||||
- name: "WarmupFlat"
|
||||
calendar: "Agenda"
|
||||
search: "Warmup"
|
||||
```
|
||||
|
||||
This will create two binary sensors for the calendar name Agenda: "HomeOffice" and "WarmupFlat". Those sensors will be `on` if there is an ongoing event matching the regular expression specified in `search`. In custom calendars, events that last a whole day are taken into account.
|
||||
@ -133,7 +133,7 @@ All events of the calendars "private" and "holidays". Note that all day events a
|
||||
calendar:
|
||||
- platform: caldav
|
||||
url: https://nextcloud.example.com/remote.php/dav
|
||||
username: 'me'
|
||||
username: "me"
|
||||
password: !secret caldav
|
||||
calendars:
|
||||
- private
|
||||
@ -149,22 +149,22 @@ Custom calendar names are built from the main calendar + name of the custom cale
|
||||
calendar:
|
||||
- platform: caldav
|
||||
url: https://nextcloud.example.com/remote.php/dav
|
||||
username: 'me'
|
||||
username: "me"
|
||||
password: !secret caldav
|
||||
custom_calendars:
|
||||
- name: holiday
|
||||
calendar: work
|
||||
search: 'Holiday'
|
||||
search: "Holiday"
|
||||
- name: vacation
|
||||
calendar: vacation
|
||||
search: '.*'
|
||||
search: ".*"
|
||||
|
||||
# automations.yaml
|
||||
- id: wakeup
|
||||
alias: worktime wakeup
|
||||
trigger:
|
||||
platform: time
|
||||
at: '06:40:00'
|
||||
at: "06:40:00"
|
||||
action:
|
||||
- service: media_player.media_play
|
||||
entity_id: media_player.bedroom
|
||||
|
@ -210,7 +210,7 @@ Trigger as soon as an event starts:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: calendar.calendar_name
|
||||
to: 'on'
|
||||
to: "on"
|
||||
```
|
||||
|
||||
By using specific text in the event title, you can set conditions to initiate particular automation flows on designated events while other events will be ignored.
|
||||
|
@ -85,7 +85,7 @@ __Bitcoin sensor__
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
platform: bitcoin
|
||||
wallet: 'YOUR WALLET_ID'
|
||||
wallet: "YOUR WALLET_ID"
|
||||
password: YOUR_ACCOUNT_PASSWORD
|
||||
currency: YOUR CURRENCY
|
||||
display_options:
|
||||
|
@ -76,7 +76,7 @@ __Slack notification support__
|
||||
notify:
|
||||
platform: slack
|
||||
api_key: ABCDEFGHJKLMNOPQRSTUVXYZ
|
||||
default_channel: '#general'
|
||||
default_channel: "#general"
|
||||
```
|
||||
|
||||
__Edimax Smart Switches support__
|
||||
|
@ -81,8 +81,8 @@ automation:
|
||||
|
||||
platform: state
|
||||
state_entity_id: sensor.dryer_status
|
||||
state_from: 'Running'
|
||||
state_to: 'Complete'
|
||||
state_from: "Running"
|
||||
state_to: "Complete"
|
||||
|
||||
execute_service: script.turn_on
|
||||
service_entity_id: script.dryer_complete
|
||||
@ -92,8 +92,8 @@ automation 2:
|
||||
|
||||
platform: state
|
||||
state_entity_id: sensor.dryer_status
|
||||
state_from: 'Complete'
|
||||
state_to: 'Empty'
|
||||
state_from: "Complete"
|
||||
state_to: "Empty"
|
||||
|
||||
execute_service: script.turn_on
|
||||
service_entity_id: script.dryer_cleared
|
||||
|
@ -77,8 +77,8 @@ automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.washer_status
|
||||
from: 'Running'
|
||||
to: 'Complete'
|
||||
from: "Running"
|
||||
to: "Complete"
|
||||
action:
|
||||
service: script.turn_on
|
||||
entity_id: script.washer_complete
|
||||
@ -87,8 +87,8 @@ automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: sensor.washer_status
|
||||
from: 'Complete'
|
||||
to: 'Empty'
|
||||
from: "Complete"
|
||||
to: "Empty"
|
||||
action:
|
||||
service: scene.turn_on
|
||||
entity_id: scene.normal
|
||||
|
@ -49,7 +49,7 @@ sensor
|
||||
username: YOUR_GITHUB_USERNAME
|
||||
password: YOUR_GITHUB_ACCESS_TOKEN
|
||||
authentication: basic
|
||||
value_template: '{% raw %}{{ value_json.tag_name }}{% endraw %}'
|
||||
value_template: "{% raw %}{{ value_json.tag_name }}{% endraw %}"
|
||||
headers:
|
||||
Accept: application/vnd.github.v3+json
|
||||
Content-Type: application/json
|
||||
|
@ -72,22 +72,22 @@ input_boolean:
|
||||
initial: off
|
||||
|
||||
automation:
|
||||
- alias: 'Babyphone on'
|
||||
- alias: "Babyphone on"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_boolean.babyphone
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
service: ffmpeg.start
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
|
||||
- alias: 'Babyphone off'
|
||||
- alias: "Babyphone off"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: input_boolean.babyphone
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
from: "on"
|
||||
to: "off"
|
||||
action:
|
||||
service: ffmpeg.stop
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
@ -99,12 +99,12 @@ Now we can make a lot stuff. Here is a simple example of an automation what shou
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: 'Babyphone alarm on'
|
||||
- alias: "Babyphone alarm on"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
from: 'off'
|
||||
to: 'on'
|
||||
from: "off"
|
||||
to: "on"
|
||||
action:
|
||||
- service: media_player.sonos_snapshot
|
||||
entity_id: media_player.bedroom
|
||||
@ -117,7 +117,7 @@ automation:
|
||||
- service: media_player.play_media
|
||||
entity_id: media_player.bedroom
|
||||
data:
|
||||
media_content_type: 'music'
|
||||
media_content_type: "music"
|
||||
media_content_id: http://my_ip_icecast:8000/babyphone.mp3
|
||||
- service: light.turn_on:
|
||||
entity_id:
|
||||
@ -126,12 +126,12 @@ automation:
|
||||
data:
|
||||
brightness: 150
|
||||
|
||||
- alias: 'Babyphone alarm off'
|
||||
- alias: "Babyphone alarm off"
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: binary_sensor.ffmpeg_noise
|
||||
from: 'on'
|
||||
to: 'off'
|
||||
from: "on"
|
||||
to: "off"
|
||||
action:
|
||||
- service: media_player.sonos_restore
|
||||
entity_id: media_player.bedroom
|
||||
|
@ -53,11 +53,11 @@ automation:
|
||||
alias: HTTP to MQTT keep alive
|
||||
trigger:
|
||||
platform: time_pattern
|
||||
minutes: '/10'
|
||||
minutes: "/10"
|
||||
condition:
|
||||
condition: time
|
||||
after: '7:30:00'
|
||||
before: '23:59:59'
|
||||
after: "7:30:00"
|
||||
before: "23:59:59"
|
||||
action:
|
||||
service: rest_command.http_to_mqtt_keep_alive
|
||||
```
|
||||
|
@ -72,13 +72,13 @@ sensor:
|
||||
- station: Hauptbahnhof
|
||||
name: Hbf
|
||||
destinations: ['München Flughafen Terminal','Markt Schwaben']
|
||||
products: 'S-Bahn'
|
||||
products: "S-Bahn"
|
||||
timeoffset: 2
|
||||
- station: Sendlinger Tor
|
||||
lines: ['U2','U8']
|
||||
- station: Scheidplatz
|
||||
products: ['U-Bahn']
|
||||
directions: '1'
|
||||
directions: "1"
|
||||
```
|
||||
|
||||
## If you need help...
|
||||
|
@ -48,8 +48,8 @@ Instead of running [InfluxDB](https://www.influxdata.com/) and Grafana on a Rasp
|
||||
```yaml
|
||||
panel_iframe:
|
||||
router:
|
||||
title: 'Temperature'
|
||||
url: 'http://192.168.2.113:3003/dashboard/db/temperature?edit&tab=time%20range'
|
||||
title: "Temperature"
|
||||
url: "http://192.168.2.113:3003/dashboard/db/temperature?edit&tab=time%20range"
|
||||
```
|
||||
The URL can be obtained by clicking Share Dashboard link on your dashboard:
|
||||
<p class='img'>
|
||||
|
@ -81,7 +81,7 @@ binary_sensor:
|
||||
sensors:
|
||||
on_tester:
|
||||
value_template: "{{ states.input_boolean.on_off.state == 'on' }}"
|
||||
friendly_name: 'Movement'
|
||||
friendly_name: "Movement"
|
||||
device_class: motion
|
||||
```
|
||||
|
||||
|
@ -97,9 +97,9 @@ Note however, that this feature was replaced by a new ignore_string config optio
|
||||
alexa:
|
||||
entity_config:
|
||||
switch.kitchen:
|
||||
name: 'Name for Alexa'
|
||||
description: 'Description for Alexa'
|
||||
display_categories: 'LIGHT'
|
||||
name: "Name for Alexa"
|
||||
description: "Description for Alexa"
|
||||
display_categories: "LIGHT"
|
||||
```
|
||||
([@balloob] - [#11461]) ([cloud docs]) ([alexa.smart_home docs]) (breaking change)
|
||||
- The extension of the `alpha_vantage` requires an update of the configuration as now are exchange data available as well. ([@ChristianKuehnel] - [#11427]) ([sensor.alpha_vantage docs]) (breaking change)
|
||||
|
@ -43,13 +43,13 @@ esphomeyaml:
|
||||
board: nodemcuv2
|
||||
|
||||
wifi:
|
||||
ssid: 'MySSID'
|
||||
password: 'MyPassword'
|
||||
ssid: "MySSID"
|
||||
password: "MyPassword"
|
||||
|
||||
mqtt:
|
||||
broker: '192.168.178.83'
|
||||
username: ''
|
||||
password: ''
|
||||
broker: "192.168.178.83"
|
||||
username: ""
|
||||
password: ""
|
||||
|
||||
logger:
|
||||
ota:
|
||||
|
@ -287,7 +287,7 @@ anymore. - ([@abmantis] - [#25971])
|
||||
Example configuration entry:
|
||||
```yaml
|
||||
- platform: statistics
|
||||
name: 'MiAP2 PSI Stat'
|
||||
name: "MiAP2 PSI Stat"
|
||||
entity_id: sensor.mi_ap2_aqi
|
||||
```
|
||||
|
||||
|
@ -358,8 +358,8 @@ Make sure to fill in all fields of the issue template, that is helping us a lot!
|
||||
```yaml
|
||||
media_player:
|
||||
- platform: vizio
|
||||
host: '<IP>:<PORT>'
|
||||
access_token: '<AUTH_TOKEN>'
|
||||
host: "<IP>:<PORT>"
|
||||
access_token: "<AUTH_TOKEN>"
|
||||
device_class: tv
|
||||
```
|
||||
|
||||
|
@ -436,11 +436,11 @@ Experiencing issues introduced by this release? Please report them in our [issue
|
||||
```yaml
|
||||
tts:
|
||||
- platform: marytts
|
||||
host: 'localhost'
|
||||
host: "localhost"
|
||||
port: 59125
|
||||
codec: 'WAVE_FILE'
|
||||
voice: 'cmu-slt-hsmm'
|
||||
language: 'en_US'
|
||||
codec: "WAVE_FILE"
|
||||
voice: "cmu-slt-hsmm"
|
||||
language: "en_US"
|
||||
effect:
|
||||
Volume: "amount:2.0;",
|
||||
TractScaler: "amount:1.5;",
|
||||
|
@ -25,8 +25,8 @@ automation:
|
||||
trigger:
|
||||
platform: state
|
||||
entity_id: cover.garage_door
|
||||
from: 'closed'
|
||||
to: 'open'
|
||||
from: "closed"
|
||||
to: "open"
|
||||
for: ‘0:30:00’
|
||||
action:
|
||||
service: notify.mobile_app_robbies_pixel_5
|
||||
|
@ -342,7 +342,7 @@ automation:
|
||||
action:
|
||||
- service: xiaomi_miio.vacuum_clean_zone
|
||||
data:
|
||||
repeats: '{{states('input_number.vacuum_passes')|int}}'
|
||||
repeats: "{{states('input_number.vacuum_passes')|int}}"
|
||||
zone: [[30914,26007,35514,28807], [20232,22496,26032,26496]]
|
||||
```
|
||||
|
||||
@ -363,7 +363,7 @@ automation:
|
||||
- service: xiaomi_miio.vacuum_clean_zone
|
||||
data:
|
||||
entity_id: vacuum.xiaomi_vacuum
|
||||
repeats: '{{states('input_number.vacuum_passes')|int}}'
|
||||
repeats: "{{states('input_number.vacuum_passes')|int}}"
|
||||
zone: [[30914,26007,35514,28807], [20232,22496,26032,26496]]
|
||||
```
|
||||
|
||||
|
@ -433,12 +433,12 @@ Before this change:
|
||||
state_address: "2/0/33"
|
||||
automation:
|
||||
- counter: 1
|
||||
hook: 'on'
|
||||
hook: "on"
|
||||
action:
|
||||
- entity_id: cover.sonne_abstellkammer
|
||||
service: cover.open_cover
|
||||
- counter: 1
|
||||
hook: 'off'
|
||||
hook: "off"
|
||||
action:
|
||||
- entity_id: cover.sonne_abstellkammer
|
||||
service: cover.close_cover
|
||||
@ -455,7 +455,7 @@ After this change:
|
||||
```yaml
|
||||
# automation.yaml
|
||||
automation:
|
||||
- alias: 'Binary sensor test counter=1 on'
|
||||
- alias: "Binary sensor test counter=1 on"
|
||||
trigger:
|
||||
platform: numeric_state
|
||||
entity_id: binary_sensor.cover_abstell
|
||||
@ -465,12 +465,12 @@ automation:
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.cover_abstell
|
||||
state: 'on'
|
||||
state: "on"
|
||||
action:
|
||||
- service: cover.open_cover
|
||||
entity_id: cover.sonne_abstellkammer
|
||||
|
||||
- alias: 'Binary sensor test counter=1 off'
|
||||
- alias: "Binary sensor test counter=1 off"
|
||||
trigger:
|
||||
platform: numeric_state
|
||||
entity_id: binary_sensor.cover_abstell
|
||||
@ -480,7 +480,7 @@ automation:
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.cover_abstell
|
||||
state: 'off'
|
||||
state: "off"
|
||||
action:
|
||||
- service: cover.close_cover
|
||||
entity_id: cover.sonne_abstellkammer
|
||||
|
@ -16,7 +16,7 @@ Widget to show a picture as a header or a footer. A picture can have touch actio
|
||||
```yaml
|
||||
header:
|
||||
type: picture
|
||||
image: 'https://www.home-assistant.io/images/lovelace/header-footer/balloons-header.png'
|
||||
image: "https://www.home-assistant.io/images/lovelace/header-footer/balloons-header.png"
|
||||
```
|
||||
|
||||
{% configuration header-footer %}
|
||||
@ -52,9 +52,9 @@ footer:
|
||||
entities:
|
||||
- script.launch_confetti
|
||||
- entity: script.swirl_lights
|
||||
icon: 'mdi:track-light'
|
||||
icon: "mdi:track-light"
|
||||
- entity: script.run_siren
|
||||
icon: 'mdi:alarm-light'
|
||||
icon: "mdi:alarm-light"
|
||||
```
|
||||
|
||||
{% configuration header-footer %}
|
||||
|
Loading…
x
Reference in New Issue
Block a user