Merge branch 'current' into next
This commit is contained in:
commit
28fd5114d6
54 changed files with 554 additions and 84 deletions
|
@ -29,7 +29,7 @@ binary_sensor:
|
|||
Configuration variables:
|
||||
|
||||
- **ports** array (*Required*): Array of used ports.
|
||||
- **port: name** (*Required*): Port numbers and corresponding names.
|
||||
- **port: name** (*Required*): Port numbers (BCM mode pin numbers) and corresponding names.
|
||||
- **pull_mode** (*Optional*): The internal pull to use (UP or DOWN). Default is UP.
|
||||
- **bouncetime** (*Optional*): The time in milliseconds for port debouncing. Default is 50ms.
|
||||
- **invert_logic** (*Optional*): If true, inverts the output logic to ACTIVE LOW. Default is false (ACTIVE HIGH).
|
||||
|
|
|
@ -98,19 +98,6 @@ binary_sensor:
|
|||
- sensor.kitchen_co_status
|
||||
- sensor.wardrobe_co_status
|
||||
```
|
||||
### {% linkable_title Change the icon %}
|
||||
|
||||
This example shows how to change the icon based on the day/night cycle.
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
day_night:
|
||||
friendly_name: 'Day/Night'
|
||||
value_template: {% raw %}'{% if is_state("sun.sun", "above_horizon") %}Day{% else %}Night{% endif %}'{% endraw %}
|
||||
icon_template: {% raw %}'{% if is_state("sun.sun", "above_horizon") %}mdi:weather-sunny{% else %}mdi:weather-night{% endif %}'{% endraw %}
|
||||
```
|
||||
|
||||
### {% linkable_title Washing Machine Running %}
|
||||
|
||||
|
|
|
@ -24,7 +24,7 @@ cover:
|
|||
covers:
|
||||
garage_door:
|
||||
friendly_name: "Garage Door"
|
||||
value_template: "{% raw %}{{is_state('sensor.garage_door > 0'}}{% endraw %}"
|
||||
value_template: "{% raw %}'{{is_state('sensor.garage_door > 0'}}'{% endraw %}"
|
||||
open_cover:
|
||||
service: script.open_garage_door
|
||||
close_cover:
|
||||
|
@ -63,12 +63,13 @@ In this section you will find some real life examples of how to use this cover.
|
|||
This example converts a garage door with a controllable switch and position sensor into a cover.
|
||||
|
||||
```yaml
|
||||
{% raw %}
|
||||
cover:
|
||||
- platform: template
|
||||
covers:
|
||||
garage_door:
|
||||
friendly_name: 'Garage Door'
|
||||
value_template: "{% raw %}{{ sensor.garage_door }}{% endraw %}"
|
||||
value_template: "{{ sensor.garage_door }}"
|
||||
open_cover:
|
||||
service: switch.turn_on
|
||||
entity_id: switch.garage_door
|
||||
|
@ -78,6 +79,109 @@ cover:
|
|||
stop_cover:
|
||||
service: switch.turn_on
|
||||
entity_id: switch.garage_door
|
||||
icon_template: "{% raw %}{% if not is_state('sensor.garage_door', 'on') %}mdi:garage-open{% else %}mdi:garage{% endif %}{% endraw %}"
|
||||
|
||||
icon_template: "{% if not is_state('sensor.garage_door', 'on') %}mdi:garage-open{% else %}mdi:garage{% endif %}"{% endraw %}
|
||||
```
|
||||
|
||||
### {% linkable_title Multi Covers %}
|
||||
|
||||
This example allows you to control two or more covers at once.
|
||||
|
||||
```yaml
|
||||
{% raw %}
|
||||
homeassistant:
|
||||
customize:
|
||||
all_covers:
|
||||
assume_state: true
|
||||
|
||||
cover:
|
||||
- platform: template
|
||||
covers:
|
||||
all_covers:
|
||||
friendly_name: 'All Covers'
|
||||
open_cover:
|
||||
service: script.cover_all_open
|
||||
close_cover:
|
||||
service: script.cover_all_close
|
||||
stop_cover:
|
||||
service: script.cover_all_stop
|
||||
set_cover_position:
|
||||
service: script.cover_all_set_position
|
||||
data_template:
|
||||
position: "{{ position }}"
|
||||
value_template: >
|
||||
{% if is_state('sensor.all_covers', 'open') %}
|
||||
open
|
||||
{% else %}
|
||||
closed
|
||||
{% endif %}
|
||||
|
||||
icon_template: >
|
||||
{% if is_state('sensor.all_covers', 'open') %}
|
||||
mdi:window-open
|
||||
{% else %}
|
||||
mdi:window-closed
|
||||
{% endif %}
|
||||
|
||||
entity_id:
|
||||
- cover.bedroom
|
||||
- cover.livingroom
|
||||
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
all_covers:
|
||||
value_template: >
|
||||
{% if is_state('cover.bedroom', 'open') %}
|
||||
open
|
||||
{% elif is_state('cover.livingroom', 'open') %}
|
||||
open
|
||||
{% else %}
|
||||
closed
|
||||
{% endif %}
|
||||
|
||||
entity_id:
|
||||
- cover.bedroom
|
||||
- cover.livingroom
|
||||
|
||||
script:
|
||||
cover_all_open:
|
||||
sequence:
|
||||
- service: cover.open_cover
|
||||
entity_id: cover.bedroom
|
||||
- service: cover.open_cover
|
||||
entity_id: cover.livingroom
|
||||
cover_all_stop:
|
||||
sequence:
|
||||
- service: cover.stop_cover
|
||||
entity_id: cover.bedroom
|
||||
- service: cover.stop_cover
|
||||
entity_id: cover.livingroom
|
||||
cover_all_close:
|
||||
sequence:
|
||||
- service: cover.close_cover
|
||||
entity_id: cover.bedroom
|
||||
- service: cover.close_cover
|
||||
entity_id: cover.livingroom
|
||||
cover_all_set_position:
|
||||
sequence:
|
||||
- service: cover.set_cover_position
|
||||
entity_id: cover.bedroom
|
||||
data_template:
|
||||
position: "{{ position }}"
|
||||
- service: cover.set_cover_position
|
||||
entity_id: cover.livingroom
|
||||
data_template:
|
||||
position: "{{ position }}"
|
||||
|
||||
automation:
|
||||
- alias: 'Close covers at night'
|
||||
trigger:
|
||||
- platform: sun
|
||||
event: sunset
|
||||
offset: '+00:30:00'
|
||||
action:
|
||||
service: cover.set_cover_position
|
||||
entity_id: cover.all_covers
|
||||
data_template:
|
||||
position: 25{% endraw %}
|
||||
```
|
||||
|
|
|
@ -58,7 +58,7 @@ Configuration variables:
|
|||
|
||||
- **view** (*Optional*): If yes then the entry will be shown as a view (tab) at the top.
|
||||
- **name** (*Optional*): Name of the group.
|
||||
- **icon** (*Optional*): If the group is a view, this icon will show at the top in the frontend instead of the name. If it's not a view, then the icon shows when this group is used in another group.
|
||||
- **icon** (*Optional*): If the group is a view, this icon will show at the top in the frontend instead of the name. If the group is a view and both name and icon have been specified, the icon will appear at the top of the fronted and the name will be displayed as the mouse-over text. If it's not a view, then the icon shows when this group is used in another group.
|
||||
- **control** (*Optional*): Set value to `hidden`. If hidden then the group switch will be hidden.
|
||||
- **entities** (*Required*): array or comma delimited string, list of entities to group.
|
||||
|
||||
|
|
|
@ -13,6 +13,8 @@ ha_category: Automation
|
|||
|
||||
The `input_boolean` component allows the user to define boolean values that can be controlled via the frontend and can be used within conditions of automation. This can for example be used to disable or enable certain automations.
|
||||
|
||||
To enable input booleans in your installation, add the following lines to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
input_boolean:
|
||||
|
@ -25,9 +27,9 @@ input_boolean:
|
|||
Configuration variables:
|
||||
|
||||
- **[alias]** (*Required*): Alias for the input.
|
||||
- **name** (*Optional*): Friendly name of the input.
|
||||
- **initial** (*Optional*): Initial value when Home Assistant starts.
|
||||
- **icon** (*Optional*): Icon for entry.
|
||||
- **name** (*Optional*): Friendly name of the input.
|
||||
- **initial** (*Optional*): Initial value when Home Assistant starts. Defaults to `False`.
|
||||
- **icon** (*Optional*): Icon for entry.
|
||||
|
||||
Pick an icon that you can find on [materialdesignicons.com](https://materialdesignicons.com/) to use for your input and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance`, or `mdi:motorbike`.
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ ha_release: 0.13
|
|||
|
||||
The `input_select` component allows the user to define a list of values that can be selected via the frontend and can be used within conditions of automation. When a user selects a new item, a state transition event is generated. This state event can be used in an `automation` trigger.
|
||||
|
||||
To enable this platform, add the following lines to your `configuration.yaml`:
|
||||
To enable this platform in your installation, add the following lines to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
|
@ -35,11 +35,11 @@ input_select:
|
|||
|
||||
Configuration variables:
|
||||
|
||||
- **[alias]** (*Required*): Alias for the input.
|
||||
- **name** (*Optional*): Friendly name of the input.
|
||||
- **options** array: List of options to choose from
|
||||
- **initial** (*Optional*): Initial value when Home Assistant starts.
|
||||
- **icon** (*Optional*): Icon for entry.
|
||||
- **[alias]** array (*Required*): Alias for the input. Multiple entries are allowed..
|
||||
- **name** (*Optional*): Friendly name of the input.
|
||||
- **options** array (*Required*): List of options to choose from.
|
||||
- **initial** (*Optional*): Initial value when Home Assistant starts.
|
||||
- **icon** (*Optional*): Icon for entry.
|
||||
|
||||
Pick an icon that you can find on [materialdesignicons.com](https://materialdesignicons.com/) to use for your input and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance`, or `mdi:motorbike`.
|
||||
|
||||
|
@ -71,6 +71,22 @@ automation:
|
|||
option: Paulus
|
||||
```
|
||||
|
||||
To dynamically set the `input_select` options you can call `input_select.set_options`. The following example can be used in an automation rule:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
automation:
|
||||
- alias: example automation
|
||||
trigger:
|
||||
platform: event
|
||||
event_type: MY_CUSTOM_EVENT
|
||||
action:
|
||||
- service: input_select.set_options
|
||||
data:
|
||||
entity_id: input_select.who_cooks
|
||||
options: ["Item A", "Item B", "Item C"]
|
||||
```
|
||||
|
||||
### {% linkable_title Scenes %}
|
||||
|
||||
To specify a target option in a [Scene](/components/scene/) you have to specify the target as `option` attribute:
|
||||
|
|
|
@ -14,6 +14,8 @@ ha_release: 0.16
|
|||
|
||||
The `input_slider` component allows the user to define values that can be controlled via the frontend and can be used within conditions of automation. Changes to the slider generate state events. These state events can be utilized as `automation` triggers as well.
|
||||
|
||||
To enable this input sliders in your installation, add the following lines to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
input_slider:
|
||||
|
@ -27,12 +29,12 @@ input_slider:
|
|||
|
||||
Configuration variables:
|
||||
|
||||
- **[alias]** (*Required*): Alias for the slider input.
|
||||
- **min** (*Required*): Minimum value for the slider.
|
||||
- **max** (*Required*): Maximum value for the slider.
|
||||
- **name** (*Optional*): Friendly name of the slider input.
|
||||
- **initial** (*Optional*): Initial value when Home Assistant starts.
|
||||
- **step** (*Optional*): Step value for the slider.
|
||||
- **[alias]** (*Required*): Alias for the slider input. Multiple entries are allowed.
|
||||
- **min** (*Required*): Minimum value for the slider.
|
||||
- **max** (*Required*): Maximum value for the slider.
|
||||
- **name** (*Optional*): Friendly name of the slider input.
|
||||
- **initial** (*Optional*): Initial value when Home Assistant starts. Defaults to 0.
|
||||
- **step** (*Optional*): Step value for the slider. Defaults to 1.
|
||||
|
||||
## {% linkable_title Automation Examples %}
|
||||
|
||||
|
|
|
@ -88,7 +88,7 @@ A device is created by creating a directory, with the name for the device, under
|
|||
* *HA.lock* will create a lock
|
||||
* *HA.switch* will create a switch
|
||||
|
||||
A program, named *status*, is required under the program device directory. A program, named *actions*, is required for all program devices except for binary_sensor. Any other programs in these device directories will be ignored.
|
||||
A program, named *status*, is required under the program device directory. A program, named *actions*, is required for all program devices except for binary_sensor. Any other programs in these device directories will be ignored. The *status* program requires that you create a variable with the name of your choice. This variable will store the actual status of the new device and will be updated by the *action* program.
|
||||
|
||||
<p class='img'>
|
||||
<img src='{{site_root}}/images/isy994/isy994_CoverExample.png' />
|
||||
|
|
|
@ -9,7 +9,7 @@ sharing: true
|
|||
footer: true
|
||||
logo: bluesound.png
|
||||
ha_category: Media Player
|
||||
featured: true
|
||||
featured: false
|
||||
ha_release: 0.51
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
|
|
@ -15,7 +15,7 @@ ha_iot_class: "Local Polling"
|
|||
|
||||
The `braviatv` platform allows you to control a [Sony Bravia TV](http://www.sony.com).
|
||||
|
||||
Almost all [Sony Bravia TV 2013 and newer](http://info.tvsideview.sony.net/en_ww/home_device.html#bravia) are supported.
|
||||
Almost all [Sony Bravia TV 2013 and newer](http://info.tvsideview.sony.net/en_ww/home_device.html#bravia) are supported. A more generic method for older TVs connected to a Raspberry Pi with HDMI-CEC is explained further below.
|
||||
|
||||
You will need to configure your TV to allow the Home Assistant for remote usage. To do that, ensure that your TV is turned on. Open the configuration popup on Home Assistant and enter a random PIN (for example 0000). After that, the TV will show you a PIN and Home Assistant will allow you to re-enter that PIN. Enter the PIN shown on your TV and Home Assistant will be able to control your Sony Bravia TV.
|
||||
|
||||
|
@ -33,8 +33,43 @@ Configuration variables:
|
|||
- **host** (*Required*): The IP of the Sony Bravia TV, eg. 192.168.0.10
|
||||
- **name** (*Optional*): The name to use on the frontend.
|
||||
|
||||
You are also able to configure the TV manually by placing a `bravia.conf` file in your `.homeassistant` config directory with the following information - please update the details to match your setup:
|
||||
You are also able to configure the TV manually by placing a `bravia.conf` file in your [configuration directory](/docs/configuration/) with the following information - please update the details to match your setup:
|
||||
|
||||
```json
|
||||
{"192.168.0.10": {"pin": "7745", "mac": "ac:1e:0a:e1:0c:01"}}
|
||||
```
|
||||
|
||||
## {% linkable_title For TVs older than 2013 %}
|
||||
|
||||
Users of TVs older than 2013 have another option for controlling their TV via Home Assistant.
|
||||
|
||||
### {% linkable_title Using HDMI-CEC %}
|
||||
|
||||
If you have a Raspberry Pi connected to your TV:
|
||||
|
||||
```yaml
|
||||
switch:
|
||||
- platform: command_line
|
||||
switches:
|
||||
tv_rpi:
|
||||
command_on: ssh root@[IP] "echo 'on 0' | cec-client -s"
|
||||
command_off: ssh root@[IP] "echo 'standby 0' | cec-client -s"
|
||||
command_state: ssh root@[IP] "echo 'pow 0' | cec-client -s |grep 'power status:'"
|
||||
value_template: {% raw %}'{{ value == "power status: on" }}{% endraw %}'
|
||||
```
|
||||
|
||||
Using `cec-client` is a great method to turn your TV off/on, however the trade off is if you're using Kodi, it will no longer be able to control your TV using the TV Remote.
|
||||
|
||||
This is because only one process can control the CEC functionality within the Raspberry Pi at a time and running the above commands terminates the functionality inside libCEC within Kodi. Kodi must be restarted for TV remove functionality to work again.
|
||||
|
||||
**Workaround:**
|
||||
|
||||
If your desire is only to turn on your TV, the following "workaround" may be desirable:
|
||||
|
||||
Change the 'on' command to a restart for Kodi. This doesn't reboot the Kodi device.
|
||||
|
||||
Restarting Kodi will trigger a HDMI-CEC event to bring the TV out of standby. The following can replace your TV 'on' command.
|
||||
|
||||
```yaml
|
||||
command_on: ssh root@[IP] "systemctl restart kodi"
|
||||
```
|
||||
|
|
|
@ -27,6 +27,7 @@ Supported devices:
|
|||
- Marantz M-CR603
|
||||
- Marantz M-RC610
|
||||
- Marantz SR5008
|
||||
- Marantz SR6007 - SR6010
|
||||
- Marantz NR1604
|
||||
- Other Denon AVR receivers (untested)
|
||||
- Marantz receivers (experimental)
|
||||
|
@ -44,6 +45,7 @@ media_player:
|
|||
host: IP_ADDRESS
|
||||
name: NAME
|
||||
show_all_sources: True / False
|
||||
timeout: POSITIVE INTEGER
|
||||
zones:
|
||||
- zone: Zone2 / Zone3
|
||||
name: NAME
|
||||
|
@ -54,6 +56,7 @@ Configuration variables:
|
|||
- **host** (*Optional*): IP address of the device. Example: 192.168.1.32. If not set, auto discovery is used.
|
||||
- **name** (*Optional*): Name of the device. If not set, friendlyName of receiver is used.
|
||||
- **show_all_sources** (*Optional*): If True all sources are displayed in sources list even if they are marked as deleted in the receiver. If False deleted sources are not displayed (default). Some receivers have a bug that marks all sources as deleted in the interface. In this case this option could help.
|
||||
- **timeout** (*Optional*): Timeout for HTTP requests to the receiver. Defaults to 2 seconds if not provided.
|
||||
- **zones** (*Optional*): List of additional zones to be activated. They are displayed as additional media players with the same functionality Main Zone of the device supports
|
||||
- **zone**: Zone which should be activated. Valid options are Zone2 and Zone3
|
||||
- **name** (*Optional*): Name of the zone. If not set the name of the main device + zone as suffix is taken.
|
||||
|
|
|
@ -32,7 +32,7 @@ Available services: `turn_on`, `turn_off`, `toggle`, `volume_up`, `volume_down`,
|
|||
| Service data attribute | Optional | Description |
|
||||
|------------------------|----------|--------------------------------------------------|
|
||||
| `entity_id` | yes | Target a specific media player. Defaults to all. |
|
||||
| `volume_level` | no | Float for volume level |
|
||||
| `volume_level` | no | Float for volume level |
|
||||
|
||||
#### {% linkable_title Service `media_player/media_seek` %}
|
||||
|
||||
|
@ -62,4 +62,6 @@ Currently only supports Spotify.
|
|||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ---------------------------------------------------- |
|
||||
| `entity_id` | no | Target a specific media player. For example `media_player.spotify`|
|
||||
| `shuffle` | no | `true`/`false` for enabling/disabling shuffle |
|
||||
| `shuffle` | no | `true`/`false` for enabling/disabling shuffle |
|
||||
|
||||
|
||||
|
|
|
@ -61,6 +61,7 @@ Currently tested but not working models:
|
|||
- J5200 - Unable to see state and unable to control
|
||||
- JU7000 - Unable to see state and unable to control (but port 8001 *is* open)
|
||||
- JU7500 - Unable to see state and unable to control
|
||||
- JS9000 - State is always "on" and unable to control (but port 8001 *is* open)
|
||||
- JS9500 - State is always "on" and unable to control (but port 8001 *is* open)
|
||||
|
||||
If your model is not on the list then give it a test, if everything works correctly then add it to the list on [GitHub](https://github.com/home-assistant/home-assistant.github.io/tree/current/source/_components/media_player.samsungtv.markdown).
|
||||
|
|
|
@ -14,9 +14,9 @@ ha_release: "0.40"
|
|||
|
||||
The `ciscospark` notification platform allows you to deliver notifications from Home Assistant to [Cisco Spark](https://ciscospark.com/).
|
||||
|
||||
To use this notification platform you need to get a developer token. To obtain a token visit [Spark for Devleopers](https://developer.ciscospark.com/index.html)
|
||||
To use this notification platform you need to get a developer token. To obtain a token visit [Spark for Developers](https://developer.ciscospark.com/index.html)
|
||||
|
||||
At this time you also need to specify the `Cisco Spark` `roomid`. The `roomid` can also be found at [Spark for Devleopers](https://developer.ciscospark.com/index.html). Just look in the Doumentation under Rooms.
|
||||
At this time you also need to specify the `Cisco Spark` `roomid`. The `roomid` can also be found at [Spark for Developers](https://developer.ciscospark.com/index.html). Just look in the Doumentation under Rooms.
|
||||
|
||||
To enable the Cisco Spark notification in your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
|
|
|
@ -48,7 +48,7 @@ action:
|
|||
|
||||
### {% linkable_title Test if it works %}
|
||||
|
||||
A simple way to test if you have set up your notify platform correctly is to use <img src='/images/screenshots/developer-tool-services-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> **Services** from the **Developer Tools**. Choose your service (*notify/xyz*) from the list of **Available services:** and enter something like the sample below into the **Service Data** field and hit **CALL SERVICE**.
|
||||
A simple way to test if you have set up your notify platform correctly, is to use <img src='/images/screenshots/developer-tool-services-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> **Services** from the **Developer Tools**. Choose your service from the dropdown menu **Service**, enter something like the sample below into the **Service Data** field, and hit **CALL SERVICE**.
|
||||
|
||||
```json
|
||||
{
|
||||
|
|
|
@ -84,6 +84,21 @@ action:
|
|||
|
||||
- **file** (*Required*): File to send with Pushbullet.
|
||||
|
||||
|
||||
### {% linkable_title File URL support %}
|
||||
|
||||
```yaml
|
||||
action:
|
||||
service: notify.NOTIFIER_NAME
|
||||
data:
|
||||
title: Send file
|
||||
message: This is a file URL
|
||||
data:
|
||||
file_url: https://cdn.pixabay.com/photo/2014/06/03/19/38/test-361512_960_720.jpg
|
||||
```
|
||||
|
||||
- **file_url** (*Required*): File to send with Pushbullet.
|
||||
|
||||
<p class='note'>
|
||||
Don't forget to [whitelist external directories](/docs/configuration/basic/), so Home Assistant has access to them.
|
||||
</p>
|
||||
|
|
|
@ -13,7 +13,7 @@ ha_release: 0.12
|
|||
---
|
||||
|
||||
|
||||
The `twitter` platform uses [Twitter](https://twitter.com) to delivery notifications from Home Assistant.
|
||||
The `twitter` platform uses [Twitter](https://twitter.com) to deliver notifications from Home Assistant.
|
||||
|
||||
Go to [Twitter Apps](https://apps.twitter.com/app/new) and create an application. Visit "Keys and Access Tokens" of the application to get the details ("Consumer Key", "Consumer Secret", "Access Token" and "Access Token Secret" which needs to be generated).
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
layout: page
|
||||
title: "RSS feed template"
|
||||
description: "Instructions how to setup an RSS feed for sensor information and other."
|
||||
description: "Use this component to generate RSS feeds showing your latest data."
|
||||
date: 2017-04-11 20:42
|
||||
sidebar: true
|
||||
comments: false
|
||||
|
@ -19,9 +19,11 @@ For example, on Android, the app "Simple RSS Widget" can be used to display temp
|
|||
```yaml
|
||||
# Example configuration.yml entry
|
||||
rss_feed_template:
|
||||
# Accessible on <home assistant url>/api/rss_template/garden
|
||||
# Example: https://localhost:8123/api/rss_template/garden
|
||||
garden:
|
||||
requires_api_password: False
|
||||
title: "Garden {% raw %}{{ as_timestamp(now())|timestamp_custom('%H:%m', True) }}{% endraw %}"
|
||||
title: "Garden {% raw %}{{ as_timestamp(now())|timestamp_custom('%H:%M', True) }}{% endraw %}"
|
||||
items:
|
||||
- title: "Outside temperature"
|
||||
description: "{% raw %}{% if is_state('sensor.temp_outside','unknown') %}---{% else %}{{states.sensor.temp_outside.state}} °C{% endif %}{% endraw %}"
|
||||
|
|
|
@ -56,7 +56,7 @@ sensor:
|
|||
command: "cat /home/homeassistant/.homeassistant/.HA_VERSION"
|
||||
```
|
||||
|
||||
You might think that a [`rest` sensor](/components/sensor.rest/) could work to but it will not as Home Assistant is not ready when the sensor get initialized.
|
||||
You might think that a [`rest` sensor](/components/sensor.rest/) could work, too, but it will not as Home Assistant is not ready when the sensor get initialized.
|
||||
|
||||
```yaml
|
||||
sensor:
|
||||
|
|
|
@ -14,7 +14,7 @@ ha_iot_class: "Cloud Polling"
|
|||
---
|
||||
|
||||
The `usps` platform allows one to track deliveries and inbound mail from the [US Postal Service (USPS)](https://www.usps.com/).
|
||||
In addition to having a USPS account, you will need to complete the "Opt-In" process by clicking "Get Started Now" on [this page](https://my.usps.com/mobileWeb/pages/intro/start.action). You must also "Opt-In" to [Informed Delivery](https://informeddelivery.usps.com/box/pages/intro/start.action) to see inbound mail.
|
||||
In addition to having a USPS account, you will need to complete the "Opt-In" process for packages by clicking "Get Started Now" on [this page](https://my.usps.com/mobileWeb/pages/intro/start.action). You must also "Opt-In" to [Informed Delivery](https://informeddelivery.usps.com/box/pages/intro/start.action) to see inbound mail.
|
||||
|
||||
To enable this component, add the following lines to your `configuration.yaml`:
|
||||
|
||||
|
|
|
@ -17,7 +17,7 @@ The `xiaomi` vacuum platform allows you to control the state of your [Xiaomi Mi
|
|||
|
||||
Current supported features are `turn_on`, `pause`, `stop`, `return_to_home`, `turn_off` (stops goes to dock), `locate`, `clean_spot`, `set_fanspeed` and even remote control your robot.
|
||||
|
||||
Please follow the instructions on [Retrieving the Access Token](/xiaomi/#retrieving-the-access-token) to get the API token to use in the `configuration.yaml` file.
|
||||
Please follow the instructions on [Retrieving the Access Token](/components/xiaomi/#retrieving-the-access-token) to get the API token to use in the `configuration.yaml` file.
|
||||
|
||||
To add a vacuum to your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
|
|
|
@ -42,4 +42,4 @@ Configuration variables:
|
|||
- **usb_path** (*Required*): Path to the serial device for the radio.
|
||||
- **database_path** (*Required*): Path to the database which will keep persistent network data.
|
||||
|
||||
To add new devices to the network, call the `permit` service on the `zha` domain, and then follow the device instructions for doing a scan or factory reset. In case you want to add Philips Hue bulbs that have previously been added to another bridge, have a look at: https://github.com/vanviegen/hue-thief
|
||||
To add new devices to the network, call the `permit` service on the `zha` domain, and then follow the device instructions for doing a scan or factory reset. In case you want to add Philips Hue bulbs that have previously been added to another bridge, have a look at: [https://github.com/vanviegen/hue-thief/](https://github.com/vanviegen/hue-thief/)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue