mirror of
https://github.com/home-assistant/home-assistant.io.git
synced 2025-07-24 01:37:23 +00:00
commit
0c833c0bc3
@ -139,12 +139,12 @@ social:
|
||||
|
||||
# Home Assistant release details
|
||||
current_major_version: 0
|
||||
current_minor_version: 56
|
||||
current_patch_version: 2
|
||||
date_released: 2017-10-23
|
||||
current_minor_version: 57
|
||||
current_patch_version: 0
|
||||
date_released: 2017-11-04
|
||||
|
||||
# Either # or the anchor link to latest release notes in the blog post.
|
||||
# Must be prefixed with a # and have double quotes around it.
|
||||
# Major release:
|
||||
patch_version_notes: "#0562---october-23"
|
||||
patch_version_notes: ""
|
||||
# Minor release (Example #release-0431---april-25):
|
||||
|
@ -286,7 +286,7 @@ article.post, article.page, article.listing {
|
||||
li {
|
||||
margin-bottom: 10px;
|
||||
|
||||
& > p {
|
||||
& > p:last-child {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
|
@ -79,3 +79,33 @@ automation:
|
||||
service: alarm_control_panel.alarm_trigger
|
||||
entity_id: alarm_control_panel.ha_alarm
|
||||
```
|
||||
|
||||
Sending a notification when the alarm is triggered.
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: 'Send notification when alarm triggered'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: alarm_control_panel.ha_alarm
|
||||
to: 'triggered'
|
||||
action:
|
||||
- service: notify.notify
|
||||
data:
|
||||
message: "ALARM! The alarm has been triggered"
|
||||
```
|
||||
|
||||
Disarming the alarm when the door is properly unlocked.
|
||||
|
||||
```yaml
|
||||
automation:
|
||||
- alias: 'Disarm alarm when door unlocked by keypad'
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id: sensor.front_door_lock_alarm_type
|
||||
to: '19'
|
||||
# many z-wave locks use Alarm Type 19 for 'Unlocked by Keypad'
|
||||
action:
|
||||
- service: alarm_control_panel.alarm_disarm
|
||||
entity_id: alarm_control_panel.house_alarm
|
||||
```
|
||||
|
16
source/_components/binary_sensor.tellduslive.markdown
Normal file
16
source/_components/binary_sensor.tellduslive.markdown
Normal file
@ -0,0 +1,16 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Telldus Binary Sensor"
|
||||
description: "Instructions how to integrate Telldus Live binary sensors into Home Assistant."
|
||||
date: 2017-10-24 10:09
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: telldus.png
|
||||
ha_category: Binary Sensor
|
||||
featured: false
|
||||
---
|
||||
|
||||
Integrates Telldus Live binary sensors into Home Assistant. See the [main component](/components/tellduslive/) for configuration instructions.
|
||||
|
@ -14,8 +14,6 @@ ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
|
||||
The `neato` camera platform allows you to view the latest cleaning map of your [Neato Botvac Connected]
|
||||
(https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
|
||||
|
||||
The requirement is that you have setup your [Neato hub](/components/neato/).
|
||||
The `neato` camera platform allows you to view the latest cleaning map of your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
|
||||
|
||||
To add `neato` camera to your installation, follow instructions in [Neato component](/components/neato/).
|
||||
|
33
source/_components/climate.ephember
Normal file
33
source/_components/climate.ephember
Normal file
@ -0,0 +1,33 @@
|
||||
---
|
||||
layout: page
|
||||
title: "EPH Controls Ember Thermostat"
|
||||
description: "Instructions on how to integrate EPH Controls Ember thermostats within Home Assistant."
|
||||
date: 2017-10-07 12:40
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: ephcontrolsember.png
|
||||
ha_category: Climate
|
||||
ha_release: "0.55"
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
|
||||
The `ephember` climate platform lets you control [EPH Controls](http://emberapp.ephcontrols.com/) thermostats. The module only works if you have a WiFi gateway to control your EPH system and an account on the ember app.
|
||||
|
||||
To set it up, add the following information to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
climate:
|
||||
- platform: ephember
|
||||
username: YOUR_EMAIL
|
||||
password: YOUR_PASSWORD
|
||||
```
|
||||
|
||||
A single interface can handle up to 32 connected devices.
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **username** (*Required*): The email address you used to sign up to the ember app
|
||||
- **password** (*Required*): The password you used to sign up to the ember app
|
@ -35,7 +35,8 @@ Configuration variables:
|
||||
- **target_temp** (*Optional*): Set initial target temperature. Failure to set this variable will result in target temperature being set to null on startup.
|
||||
- **ac_mode** (*Optional*): Set the switch specified in the *heater* option to be treated as a cooling device instead of a heating device.
|
||||
- **min_cycle_duration** (*Optional*): Set a minimum amount of time that the switch specified in the *heater* option must be in it's current state prior to being switched either off or on.
|
||||
- **tolerance** (*Optional*): Set a minimum amount of difference between the temperature read by the sensor specified in the *target_sensor* option and the target temperature that must change prior to being switched either off or on. For example, if the target temperature is 25 and the tolerance is 0.5 the heater will start when the sensor goes below 24.5 and it will stop when the sensor goes above 25.5.
|
||||
- **cold_tolerance** (*Optional*): Set a minimum amount of difference between the temperature read by the sensor specified in the *target_sensor* option and the target temperature that must change prior to being switched on. For example, if the target temperature is 25 and the tolerance is 0.5 the heater will start when the sensor equals or goes below 24.5.
|
||||
- **hot_tolerance** (*Optional*): Set a minimum amount of difference between the temperature read by the sensor specified in the *target_sensor* option and the target temperature that must change prior to being switched off. For example, if the target temperature is 25 and the tolerance is 0.5 the heater will stop when the sensor equals or goes above 25.5.
|
||||
- **keep_alive** (*Optional*): Set a keep-alive interval. If set, the switch specified in the *heater* option will be triggered every time the interval elapses. Use with heaters and A/C units that shut off if they don't receive a signal from their remote for a while.
|
||||
|
||||
A full configuration example looks like the one below. `min_cycle_duration` and `keep_alive` must contain at least one of the following entries: `days:`, `hours:`, `minutes:`, `seconds:` or `milliseconds:`.
|
||||
@ -50,7 +51,8 @@ climate:
|
||||
min_temp: 15
|
||||
max_temp: 21
|
||||
target_temp: 17
|
||||
tolerance: 0.3
|
||||
cold_tolerance: 0.3
|
||||
hot_tolerance: 0
|
||||
min_cycle_duration:
|
||||
seconds: 5
|
||||
keep_alive:
|
||||
|
@ -251,3 +251,69 @@ automation:
|
||||
position: 25
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Change The Icon %}
|
||||
|
||||
This example shows how to change the icon based on the cover state.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
cover:
|
||||
- platform: template
|
||||
covers:
|
||||
cover_group:
|
||||
friendly_name: "Cover Group"
|
||||
open_cover:
|
||||
service: script.cover_group
|
||||
data:
|
||||
modus: 'open'
|
||||
close_cover:
|
||||
service: script.cover_group
|
||||
data:
|
||||
modus: 'close'
|
||||
stop_cover:
|
||||
service: script.cover_group
|
||||
data:
|
||||
modus: 'stop'
|
||||
value_template: "{{is_state('sensor.cover_group', 'open')}}"
|
||||
icon_template: >-
|
||||
{% if is_state('sensor.cover_group', 'open') %}
|
||||
mdi:window-open
|
||||
{% else %}
|
||||
mdi:window-closed
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Change The Entity Picture %}
|
||||
|
||||
This example shows how to change the entity picture based on the cover state.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
cover:
|
||||
- platform: template
|
||||
covers:
|
||||
cover_group:
|
||||
friendly_name: "Cover Group"
|
||||
open_cover:
|
||||
service: script.cover_group
|
||||
data:
|
||||
modus: 'open'
|
||||
close_cover:
|
||||
service: script.cover_group
|
||||
data:
|
||||
modus: 'close'
|
||||
stop_cover:
|
||||
service: script.cover_group
|
||||
data:
|
||||
modus: 'stop'
|
||||
value_template: "{{is_state('sensor.cover_group', 'open')}}"
|
||||
icon_template: >-
|
||||
{% if is_state('sensor.cover_group', 'open') %}
|
||||
/local/cover-open.png
|
||||
{% else %}
|
||||
/local/cover-closed.png
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
@ -42,3 +42,5 @@ To configure Geofency, you must configure (via the Webhook feature) to send a PO
|
||||
Geofency will automatically generate the device tracker name used for geofences, and you will find it in `known_devices.yaml` after the first request. For beacons, the device name will be `beacon_<name from Geofency>`, e.g., `device_tracker.beacon_car`.
|
||||
|
||||
When you enter a geofence or stationary beacon, your location name in Home Assistant will be set to the name of the geofence or beacon location in Geofency. When you exit a geofence or stationary beacon, your location name in Home Assistant will be set to 'not home'. For mobile beacons, the location name will be 'not_home' whenever the beacon is entered or exited outside of a [zone](https://home-assistant.io/components/zone/), otherwise, it will be set to the name of the zone.
|
||||
|
||||
To make Geofency work better with the [proximity](https://home-assistant.io/components/proximity/) component, you should enable the 'Send Current Location' feature in the Webhook configuration screen. This ensures that the _current_ GPS coordinates are included in exit events instead of the coordinates of the (center of) the zone that was exited.
|
@ -68,6 +68,8 @@ Configuration variables:
|
||||
- **host** (*Required*): The IP address of your router, eg. 192.168.1.1.
|
||||
- **username** (*Required*): The username of an user with administrative privileges, usually *root*.
|
||||
- **password** (*Required*): The password for your given account.
|
||||
- **dhcp_software** (*Optional*): The DHCP software used in your router: `dnsmasq` or `dhcpd`. Defaults to `dnsmasq`.
|
||||
|
||||
|
||||
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.
|
||||
|
||||
|
@ -18,6 +18,32 @@ This offers the official frontend to control Home Assistant.
|
||||
frontend:
|
||||
```
|
||||
|
||||
{% configuration %}
|
||||
themes:
|
||||
description: Allow to define different themes. See below for further details.
|
||||
required: false
|
||||
type: map
|
||||
keys:
|
||||
"[identifier]":
|
||||
description: Name to use in the frontend.
|
||||
required: true
|
||||
type: [list, map]
|
||||
keys:
|
||||
"[css-identifier]":
|
||||
description: The CSS identifier.
|
||||
required: true
|
||||
type: [list, string]
|
||||
extra_html_url:
|
||||
description: "List of addtional [resources](/developers/frontend_creating_custom_ui/) to load."
|
||||
required: false
|
||||
type: list
|
||||
development_repo:
|
||||
description: Allow to point to a directory containing frontend files instead of taking them from a pre-built PyPI package. Useful for Frontend development.
|
||||
required: false
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
|
||||
## {% linkable_title Themes %}
|
||||
|
||||
Starting with version 0.49 you can define themes:
|
||||
|
@ -65,11 +65,15 @@ homeassistant:
|
||||
aliases:
|
||||
- bedroom shades
|
||||
- bedroom covers
|
||||
hallway_ceiling_switch:
|
||||
google_assistant: true
|
||||
google_assistant_type: light
|
||||
```
|
||||
|
||||
*Entity Customization Keys:*
|
||||
* *google_assistant*: True exposes entity, false will hide it
|
||||
* *google_assistant_name*: Can be used to override the primary name of an entity. By default the `friendly_name` of an entity is used.
|
||||
* *google_assistant_type*: Can be used to override the domain/type of an entity. For example a switch can be treated as a light
|
||||
* *aliases*: Provides "nicknames" to Google Assistant. These function as alternate names for an entity that Assistant will understand when spoken.
|
||||
|
||||
### {% linkable_title Setup %}
|
||||
|
@ -29,7 +29,6 @@ Configuration variables:
|
||||
- **server_host** (*Optional*): Only listen to incoming requests on specific IP/host (default: accept all)
|
||||
- **server_port** (*Optional*): Let you set a port to use. Defaults to 8123.
|
||||
- **base_url** (*Optional*): The URL that Home Assistant is available on the internet. For example: `hass-example.duckdns.org:8123`. Defaults to the local IP address. The iOS app finds local installations, if you have an outside URL use this so that you can auto-fill when discovered in the app.
|
||||
- **development** (*Optional*): Disable caching and load unvulcanized assets. Useful for Frontend development.
|
||||
- **ssl_certificate** (*Optional*): Path to your TLS/SSL certificate to serve Home Assistant over a secure connection.
|
||||
- **ssl_key** (*Optional*): Path to your TLS/SSL key to serve Home Assistant over a secure connection.
|
||||
- **cors_allowed_origins** (*Optional*): A list of origin domain names to allow [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) requests from. Enabling this will set the `Access-Control-Allow-Origin` header to the Origin header if it is found in the list, and the `Access-Control-Allow-Headers` header to `Origin, Accept, X-Requested-With, Content-type, X-HA-access`. You must provide the exact Origin, i.e. `https://home-assistant.io` will allow requests from `https://home-assistant.io` but __not__ `http://home-assistant.io`.
|
||||
|
@ -32,6 +32,6 @@ insteon_hub:
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **username** (*Required*): The username used to access the Insteon interface (e.g. the [connect.insteon.com](connect.insteon.com) site).
|
||||
- **username** (*Required*): The username used to access the Insteon interface (e.g. the [connect.insteon.com](http://connect.insteon.com/) site).
|
||||
- **password** (*Required*): The password used to access the Insteon interface.
|
||||
- **api_key** (*Required*): The Insteon REST API key emailed to you once you are approved in the Insteon Developer program.
|
||||
|
@ -29,4 +29,5 @@ Configuration variables:
|
||||
- **host** (*Required*): The IP address of the device the Hyperion service is running on.
|
||||
- **port** (*Optional*): The port used to communicate with the Hyperion service. Defaults to `19444`.
|
||||
- **name** (*Optional*): The name of the device used in the frontend.
|
||||
- **priority** (*Optional*): The priority of the hyperion instance. Defaults to `128`.
|
||||
- **default_color** (*Optional*): The color of the light. Defaults to `[255, 255, 255]`.
|
||||
|
@ -42,6 +42,7 @@ Configuration variables:
|
||||
- **effect_value_template** (*Optional*): Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the effect value.
|
||||
- **effect_list** (*Optional*): The list of effects the light supports.
|
||||
- **name** (*Optional*): The name of the switch. Default is 'MQTT Switch'.
|
||||
- **on_command_type** (*Optional*): Defines when on the payload_on is sent. Using `last` (the default) will send any style (brightness, color, etc) topics first and then a `payload_on` to the `command_topic`. Using `first` will send the `payload_on` and then any style topics. Using `brightness` will only send brightness commands instead of the `payload_on` to turn the light on.
|
||||
- **optimistic** (*Optional*): Flag that defines if switch works in optimistic mode. Default is true if no state topic defined, else false.
|
||||
- **payload_off** (*Optional*): The payload that represents disabled state. Default is "OFF".
|
||||
- **payload_on** (*Optional*): The payload that represents enabled state. Default is "ON".
|
||||
@ -128,6 +129,24 @@ light:
|
||||
optimistic: false
|
||||
```
|
||||
|
||||
### {% linkable_title Brightness without on commands %}
|
||||
|
||||
To enable a light that sends only brightness topics to turn it on, add the following to your `configuration.yaml` file. The `command_topic` is only used to send an off command in this case:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yml entry
|
||||
light:
|
||||
- platform: mqtt
|
||||
name: "Brightness light"
|
||||
state_topic: "office/light/status"
|
||||
command_topic: "office/light/switch"
|
||||
payload_off: "OFF"
|
||||
brightness_state_topic: 'office/rgb1/light/brightness'
|
||||
brightness_command_topic: 'office/rgb1/light/brightness/set'
|
||||
on_command_type: 'brightness'
|
||||
```
|
||||
|
||||
|
||||
### {% linkable_title Implementations %}
|
||||
|
||||
- A [basic example](https://github.com/mertenats/open-home-automation/tree/master/ha_mqtt_light) using a nodeMCU board (ESP8266) to control its built-in LED (on/off).
|
||||
|
@ -143,3 +143,91 @@ light:
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Change The Icon %}
|
||||
|
||||
This example shows how to change the icon based on the light state.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
light:
|
||||
- platform: template
|
||||
lights:
|
||||
theater_volume:
|
||||
friendly_name: "Receiver Volume"
|
||||
value_template: >-
|
||||
{% if is_state('media_player.receiver', 'on') %}
|
||||
{% if states.media_player.receiver.attributes.is_volume_muted %}
|
||||
off
|
||||
{% else %}
|
||||
on
|
||||
{% endif %}
|
||||
{% else %}
|
||||
off
|
||||
{% endif %}
|
||||
icon_template: >-
|
||||
{% if is_state('media_player.receiver', 'on') %}
|
||||
{% if states.media_player.receiver.attributes.is_volume_muted %}
|
||||
mdi:lightbulb-off
|
||||
{% else %}
|
||||
mdi:lightbulb-on
|
||||
{% endif %}
|
||||
{% else %}
|
||||
mdi:lightbulb-off
|
||||
{% endif %}
|
||||
turn_on:
|
||||
service: media_player.volume_mute
|
||||
data:
|
||||
entity_id: media_player.receiver
|
||||
is_volume_muted: false
|
||||
turn_off:
|
||||
service: media_player.volume_mute
|
||||
data:
|
||||
entity_id: media_player.receiver
|
||||
is_volume_muted: true
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Change The Entity Picture %}
|
||||
|
||||
This example shows how to change the entity picture based on the light state.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
light:
|
||||
- platform: template
|
||||
lights:
|
||||
theater_volume:
|
||||
friendly_name: "Receiver Volume"
|
||||
value_template: >-
|
||||
{% if is_state('media_player.receiver', 'on') %}
|
||||
{% if states.media_player.receiver.attributes.is_volume_muted %}
|
||||
off
|
||||
{% else %}
|
||||
on
|
||||
{% endif %}
|
||||
{% else %}
|
||||
off
|
||||
{% endif %}
|
||||
icon_template: >-
|
||||
{% if is_state('media_player.receiver', 'on') %}
|
||||
{% if states.media_player.receiver.attributes.is_volume_muted %}
|
||||
/local/lightbulb-off.png
|
||||
{% else %}
|
||||
/local/lightbulb-on.png
|
||||
{% endif %}
|
||||
{% else %}
|
||||
/local/lightbulb-off.png
|
||||
{% endif %}
|
||||
turn_on:
|
||||
service: media_player.volume_mute
|
||||
data:
|
||||
entity_id: media_player.receiver
|
||||
is_volume_muted: false
|
||||
turn_off:
|
||||
service: media_player.volume_mute
|
||||
data:
|
||||
entity_id: media_player.receiver
|
||||
is_volume_muted: true
|
||||
```
|
||||
{% endraw %}
|
||||
|
@ -32,18 +32,37 @@ media_player:
|
||||
```
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Name of the device
|
||||
- **name** (*Optional*): Name of the device. This overrides the
|
||||
default name (often model number) that is returned by the device.
|
||||
- **host** (*Optional*): IP address or hostname of the device
|
||||
- **source_ignore** (*Optional*): List of sources to hide in the front-end
|
||||
- **source_names** (*Optional*): Mapping of internal AVR source names to custom ones, allowing to rename e.g. `HDMI1` to `ChromeCast`
|
||||
|
||||
A few notes:
|
||||
### {% linkable_title Discovery notes %}
|
||||
|
||||
- Not specifying the host variable will result in automatically searching your network for Yamaha Receivers. It will add a media player device for each one.
|
||||
- For receivers that support more than one zone, Home Assistant will add one media player per zone supported by the player, named "$name Zone 2" and "$name Zone 3".
|
||||
- In some cases, auto-discovery fails due to a known bug in the receiver's firmware. It is possible to manually specify the receiver's IP address or via it's hostname (if it is discoverable by your DNS) then.
|
||||
- Please note: If adding the IP address or hostname manually, you **must** enable network standby on your receiver, or else startup of Home Assistant will hang if you have your receiver switched off.
|
||||
- Currently, this component supports powering on/off, mute, volume control and source selection. Playback controls, for instance play and stop are available for sources that supports it.
|
||||
- If the `discovery` component is enabled, all units on the network
|
||||
will be discovered using UPNP.
|
||||
- For receivers that support more than one zone, Home Assistant will
|
||||
add one media player per zone supported by the player, named "$name
|
||||
Zone 2" and "$name Zone 3".
|
||||
- If you specify `host` manually, you **must** enable network standby
|
||||
on your receiver, or else startup of Home Assistant will hang if you
|
||||
have your receiver switched off.
|
||||
- In some cases, auto-discovery fails due to a known bug in the
|
||||
receiver's firmware. It is possible to manually specify the
|
||||
receiver's IP address or via it's hostname (if it is discoverable by
|
||||
your DNS) then.
|
||||
|
||||
### {% linkable_title Supported operations %}
|
||||
|
||||
- Media players created by yamaha support powering on/off, mute,
|
||||
volume control and source selection. Playback controls, for instance
|
||||
play and stop are available for sources that supports it.
|
||||
- The `play_media` service is implemented for `NET RADIO` source
|
||||
only. The `media_id` is a `>` separted string of the menu path on
|
||||
the vtuner service. For instance `Bookmarks>Internet>WAMC 90.3 FM`.
|
||||
|
||||
### {% linkable_title Example configuration %}
|
||||
|
||||
A full configuration example will look like the sample below:
|
||||
```yaml
|
||||
@ -58,3 +77,33 @@ media_player:
|
||||
HDMI1: "ChromeCast"
|
||||
AV4: "Vinyl"
|
||||
```
|
||||
|
||||
### {% linkable_title Example `play_media` script %}
|
||||
|
||||
The `play_media` function can be used in scripts easily to build media
|
||||
player presets. When done in scripts, the sequence will also allow you
|
||||
to set volume per source.
|
||||
|
||||
```yaml
|
||||
# Example play_media script
|
||||
#
|
||||
# This is for an environment where Zone 2 of the receiver named
|
||||
# `Living Room Stereo` drives outdoor speakers on the porch.
|
||||
script:
|
||||
rp_porch:
|
||||
alias: "Radio Paradise Porch"
|
||||
sequence:
|
||||
- service: media_player.turn_on
|
||||
data:
|
||||
entity_id: media_player.living_room_stereo_zone_2
|
||||
- service: media_player.volume_set
|
||||
data:
|
||||
entity_id: media_player.living_room_stereo_zone_2
|
||||
volume_level: 0.48
|
||||
- service: media_player.play_media
|
||||
data:
|
||||
entity_id: media_player.living_room_stereo_zone_2
|
||||
media_content_type: "NET RADIO"
|
||||
media_content_id: "Bookmarks>Internet>Radio Paradise"
|
||||
|
||||
```
|
||||
|
@ -26,9 +26,9 @@ media_player:
|
||||
```
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Name of the device
|
||||
- **host** (*Required*): IP address or hostname of the device
|
||||
- **port** (*Optional*): UDP Port
|
||||
- **interval_seconds** (*Optional*): Polling interval (default: 480 seconds = 8 minutes)
|
||||
|
||||
A few notes:
|
||||
|
||||
@ -39,7 +39,6 @@ A full configuration example will look like the sample below:
|
||||
# Example configuration.yaml entry
|
||||
media_player:
|
||||
- platform: yamaha_musiccast
|
||||
name: "Living Room"
|
||||
host: 192.168.178.97
|
||||
port: 5005
|
||||
```
|
||||
|
69
source/_components/remember_the_milk.markdown
Normal file
69
source/_components/remember_the_milk.markdown
Normal file
@ -0,0 +1,69 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Remember The Milk"
|
||||
description: "Instructions on how to use Remember The Milk with Home Assistant."
|
||||
date: 2017-10-10 10:10
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
ha_category: Calendar
|
||||
ha_release: 0.57
|
||||
---
|
||||
|
||||
The `Remember The Milk` (RTM) component allows you to create tasks in [remember_the_milk](https://www.rememberthemilk.com) from Home Assistant. You can use this if you want Home Assistant to send you a task that you should not forget, e.g. water the plants. The component allows you to have several RTM accounts in parallel.
|
||||
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
The setup consists of two steps: getting an API key and registering your account
|
||||
|
||||
### {% linkable_title Step 1: API key %}
|
||||
|
||||
To be able to use this component, you need a Remember The Milk account and you need to apply for your own [API key](https://www.rememberthemilk.com/services/api/keys.rtm). With the API key you will also receive your personal `shared secret`. Both of them need to be stored in your Home Assistant configuration:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
|
||||
remember_the_milk:
|
||||
your_rtm_account:
|
||||
api_key: <your secret api key goes here>
|
||||
shared_secret: <your secret shared secret goes here>
|
||||
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
{% configuration %}
|
||||
account_name:
|
||||
description: Name of the RTM account, as you can have serveral accounts in RTM. The name must be unique.
|
||||
required: true
|
||||
type: string
|
||||
api_key:
|
||||
description: Put the API key you've received in here.
|
||||
required: true
|
||||
type: string
|
||||
shared_secret:
|
||||
description: Put the shared secret you've received in here.
|
||||
required: true
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Step 2: registering your account %}
|
||||
|
||||
After saving the configuration, you need to (re-)start Home Assistant. On the first start you will notice a new "Configuration" panel appearing on the Home Assistant page. After opening the configuration page, follow the link "Remember The Milk login". This will take you to a login page where you have to log in with your normal Rember The Milk credentials. This will authorize Home Assistant to access your Remember The Milk account.
|
||||
|
||||
After that click on the "login completed" button. This will tell Home Assistant that you have completed the login process on the Remember The Milk page and Home Assistant should try to register with this account.
|
||||
|
||||
If the registration was successful, the Configuration panel will disappear from your Home Assistant screen and a Remember The Milk panel should appear. This completes the setup process.
|
||||
|
||||
In the background Home Assistant downloaded a "token" from the Remember The Milk server which is stored in the `remember_the_milk.conf` file locally. So you only need to register once. After that the token is used to authenticate with the server.
|
||||
|
||||
## {% linkable_title Creating tasks %}
|
||||
|
||||
This component offers a new service domain ```remember_the_milk``` with the service ```create_task```. You can call this service with the argument ```name``` to create a new task in your Remember The Milk account. You can call this service from your usual automations.
|
||||
|
||||
The task creation supports the "smart syntax", so to create a task with the tag "from_hass" which is due today you can create a task with the name ```test task created in Home Assistant ^today #from_hass```. More info about the smart syntax is available on the [Remember The Milk documentation](https://www.rememberthemilk.com/help/answer/basics-smartadd-howdoiuse).
|
||||
|
||||
|
||||
## {% linkable_title Disclaimer %}
|
||||
This product uses the Remember The Milk API but is not endorsed or certified by Remember The Milk.
|
@ -16,6 +16,8 @@ ha_release: 0.39
|
||||
|
||||
The `itach` remote platform allows you to control IR devices with a [Global Caché iTach Device](https://www.globalcache.com/products/itach/ip2irspecs) and GC-100 devices. The Global Cache IR API are similar across their product line. See API documentation links at the end of this page.
|
||||
|
||||
In order to utilize the digital input (binary sensor) and relay (switch) features of your Global Cache device you will need to use the [gc100 component](https://home-assistant.io/components/gc100) and associated platforms.
|
||||
|
||||
To use your iTach remote in your installation, you will need to know the IR commands for your devices in Pronto hex format and add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
|
48
source/_components/sensor.luftdaten.markdown
Normal file
48
source/_components/sensor.luftdaten.markdown
Normal file
@ -0,0 +1,48 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Luftdaten Sensor"
|
||||
description: "Instructions how to setup Luftdaten sensor in Home Assistant."
|
||||
date: 2017-11-01 10:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category: Health
|
||||
ha_release: 0.57
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The `luftdaten` sensor platform will query the open data API of [luftdaten.info](http://luftdaten.info) to monitor air quality and other weather data from a specific (self build) sensor station.
|
||||
|
||||
- To get the ID of a particle sensor you need to select it on the [Feinstaub map](http://deutschland.maps.luftdaten.info/) and find it in the sidebar (Column "Sensor ID").
|
||||
- To get the ID of a temperature/humidity sensor you need to find it on the map hosted on [Madavi](https://www.madavi.de/sensor/feinstaub-map-dht/).
|
||||
|
||||
To enable this sensor, add the following lines to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
sensor:
|
||||
- platform: luftdaten
|
||||
sensorid: 3123
|
||||
monitored_conditions:
|
||||
- P1
|
||||
- P2
|
||||
- platform: luftdaten
|
||||
sensorid: 155
|
||||
monitored_conditions:
|
||||
- temperature
|
||||
- humidity
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **sensorid** (*Required*): The ID of the sensor.
|
||||
- **monitored_conditions** (*Required*): A list of conditions you want to monitor. The following conditions can be monitored:
|
||||
- `P1` for particle sensors (particles 10 microns and below).
|
||||
- `P2` for particle sensors (particles 2.5 microns and below).
|
||||
- `temperature` for weather sensors.
|
||||
- `humidity` for weather sensors.
|
||||
- **name** (*Optional*): Name of the sensor to use in the frontend. Defaults to `Luftdaten Sensor`.
|
||||
- **resource** (*Optional*): The URL of the API endpoint. Usually this has not to be changed. The default is `https://api.luftdaten.info/v1/sensor/`.
|
||||
- **verify_ssl** (*Optional*): Verify SSL connection. Defaults to `true`.
|
@ -1,19 +0,0 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Neato Robotics Sensor"
|
||||
description: "Instructions how to integrate a Neato Botvac Connected sensors within Home Assistant."
|
||||
date: 2016-11-09 20:11
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: neato.png
|
||||
ha_category: Sensor
|
||||
ha_release: 0.33
|
||||
ha_iot_class: "Cloud Polling"
|
||||
---
|
||||
|
||||
The `neato` sensor platform allows you to watch status and battery of your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
|
||||
The status sensor will contain attributes on the robots last clean session.
|
||||
|
||||
To add `neato` sensors to your installation, follow instructions in [Neato component](/components/neato/).
|
@ -27,9 +27,8 @@ Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Additional name for the sensors. Default to platform name.
|
||||
- **monitored_conditions** array (*Optional*): Conditions to display in the frontend. Defaults to `traffic_jam`.
|
||||
- **traffic_jam**: A human-readable text summary.
|
||||
- **mean_velocity**: The current temperature.
|
||||
- **congestion**: The wind speed.
|
||||
|
||||
- **traffic_jam**: Amount of kilometers in traffic jam (km).
|
||||
- **mean_velocity**: Mean velocity (km/h).
|
||||
- **congestion**: Index of congestion (n/a).
|
||||
|
||||
The data is coming from the [Direction des routes Île-de-France (DiRIF)](http://www.sytadin.fr).
|
||||
|
@ -61,6 +61,10 @@ sensor:
|
||||
description: Defines a template for the icon of the sensor.
|
||||
required: false
|
||||
type: template
|
||||
icon_template:
|
||||
description: Defines a template for the entity picture of the sensor.
|
||||
required: false
|
||||
type: template
|
||||
{% endconfiguration %}
|
||||
|
||||
## {% linkable_title Considerations %}
|
||||
@ -215,3 +219,29 @@ sensor:
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Change The Entity Picture %}
|
||||
|
||||
This example shows how to change the entity picture based on the day/night cycle.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
sensor:
|
||||
- platform: template
|
||||
sensors:
|
||||
day_night:
|
||||
friendly_name: "Day/Night"
|
||||
value_template: >-
|
||||
{% if is_state('sun.sun', 'above_horizon') %}
|
||||
Day
|
||||
{% else %}
|
||||
Night
|
||||
{% endif %}
|
||||
entity_picture_template: >-
|
||||
{% if is_state('sun.sun', 'above_horizon') %}
|
||||
/local/daytime.png
|
||||
{% else %}
|
||||
/local/nighttime.png
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
@ -27,7 +27,7 @@ sensor:
|
||||
Configuration variables:
|
||||
|
||||
- **name** (*Optional*): Name of the sensor. Defaults to `Uptime`.
|
||||
- **unit_of_measurement** (*Optional*): Units for uptime measurement in either `days` or `hours`. Defaults to `days`.
|
||||
- **unit_of_measurement** (*Optional*): Units for uptime measurement in either `days`, `hours`, or `minutes`. Defaults to `days`.
|
||||
|
||||
```yaml
|
||||
# Example with configuration variables
|
||||
|
36
source/_components/switch.deluge.markdown
Normal file
36
source/_components/switch.deluge.markdown
Normal file
@ -0,0 +1,36 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Deluge Switch"
|
||||
description: "Instructions how to integrate Deluge within Home Assistant."
|
||||
date: 2017-10-19 09:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: deluge.png
|
||||
ha_category: Downloading
|
||||
ha_release: 0.57
|
||||
ha_iot_class: "Local Polling"
|
||||
---
|
||||
|
||||
|
||||
The `deluge` switch platform allows you to control your [Deluge](http://deluge-torrent.org/) client from within Home Assistant. The platform enables you switch all your torrents in pause, and then unpause them all.
|
||||
|
||||
To add Deluge to your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
switch:
|
||||
platform: deluge
|
||||
host: IP_ADDRESS
|
||||
username : USERNAME
|
||||
password : PASSWORD
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **host** (*Required*): This is the IP address of your Deluge daemon, eg. 192.168.1.32.
|
||||
- **username** (*Required*): Your Deluge username, if you use authentication.
|
||||
- **password** (*Required*): Your Deluge password, if you use authentication.
|
||||
- **port** (*Optional*): The port your Deluge daemon uses, defaults to 58846. Warning,this is not the port of the WebUI
|
||||
- **name** (*Optional*): The name to use when displaying this Deluge instance.
|
@ -12,6 +12,6 @@ ha_category: Switch
|
||||
ha_release: 0.31
|
||||
---
|
||||
|
||||
The `neato` switch platform allows you to control your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
|
||||
The `neato` switch platform allows you to enable or disable the schedule of your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
|
||||
|
||||
To add `neato` switch to your installation, follow instructions in [Neato component](/components/neato/).
|
||||
|
@ -186,3 +186,31 @@ switch:
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
||||
### {% linkable_title Change The Entity Picture %}
|
||||
|
||||
This example shows how to change the entity picture based on the day/night cycle.
|
||||
|
||||
{% raw %}
|
||||
```yaml
|
||||
switch:
|
||||
- platform: template
|
||||
switches:
|
||||
garage:
|
||||
value_template: "{{ is_state('cover.garage_door', 'on') }}"
|
||||
turn_on:
|
||||
service: cover.open_cover
|
||||
data:
|
||||
entity_id: cover.garage_door
|
||||
turn_off:
|
||||
service: cover.close_cover
|
||||
data:
|
||||
entity_id: cover.garage_door
|
||||
entity_picture_template: >-
|
||||
{% if is_state('cover.garage_door', 'open') %}
|
||||
/local/garage-open.png
|
||||
{% else %}
|
||||
/local/garage-closed.png
|
||||
{% endif %}
|
||||
```
|
||||
{% endraw %}
|
||||
|
94
source/_components/timer.markdown
Normal file
94
source/_components/timer.markdown
Normal file
@ -0,0 +1,94 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Timer"
|
||||
description: "Instructions how to integrate timers into Home Assistant."
|
||||
date: 2017-10-23 06:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: home-assistant.png
|
||||
ha_category: Automation
|
||||
ha_release: 0.57
|
||||
---
|
||||
|
||||
The `timer` component aims to simplify automations based on (dynamic) durations.
|
||||
|
||||
When a timer finishes or gets cancelled the corresponding events are fired. This allows you to diffferentiate if a timer has switched from `active` to `idle` because the given duration has elapsed or it has been cancelled. To control timers in your automations you can use the services mentioned below. When calling the `start` service on a timer that is already running, it resets the duration it will need to finish and restart the timer without triggering any events. This for example makes it easy to create timed lights that get triggered by motion.
|
||||
|
||||
<p class='note warning'>
|
||||
With the current implementation timers don't persist over restarts. After a restart they will be idle again, together with their initial configuration.
|
||||
</p>
|
||||
|
||||
To add a timer to your installation, add the following to your `configuration.yaml` file:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
timer:
|
||||
timer:
|
||||
duration: '00:01:00'
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **[alias]** (*Required*): Alias for the timer. Multiple entries are allowed.
|
||||
- **name** (*Optional*): Friendly name of the timer.
|
||||
- **duration** (*Optional*): Initial duration in seconds or `00:00:00` when Home Assistant starts. Defaults to 0.
|
||||
- **icon** (*Optional*): Set a custom icon for the state card.
|
||||
|
||||
Pick an icon that you can find on [materialdesignicons.com](https://materialdesignicons.com/) to use for your timer and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance`, or `mdi:motorbike`.
|
||||
|
||||
## {% linkable_title Events %}
|
||||
|
||||
| Event | Description |
|
||||
| --------------- | ----------- |
|
||||
| timer.cancelled | Fired when a timer has been cancelled |
|
||||
| timer.finished | Fired when a timer has completed |
|
||||
|
||||
## {% linkable_title Services %}
|
||||
|
||||
#### {% linkable_title Service `timer.start` %}
|
||||
|
||||
Starts or restarts a timer with the provided duration. If no duration is given, it will either restart with its initial value, or continue a paused timer with the remaining duration. If a new duration is provided, this will be the new default for the timer until Home Assistant is restarted (which loads your default values). The duration can be specified as a number of seconds or the easier to read `01:23:45` format.
|
||||
If no `entity_id` is given all active timers will be started.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | Name of the entity to take action, e.g., `timer.timer0`. |
|
||||
| `duration` | yes | Duration in seconds or `00:00:00` until the timer finishes. |
|
||||
|
||||
#### {% linkable_title Service `timer.pause` %}
|
||||
|
||||
Pause a running timer. This will retain the remaining duration for later continuation. If no `entity_id` is given all active timers will be paused.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | Name of the entity to take action, e.g., `timer.timer0`. |
|
||||
|
||||
#### {% linkable_title Service `timer.cancel` %}
|
||||
|
||||
Cancel an active timer. This resets the duration to the last known initial value without firing the `timer.finished` event. If no `entity_id` is given all active timers will be cancelled.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | Name of the entity to take action, e.g., `timer.timer0`. |
|
||||
|
||||
#### {% linkable_title Service `timer.finish` %}
|
||||
|
||||
Manually finish a running timer earlier than scheduled. If no `entity_id` is given all active timers will be finished.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
| ---------------------- | -------- | ----------- |
|
||||
| `entity_id` | yes | Name of the entity to take action, e.g., `timer.timer0`. |
|
||||
|
||||
|
||||
### {% linkable_title Use the service %}
|
||||
|
||||
Select <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 **timer** from the list of **Domains**, select the **Service**, enter something like the sample below into the **Service Data** field, and hit **CALL SERVICE**.
|
||||
|
||||
```json
|
||||
{
|
||||
"entity_id": "timer.timer0"
|
||||
}
|
||||
```
|
||||
|
@ -14,25 +14,27 @@ ha_iot_class: "Local Polling"
|
||||
ha_release: 0.43
|
||||
---
|
||||
|
||||
The `tradfri` component supports for the IKEA Trådfri (Tradfri) gateway. The gateway can control lights connected to it and Home Assistant will automatically discover its presence on your network.
|
||||
The `tradfri` component supports for the IKEA Trådfri (Tradfri) gateway. The gateway can control lights connected to it and Home Assistant will automatically discover its presence on your network, if `discovery:` is present in your `configuration.yaml` file.
|
||||
|
||||
You will be prompted to configure the gateway through the Home Assistant interface, Enter the security key when prompted and click configure
|
||||
You will be prompted to configure the gateway through the Home Assistant interface. Enter the security key when prompted and click configure.
|
||||
|
||||
<p class='note'>
|
||||
If you see an "Unable to connect" message, restart the gateway and try again. Don't forget to assign a permanent IP to your Trådfri gateway.
|
||||
</p>
|
||||
|
||||
The gateway can also be manually configured by adding the following lines to your `configuration.yaml` file:
|
||||
You can add the following to your `configuration.yaml` file if you are not using the [`discovery:`](/components/discovery/) component:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
tradfri:
|
||||
host: IP_ADDRESS
|
||||
api_key: API_KEY
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **host** (*Required*): The IP address or hostname of your Trådfri gateway.
|
||||
- **api_key** (*Required*): Can be found listed as Security Key on the back of the Trådfri gateway.
|
||||
- **allow_tradfri_groups** (*Optional*): (true/false) Enable this to stop Home Assistant from importing the groups defined on the Trådfri bridge.
|
||||
- **allow_tradfri_groups** (*Optional*): Enable this to stop Home Assistant from importing the groups defined on the Trådfri bridge. Defaults to `true`.
|
||||
|
||||
<p class='note'>
|
||||
Do not use the `api_key` variable. The key is only needed once at initial setup.
|
||||
</p>
|
||||
|
45
source/_components/tts.microsoft.markdown
Normal file
45
source/_components/tts.microsoft.markdown
Normal file
@ -0,0 +1,45 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Microsoft Text-to-Speech"
|
||||
description: "Instructions how to setup Microsoft Text-to-Speech with Home Assistant."
|
||||
date: 2017-10-23 11:00
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: microsoft.png
|
||||
ha_category: Text-to-speech
|
||||
ha_release: 0.57
|
||||
---
|
||||
|
||||
The `microsoft` text-to-speech platform uses [Microsoft Text-to-Speech engine](https://docs.microsoft.com/en-us/azure/cognitive-services/speech/home) to read a text with natural sounding voices. This component uses an API that is part of the Cognitive Services offering and is known as the Bing Speech API.
|
||||
You will need an API key, which is free. You can use your [Azure subscription](https://azure.microsoft.com) or get an API key on the [Cognitive Services site](https://azure.microsoft.com/en-us/try/cognitive-services/).
|
||||
|
||||
To enable text-to-speech with Microsoft, add the following lines to your `configuration.yaml`:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
tts:
|
||||
- platform: microsoft
|
||||
api_key: [YourAPIKey]
|
||||
```
|
||||
|
||||
Configuration variables:
|
||||
|
||||
- **api_key** (*Required*): Your API key.
|
||||
- **language** (*Optional*): The language to use. Defaults to `en-us`. Accepted values are listed in the documentation mentioned below.
|
||||
- **gender** (*Optional*): The gender you would like to use for the voice. Accepted values are `Female` and `Male`. Defaults to `Female`
|
||||
- **type** (*Optional*): The voice type you want to use. Accepted values are listed in the service name mapping [in the documentation](https://docs.microsoft.com/en-us/azure/cognitive-services/Speech/api-reference-rest/bingvoiceoutput). Defaults to `ZiraRUS`
|
||||
|
||||
|
||||
A full configuration sample including optional configuration variables:
|
||||
|
||||
```yaml
|
||||
# Example configuration.yaml entry
|
||||
tts:
|
||||
- platform: microsoft
|
||||
api_key: XXXXXXXXX
|
||||
language: en-us
|
||||
gender: male
|
||||
type: BenjaminRUS
|
||||
```
|
24
source/_components/vacuum.neato.markdown
Normal file
24
source/_components/vacuum.neato.markdown
Normal file
@ -0,0 +1,24 @@
|
||||
---
|
||||
layout: page
|
||||
title: "Neato Robotics Vacuum"
|
||||
description: "Instructions how to integrate a Neato Botvac Connected Vacuum within Home Assistant."
|
||||
date: 2017-10-18 16:11
|
||||
sidebar: true
|
||||
comments: false
|
||||
sharing: true
|
||||
footer: true
|
||||
logo: neato.png
|
||||
ha_category: Vacuum
|
||||
ha_release: 0.57
|
||||
ha_iot_class: "Cloud Polling"
|
||||
redirect_from: /components/sensor.neato/
|
||||
---
|
||||
|
||||
<p class='note'>
|
||||
Starting with 0.57 the `neato` sensor was migrated to a vacuum platform.
|
||||
</p>
|
||||
|
||||
The `neato` vacuum platform allows you to control your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
|
||||
The status will contain attributes on the robots last clean session.
|
||||
|
||||
To add `neato` sensors to your installation, follow instructions in [Neato component](/components/neato/).
|
@ -24,7 +24,7 @@ Home Assistant integrates with the Wink API and automatically sets up any switch
|
||||
|
||||
Check the related components pages for actual devices that are supported.
|
||||
|
||||
### Authenticate using [developer.wink.com](https://developer.wink.com)
|
||||
### {% linkable_title Authenticate using [developer.wink.com](https://developer.wink.com) %}
|
||||
|
||||
You need to setup a developer account with Wink. This process can take a few days to get approved.
|
||||
|
||||
@ -44,20 +44,7 @@ When using the configurator make sure the initial setup is performed on the same
|
||||
wink:
|
||||
```
|
||||
|
||||
~~### Authentication with your Wink email and password.~~
|
||||
|
||||
|
||||
~~This method pulls a new token on every startup of Home Assistant from this [URL](https://winkbearertoken.appspot.com)~~
|
||||
|
||||
```yaml
|
||||
wink:
|
||||
email: YOUR_WINK_EMAIL_ADDRESS
|
||||
password: YOUR_WINK_PASSWORD
|
||||
```
|
||||
|
||||
This is no longer working due to a recent change Wink made, and will be removed in the next release of Home Assistant. Please create a [developer.wink.com](https://developer.wink.com) account so you can keep using Wink!
|
||||
|
||||
### Full oauth authentication (legacy).
|
||||
### {% linkable_title Full oauth authentication (legacy). %}
|
||||
|
||||
This should be used for users that obtained their client_id and client_secret via email from Wink support prior to [developer.wink.com's](https://developer.wink.com) existance.
|
||||
|
||||
|
@ -47,7 +47,7 @@ The `xiaomi_aqara` component allows you to integrate [Xiaomi](http://www.mi.com/
|
||||
- Decoupled mode of the Aqara Wall Switches (Single & Double)
|
||||
- Additional alarm events of the Gas and Smoke Detector: Analog alarm, battery fault alarm (smoke detector only), sensitivity fault alarm, I2C communication failure
|
||||
|
||||
## Setup
|
||||
## {% linkable_title Setup %}
|
||||
|
||||
Follow the setup process using your phone and Mi-Home app. From here you will be able to retrieve the key from within the app following [this tutorial](https://community.home-assistant.io/t/beta-xiaomi-gateway-integration/8213/1832).
|
||||
|
||||
@ -60,8 +60,7 @@ To enable {{ page.title }} in your installation, add the following to your `conf
|
||||
xiaomi_aqara:
|
||||
discovery_retry: 5
|
||||
gateways:
|
||||
- mac:
|
||||
key: xxxxxxxxxxxxxxxx
|
||||
- key: xxxxxxxxxxxxxxxx
|
||||
```
|
||||
|
||||
### {% linkable_title Multiple Gateways %}
|
||||
@ -109,24 +108,90 @@ xiaomi_aqara:
|
||||
host:
|
||||
description: The host / ip address of the gateway. If this parameter is used the multicast discovery of the gateway is skipped.
|
||||
required: false
|
||||
type: string
|
||||
type: string
|
||||
{% endconfiguration %}
|
||||
|
||||
### {% linkable_title Services %}
|
||||
|
||||
The gateway provides two services: `xiaomi_aqara.play_ringtone` and `xiaomi_aqara.stop_ringtone`. To play ringtones by Home Assistant, the version of the gateway firmware must be `1.4.1_145` at least. A `ringtone_id` and `gw_mac` must be supplied. The parameter `ringtone_vol` (percent) is optional. Allowed values of the `ringtone_id` are:
|
||||
The gateway provides the following services:
|
||||
|
||||
- alarm ringtones [0-8]
|
||||
- doorbell ring [10-13]
|
||||
- alarm clock [20-29]
|
||||
- custom ringtones (uploaded by the Mi Home app) starting from 10001
|
||||
#### {% linkable_title Service xiaomi_aqara.play_ringtone %}
|
||||
|
||||
Play a specific ringtone. The version of the gateway firmware must be `1.4.1_145` at least. Take a look at the examples below.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| `ringtone_id` | no | One of the allowed ringtone ids |
|
||||
| `ringtone_vol` | yes | The volume in percent |
|
||||
|
||||
Allowed values of the `ringtone_id` are:
|
||||
|
||||
- Alarms
|
||||
- 0 - Police car 1
|
||||
- 1 - Police car 2
|
||||
- 2 - Accident
|
||||
- 3 - Countdown
|
||||
- 4 - Ghost
|
||||
- 5 - Sniper rifle
|
||||
- 6 - Battle
|
||||
- 7 - Air raid
|
||||
- 8 - Bark
|
||||
- Doorbells
|
||||
- 10 - Doorbell
|
||||
- 11 - Knock at a door
|
||||
- 12 - Amuse
|
||||
- 13 - Alarm clock
|
||||
- Alarm clock
|
||||
- 20 - MiMix
|
||||
- 21 - Enthusiastic
|
||||
- 22 - GuitarClassic
|
||||
- 23 - IceWorldPiano
|
||||
- 24 - LeisureTime
|
||||
- 25 - ChildHood
|
||||
- 26 - MorningStreamLiet
|
||||
- 27 - MusicBox
|
||||
- 28 - Orange
|
||||
- 29 - Thinker
|
||||
- Custom ringtones (uploaded by the Mi Home app) starting from 10001
|
||||
|
||||
#### {% linkable_title Service xiaomi_aqara.stop_ringtone %}
|
||||
|
||||
Stops a playing ringtone immediately.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
|
||||
#### {% linkable_title Service xiaomi_aqara.add_device %}
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
|
||||
#### {% linkable_title Service xiaomi_aqara.add_device %}
|
||||
|
||||
Enables the join permission of the Xiaomi Aqara Gateway for 30 seconds. A new device can be added afterwards by pressing the pairing button once.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
|
||||
#### {% linkable_title Service xiaomi_aqara.remove_device %}
|
||||
|
||||
Removes a specific device. The removal is required if a device shall be paired with another gateway.
|
||||
|
||||
| Service data attribute | Optional | Description |
|
||||
|---------------------------|----------|-------------------------------------------------------|
|
||||
| `gw_mac` | no | MAC address of the Xiaomi Aqara Gateway |
|
||||
| `device_id` | no | Hardware address of the device to remove |
|
||||
|
||||
## {% linkable_title Examples %}
|
||||
|
||||
### Long Press on Smart Button
|
||||
### {% linkable_title Long Press on Smart Button %}
|
||||
|
||||
This example plays the sound of a dog barking when the button is held down, and stops the sound when the button is pressed once.
|
||||
|
||||
This example plays the sound of a dog barking when the button is held down,
|
||||
and stops the sound when the button is pressed once.
|
||||
*Note: The sound will stop playing automatically when it has ended.*
|
||||
|
||||
```yaml
|
||||
|
@ -23,7 +23,7 @@ You can set the settings of the Z-Wave device through the Z-Wave control panel.
|
||||
|
||||
These devices require a network key to be set for the Z-Wave network before they are paired, using the **Add Node Secure** option.
|
||||
|
||||
Home Assistant stores logs from Z-Wave in `OZW.log` in the Home Assistant config directory, when you pair a secure device you should see communication from the node with lines starting with `info: NONCES` in `OZW.log` when the device is paired successfully with a secure connection.
|
||||
Home Assistant stores logs from Z-Wave in `OZW_log.txt` in the Home Assistant config directory, when you pair a secure device you should see communication from the node with lines starting with `info: NONCES` in `OZW_log.txt` when the device is paired successfully with a secure connection.
|
||||
|
||||
### {% linkable_title Specific Devices %}
|
||||
|
||||
|
636
source/_posts/2017-11-04-release-57.markdown
Normal file
636
source/_posts/2017-11-04-release-57.markdown
Normal file
@ -0,0 +1,636 @@
|
||||
---
|
||||
layout: post
|
||||
title: "0.57: Translations, Hacktoberfest, Timers"
|
||||
description: "Due to Hacktoberfest we had to ship more fixes, improvements and components than usual."
|
||||
date: 2017-11-04 04:00:00
|
||||
date_formatted: "November 4, 2017"
|
||||
author: Paulus Schoutsen
|
||||
author_twitter: balloob
|
||||
comments: true
|
||||
categories: Release-Notes
|
||||
og_image: /images/blog/2017-11-0.57/languages.png
|
||||
---
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2017-11-0.57/languages.png' alt='The Home Assistant sidebar in 12 different languages'>
|
||||
The Home Assistant sidebar in 12 different languages.
|
||||
</p>
|
||||
|
||||
Whaaaaaats up everyone?! 😁 It's been another crazy 2 weeks here at the virtual Home Assistant headquarters with a ton of great contributions from all over the world. New features, bug fixes, performance improvements. It's a lot so let's jump right in.
|
||||
|
||||
## {% linkable_title Translations %}
|
||||
|
||||
The first great feature, if you haven't guessed it yet from the screenshot above: we are now able to translate the UI! Currently the translations are limited to the sidebar menu items. Even without a translation tool available, our contributors have jumped in and submitted translations for these menu items in over twenty languages! Home Assistant will automatically pick an available translation based on your browser settings, or a translation can be manually selected in the configuration panel.
|
||||
|
||||
We're currently working on an integration with the web based translation tool [lokalise.co](https://lokalise.co), to make the translation process accessible to anyone who would like to contribute. Stay tuned for a blog post with more documentation soon.
|
||||
|
||||
## {% linkable_title Frontend improvements %}
|
||||
|
||||
As part of getting translations to work, we did a lot of cleanup work on the frontend side. The re-organization should allow us to iterate faster on the frontend. We've already seen a lot of clean up as part of this thanks to @armills and @andrey-git for keep raising the quality!
|
||||
|
||||
## {% linkable_title Hacktoberfest %}
|
||||
|
||||
[Hacktoberfest](https://hacktoberfest.digitalocean.com/) 2017 is over! FINALLY. Each year we're attracting more developers that want to contribute to Home Assistant. This is great but also very exhausting to our code reviewers. I want to give an enormous gigantic huge big shout out to our reviewers @pvizeli, @andrey-git, @armills, @MartinHjelmare, @fabaff. You have all done an amazing job and we couldn't run Home Assistant without any of you! ❤
|
||||
|
||||
Hacktoberfest is obviously about the people contributing to open source. Big thanks to everyone that has taken the time to learn our code base and make contributions. We hope it was a pleasant experience and show how great open source can be. Hope to see many contributions in the future 👍
|
||||
|
||||
Here are our Hacktoberfest 2017 stats. It's a miracle everyone is still alive:
|
||||
|
||||
- Main repo: [273 Pull requests](https://github.com/home-assistant/home-assistant/pulls?utf8=%E2%9C%93&q=merged%3A%3E2017-10-01%20is%3Apr%20label%3AHacktoberfest%20is%3Aclosed%20) were merged out of 307.
|
||||
- Docs repo: [295 Pull requests](https://github.com/home-assistant/home-assistant.github.io/pulls?page=1&q=merged%3A%3E2017-10-01+is%3Apr+label%3AHacktoberfest+is%3Aclosed&utf8=%E2%9C%93) merged out of 310.
|
||||
- Frontend: [57 pull requests](https://github.com/home-assistant/home-assistant-polymer/pulls?utf8=%E2%9C%93&q=merged%3A%3E2017-10-01%20is%3Apr%20label%3AHacktoberfest%20is%3Aclosed%20) merged.
|
||||
|
||||
This means that we processed over 20 Pull requests per day. The result was already visible in 0.56. This release is almost the same. In those releases we were able to add over 40 new integrations.
|
||||
|
||||
## {% linkable_title IKEA TRÅDFRI %}
|
||||
|
||||
Good news and bad news on this front. The bad news is that IKEA changed the internal API for TRÅDFRI with a firmware update, breaking the Home Assistant integration. The good news is that they were nice enough to [email us with instructions on the breaking changes][ikea email].
|
||||
|
||||
Long time contributor [@lwis] jumped on the case and managed to migrate our integration in Home Assistant in time for this release. Great work!
|
||||
|
||||
<p class='img'>
|
||||
<img src='/images/blog/2017-11-0.57/pumpkin.jpeg' alt='Pumpkin with Home Assistant logo carved in.'>
|
||||
@clhett01 made us a pumpkin ([via Twitter](https://twitter.com/clhett01/status/925481848612032512))
|
||||
</p>
|
||||
|
||||
|
||||
## {% linkable_title Timer %}
|
||||
|
||||
Okay, one more highlight before we'll let you check out the changelog. Contributor [@danielperna84] (famous for creating the [HASS Configurator](https://home-assistant.io/addons/configurator/)), had another great component up his sleeve: the Timer component. With the timer component you'll be able to start countdown timers. A neat tool for your automation toolbox! More info in the [timer docs].
|
||||
|
||||
## {% linkable_title New Platforms %}
|
||||
|
||||
<a href='/components/#version/0.57'><img src='/images/blog/2017-11-0.57/components.png' style='border: 0;box-shadow: none;'></a>
|
||||
|
||||
- Introducing Ring Door Bell Camera (including StickUp cameras) and WiFi sensors ([@tchellomello] - [#9962]) ([ring docs]) ([binary_sensor.ring docs]) ([camera.ring docs]) ([sensor.ring docs]) (new-platform)
|
||||
- add irish rail transport sensor ([@ttroy50] - [#9883]) ([sensor.irish_rail_transport docs]) (new-platform)
|
||||
- Add fail2ban sensor ([@fronzbot] - [#9975]) ([sensor.fail2ban docs]) (new-platform)
|
||||
- add eph ember controls ([@ttroy50] - [#9721]) ([climate.ephember docs]) (new-platform)
|
||||
- whois domain lookup sensor ([@GenericStudent] - [#10000]) ([sensor.whois docs]) (new-platform)
|
||||
- Add Deluge Switch Component ([@HydrelioxGitHub] - [#9979]) ([switch.deluge docs]) (new-platform)
|
||||
- SNMP switch ([@kirichkov] - [#9840]) ([switch.snmp docs]) (new-platform)
|
||||
- Microsoft tts ([@jeroenterheerdt] - [#9973]) ([tts.microsoft docs]) (new-platform)
|
||||
- Telldus Live: Device without methods is a binary sensor ([@rasmusbe] - [#10106]) ([tellduslive docs]) ([binary_sensor.tellduslive docs]) (new-platform)
|
||||
- Support for NO-IP ([@fabaff] - [#10155]) ([no_ip docs]) (new-platform)
|
||||
- Linode ([@ryanm101] - [#9936]) ([linode docs]) ([binary_sensor.linode docs]) (new-platform)
|
||||
- Nederlandse spoorwegen ([@b10m] - [#10136]) ([sensor.nederlandse_spoorwegen docs]) (new-platform)
|
||||
- added Yesss SMS platform ([@flowolf] - [#10177]) ([notify.yessssms docs]) (new-platform)
|
||||
- Add Sytadin Traffic component ([@gautric] - [#9524]) ([sensor.sytadin docs]) (new-platform)
|
||||
- Added new Clickatell SMS messaging Notify Platform ([@davlloyd] - [#9775]) ([notify.clickatell docs]) (new-platform)
|
||||
- Add Random binary sensor ([@fabaff] - [#10164]) ([binary_sensor.random docs]) (new-platform)
|
||||
- Add gc100 platforms and component ([@davegravy] - [#10159]) ([gc100 docs]) ([binary_sensor.gc100 docs]) ([switch.gc100 docs]) (new-platform)
|
||||
- Timer component ([@danielperna84] - [#9889]) ([timer docs]) (new-platform)
|
||||
- integration with Remember The Milk. ([@ChristianKuehnel] - [#9803]) ([remember_the_milk docs]) (new-platform)
|
||||
- Luftdaten sensor ([@lichtteil] - [#10274]) ([sensor.luftdaten docs]) (new-platform)
|
||||
|
||||
## {% linkable_title If you need help... %}
|
||||
|
||||
...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks.
|
||||
|
||||
## {% linkable_title Reporting Issues %}
|
||||
|
||||
Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template.
|
||||
|
||||
<!--more-->
|
||||
|
||||
## {% linkable_title Breaking Changes %}
|
||||
|
||||
- IKEA TRÅDFRI: We no longer support entering the key in the configuration. ([@lwis] - [#10282]) ([tradfri docs]) (breaking change)
|
||||
- API.AI was renamed to [Dialogflow](https://home-assistant.io/components/dialogflow/). This requires to rename the entry in your `configuration.yaml` file from `apiai:` to `dialogflow`. ([@fabaff] - [#10006]) ([dialogflow docs]) (breaking change)
|
||||
- Wink: Removed support for entering your `username` and `password` in your config. Use the [new authentication method][wink-auth] instead. ([@w1ll1am23] - [#10277]) ([wink docs]) (breaking change)
|
||||
- Use feed name assigned in EmonCMS if there is one. This changes the default behavior but still uses configured 'name' if it's set, so it won't break the configuration of people who have customized their feed names in HA config. ([@KlaasH] - [#10021]) ([sensor.emoncms docs]) (breaking change)
|
||||
- The `namecheapdns` now uses `password:` instead of `access_token` in the configuration. Also, `host` is now optional which allow people who are not using subdomains to keep their configuration shorter. ([@fabaff] - [#10063]) ([namecheapdns docs]) (breaking change)
|
||||
- Fix recorder crash for long state string - enforce a maximum state of 255 characters at core level ([@milanvo] - [#9696]) (breaking change)
|
||||
- Add display currency setting to CoinMarketCap sensor. The name of the sensor attribute '24h_volume_usd' is changed to '24h_volume'. ([@R1chardTM] - [#10093]) ([sensor.coinmarketcap docs]) (breaking change)
|
||||
- MQTT Statestream now serializes all data to JSON before publishing. This means that string attributes and values will be quoted from now on (e.g.: '"on"' instead of 'on'). You can still read these strings without the quotes by using 'value_json' instead of 'value' where applicable (e.g., templates). This causes automatic JSON deserialization. Other simple types are not affected.
|
||||
|
||||
This fixes errors when an entity has an attribute that is not "a string, bytearray, int, float or None" and mqtt_statestream is used. As of now, the attribute is just handed over to paho, and paho can only send the aforementioned types. This patch fixes the issue by just casting everything to string before handing it over to paho.
|
||||
|
||||
There are a number of components / entities which have "other" attributes, e.g. light that have an RGB attribute which is a list. ([@tinloaf] - [#9872]) ([mqtt_statestream docs]) (breaking change)
|
||||
- Generic thermostat: the configuration option `tolerance` has been removed and has been replaced by `cold_tolerance` and `hot_tolerance`. This allows on and off states to have different error bands. ([@biggms] - [#9843]) ([climate.generic_thermostat docs]) (breaking change)
|
||||
- Developers only: frontend has been refactored. The method `register_panel` has been turned into a coroutine function called `async_register_panel`. The parameter `url_path` has been renamed to `frontend_url_path`. For frontend, development, you no longer pass `development: 1` to the http component but instead configure the frontend component to be in development mode by pointing it at a local checkout of the Polymer repo: ([@balloob] - [#9915]) (breaking change)
|
||||
|
||||
## {% linkable_title All changes %}
|
||||
|
||||
- Update requests requirement ([@TopdRob] - [#9876])
|
||||
- Update `screenshot-components.png` file. ([@quamilek] - [#9987])
|
||||
- Upgrade speedtest-cli to 1.0.7 ([@fabaff] - [#9984]) ([sensor.speedtest docs])
|
||||
- Upgrade gitterpy to 0.1.6 ([@fabaff] - [#9983]) ([sensor.gitter docs])
|
||||
- Add optional attribute option to scrape sensor ([@DarkFox] - [#10001]) ([sensor.scrape docs])
|
||||
- Introducing Ring Door Bell Camera (including StickUp cameras) and WiFi sensors ([@tchellomello] - [#9962]) ([ring docs]) ([binary_sensor.ring docs]) ([camera.ring docs]) ([sensor.ring docs]) (new-platform)
|
||||
- Add support for multiple disks to be monitored. ([@cgtobi] - [#9977]) ([sensor.hddtemp docs])
|
||||
- Update the Russound RNET component to use enhanced Russound.py ([@altersis] - [#9739]) ([media_player.russound_rnet docs])
|
||||
- Fix spelling error ([@SilvrrGIT] - [#10009])
|
||||
- Change persistent notification to avoid long text in entity state ([@milanvo] - [#9967]) ([persistent_notification docs])
|
||||
- Renaming API.AI to Dialogflow ([@fabaff] - [#10006]) ([dialogflow docs]) (breaking change)
|
||||
- Bump dev to 0.57.0.dev0 ([@fabaff] - [#10010])
|
||||
- Add xy attribute to Yeelight ([@HydrelioxGitHub] - [#9957]) ([light.yeelight docs])
|
||||
- Added gaction script to support the new Google Assistant component in Docker ([@chriskacerguis] - [#10019])
|
||||
- Json api fix ([@alanfischer] - [#10017])
|
||||
- Upgrade mypy to 0.540 ([@fabaff] - [#10013])
|
||||
- Xiaomi Aqara: New xiaomi wireless button (sensor_switch.aq3) introduced ([@syssi] - [#10008]) ([binary_sensor.xiaomi_aqara docs])
|
||||
- Upgrade youtube_dl to 2017.10.20 ([@fabaff] - [#10014]) ([media_extractor docs])
|
||||
- switch.flux: add interval and transition attributes ([@abmantis] - [#9700]) ([switch.flux docs])
|
||||
- Use feed name assigned in EmonCMS if there is one ([@KlaasH] - [#10021]) ([sensor.emoncms docs]) (breaking change)
|
||||
- add irish rail transport sensor ([@ttroy50] - [#9883]) ([sensor.irish_rail_transport docs]) (new-platform)
|
||||
- RGB Tradfri simple support ([@matemaciek] - [#9703]) ([light.tradfri docs])
|
||||
- Add regression test for entity ID update bug ([@armills] - [#10037])
|
||||
- Aioautomatic bump and scope update ([@armills] - [#10043]) ([device_tracker.automatic docs])
|
||||
- Fix no data event triggers ([@armills] - [#10049]) ([automation.event docs])
|
||||
- fixing a typo in the old library which broke hub gen2 compatibility ([@sander76] - [#9990])
|
||||
- Add fail2ban sensor ([@fronzbot] - [#9975]) ([sensor.fail2ban docs]) (new-platform)
|
||||
- Show current program thumbnail as media_image ([@pschmitt] - [#10033]) ([media_player.liveboxplaytv docs])
|
||||
- Add link to docs and update ordering ([@fabaff] - [#10062]) ([duckdns docs])
|
||||
- Remove STATE_UNKNOWN ([@fabaff] - [#10064]) ([sensor.glances docs])
|
||||
- update library for xiaomi_aqara, change from pyCrypto to cryptography ([@danielhiversen] - [#10066]) ([xiaomi_aqara docs])
|
||||
- Make host optional ([@fabaff] - [#10063]) ([namecheapdns docs]) (breaking change)
|
||||
- Change deprecated use of maintainer tag in Dockerfile. ([@R1chardTM] - [#10068])
|
||||
- add eph ember controls ([@ttroy50] - [#9721]) ([climate.ephember docs]) (new-platform)
|
||||
- EntityComponent: revert warning ([@pvizeli] - [#10078])
|
||||
- Upgrade Sphinx to 1.6.5 ([@fabaff] - [#10090])
|
||||
- Support for Entity.available in sensor/rest ([@pezinek] - [#10073]) ([sensor.rest docs])
|
||||
- whois domain lookup sensor ([@GenericStudent] - [#10000]) ([sensor.whois docs]) (new-platform)
|
||||
- Update CODEOWNERS ([@danielhiversen] - [#10103])
|
||||
- fixed typo ([@iMarkus] - [#10110])
|
||||
- Revert gactions in Docker ([@balloob] - [#10115])
|
||||
- Add Deluge Switch Component ([@HydrelioxGitHub] - [#9979]) ([switch.deluge docs]) (new-platform)
|
||||
- Fix PEP8 and PEP257 issues ([@fabaff] - [#10108]) ([toon docs]) ([climate.toon docs]) ([sensor.toon docs]) ([switch.toon docs])
|
||||
- Fixes #10030. Extented Network Exceptions handling. ([@zabuldon] - [#10116]) ([tesla docs])
|
||||
- Consolidate frontend ([@balloob] - [#9915]) (breaking change)
|
||||
- Rfxtrx fix ([@danielhiversen] - [#10128]) ([rfxtrx docs])
|
||||
- Xiaomi MiIO Fan: Xiaomi Air Purifier 2 integration ([@syssi] - [#9837]) ([fan.xiaomi_miio docs])
|
||||
- WIP: Refactor Axis component removing external dependencies ([@Kane610] - [#9791]) ([axis docs]) ([binary_sensor.axis docs])
|
||||
- Allow folder selection for IMAP unread sensor ([@amelchio] - [#10126]) ([sensor.imap docs])
|
||||
- Fix Sonarr and Radarr divide by zero ([@tboyce021] - [#10101]) ([sensor.radarr docs]) ([sensor.sonarr docs])
|
||||
- Plex refactor Part 1 - Update plexapi to 3.0.3 ([@ryanm101] - [#9988]) ([media_player.plex docs])
|
||||
- Add Google Domains component ([@tboyce021] - [#9996])
|
||||
- Add Deluge Sensor ([@HydrelioxGitHub] - [#10117])
|
||||
- Added increment + decrement to input_number ([@danielperna84] - [#9870]) ([input_number docs])
|
||||
- Fix lint google-domains ([@pvizeli] - [#10135]) ([google_domains docs])
|
||||
- Fire numeric_state action when first state change matches criteria ([@amelchio] - [#10125]) ([automation.numeric_state docs])
|
||||
- SNMP switch ([@kirichkov] - [#9840]) ([switch.snmp docs]) (new-platform)
|
||||
- Binary sensor for detecting linear trends ([@hotplot] - [#9808]) ([binary_sensor.trend docs])
|
||||
- Fix recorder crash for long state string - enforce at core level ([@milanvo] - [#9696]) (breaking change)
|
||||
- Microsoft tts ([@jeroenterheerdt] - [#9973]) ([tts.microsoft docs]) (new-platform)
|
||||
- Upgrade pysnmp to 4.4.1 ([@fabaff] - [#10138]) ([device_tracker.snmp docs]) ([sensor.snmp docs]) ([switch.snmp docs])
|
||||
- Telldus Live: Device without methods is a binary sensor ([@rasmusbe] - [#10106]) ([tellduslive docs]) ([binary_sensor.tellduslive docs]) (new-platform)
|
||||
- Add last action to xiaomi aqara button ([@danielhiversen] - [#10131]) ([binary_sensor.xiaomi_aqara docs])
|
||||
- Add display currency setting to CoinMarketCap sensor ([@R1chardTM] - [#10093]) ([sensor.coinmarketcap docs]) (breaking change)
|
||||
- Xiaomi MiIO Switch: Support for different device types ([@syssi] - [#9836]) ([switch.xiaomi_miio docs])
|
||||
- Core POC support for polymer i18n ([@armills] - [#6344]) ([history docs]) ([logbook docs])
|
||||
- Don't use pypi package in dev mode. Allow non-fingerprinted mdi. ([@andrey-git] - [#10144])
|
||||
- added platform discovery code back into device_tracker ([@etsinko] - [#10169]) ([device_tracker docs])
|
||||
- Upgrade sendgrid to 5.3.0 ([@fabaff] - [#10166]) ([notify.sendgrid docs])
|
||||
- Upgrade python_opendata_transport to 0.0.3 ([@fabaff] - [#10162]) ([sensor.swiss_public_transport docs])
|
||||
- Upgrade libnacl to 1.6.1 ([@fabaff] - [#10161]) ([device_tracker.owntracks docs])
|
||||
- New DTLSSocket version that fixes Cython dependency for Trådfri ([@flowolf] - [#10123]) ([tradfri docs])
|
||||
- Rfxtrx binary sensor rewrite ([@ypollart] - [#10152]) ([rfxtrx docs]) ([binary_sensor.rfxtrx docs])
|
||||
- Support for NO-IP ([@fabaff] - [#10155]) ([no_ip docs]) (new-platform)
|
||||
- Reduce album art flickering in media player UI ([@amelchio] - [#10163]) ([media_player docs])
|
||||
- Avoid Sonos errors for tracks with no artist information ([@amelchio] - [#10160]) ([media_player.sonos docs])
|
||||
- MPD now uses the filename if song doesn't have metadata ([@C0DK] - [#10085])
|
||||
- Updated denon component to play nice with the 3808CI that doesn't support NSFRN command ([@randellhodges] - [#10157])
|
||||
- Fix for issue #9240 ([@bastshoes] - [#10173]) ([fan.mqtt docs])
|
||||
- Linode ([@ryanm101] - [#9936]) ([linode docs]) ([binary_sensor.linode docs]) (new-platform)
|
||||
- Cast attribute values to string before publishing to MQTT ([@tinloaf] - [#9872]) ([mqtt_statestream docs]) (breaking change)
|
||||
- Xiaomi MiIO Light: Philips Eyecare Lamp 2 support ([@syssi] - [#10007]) ([light.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs])
|
||||
- Nederlandse spoorwegen ([@b10m] - [#10136]) ([sensor.nederlandse_spoorwegen docs]) (new-platform)
|
||||
- Added capability to pass a filename to the downloader component ([@tchellomello] - [#10059]) ([downloader docs])
|
||||
- Limits of the favorite level updated. Values between 0 and 16 will be accepted. ([@syssi] - [#10186]) ([fan.xiaomi_miio docs])
|
||||
- added Yesss SMS platform ([@flowolf] - [#10177]) ([notify.yessssms docs]) (new-platform)
|
||||
- Add Sytadin Traffic component ([@gautric] - [#9524]) ([sensor.sytadin docs]) (new-platform)
|
||||
- media_title property now returns current source ([@etsinko] - [#10120]) ([media_player.monoprice docs])
|
||||
- Added new Clickatell SMS messaging Notify Platform ([@davlloyd] - [#9775]) ([notify.clickatell docs]) (new-platform)
|
||||
- update boto3 to 1.4.7 and botocore to 1.7.34 ([@TopdRob] - [#10121]) ([notify.aws_lambda docs]) ([notify.aws_sns docs]) ([notify.aws_sqs docs]) ([tts.amazon_polly docs])
|
||||
- Add Random binary sensor ([@fabaff] - [#10164]) ([binary_sensor.random docs]) (new-platform)
|
||||
- Add clickatell ([@fabaff] - [#10199])
|
||||
- Update CODEOWNERS ([@ggravlingen] - [#10198])
|
||||
- Add unit test for hddtemp sensor. ([@cgtobi] - [#10154])
|
||||
- Upgrade pylast to 2.0.0 ([@fabaff] - [#10200]) ([sensor.lastfm docs])
|
||||
- Move constant to 'const.py' and use already definied ones ([@fabaff] - [#10204]) ([input_number docs]) ([climate.honeywell docs]) ([device_tracker.asuswrt docs]) ([image_processing.openalpr_local docs]) ([sensor.google_travel_time docs]) ([sensor.uk_transport docs]) ([switch.flux docs])
|
||||
- Upgrade youtube_dl to 2017.10.29 ([@fabaff] - [#10202]) ([media_extractor docs])
|
||||
- Bump pyvera to 0.2.38. ([@pavoni] - [#10206]) ([vera docs])
|
||||
- Move constant to 'const.py' and use already defined ones ([@fabaff] - [#10211])
|
||||
- Add new service 'snapshot' for camera ([@pvizeli] - [#10207]) ([camera docs])
|
||||
- Upgrade restrictedpython to 4.0b2 ([@fabaff] - [#10179])
|
||||
- Google Assistant Script Support ([@epleypa] - [#10148]) ([google_assistant docs])
|
||||
- Raincloudy version bump ([@tchellomello] - [#10225]) ([raincloud docs])
|
||||
- Add gc100 platforms and component ([@davegravy] - [#10159]) ([gc100 docs]) ([binary_sensor.gc100 docs]) ([switch.gc100 docs]) (new-platform)
|
||||
- Librouteros capsman fix ([@nicolaevladescu] - [#10217]) ([device_tracker.mikrotik docs])
|
||||
- Add entity_picture_template options to Template Cover, Template Light, Template Sensor, and Template Switch ([@bachya] - [#9854]) ([cover.template docs])
|
||||
- Xiaomi Aqara: Remove/Add device service added ([@syssi] - [#10150]) ([xiaomi_aqara docs])
|
||||
- Introducing multi-zone support for yamaha_musiccast devices ([@jalmeroth] - [#9968])
|
||||
- Clarify yamaha play_media parameters ([@sdague] - [#10228]) ([media_player.yamaha docs])
|
||||
- Update services.yaml files ([@fabaff] - [#10229])
|
||||
- Add priority attribute for hyperion ([@ImEmJay] - [#10102]) ([light.hyperion docs])
|
||||
- OwnTracks work. Beacon logic and testcases ([@ehagan] - [#10183]) ([device_tracker.owntracks docs])
|
||||
- Sytadin default value must be a list #10233 ([@gautric] - [#10234]) ([sensor.sytadin docs])
|
||||
- Use theme color in loading screen. ([@andrey-git] - [#10248])
|
||||
- Move constant to 'const.py' ([@fabaff] - [#10249]) ([sensor.hddtemp docs]) ([sensor.synologydsm docs])
|
||||
- Add support for odhcpd DHCP server ([@chemicalstorm] - [#9858]) ([device_tracker.ubus docs])
|
||||
- Changed single tolerance value to COLD and HOT tolerances. Allows on and off states to have different error bands. ([@biggms] - [#9843]) ([climate.generic_thermostat docs]) (breaking change)
|
||||
- Add support for 'Send Current Position' feature in Geofency 5.1 ([@gunnarhelgason] - [#10012]) ([device_tracker.geofency docs])
|
||||
- input_text - Added service doc ([@cdce8p] - [#10238]) ([input_text docs])
|
||||
- Mqtt light options to fix #9330 and #7810 ([@TD22057] - [#9829]) ([light.mqtt docs])
|
||||
- WIP: Timer component ([@danielperna84] - [#9889]) ([timer docs]) (new-platform)
|
||||
- Use translated panel names on frontend ([@armills] - [#10197])
|
||||
- Alexa SmartHome API extend ([@pvizeli] - [#10251])
|
||||
- integration with Remember The Milk. ([@ChristianKuehnel] - [#9803]) ([remember_the_milk docs]) (new-platform)
|
||||
- Google Assistant: make it possible to set a custom domain/type ([@perosb] - [#10188]) ([google_assistant docs])
|
||||
- Add EntityFilter helper ([@mw-white] - [#10221])
|
||||
- Avoid Sonos error during startup ([@amelchio] - [#10146]) ([media_player.sonos docs])
|
||||
- Update netdisco to 1.2.3 ([@balloob] - [#10266])
|
||||
- Extracted json saving and loading ([@molobrakos] - [#10216]) ([media_player.plex docs])
|
||||
- Change introduction card to use persistent notification ([@balloob] - [#10265]) ([introduction docs])
|
||||
- Add unit test for wake on lan component. ([@cgtobi] - [#10262])
|
||||
- Add link to docs ([@fabaff] - [#10272])
|
||||
- Add xy support to Alexa HomeAPI v3 ([@pvizeli] - [#10268])
|
||||
- Remove http.development ([@balloob] - [#10267]) ([http docs])
|
||||
- Add setup platform tests for the season sensor component. ([@cgtobi] - [#10270])
|
||||
- Add Google Assistant support for setting climate temperature and operation mode. ([@emosenkis] - [#10174]) ([google_assistant docs])
|
||||
- WIP: Cleanup async stuff on templates ([@pvizeli] - [#10275]) ([switch.template docs])
|
||||
- Removed username/password auth and moved to new save/load json ([@w1ll1am23] - [#10277]) ([wink docs]) (breaking change)
|
||||
- Support new tradfri individual DTLS identification method ([@lwis] - [#10282]) ([tradfri docs]) (breaking change)
|
||||
- Update plant for dealing with float values ([@dominikandreas] - [#10246]) ([plant docs])
|
||||
- Fixed Tradfri whitebulbs handling after #9703 ([@matemaciek] - [#10040]) ([light.tradfri docs])
|
||||
- Luftdaten sensor ([@lichtteil] - [#10274]) ([sensor.luftdaten docs]) (new-platform)
|
||||
- Improve unit tests for season sensor component. ([@cgtobi] - [#10288])
|
||||
- Better scene handling ([@joaqtor] - [#10213])
|
||||
- Follow-up: Replace emulated_hue: with emulated_hue_hidden ([@vatir] - [#9894]) ([light.hue docs])
|
||||
- Maintain recorder purge schedule ([@PeteBa] - [#10279])
|
||||
- update mask-icon to a working mask-icon.svg ([@NovapaX] - [#10290])
|
||||
- Cleanup Xiaomi Aqara ([@balloob] - [#10302]) ([xiaomi_aqara docs])
|
||||
- Fix panel_custom ([@balloob] - [#10303]) ([panel_custom docs])
|
||||
- Cloud: Authenticate with id token ([@balloob] - [#10304])
|
||||
- Allow an empty MAC address at the Xiaomi Aqara Gateway configuration. ([@syssi] - [#10307]) ([xiaomi_aqara docs])
|
||||
- Upgrade credstash to 1.14.0 ([@fabaff] - [#10310])
|
||||
- TellStick / Remove async flavor / add hassio ([@pvizeli] - [#10315]) ([tellstick docs])
|
||||
- Strip white space from configurator input ([@w1ll1am23] - [#10317]) ([wink docs])
|
||||
- Fix recorder purge ([@pvizeli] - [#10318])
|
||||
- Fix formatting invalid config text ([@balloob] - [#10319])
|
||||
- Tc update ([@wardcraigj] - [#10322]) ([alarm_control_panel.totalconnect docs])
|
||||
- Move timer into correct folder ([@pvizeli] - [#10324]) ([timer docs])
|
||||
|
||||
[#10000]: https://github.com/home-assistant/home-assistant/pull/10000
|
||||
[#10001]: https://github.com/home-assistant/home-assistant/pull/10001
|
||||
[#10006]: https://github.com/home-assistant/home-assistant/pull/10006
|
||||
[#10007]: https://github.com/home-assistant/home-assistant/pull/10007
|
||||
[#10008]: https://github.com/home-assistant/home-assistant/pull/10008
|
||||
[#10009]: https://github.com/home-assistant/home-assistant/pull/10009
|
||||
[#10010]: https://github.com/home-assistant/home-assistant/pull/10010
|
||||
[#10012]: https://github.com/home-assistant/home-assistant/pull/10012
|
||||
[#10013]: https://github.com/home-assistant/home-assistant/pull/10013
|
||||
[#10014]: https://github.com/home-assistant/home-assistant/pull/10014
|
||||
[#10017]: https://github.com/home-assistant/home-assistant/pull/10017
|
||||
[#10019]: https://github.com/home-assistant/home-assistant/pull/10019
|
||||
[#10021]: https://github.com/home-assistant/home-assistant/pull/10021
|
||||
[#10033]: https://github.com/home-assistant/home-assistant/pull/10033
|
||||
[#10037]: https://github.com/home-assistant/home-assistant/pull/10037
|
||||
[#10040]: https://github.com/home-assistant/home-assistant/pull/10040
|
||||
[#10043]: https://github.com/home-assistant/home-assistant/pull/10043
|
||||
[#10049]: https://github.com/home-assistant/home-assistant/pull/10049
|
||||
[#10059]: https://github.com/home-assistant/home-assistant/pull/10059
|
||||
[#10062]: https://github.com/home-assistant/home-assistant/pull/10062
|
||||
[#10063]: https://github.com/home-assistant/home-assistant/pull/10063
|
||||
[#10064]: https://github.com/home-assistant/home-assistant/pull/10064
|
||||
[#10066]: https://github.com/home-assistant/home-assistant/pull/10066
|
||||
[#10068]: https://github.com/home-assistant/home-assistant/pull/10068
|
||||
[#10073]: https://github.com/home-assistant/home-assistant/pull/10073
|
||||
[#10078]: https://github.com/home-assistant/home-assistant/pull/10078
|
||||
[#10085]: https://github.com/home-assistant/home-assistant/pull/10085
|
||||
[#10090]: https://github.com/home-assistant/home-assistant/pull/10090
|
||||
[#10093]: https://github.com/home-assistant/home-assistant/pull/10093
|
||||
[#10101]: https://github.com/home-assistant/home-assistant/pull/10101
|
||||
[#10102]: https://github.com/home-assistant/home-assistant/pull/10102
|
||||
[#10103]: https://github.com/home-assistant/home-assistant/pull/10103
|
||||
[#10106]: https://github.com/home-assistant/home-assistant/pull/10106
|
||||
[#10108]: https://github.com/home-assistant/home-assistant/pull/10108
|
||||
[#10110]: https://github.com/home-assistant/home-assistant/pull/10110
|
||||
[#10115]: https://github.com/home-assistant/home-assistant/pull/10115
|
||||
[#10116]: https://github.com/home-assistant/home-assistant/pull/10116
|
||||
[#10117]: https://github.com/home-assistant/home-assistant/pull/10117
|
||||
[#10120]: https://github.com/home-assistant/home-assistant/pull/10120
|
||||
[#10121]: https://github.com/home-assistant/home-assistant/pull/10121
|
||||
[#10123]: https://github.com/home-assistant/home-assistant/pull/10123
|
||||
[#10125]: https://github.com/home-assistant/home-assistant/pull/10125
|
||||
[#10126]: https://github.com/home-assistant/home-assistant/pull/10126
|
||||
[#10128]: https://github.com/home-assistant/home-assistant/pull/10128
|
||||
[#10131]: https://github.com/home-assistant/home-assistant/pull/10131
|
||||
[#10135]: https://github.com/home-assistant/home-assistant/pull/10135
|
||||
[#10136]: https://github.com/home-assistant/home-assistant/pull/10136
|
||||
[#10138]: https://github.com/home-assistant/home-assistant/pull/10138
|
||||
[#10144]: https://github.com/home-assistant/home-assistant/pull/10144
|
||||
[#10146]: https://github.com/home-assistant/home-assistant/pull/10146
|
||||
[#10148]: https://github.com/home-assistant/home-assistant/pull/10148
|
||||
[#10150]: https://github.com/home-assistant/home-assistant/pull/10150
|
||||
[#10152]: https://github.com/home-assistant/home-assistant/pull/10152
|
||||
[#10154]: https://github.com/home-assistant/home-assistant/pull/10154
|
||||
[#10155]: https://github.com/home-assistant/home-assistant/pull/10155
|
||||
[#10157]: https://github.com/home-assistant/home-assistant/pull/10157
|
||||
[#10159]: https://github.com/home-assistant/home-assistant/pull/10159
|
||||
[#10160]: https://github.com/home-assistant/home-assistant/pull/10160
|
||||
[#10161]: https://github.com/home-assistant/home-assistant/pull/10161
|
||||
[#10162]: https://github.com/home-assistant/home-assistant/pull/10162
|
||||
[#10163]: https://github.com/home-assistant/home-assistant/pull/10163
|
||||
[#10164]: https://github.com/home-assistant/home-assistant/pull/10164
|
||||
[#10166]: https://github.com/home-assistant/home-assistant/pull/10166
|
||||
[#10169]: https://github.com/home-assistant/home-assistant/pull/10169
|
||||
[#10173]: https://github.com/home-assistant/home-assistant/pull/10173
|
||||
[#10174]: https://github.com/home-assistant/home-assistant/pull/10174
|
||||
[#10177]: https://github.com/home-assistant/home-assistant/pull/10177
|
||||
[#10179]: https://github.com/home-assistant/home-assistant/pull/10179
|
||||
[#10183]: https://github.com/home-assistant/home-assistant/pull/10183
|
||||
[#10186]: https://github.com/home-assistant/home-assistant/pull/10186
|
||||
[#10188]: https://github.com/home-assistant/home-assistant/pull/10188
|
||||
[#10197]: https://github.com/home-assistant/home-assistant/pull/10197
|
||||
[#10198]: https://github.com/home-assistant/home-assistant/pull/10198
|
||||
[#10199]: https://github.com/home-assistant/home-assistant/pull/10199
|
||||
[#10200]: https://github.com/home-assistant/home-assistant/pull/10200
|
||||
[#10202]: https://github.com/home-assistant/home-assistant/pull/10202
|
||||
[#10204]: https://github.com/home-assistant/home-assistant/pull/10204
|
||||
[#10206]: https://github.com/home-assistant/home-assistant/pull/10206
|
||||
[#10207]: https://github.com/home-assistant/home-assistant/pull/10207
|
||||
[#10211]: https://github.com/home-assistant/home-assistant/pull/10211
|
||||
[#10213]: https://github.com/home-assistant/home-assistant/pull/10213
|
||||
[#10216]: https://github.com/home-assistant/home-assistant/pull/10216
|
||||
[#10217]: https://github.com/home-assistant/home-assistant/pull/10217
|
||||
[#10221]: https://github.com/home-assistant/home-assistant/pull/10221
|
||||
[#10225]: https://github.com/home-assistant/home-assistant/pull/10225
|
||||
[#10228]: https://github.com/home-assistant/home-assistant/pull/10228
|
||||
[#10229]: https://github.com/home-assistant/home-assistant/pull/10229
|
||||
[#10234]: https://github.com/home-assistant/home-assistant/pull/10234
|
||||
[#10238]: https://github.com/home-assistant/home-assistant/pull/10238
|
||||
[#10246]: https://github.com/home-assistant/home-assistant/pull/10246
|
||||
[#10248]: https://github.com/home-assistant/home-assistant/pull/10248
|
||||
[#10249]: https://github.com/home-assistant/home-assistant/pull/10249
|
||||
[#10251]: https://github.com/home-assistant/home-assistant/pull/10251
|
||||
[#10262]: https://github.com/home-assistant/home-assistant/pull/10262
|
||||
[#10265]: https://github.com/home-assistant/home-assistant/pull/10265
|
||||
[#10266]: https://github.com/home-assistant/home-assistant/pull/10266
|
||||
[#10267]: https://github.com/home-assistant/home-assistant/pull/10267
|
||||
[#10268]: https://github.com/home-assistant/home-assistant/pull/10268
|
||||
[#10270]: https://github.com/home-assistant/home-assistant/pull/10270
|
||||
[#10272]: https://github.com/home-assistant/home-assistant/pull/10272
|
||||
[#10274]: https://github.com/home-assistant/home-assistant/pull/10274
|
||||
[#10275]: https://github.com/home-assistant/home-assistant/pull/10275
|
||||
[#10277]: https://github.com/home-assistant/home-assistant/pull/10277
|
||||
[#10279]: https://github.com/home-assistant/home-assistant/pull/10279
|
||||
[#10282]: https://github.com/home-assistant/home-assistant/pull/10282
|
||||
[#10288]: https://github.com/home-assistant/home-assistant/pull/10288
|
||||
[#10290]: https://github.com/home-assistant/home-assistant/pull/10290
|
||||
[#10302]: https://github.com/home-assistant/home-assistant/pull/10302
|
||||
[#10303]: https://github.com/home-assistant/home-assistant/pull/10303
|
||||
[#10304]: https://github.com/home-assistant/home-assistant/pull/10304
|
||||
[#10307]: https://github.com/home-assistant/home-assistant/pull/10307
|
||||
[#10310]: https://github.com/home-assistant/home-assistant/pull/10310
|
||||
[#10315]: https://github.com/home-assistant/home-assistant/pull/10315
|
||||
[#10317]: https://github.com/home-assistant/home-assistant/pull/10317
|
||||
[#10318]: https://github.com/home-assistant/home-assistant/pull/10318
|
||||
[#10319]: https://github.com/home-assistant/home-assistant/pull/10319
|
||||
[#10322]: https://github.com/home-assistant/home-assistant/pull/10322
|
||||
[#10324]: https://github.com/home-assistant/home-assistant/pull/10324
|
||||
[#6344]: https://github.com/home-assistant/home-assistant/pull/6344
|
||||
[#9524]: https://github.com/home-assistant/home-assistant/pull/9524
|
||||
[#9696]: https://github.com/home-assistant/home-assistant/pull/9696
|
||||
[#9700]: https://github.com/home-assistant/home-assistant/pull/9700
|
||||
[#9703]: https://github.com/home-assistant/home-assistant/pull/9703
|
||||
[#9721]: https://github.com/home-assistant/home-assistant/pull/9721
|
||||
[#9739]: https://github.com/home-assistant/home-assistant/pull/9739
|
||||
[#9775]: https://github.com/home-assistant/home-assistant/pull/9775
|
||||
[#9791]: https://github.com/home-assistant/home-assistant/pull/9791
|
||||
[#9803]: https://github.com/home-assistant/home-assistant/pull/9803
|
||||
[#9808]: https://github.com/home-assistant/home-assistant/pull/9808
|
||||
[#9829]: https://github.com/home-assistant/home-assistant/pull/9829
|
||||
[#9836]: https://github.com/home-assistant/home-assistant/pull/9836
|
||||
[#9837]: https://github.com/home-assistant/home-assistant/pull/9837
|
||||
[#9840]: https://github.com/home-assistant/home-assistant/pull/9840
|
||||
[#9843]: https://github.com/home-assistant/home-assistant/pull/9843
|
||||
[#9854]: https://github.com/home-assistant/home-assistant/pull/9854
|
||||
[#9858]: https://github.com/home-assistant/home-assistant/pull/9858
|
||||
[#9870]: https://github.com/home-assistant/home-assistant/pull/9870
|
||||
[#9872]: https://github.com/home-assistant/home-assistant/pull/9872
|
||||
[#9876]: https://github.com/home-assistant/home-assistant/pull/9876
|
||||
[#9883]: https://github.com/home-assistant/home-assistant/pull/9883
|
||||
[#9889]: https://github.com/home-assistant/home-assistant/pull/9889
|
||||
[#9894]: https://github.com/home-assistant/home-assistant/pull/9894
|
||||
[#9915]: https://github.com/home-assistant/home-assistant/pull/9915
|
||||
[#9936]: https://github.com/home-assistant/home-assistant/pull/9936
|
||||
[#9957]: https://github.com/home-assistant/home-assistant/pull/9957
|
||||
[#9962]: https://github.com/home-assistant/home-assistant/pull/9962
|
||||
[#9967]: https://github.com/home-assistant/home-assistant/pull/9967
|
||||
[#9968]: https://github.com/home-assistant/home-assistant/pull/9968
|
||||
[#9973]: https://github.com/home-assistant/home-assistant/pull/9973
|
||||
[#9975]: https://github.com/home-assistant/home-assistant/pull/9975
|
||||
[#9977]: https://github.com/home-assistant/home-assistant/pull/9977
|
||||
[#9979]: https://github.com/home-assistant/home-assistant/pull/9979
|
||||
[#9983]: https://github.com/home-assistant/home-assistant/pull/9983
|
||||
[#9984]: https://github.com/home-assistant/home-assistant/pull/9984
|
||||
[#9987]: https://github.com/home-assistant/home-assistant/pull/9987
|
||||
[#9988]: https://github.com/home-assistant/home-assistant/pull/9988
|
||||
[#9990]: https://github.com/home-assistant/home-assistant/pull/9990
|
||||
[#9996]: https://github.com/home-assistant/home-assistant/pull/9996
|
||||
[@C0DK]: https://github.com/C0DK
|
||||
[@ChristianKuehnel]: https://github.com/ChristianKuehnel
|
||||
[@DarkFox]: https://github.com/DarkFox
|
||||
[@GenericStudent]: https://github.com/GenericStudent
|
||||
[@HydrelioxGitHub]: https://github.com/HydrelioxGitHub
|
||||
[@ImEmJay]: https://github.com/ImEmJay
|
||||
[@Kane610]: https://github.com/Kane610
|
||||
[@KlaasH]: https://github.com/KlaasH
|
||||
[@NovapaX]: https://github.com/NovapaX
|
||||
[@PeteBa]: https://github.com/PeteBa
|
||||
[@R1chardTM]: https://github.com/R1chardTM
|
||||
[@SilvrrGIT]: https://github.com/SilvrrGIT
|
||||
[@TD22057]: https://github.com/TD22057
|
||||
[@TopdRob]: https://github.com/TopdRob
|
||||
[@abmantis]: https://github.com/abmantis
|
||||
[@alanfischer]: https://github.com/alanfischer
|
||||
[@altersis]: https://github.com/altersis
|
||||
[@amelchio]: https://github.com/amelchio
|
||||
[@andrey-git]: https://github.com/andrey-git
|
||||
[@armills]: https://github.com/armills
|
||||
[@b10m]: https://github.com/b10m
|
||||
[@bachya]: https://github.com/bachya
|
||||
[@balloob]: https://github.com/balloob
|
||||
[@bastshoes]: https://github.com/bastshoes
|
||||
[@biggms]: https://github.com/biggms
|
||||
[@cdce8p]: https://github.com/cdce8p
|
||||
[@cgtobi]: https://github.com/cgtobi
|
||||
[@chemicalstorm]: https://github.com/chemicalstorm
|
||||
[@chriskacerguis]: https://github.com/chriskacerguis
|
||||
[@danielhiversen]: https://github.com/danielhiversen
|
||||
[@danielperna84]: https://github.com/danielperna84
|
||||
[@davegravy]: https://github.com/davegravy
|
||||
[@davlloyd]: https://github.com/davlloyd
|
||||
[@dominikandreas]: https://github.com/dominikandreas
|
||||
[@ehagan]: https://github.com/ehagan
|
||||
[@emosenkis]: https://github.com/emosenkis
|
||||
[@epleypa]: https://github.com/epleypa
|
||||
[@etsinko]: https://github.com/etsinko
|
||||
[@fabaff]: https://github.com/fabaff
|
||||
[@flowolf]: https://github.com/flowolf
|
||||
[@fronzbot]: https://github.com/fronzbot
|
||||
[@gautric]: https://github.com/gautric
|
||||
[@ggravlingen]: https://github.com/ggravlingen
|
||||
[@gunnarhelgason]: https://github.com/gunnarhelgason
|
||||
[@hotplot]: https://github.com/hotplot
|
||||
[@iMarkus]: https://github.com/iMarkus
|
||||
[@jalmeroth]: https://github.com/jalmeroth
|
||||
[@jeroenterheerdt]: https://github.com/jeroenterheerdt
|
||||
[@joaqtor]: https://github.com/joaqtor
|
||||
[@kirichkov]: https://github.com/kirichkov
|
||||
[@lichtteil]: https://github.com/lichtteil
|
||||
[@lwis]: https://github.com/lwis
|
||||
[@matemaciek]: https://github.com/matemaciek
|
||||
[@milanvo]: https://github.com/milanvo
|
||||
[@molobrakos]: https://github.com/molobrakos
|
||||
[@mw-white]: https://github.com/mw-white
|
||||
[@nicolaevladescu]: https://github.com/nicolaevladescu
|
||||
[@pavoni]: https://github.com/pavoni
|
||||
[@perosb]: https://github.com/perosb
|
||||
[@pezinek]: https://github.com/pezinek
|
||||
[@pschmitt]: https://github.com/pschmitt
|
||||
[@pvizeli]: https://github.com/pvizeli
|
||||
[@quamilek]: https://github.com/quamilek
|
||||
[@randellhodges]: https://github.com/randellhodges
|
||||
[@rasmusbe]: https://github.com/rasmusbe
|
||||
[@ryanm101]: https://github.com/ryanm101
|
||||
[@sander76]: https://github.com/sander76
|
||||
[@sdague]: https://github.com/sdague
|
||||
[@syssi]: https://github.com/syssi
|
||||
[@tboyce021]: https://github.com/tboyce021
|
||||
[@tchellomello]: https://github.com/tchellomello
|
||||
[@tinloaf]: https://github.com/tinloaf
|
||||
[@ttroy50]: https://github.com/ttroy50
|
||||
[@vatir]: https://github.com/vatir
|
||||
[@w1ll1am23]: https://github.com/w1ll1am23
|
||||
[@wardcraigj]: https://github.com/wardcraigj
|
||||
[@ypollart]: https://github.com/ypollart
|
||||
[@zabuldon]: https://github.com/zabuldon
|
||||
[alarm_control_panel.totalconnect docs]: https://home-assistant.io/components/alarm_control_panel.totalconnect/
|
||||
[alexa.smart_home docs]: https://home-assistant.io/components/alexa.smart_home/
|
||||
[api docs]: https://home-assistant.io/components/api/
|
||||
[automation.event docs]: https://home-assistant.io/docs/automation/trigger/#event-trigger
|
||||
[automation.numeric_state docs]: https://home-assistant.io/docs/automation/trigger/#numeric-state-trigger
|
||||
[axis docs]: https://home-assistant.io/components/axis/
|
||||
[binary_sensor.axis docs]: https://home-assistant.io/components/binary_sensor.axis/
|
||||
[binary_sensor.gc100 docs]: https://home-assistant.io/components/binary_sensor.gc100/
|
||||
[binary_sensor.linode docs]: https://home-assistant.io/components/binary_sensor.linode/
|
||||
[binary_sensor.random docs]: https://home-assistant.io/components/binary_sensor.random/
|
||||
[binary_sensor.rfxtrx docs]: https://home-assistant.io/components/binary_sensor.rfxtrx/
|
||||
[binary_sensor.ring docs]: https://home-assistant.io/components/binary_sensor.ring/
|
||||
[binary_sensor.tellduslive docs]: https://home-assistant.io/components/binary_sensor.tellduslive/
|
||||
[binary_sensor.trend docs]: https://home-assistant.io/components/binary_sensor.trend/
|
||||
[binary_sensor.xiaomi_aqara docs]: https://home-assistant.io/components/binary_sensor.xiaomi_aqara/
|
||||
[camera docs]: https://home-assistant.io/components/camera/
|
||||
[camera.ring docs]: https://home-assistant.io/components/camera.ring/
|
||||
[climate.ephember docs]: https://home-assistant.io/components/climate.ephember/
|
||||
[climate.generic_thermostat docs]: https://home-assistant.io/components/climate.generic_thermostat/
|
||||
[climate.honeywell docs]: https://home-assistant.io/components/climate.honeywell/
|
||||
[climate.toon docs]: https://home-assistant.io/components/climate.toon/
|
||||
[cloud docs]: https://home-assistant.io/components/cloud/
|
||||
[cloud.iot docs]: https://home-assistant.io/components/cloud.iot/
|
||||
[cover.template docs]: https://home-assistant.io/components/cover.template/
|
||||
[device_tracker docs]: https://home-assistant.io/components/device_tracker/
|
||||
[device_tracker.asuswrt docs]: https://home-assistant.io/components/device_tracker.asuswrt/
|
||||
[device_tracker.automatic docs]: https://home-assistant.io/components/device_tracker.automatic/
|
||||
[device_tracker.geofency docs]: https://home-assistant.io/components/device_tracker.geofency/
|
||||
[device_tracker.mikrotik docs]: https://home-assistant.io/components/device_tracker.mikrotik/
|
||||
[device_tracker.owntracks docs]: https://home-assistant.io/components/device_tracker.owntracks/
|
||||
[device_tracker.snmp docs]: https://home-assistant.io/components/device_tracker.snmp/
|
||||
[device_tracker.ubus docs]: https://home-assistant.io/components/device_tracker.ubus/
|
||||
[dialogflow docs]: https://home-assistant.io/components/dialogflow/
|
||||
[downloader docs]: https://home-assistant.io/components/downloader/
|
||||
[duckdns docs]: https://home-assistant.io/components/duckdns/
|
||||
[fan.mqtt docs]: https://home-assistant.io/components/fan.mqtt/
|
||||
[fan.xiaomi_miio docs]: https://home-assistant.io/components/fan.xiaomi_miio/
|
||||
[gc100 docs]: https://home-assistant.io/components/gc100/
|
||||
[google_assistant docs]: https://home-assistant.io/components/google_assistant/
|
||||
[google_domains docs]: https://home-assistant.io/components/google_domains/
|
||||
[hassio docs]: https://home-assistant.io/components/hassio/
|
||||
[history docs]: https://home-assistant.io/components/history/
|
||||
[http docs]: https://home-assistant.io/components/http/
|
||||
[image_processing.openalpr_local docs]: https://home-assistant.io/components/image_processing.openalpr_local/
|
||||
[input_number docs]: https://home-assistant.io/components/input_number/
|
||||
[input_text docs]: https://home-assistant.io/components/input_text/
|
||||
[introduction docs]: https://home-assistant.io/components/introduction/
|
||||
[light.hue docs]: https://home-assistant.io/components/light.hue/
|
||||
[light.hyperion docs]: https://home-assistant.io/components/light.hyperion/
|
||||
[light.mqtt docs]: https://home-assistant.io/components/light.mqtt/
|
||||
[light.tradfri docs]: https://home-assistant.io/components/light.tradfri/
|
||||
[light.xiaomi_miio docs]: https://home-assistant.io/components/light.xiaomi_miio/
|
||||
[light.yeelight docs]: https://home-assistant.io/components/light.yeelight/
|
||||
[linode docs]: https://home-assistant.io/components/linode/
|
||||
[logbook docs]: https://home-assistant.io/components/logbook/
|
||||
[mailbox docs]: https://home-assistant.io/components/mailbox/
|
||||
[media_extractor docs]: https://home-assistant.io/components/media_extractor/
|
||||
[media_player docs]: https://home-assistant.io/components/media_player/
|
||||
[media_player.liveboxplaytv docs]: https://home-assistant.io/components/media_player.liveboxplaytv/
|
||||
[media_player.monoprice docs]: https://home-assistant.io/components/media_player.monoprice/
|
||||
[media_player.plex docs]: https://home-assistant.io/components/media_player.plex/
|
||||
[media_player.russound_rnet docs]: https://home-assistant.io/components/media_player.russound_rnet/
|
||||
[media_player.sonos docs]: https://home-assistant.io/components/media_player.sonos/
|
||||
[media_player.yamaha docs]: https://home-assistant.io/components/media_player.yamaha/
|
||||
[mqtt_statestream docs]: https://home-assistant.io/components/mqtt_statestream/
|
||||
[namecheapdns docs]: https://home-assistant.io/components/namecheapdns/
|
||||
[no_ip docs]: https://home-assistant.io/components/no_ip/
|
||||
[notify.aws_lambda docs]: https://home-assistant.io/components/notify.aws_lambda/
|
||||
[notify.aws_sns docs]: https://home-assistant.io/components/notify.aws_sns/
|
||||
[notify.aws_sqs docs]: https://home-assistant.io/components/notify.aws_sqs/
|
||||
[notify.clickatell docs]: https://home-assistant.io/components/notify.clickatell/
|
||||
[notify.sendgrid docs]: https://home-assistant.io/components/notify.sendgrid/
|
||||
[notify.yessssms docs]: https://home-assistant.io/components/notify.yessssms/
|
||||
[panel_custom docs]: https://home-assistant.io/components/panel_custom/
|
||||
[persistent_notification docs]: https://home-assistant.io/components/persistent_notification/
|
||||
[plant docs]: https://home-assistant.io/components/plant/
|
||||
[raincloud docs]: https://home-assistant.io/components/raincloud/
|
||||
[remember_the_milk docs]: https://home-assistant.io/components/remember_the_milk/
|
||||
[rfxtrx docs]: https://home-assistant.io/components/rfxtrx/
|
||||
[ring docs]: https://home-assistant.io/components/ring/
|
||||
[sensor.coinmarketcap docs]: https://home-assistant.io/components/sensor.coinmarketcap/
|
||||
[sensor.emoncms docs]: https://home-assistant.io/components/sensor.emoncms/
|
||||
[sensor.fail2ban docs]: https://home-assistant.io/components/sensor.fail2ban/
|
||||
[sensor.gitter docs]: https://home-assistant.io/components/sensor.gitter/
|
||||
[sensor.glances docs]: https://home-assistant.io/components/sensor.glances/
|
||||
[sensor.google_travel_time docs]: https://home-assistant.io/components/sensor.google_travel_time/
|
||||
[sensor.hddtemp docs]: https://home-assistant.io/components/sensor.hddtemp/
|
||||
[sensor.imap docs]: https://home-assistant.io/components/sensor.imap/
|
||||
[sensor.irish_rail_transport docs]: https://home-assistant.io/components/sensor.irish_rail_transport/
|
||||
[sensor.lastfm docs]: https://home-assistant.io/components/sensor.lastfm/
|
||||
[sensor.luftdaten docs]: https://home-assistant.io/components/sensor.luftdaten/
|
||||
[sensor.nederlandse_spoorwegen docs]: https://home-assistant.io/components/sensor.nederlandse_spoorwegen/
|
||||
[sensor.radarr docs]: https://home-assistant.io/components/sensor.radarr/
|
||||
[sensor.rest docs]: https://home-assistant.io/components/sensor.rest/
|
||||
[sensor.ring docs]: https://home-assistant.io/components/sensor.ring/
|
||||
[sensor.scrape docs]: https://home-assistant.io/components/sensor.scrape/
|
||||
[sensor.snmp docs]: https://home-assistant.io/components/sensor.snmp/
|
||||
[sensor.sonarr docs]: https://home-assistant.io/components/sensor.sonarr/
|
||||
[sensor.speedtest docs]: https://home-assistant.io/components/sensor.speedtest/
|
||||
[sensor.swiss_public_transport docs]: https://home-assistant.io/components/sensor.swiss_public_transport/
|
||||
[sensor.synologydsm docs]: https://home-assistant.io/components/sensor.synologydsm/
|
||||
[sensor.sytadin docs]: https://home-assistant.io/components/sensor.sytadin/
|
||||
[sensor.toon docs]: https://home-assistant.io/components/sensor.toon/
|
||||
[sensor.uk_transport docs]: https://home-assistant.io/components/sensor.uk_transport/
|
||||
[sensor.whois docs]: https://home-assistant.io/components/sensor.whois/
|
||||
[shopping_list docs]: https://home-assistant.io/components/shopping_list/
|
||||
[switch.deluge docs]: https://home-assistant.io/components/switch.deluge/
|
||||
[switch.flux docs]: https://home-assistant.io/components/switch.flux/
|
||||
[switch.gc100 docs]: https://home-assistant.io/components/switch.gc100/
|
||||
[switch.snmp docs]: https://home-assistant.io/components/switch.snmp/
|
||||
[switch.template docs]: https://home-assistant.io/components/switch.template/
|
||||
[switch.toon docs]: https://home-assistant.io/components/switch.toon/
|
||||
[switch.xiaomi_miio docs]: https://home-assistant.io/components/switch.xiaomi_miio/
|
||||
[tellduslive docs]: https://home-assistant.io/components/tellduslive/
|
||||
[tellstick docs]: https://home-assistant.io/components/tellstick/
|
||||
[tesla docs]: https://home-assistant.io/components/tesla/
|
||||
[timer docs]: https://home-assistant.io/components/timer/
|
||||
[toon docs]: https://home-assistant.io/components/toon/
|
||||
[tradfri docs]: https://home-assistant.io/components/tradfri/
|
||||
[tts.amazon_polly docs]: https://home-assistant.io/components/tts.amazon_polly/
|
||||
[tts.microsoft docs]: https://home-assistant.io/components/tts.microsoft/
|
||||
[vacuum.xiaomi_miio docs]: https://home-assistant.io/components/vacuum.xiaomi_miio/
|
||||
[vera docs]: https://home-assistant.io/components/vera/
|
||||
[wink docs]: https://home-assistant.io/components/wink/
|
||||
[xiaomi_aqara docs]: https://home-assistant.io/components/xiaomi_aqara/
|
||||
[ikea email]: https://twitter.com/home_assistant/status/925373865802502144
|
||||
[wink-auth]: https://home-assistant.io/components/wink/#authenticate-using-developerwinkcomhttpsdeveloperwinkcom
|
@ -10,7 +10,7 @@ footer: true
|
||||
regenerate: false
|
||||
---
|
||||
|
||||
<p>Add-ons for Hass.io allows the user to extend the functionality around Home Assistant. This can be running an application that Home Assistant can integrate with (like an MQTT broker) or to share the configuration via Samba for easy editing from other computers. Add-ons can be configured via the Hass.io panel in Home Assistant.</p>
|
||||
<p>Add-ons for Hass.io allow the user to extend the functionality around Home Assistant. This can be running an application that Home Assistant can integrate with (like an MQTT broker) or to share the configuration via Samba for easy editing from other computers. Add-ons can be configured via the Hass.io panel in Home Assistant.</p>
|
||||
|
||||
<p>
|
||||
Check the Hass.io forums for <a href='https://community.home-assistant.io/tags/hassio-repository'>add-on repositories managed by the community</a>.
|
||||
|
@ -10,7 +10,7 @@ footer: true
|
||||
redirect_from: /hassio/addon_development/
|
||||
---
|
||||
|
||||
Add-ons for Hass.io allows the user to extend the functionality around Home Assistant. This can be running an application that Home Assistant can integrate with (like an MQTT broker) or to share the configuration via Samba for easy editing from other computers. Add-ons can be configured via the Hass.io panel in Home Assistant.
|
||||
Add-ons for Hass.io allow the user to extend the functionality around Home Assistant. This can be running an application that Home Assistant can integrate with (like an MQTT broker) or to share the configuration via Samba for easy editing from other computers. Add-ons can be configured via the Hass.io panel in Home Assistant.
|
||||
|
||||
Under the hood, add-ons are Docker images published in [Docker Hub](https://hub.docker.com/). Developers can create [GitHub](https://github.com) repositories that contain multiple references to add-ons for easy sharing with the community.
|
||||
|
||||
|
@ -16,7 +16,7 @@ Hass.io turns your Raspberry Pi (or another device) into the ultimate home autom
|
||||
The advantages of using Hass.io:
|
||||
|
||||
- Free and open source
|
||||
- Optimized for embedded device like Raspberry Pi
|
||||
- Optimized for embedded devices like Raspberry Pi
|
||||
- 100% local home automation
|
||||
- Easy installation and updates (powered by [ResinOS] and [Docker])
|
||||
- Management user interface integrated into Home Assistant
|
||||
|
@ -16,18 +16,22 @@ zwave:
|
||||
usb_path: /dev/ttyACM0
|
||||
```
|
||||
|
||||
If you need GPIO on raspberry-pi3 for your Z-Wave module, add the following line into `config.txt`:
|
||||
If you need GPIO on Raspberry Pi 3 for your Z-Wave module, add the following line into `config.txt`:
|
||||
|
||||
```
|
||||
dtoverlay=pi3-miniuart-bt
|
||||
```
|
||||
|
||||
For some devices the `/dev/ttyAMA0` device is not detected by udev and is therefore not mapped by Docker. To explicitly set this device for mapping to Home-Assistant, execute the following command using the ssh add-on:
|
||||
|
||||
```bash
|
||||
$ curl -d '{"devices": ["ttyAMA0"]}' http://hassio/homeassistant/options
|
||||
```
|
||||
|
||||
After that, you need to change `usb_path` to `/dev/ttyAMA0`.
|
||||
|
||||
### HUSBZB-1:
|
||||
|
||||
```yaml
|
||||
zwave:
|
||||
usb_path: /dev/ttyUSB0
|
||||
|
BIN
source/images/blog/2017-11-0.57/components.png
Normal file
BIN
source/images/blog/2017-11-0.57/components.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 88 KiB |
BIN
source/images/blog/2017-11-0.57/languages.png
Normal file
BIN
source/images/blog/2017-11-0.57/languages.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 26 KiB |
BIN
source/images/blog/2017-11-0.57/pumpkin.jpeg
Normal file
BIN
source/images/blog/2017-11-0.57/pumpkin.jpeg
Normal file
Binary file not shown.
After Width: | Height: | Size: 115 KiB |
BIN
source/images/supported_brands/deluge.png
Normal file
BIN
source/images/supported_brands/deluge.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 13 KiB |
Loading…
x
Reference in New Issue
Block a user