Merge branch 'rc' into current

This commit is contained in:
Paulus Schoutsen 2018-11-29 11:35:25 +01:00
commit cc550f9646
101 changed files with 2968 additions and 668 deletions

View File

@ -141,14 +141,14 @@ social:
# Home Assistant release details
current_major_version: 0
current_minor_version: 82
current_patch_version: 1
date_released: 2018-11-15
current_minor_version: 83
current_patch_version: 0
date_released: 2018-11-29
# 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: "#release-0821---november-15"
patch_version_notes: "#"
# Minor release (Example #release-0431---april-25):
# Date we moved to Discourse for comments

View File

@ -52,5 +52,5 @@ customize:
{% endconfiguration %}
<p class='note'>
It is possible to deactivate port 80 if you need this for things like `emulate_hue`. Remove the host port from Network option of this add-on.
It is possible to deactivate port 80 if you need this for things like `emulated_hue`. Remove the host port from Network option of this add-on.
</p>

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Lupusec Alarm Control Panel"
description: "Instructions on how to setup the Lupusec Alarm control panel within Home Assistant."
date: 2018-10-03 16:00
sidebar: true
comments: false
sharing: true
footer: true
logo: lupusec.jpg
ha_category: Alarm
ha_release: 0.83
ha_iot_class: "Local Polling"
---
The `LUPUS-Electronics` security control panel platform allows you to control your [Lupusec](https://www.lupus-electronics.de) devices.
The requirement is that you have setup your [Lupusec component](/components/lupusec/). The alarm control panel is automatically added to your hass UI.

View File

@ -42,8 +42,8 @@ alert:
entity_id: input_boolean.garage_door
state: 'on'
repeat: 30
can_acknowledge: True
skip_first: True
can_acknowledge: true
skip_first: true
notifiers:
- ryans_phone
- kristens_phone
@ -103,7 +103,7 @@ notifiers:
In this example, the garage door status (`input_boolean.garage_door`) is watched
and this alert will be triggered when its status is equal to `on`.
This indicates that the door has been opened. Because the `skip_first` option
was set to `True`, the first notification will not be delivered immediately.
was set to `true`, the first notification will not be delivered immediately.
However, every 30 minutes, a notification will be delivered until either
`input_boolean.garage_door` no longer has a state of `on` or until the alert is
acknowledged using the Home Assistant frontend.
@ -125,15 +125,16 @@ provided by the `alert` component:
```
```yaml
freshwater_temp_alert:
name: "Warning: I have detected a problem with the freshwater tank temperature"
entity_id: binary_sensor.freshwater_temperature_status
state: 'on'
repeat: 5
can_acknowledge: true
skip_first: false
notifiers:
- john_phone_sms
alert:
freshwater_temp_alert:
name: "Warning: I have detected a problem with the freshwater tank temperature"
entity_id: binary_sensor.freshwater_temperature_status
state: 'on'
repeat: 5
can_acknowledge: true
skip_first: false
notifiers:
- john_phone_sms
```
### {% linkable_title Complex Alert Criteria %}
@ -146,12 +147,13 @@ disable the alert on certain days. Maybe the alert firing should depend on more
than one input. For all of these situations, it is best to use the alert in
conjunction with a `Template Binary Sensor`. The following example does that.
{% raw %}
```yaml
binary_sensor:
- platform: template
sensors:
motion_battery_low:
value_template: {% raw %}'{{ states.sensor.motion.attributes.battery < 15 }}'{% endraw %}
value_template: '{{ states.sensor.motion.attributes.battery < 15 }}'
friendly_name: 'Motion battery is low'
alert:
@ -163,6 +165,7 @@ alert:
- ryans_phone
- kristens_phone
```
{% endraw %}
This example will begin firing as soon as the entity `sensor.motion`'s `battery`
attribute falls below 15. It will continue to fire until the battery attribute
@ -186,8 +189,8 @@ alert:
- 15
- 30
- 60
can_acknowledge: True # Optional, default is True
skip_first: True # Optional, false is the default
can_acknowledge: true # Optional, default is true
skip_first: true # Optional, false is the default
notifiers:
- ryans_phone
- kristens_phone
@ -206,21 +209,24 @@ about the state of the entity.
The following will show for a plant how to include the problem `attribute`
of the entity.
{% raw %}
```yaml
# Example configuration.yaml entry
alert:
office_plant:
name: Plant in office needs help
entity_id: plant.plant_office
state: 'problem'
repeat: 30
can_acknowledge: True
skip_first: True
message: {% raw %} "Plant {{ states.plant.plant_office }} needs help ({{ state_attr('plant.plant_office', 'problem') }})" {% endraw %}
can_acknowledge: true
skip_first: true
message: "Plant {{ states.plant.plant_office }} needs help ({{ state_attr('plant.plant_office', 'problem') }})"
done_message: Plant in office is fine
notifiers:
- ryans_phone
- kristens_phone
```
{% endraw %}
The resulting message could be `Plant Officeplant needs help (moisture low)`.

View File

@ -0,0 +1,70 @@
---
layout: page
title: "Asuswrt"
description: "Instructions on how to integrate Asuswrt into Home Assistant."
date: 2017-01-05 17:30
sidebar: true
comments: false
sharing: true
footer: true
logo: asus.png
ha_category: Hub
ha_release: 0.83
ha_iot_class: "Local Polling"
---
The `asuswrt` component is the main component to connect to a [ASUSWRT](http://event.asus.com/2013/nw/ASUSWRT/) based router.
## {% linkable_title Configuration %}
To use an ASUSWRT router in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
asuswrt:
host: YOUR_ROUTER_IP
username: YOUR_ADMIN_USERNAME
```
{% configuration %}
host:
description: "The IP address of your router, eg. `192.168.1.1`."
required: true
type: string
username:
description: "The username of a user with administrative privileges, usually `admin`."
required: true
type: string
password:
description: "The password for your given admin account (use this if no SSH key is given)."
required: false
type: string
protocol:
description: "The protocol (`ssh` or `telnet`) to use."
required: false
type: string
default: ssh
port:
description: SSH port to use.
required: false
type: integer
default: 22
mode:
description: "The operating mode of the router (`router` or `ap`)."
required: false
type: string
default: router
ssh_key:
description: The path to your SSH private key file associated with your given admin account (instead of password).
required: false
type: string
require_ip:
description: If the router is in access point mode.
required: false
type: boolean
default: true
{% endconfiguration %}
<p class='note warning'>
You need to [enable telnet](https://www.asus.com/support/faq/1005449/) on your router if you choose to use `protocol: telnet`.
</p>

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Fibaro Binary Sensor"
description: "Instructions on how to integrate Fibaro binary sensors into Home Assistant."
date: 2018-11-14 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: fibaro.png
ha_category: Binary Sensor
ha_iot_class: "Local Push"
ha_release: 0.83
---
The `fibaro` platform allows you to get data from your [Fibaro](http://fibaro.com/) binary sensors connected to your Fibaro HCL or HC2 from within Home Assistant.
They will be automatically discovered if the `fibaro` component is loaded.

View File

@ -0,0 +1,20 @@
---
layout: page
title: "Lupusec Binary Sensor"
description: "Instructions on how to integrate Lupusec binary sensors into Home Assistant."
date: 2018-10-03 16:00
sidebar: true
comments: false
sharing: true
footer: true
logo: lupusec.jpg
ha_category: Binary Sensor
ha_release: 0.83
ha_iot_class: "Local Polling"
---
The `LUPUS-Electronics` security control panel platform allows you to control your [Lupusec](https://www.lupus-electronics.de) devices.
This component will add `door contacts` and `window contacts` to your home-assistant setup
For the sensors to work you have to setup your [Lupusec component](/components/lupusec/).

View File

@ -0,0 +1,35 @@
---
layout: page
title: "Minut Point Binary Sensor"
description: "Access your Minut Point Events as binary sensors."
date: 2018-11-19
sidebar: true
comments: false
sharing: true
footer: true
logo: minut.svg
ha_category: Binary Sensor
ha_release: "0.83"
ha_iot_class: "Cloud Push"
ha_qa_scale: silver
---
Each Point exposes the following binary sensors:
- **battery**: `On` means low, `Off` means normal
- **button_press**: `On` means the button was pressed, `Off` means normal
- **cold**: `On` means cold, `Off` means normal
- **connectivity**: `On` means connected, `Off` means disconnected
- **dry**: `On` means too dry, `Off` means normal
- **heat**: `On` means hot, `Off` means normal
- **light**: `On` means light detected, `Off` means no light
- **moisture**: `On` means moisture detected (wet), `Off` means no moisture (dry)
- **motion**: `On` means motion detected, `Off` means no motion (clear)
- **sound**: `On` means sound detected, `Off` means no sound (clear)
- **tamper**: `On` means the point was removed or attached
For installation instructions, see [the Point component](/components/point/).
<p class='note'>
The events sent from the Point is also sent as a webhook back to Home Assistant with `event_type` as `point_webhook_received`, please consider the documentation for the [IFTT](https://www.home-assistant.io/components/ifttt/) component on how to write automations for webhooks.
</p>

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Sense binary sensors"
description: "Instructions on how to integrate Sense binary sensors into Home Assistant."
date: 2018-11-14 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: sense.png
ha_category: Energy
ha_iot_class: "Cloud Polling"
ha_release: 0.82
---
The `Sense` platform allows you to get data from your [Sense](http://Sense.com/).
They will be automatically discovered if the `sense` component is loaded.

View File

@ -0,0 +1,69 @@
---
layout: page
title: "W800rf32 Binary Sensor"
description: "Instructions on how to integrate W800rf32 binary sensors into Home Assistant."
date: 2018-10-16 12:45
sidebar: true
comments: false
sharing: true
footer: true
logo: w800rf32.png
ha_category: Binary Sensor
ha_release: 0.83
ha_iot_class: "Local Push"
---
The `w800rf32` platform supports X10 RF binary sensors such as Palm Pad
remotes, key chain remotes, Hawkeye motion detectors, and many, many other X10 RF devices.
Some that have specifically been used with this are the KR19A keychain, MS16A motion detector
and the RSS18 four button wall mount keypad.
# Setting up your devices
Once you have set up your [w800rf32 hub](/components/w800rf32/), add the
binary sensors to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
binary_sensor:
- platform: w800rf32
devices:
a1:
name: motion_hall
a2:
name: motion_kitchen
```
{% configuration %}
devices:
description: A list of devices.
required: true
type: map
keys:
name:
description: Override the name to use in the frontend.
required: false
type: string
device_class:
description: "The [type or class of the sensor](/components/binary_sensor/) to set the icon in the frontend."
required: false
type: device_class
off_delay:
description: For sensors that only sends 'On' state updates, this variable sets a delay after which the sensor state will be updated back to 'Off'.
required: false
type: integer
{% endconfiguration %}
Binary sensors have only two states - "on" and "off". Many door or window
opening sensors will send a signal each time the door/window is open or closed.
However, depending on their hardware or on their purpose,
some sensors are only able to signal their "on" state:
- Most motion sensors send a signal each time they detect motion. They stay "on" for a few seconds and go back to sleep, ready to signal other motion events. Usually, they do not send a signal when they go back to sleep.
For those devices, use the *off_delay* parameter.
It defines a delay after which a device will go back to an "Off" state.
That "Off" state will be fired internally by Home Assistant, just as if
the device fired it by itself. If a motion sensor can only send signals
once every 5 seconds, sets the *off_delay* parameter to *seconds: 5*.

View File

@ -148,7 +148,7 @@ Available events are `single`, `double`, `hold`, `long_click_press` and `long_cl
- alias: Toggle dining light on single press
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.switch_158d000xxxxxc2
click_type: single
@ -158,7 +158,7 @@ Available events are `single`, `double`, `hold`, `long_click_press` and `long_cl
- alias: Toggle couch light on double click
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.switch_158d000xxxxxc2
click_type: double
@ -168,7 +168,7 @@ Available events are `single`, `double`, `hold`, `long_click_press` and `long_cl
- alias: Let a dog bark on long press
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.switch_158d000xxxxxc2
click_type: long_click_press
@ -188,7 +188,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi
- alias: Cube event flip90
trigger:
platform: event
event_type: cube_action
event_type: xiaomi_aqara.cube_action
event_data:
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
action_type: flip90
@ -200,7 +200,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi
- alias: Cube event flip180
trigger:
platform: event
event_type: cube_action
event_type: xiaomi_aqara.cube_action
event_data:
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
action_type: flip180
@ -212,7 +212,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi
- alias: Cube event move
trigger:
platform: event
event_type: cube_action
event_type: xiaomi_aqara.cube_action
event_data:
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
action_type: move
@ -224,7 +224,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi
- alias: Cube event tap_twice
trigger:
platform: event
event_type: cube_action
event_type: xiaomi_aqara.cube_action
event_data:
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
action_type: tap_twice
@ -236,7 +236,7 @@ Available events are `flip90`, `flip180`, `move`, `tap_twice`, `shake_air`, `swi
- alias: Cube event shake_air
trigger:
platform: event
event_type: cube_action
event_type: xiaomi_aqara.cube_action
event_data:
entity_id: binary_sensor.cube_15xxxxxxxxxxxx
action_type: shake_air
@ -255,7 +255,7 @@ The Aqara Wireless Switch is available as single-key and double-key version. Eac
- alias: Decrease brightness of the gateway light
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.wall_switch_left_158xxxxxxxxx12
click_type: single
@ -277,7 +277,7 @@ The Aqara Wireless Switch is available as single-key and double-key version. Eac
- alias: Increase brightness of the gateway light
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.wall_switch_right_158xxxxxxxxx12
click_type: single
@ -299,7 +299,7 @@ The Aqara Wireless Switch is available as single-key and double-key version. Eac
- alias: Turn off the gateway light
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.wall_switch_both_158xxxxxxxxx12
click_type: both

View File

@ -82,6 +82,11 @@ away_temp:
description: Set the temperature used by "away_mode". If this is not specified, away_mode feature will not get activated.
required: false
type: float
precision:
description: "The desired precision for this device. Can be used to match your actual thermostat's precision. Supported values are `0.1`, `0.5` and `1.0`."
required: false
type: float
default: "`0.5` for Celsius and `1.0` for Fahrenheit."
{% endconfiguration %}
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:`.
@ -109,4 +114,5 @@ climate:
minutes: 3
initial_operation_mode: "off"
away_temp: 16
precision: 0.1
```

View File

@ -10,8 +10,7 @@ footer: true
logo: velbus.png
ha_category: Climate
ha_iot_class: "Local Push"
ha_release: 0.82
published: false
ha_release: 0.83
---
The `velbus` climate devices allow you to control [Velbus](http://www.velbus.eu) connected thermostats.

View File

@ -13,7 +13,6 @@ ha_release: 0.61
ha_iot_class: "Cloud Polling"
---
The `coinbase` component lets you access account balances and exchange rates from [coinbase](https://coinbase.com).
You will need to obtain an API key from coinbase's [developer site](https://www.coinbase.com/settings/api) to use this component. You need to give read access to `wallet:accounts` in order for the component to access relevant data.
@ -25,12 +24,8 @@ To set it up, add the following information to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
coinbase:
api_key: YOUR_API_KEY
api_secret: YOUR_API_SECRET
exchange_rate_currencies:
- BTC
- ETH
- LTC
api_key: YOUR_API_KEY
api_secret: YOUR_API_SECRET
```
{% configuration %}
@ -42,8 +37,33 @@ api_secret:
description: Your API secret to access coinbase.
required: true
type: string
account_balance_currencies:
description: List of currencies to create account wallet sensors for.
required: false
type: list
default: all account wallets
exchange_rate_currencies:
description: List of currencies to create exchange rate sensors for.
required: false
type: list
{% endconfiguration %}
Possible currencies are codes that conform to the ISO 4217 standard where possible. Currencies which have or had no representation in ISO 4217 may use a custom code (e.g. BTC). A list of values can be obtained via https://api.coinbase.com/v2/currencies, for more information visit [the Coinbase API documentation](https://developers.coinbase.com/api/v2#get-currencies).
## {% linkable_title Full configuration example %}
A full configuration sample including optional variables:
```yaml
# Example configuration.yaml entry
coinbase:
api_key: YOUR_API_KEY
api_secret: YOUR_API_SECRET
account_balance_currencies:
- EUR
- BTC
exchange_rate_currencies:
- BTC
- ETH
- LTC
```

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Fibaro covers"
description: "Instructions on how to integrate Fibaro covers into Home Assistant."
date: 2018-11-14 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: fibaro.png
ha_category: Light
ha_iot_class: "Local Push"
ha_release: 0.83
---
The `fibaro` platform allows you to get data from your [Fibaro](http://fibaro.com/) covers connected to your Fibaro HCL or HC2 from within Home Assistant.
They will be automatically discovered if the `fibaro` component is loaded.

View File

@ -11,6 +11,7 @@ logo: deconz.jpeg
ha_category: Hub
ha_release: "0.61"
ha_iot_class: "Local Push"
ha_qa_scale: platinum
---
[deCONZ](https://www.dresden-elektronik.de/funktechnik/products/software/pc/deconz/) by [Dresden Elektronik](https://www.dresden-elektronik.de) is a software that communicates with Conbee/Raspbee Zigbee gateways and exposes Zigbee devices that are connected to the gateway.

View File

@ -1,7 +1,7 @@
---
layout: page
title: "ASUSWRT"
description: "Instructions on how to integrate ASUSWRT based routers into Home Assistant."
title: "Asuswrt Device Tracker"
description: "Instructions on how to integrate Asuswrt device tracker into Home Assistant."
date: 2015-08-06 19:00
sidebar: true
comments: false
@ -15,63 +15,8 @@ ha_release: pre 0.7
The `asuswrt` platform offers presence detection by looking at connected devices to a [ASUSWRT](http://event.asus.com/2013/nw/ASUSWRT/) based router.
<p class='note warning'>
This platform is **NOT** available for [Microsoft Windows installations](http://pexpect.readthedocs.io/en/stable/overview.html#pexpect-on-windows).
</p>
The platform will be automatically configured if Asuswrt component is configured.
### {% linkable_title Configuration %}
For more configuration information see the [Asuswrt component](/components/asuswrt/) documentation.
To use an ASUSWRT router in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: asuswrt
host: YOUR_ROUTER_IP
username: YOUR_ADMIN_USERNAME
```
{% configuration %}
host:
description: "The IP address of your router, eg. `192.168.1.1`."
required: true
type: string
username:
description: "The username of an user with administrative privileges, usually `admin`."
required: true
type: string
password:
description: "The password for your given admin account (use this if no SSH key is given)."
required: false
type: string
protocol:
description: "The protocol (`ssh` or `telnet`) to use."
required: false
type: string
default: ssh
port:
description: SSH port to use.
required: false
type: integer
default: 22
mode:
description: "The operating mode of the router (`router` or `ap`)."
required: false
type: string
default: router
ssh_key:
description: The path to your SSH private key file associated with your given admin account (instead of password).
required: false
type: string
require_ip:
description: If the router is in access point mode.
required: false
type: boolean
default: true
{% endconfiguration %}
<p class='note warning'>
You need to [enable telnet](https://www.asus.com/support/faq/1005449/) on your router if you choose to use `protocol: telnet`.
</p>
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -1,6 +1,6 @@
---
layout: page
title: "Geofency"
title: "Geofency Device Tracker"
description: "Instructions for how to use Geofency to track devices in Home Assistant."
date: 2017-08-22 19:00
sidebar: true
@ -10,37 +10,14 @@ footer: true
logo: geofency.png
ha_category: Presence Detection
ha_release: 0.53
ha_iot_class: "Cloud Push"
---
This platform allows you to detect presence using [Geofency](http://www.geofency.com/). Geofency is a [paid app](https://itunes.apple.com/app/id615538630) for iOS that lets users to configure a request that will be sent when a geofence or iBeacon region is entered or exited. This can be configured with Home Assistant to update your location.
This platform allows you to detect presence using [Geofency](http://www.geofency.com/).
To integrate Geofency in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: geofency
```
{% configuration %}
mobile_beacons:
description: List of beacon names that are to be treated as *mobile*. The name must match the name you configure in Geofency. By default, beacons will be treated as *stationary*.
required: false
type: list
{% endconfiguration %}
A full sample configuration for the `geofency` platform is shown below:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: geofency
mobile_beacons:
- car
- keys
```
To configure Geofency, you must configure (via the Webhook feature) to send a POST request to your Home Assistant server at `http://<ha_server>/api/geofency`. Use the default POST format, and make sure to include the API password if you have configured a password in Home Assistant (add `?api_password=<password>` to the end of the URL). Make sure to enable the 'Update Geo-Position' functionality for mobile beacons.
<p class='note'>
You must have the [Geofency component](/components/geofency/) configured to use this device tracker.
</p>
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`.

View File

@ -0,0 +1,41 @@
---
layout: page
title: "Google Home Bluetooth tracker"
description: "Instructions on how to use Google Home to track devices in Home Assistant."
date: 2018-11-04 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: google_home.png
ha_release: 0.83
ha_category: Presence Detection
ha_iot_class: "Local Polling"
---
The `googlehome` platform allows you to detect presence using an [unofficial Google Home API][googlehomeapi].
## {% linkable_title Configuration %}
To integrate Google Home Bluetooth tracker in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: googlehome
host: IP_ADDRESS
```
{% configuration %}
host:
description: The IP address of the Google Home unit.
required: true
type: string
rssi_threshold:
description: The threshold for the RSSI signal of the device.
required: false
default: -70
type: integer
{% endconfiguration %}
[googlehomeapi]: https://rithvikvibhu.github.io/GHLocalApi/

View File

@ -59,6 +59,9 @@ ssl:
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.
This device tracker provides a number of additional attributes for each tracked device (if it is at home): `flags`, `ip`, `device`, and `host`. The first three attributes are taken from the ARP table returned by the luci RPC. The `host` attribute is taken from the platform configuration and can be used to distinguish in which router a device is logged in, if you are using multiple OpenWRT routers.
<p class='note warning'>
Some installations have [a small bug](https://github.com/openwrt/luci/issues/576). The timeout for luci RPC calls is not set and this makes the call fail.
Some installations have [a small bug](https://github.com/openwrt/luci/issues/576). The timeout for luci RPC calls is not set and this makes the call fail.
If you want to locally fix your OpenWRT installation, you can apply the change manually to `/usr/lib/lua/luci/controller/rpc.lua`, or simply set a fixed timeout. The default is 3600.
</p>

View File

@ -30,7 +30,7 @@ Go to **IP** -> **Services** -> **API** and enable it.
Make sure that port 8728 or the port you choose is accessible from your network.
To use an Mikrotik router in your installation, add the following to your `configuration.yaml` file:
To use a Mikrotik router in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -57,8 +57,30 @@ password:
port:
description: Mikrotik API port.
required: false
default: 8728
default: 8728 (or 8729 if ssl is true)
type: integer
ssl:
description: Use api_ssl service instead of api.
required: false
default: false
type: boolean
method:
description: Override autodetection of device scanning method. Can be `wireless` to use local wireless registration, `capsman` for capsman wireless registration, or `ip` for DHCP leases.
required: false
type: string
{% endconfiguration %}
To use api_ssl service further configuration is required at RouterOS side. You have to upload or generate a certificate for api\-ssl service. Here is an example for a self signed certificate:
```bash
/certificate add common-name="Self signed demo certificate for API" days-valid=3650 name="Self signed demo certificate for API" key-usage=digital-signature,key-encipherment,tls-server,key-cert-sign,crl-sign
/certificate sign "Self signed demo certificate for API"
/ip service set api-ssl certificate="Self signed demo certificate for API"
/ip service enable api-ssl
```
If everything is working you can disable the pure api service:
```bash
/ip service disable api
```
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -1,52 +0,0 @@
---
layout: page
title: "OwnTracks (via HTTP)"
description: "Instructions on how to use Owntracks via HTTP to track devices in Home Assistant."
date: 2017-09-28 07:00
sidebar: true
comments: false
sharing: true
footer: true
logo: owntracks.png
ha_category: Presence Detection
featured: true
ha_release: 0.55
---
OwnTracks is a free and open source application that allows you to track your location in Home Assistant. This is a platform that supports OwnTracks via their HTTP publishing method.
To integrate Owntracks tracking via HTTP in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: owntracks_http
```
For configuration options and usage instructions, read the documentation for the [OwnTracks platform](/components/device_tracker.owntracks/).
## {% linkable_title Configuring OwnTracks to submit data via HTTP %}
Open OwnTracks and go to Connection preferences:
- Mode: Select **Private HTTP**
- Host: [Home Assistant URL]:[port]/api/owntracks/[your name]/[device name]
- Identification: Turn **Authentication** on, username `homeassistant` and password is your API password that you use to login to Home Assistant.
Host example: If I host my Home Assistant at `https://example.duckdns.org`, my name is Paulus and my phone is a Pixel I would set the host to be `https://example.duckdns.org/api/owntracks/paulus/pixel`. This will result in an entity with an ID of `device_tracker.paulus_pixel`. You can pick any name for the user and the device.
Since the battery data is available as an attribute of the device tracker entity, it can be tracked with a [`template` sensor](/components/sensor.template/).
{% raw %}
```yaml
# Example configuration.yaml entry
sensor:
- platform: template
sensors:
pixel_battery:
friendly_name: Pixel of Paulus
unit_of_measurement: "%"
value_template: '{{ states.device_tracker.paulus_pixel.attributes.battery|int }}'
device_class: battery
```
{% endraw %}

View File

@ -0,0 +1,63 @@
---
layout: page
title: "Traccar GPS tracker"
description: "Instructions how to use Traccar GPS tracker to track devices in Home Assistant."
date: 2018-11-04 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: traccar.png
ha_release: 0.83
ha_category: Presence Detection
ha_iot_class: "Local Polling"
---
`Traccar` uses GPS for tracking and has support for over 1500 different types of devices.
## {% linkable_title Configuration %}
To integrate Traccar GPS tracker in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: traccar
host: IP_ADDRESS
username: USERNAME
password: PASSWORD
```
{% configuration %}
host:
description: The DNS name or IP Address of the server running Traccar.
required: true
type: string
username:
description: The username for the Traccar server.
required: true
type: string
password:
description: The password for your given account on the Traccar server.
required: true
type: string
host:
description: The DNS name or IP Address of the server running Traccar.
required: true
type: string
port:
description: The port of your Traccar server.
required: false
default: 8082
type: integer
ssl:
description: Use HTTPS to connect to Traccar server. *NOTE* A host *cannot* be an IP address when this option is enabled.
required: false
default: false
type: boolean
verify_ssl:
description: Verify the certification of the system.
required: false
type: boolean
default: true
{% endconfiguration %}

View File

@ -48,7 +48,7 @@ devices:
required: true
type: string
username:
description: The username of a non-administrator user account on the device.
description: The username of a non-administrator user account on the device. This user needs the "API-Operator" permission enabled on doorbird.
required: true
type: string
password:

View File

@ -35,11 +35,6 @@ ffmpeg_bin:
required: false
default: ffmpeg
type: string
run_test:
description: Check if `input` is usable by ffmpeg.
required: false
default: True
type: boolean
{% endconfiguration %}
### {% linkable_title Raspbian Debian Jessie Lite Installations %}

View File

@ -0,0 +1,56 @@
---
layout: page
title: "Fibaro"
description: "Instructions on how to setup Fibaro Z-Wave hubs (HCL and HC2) and configure devices within Home Assistant."
date: 2018-11-14 20:04
sidebar: true
comments: false
sharing: true
footer: true
logo: fibaro.png
ha_category: Hub
ha_release: 0.83
ha_iot_class: "Local Push"
---
The [Fibaro](http://fibaro.com) hub is a controller mainly connecting to Z-Wave devices.
Switches, Lights (including Dimmers), Locks, Sensors, Binary sensors and Covers are supported - and will be automatically added when HA connects to your Fibaro controller.
## {% linkable_title Configuration %}
To use Fibaro devices in your installation, add the following to your configuration.yaml file using the IP and port number of your Fibaro controller:
```yaml
fibaro:
url: http://192.168.1.161/api/
username: your_username
password: your_password
```
{% configuration %}
url:
description: The URL for your Fibaro HomeCenter device.
required: true
type: url
username:
description: The username for your Fibaro account.
required: true
type: string
password:
description: The password for your Fibaro account.
required: true
type: string
plugins:
description: Whether to import plugin-generated devices from Fibaro HomeCenter, such as Netatmo and Sonos devices, etc. Default is false.
required: false
type: bool
{% endconfiguration %}
<p class='note'>
It is recommended to assign a static IP address to your Fibaro Controller. This ensures that it won't change IP addresses, so you won't have to change the 'url' if the controller reboots and comes up with a different IP address. See your router's manual for details on how to set this up. If you need the MAC address of your Fibaro, check the label on the bottom.
</p>
### {% linkable_title Using Z-Wave devices in automation %}
If you want to use a Z-Wave device from the Fibaro controller in Home Assistant automation, you'll need the entity id. In the Home Assistant UI you'll find all entities listed under the <img src='/images/screenshots/developer-tool-states-icon.png' alt='service developer tool icon' class="no-shadow" height="38" /> icon of the Developer Tools section. Look for entities that contain 'Fibaro Device Id' in their attributes, and you'll find the entity id on the left.

View File

@ -0,0 +1,44 @@
---
layout: page
title: "Geofency"
description: "Instructions for how to use Geofency to track devices in Home Assistant."
date: 2017-08-22 19:00
sidebar: true
comments: false
sharing: true
footer: true
logo: geofency.png
ha_category: Presence Detection
ha_release: 0.83
ha_iot_class: "Cloud Push"
---
This component sets up integration with [Geofency](http://www.geofency.com/). Geofency is a [paid app](https://itunes.apple.com/app/id615538630) for iOS that lets users to configure a request that will be sent when a geofence or iBeacon region is entered or exited. This can be configured with Home Assistant to update your location.
Enabling this component will automatically enable the [Geofency Device Tracker](/components/device_tracker.geofency/).
To integrate Geofency in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
geofency:
```
{% configuration %}
mobile_beacons:
description: List of beacon names that are to be treated as *mobile*. The name must match the name you configure in Geofency. By default, beacons will be treated as *stationary*.
required: false
type: list
{% endconfiguration %}
A full sample configuration for the `geofency` component is shown below:
```yaml
# Example configuration.yaml entry
geofency:
mobile_beacons:
- car
- keys
```
To configure Geofency, you must configure (via the Webhook feature) to send a POST request to your Home Assistant server at `http://<ha_server>/api/geofency`. Use the default POST format, and make sure to include the API password if you have configured a password in Home Assistant (add `?api_password=<password>` to the end of the URL). Make sure to enable the 'Update Geo-Position' functionality for mobile beacons.

View File

@ -126,12 +126,17 @@ project_id:
description: Project ID from the Actions on Google console (looks like `words-2ab12`)
required: true
type: string
allow_unlock:
description: "When True, allows Google Assistant to unlock locks."
required: false
type: boolean
default: False
api_key:
description: Your Homegraph API key (for the `google_assistant.request_sync` service)
required: false
type: string
expose_by_default:
description: "Expose devices in all supported domains by default. If set to false, you need to add the expose configuration option to each entity in `entity_config` and set it to true. Setting `exposed_domains` values will _not_ expose those domains if `expose_by_default` is false."
description: "Expose devices in all supported domains by default. If set to false, you need to either expose domains or add the expose configuration option to each entity in `entity_config` and set it to true."
required: false
default: True
type: boolean
@ -176,8 +181,9 @@ Currently, the following domains are available to be used with Google Assistant,
- scene (on)
- script (on)
- switch (on/off)
- fan (on/off)
- fan (on/off/speed)
- light (on/off/brightness/rgb color/color temp)
- lock (lock/unlock (to allow assistant to unlock, set the `allow_unlock` key in configuration))
- cover (on/off/set position (via set brightness))
- media_player (on/off/set volume (via set brightness))
- climate (temperature setting)

View File

@ -105,6 +105,7 @@ The intent `HangoutsHelp` is part of the component and return a list of all sent
## {% linkable_title Adding sentences %}
{% raw %}
```yaml
# The Hangouts component
hangouts:
@ -123,11 +124,12 @@ hangouts:
intent_script:
Ping:
speech:
text: I know {% raw %}{{ states.hangouts.conversations.state }}{% endraw %} conversations
text: I know {{ states.hangouts.conversations.state }} conversations
```
{% endraw %}
This configuration will:
- Toggle the light in the given location in a specific conversation.
- Return the conversations the bot know.
@ -144,6 +146,7 @@ The following configuration can handle the following sentences:
- Change the lights to the color green
- Change the lights to the color blue
{% raw %}
```yaml
# Example configuration.yaml entry
hangouts:
@ -151,7 +154,7 @@ hangouts:
ColorLight:
sentences:
- Change the lights to [the color] {color}
{% raw %}
intent_script:
ColorLight:
speech:
@ -163,8 +166,8 @@ intent_script:
- "{% if color == 'red' %}255{% else %}0{% endif %}"
- "{% if color == 'green' %}255{% else %}0{% endif %}"
- "{% if color == 'blue' %}255{% else %}0{% endif %}"
{% endraw %}
```
{% endraw %}
## {% linkable_title Services %}
@ -186,3 +189,41 @@ Sends a message to the given conversations.
| message | List of message segments, only the "text" field is required in every segment. [Required] | [{"text":"test", "is_bold": false, "is_italic": false, "is_strikethrough": false, "is_underline": false, "parse_str": false, "link_target": "http://google.com"}, ...] |
| data | Extra options | {"image_file": "path"} / {"image_url": "url"} |
### {% linkable_title Service `hangouts.reconnect` %}
Reconnects the hangouts bot.
| Service data attribute | Optional | Description |
|------------------------|----------|--------------------------------------------------|
| | | |
## {% linkable_title Advanced %}
### {% linkable_title Automatic reconnect after ip change %}
The hangouts component can't detect if your ip address changes, so it can't automatic reconnect to the Google servers. This is a workaround for this problem.
{% raw %}
```yaml
sensor:
- platform: rest
resource: https://api.ipify.org?format=json
name: External IP
value_template: '{{ value_json.ip }}'
scan_interval: 10
automation:
- alias: Reconnect Hangouts
trigger:
- entity_id: sensor.external_ip
platform: state
condition:
- condition: template
value_template: '{{ trigger.from_state.state != trigger.to_state.state }}'
- condition: template
value_template: '{{ not is_state("sensor.external_ip", "unavailable") }}'
action:
- service: hangouts.reconnect
```
{% endraw %}

View File

@ -73,6 +73,11 @@ homekit:
description: The local network IP address. Only necessary if the default from Home Assistant does not work.
required: false
type: string
safe_mode:
description: Only set this parameter if you encounter issues during pairing. ([Safe Mode](#safe-mode))
required: false
type: boolean
default: false
filter:
description: Filters for entities to be included/excluded from HomeKit. ([Configure Filter](#configure-filter))
required: false
@ -256,6 +261,23 @@ Filters are applied as follows:
- if entity is included, pass (as #2 above)
- if entity include and exclude, the entity exclude is ignored
## {% linkable_title Safe Mode %}
The `safe_mode` option should only be used (and only works) if you encounter issues during the pairing. ([Paring hangs - zeroconf error](#pairing-hangs---zeroconf-error)).
To use `safe_mode`, add the option to your `homekit` config:
```yaml
homekit:
safe_mode: True
```
Restart your Home Assistant instance. If you don't see a `pincode`, follow the [guide](#deleting-the-homekitstate-file) here. Now you should be able to pair normally.
<p class="note warning">
To avoid any errors, after you have successfully paired your Home Assistant Bridge, remove the `safe_mode` option from your config and restart Home Assistant.
</p>
## {% linkable_title Supported Components %}
The following components are currently supported:
@ -263,7 +285,7 @@ The following components are currently supported:
| Component | Type Name | Description |
| --------- | --------- | ----------- |
| alarm_control_panel | SecuritySystem | All security systems. |
| automation / input_boolean / remote / script | Switch | All represented as switches. |
| automation / input_boolean / remote / scene / script | Switch | All represented as switches. |
| binary_sensor | Sensor | Support for `co2`, `door`, `garage_door`, `gas`, `moisture`, `motion`, `occupancy`, `opening`, `smoke` and `window` device classes. Defaults to the `occupancy` device class for everything else. |
| climate | Thermostat | All climate devices. |
| cover | GarageDoorOpener | All covers that support `open` and `close` and have `garage` as their `device_class`. |
@ -339,7 +361,7 @@ Configure the network mode as `networkbridge`. Otherwise the Home Assistant Brid
#### {% linkable_title Pairing hangs - zeroconf error %}
Paining eventually fails, you might see and an error message `NonUniqueNameException`. To resolve this, you need to replace a specific file. See the following git issues for more details: [home-assistant#14567](https://github.com/home-assistant/home-assistant/issues/14567) and [home-assistant#17181](https://github.com/home-assistant/home-assistant/issues/17181)
Pairing eventually fails, you might see and an error message `NonUniqueNameException`. Add the `safe_mode` option to your config, see [safe_mode](#safe-mode).
#### {% linkable_title Pairing hangs - only works with debug config %}

View File

@ -137,11 +137,6 @@ component_config_glob:
required: false
{% endconfiguration %}
## {% linkable_title Helper scripts %}
- [Helper script `influxdb_import`](/docs/tools/influxdb_import/)
- [Helper script `db_migrator`](/docs/tools/db_migrator/) (only used for [Home Assistant 0.36](/blog/2017/01/14/iss-usps-images-packages/#influxdb-export))
## {% linkable_title Examples %}
### {% linkable_title Full configuration %}

View File

@ -37,6 +37,8 @@ light:
- platform: avion
```
There are two ways to configure this component: username & password, or list of devices. You must choose one.
{% configuration %}
username:
description: The username used in the Avion app. If username and password are both provided, all associated switches will automatically be added to your configuration.
@ -59,6 +61,10 @@ devices:
description: The API Key.
required: true
type: string
id:
description: The ID of the dimmer switch. Only needed for independent control of multiple devices.
required: true
type: string
{% endconfiguration %}
## {% linkable_title Full example %}
@ -73,7 +79,21 @@ light:
00:21:4D:00:00:01:
name: Light 1
api_key: YOUR_API_KEY
00:21:3D:20:00:a1:
name: Light 2
api_key: YOUR_API_KEY
```
For independent control of multiple devices, you must specify each device's ID (integer starting with 1). Each switch's ID can be guessed or detected from the Avi-On API.
```yaml
# Manual device configuration.yaml entry
light:
- platform: avion
devices:
00:21:4D:00:00:01:
name: Light 1
api_key: YOUR_API_KEY
id: 1
00:21:4D:00:00:02:
name: Light 1
api_key: YOUR_API_KEY
id: 2
```

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Fibaro Lights"
description: "Instructions on how to integrate Fibaro lights into Home Assistant."
date: 2018-11-14 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: fibaro.png
ha_category: Light
ha_iot_class: "Local Push"
ha_release: 0.83
---
The `fibaro` platform allows you to get data from your [Fibaro](http://fibaro.com/) lights connected to your Fibaro HCL or HC2 from within Home Assistant.
They will be automatically discovered if the `fibaro` component is loaded.

View File

@ -0,0 +1,33 @@
---
layout: page
title: "Niko Home Control Light"
description: "Instructions on how to integrate Niko Home Control lights into Home Assistant."
date: 2018-04-08 08:00
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Light
ha_iot_class: "Local Polling"
ha_release: 0.82
---
The `niko_home_control` platform allows you to integrate your [Niko Home Control](https://www.niko.eu/enus/products/niko-home-control) into Home Assistant.
## {% linkable_title Configuration %}
To enable this lights, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
light:
- platform: niko_home_control
host: IP_ADDRESS
```
{% configuration %}
host:
description: The IP address of the Niko Home light.
required: false
type: string
{% endconfiguration %}

View File

@ -0,0 +1,46 @@
---
layout: page
title: "Light Switch"
description: "Instructions on how to set up a light switch within Home Assistant."
date: 2018-11-18 19:59
sidebar: true
comments: false
sharing: true
footer: true
ha_category: Light
ha_release: 0.83
ha_iot_class: "Local Push"
logo: home-assistant.png
ha_qa_scale: internal
---
The light switch platform lets you control an existing switch, allowing you
to use a switch like a light in Home Assistant.
In Home Assistant's world, a wall plug is a switch. This platform allows you
to expose this switch as a light source, allowing you to add, e.g., the wall
plug controlling your Christmas Tree, to be part of a light group.
To enable this platform in your installation, add the following to your
`configuration.yaml` file:
```yaml
light:
- platform: switch
name: Christmas Tree Lights
entity_id: switch.christmas_tree_lights
```
{% configuration %}
name:
description: The name of the light switch.
required: false
type: string
default: Light Switch
entity_id:
description: "The `entity_id` of a switch entity to control as a light source."
required: true
type: string
{% endconfiguration %}
A light switch only supports turning on/off a light.

View File

@ -13,11 +13,13 @@ ha_iot_class: "Local Polling"
ha_release: 0.53
---
The `xiaomi_miio` platform allows you to control the state of your Xiaomi Philips LED Ball Lamp, Xiaomi Philips Zhirui LED Bulb E14 Candle Lamp, Xiaomi Philips LED Ceiling Lamp, Xiaomi Philips Eyecare Lamp 2 and Philips Zhirui Desk Lamp.
The `xiaomi_miio` platform allows you to control the state of your Xiaomi Philips LED Ball Lamp, Xiaomi Philips Zhirui LED Bulb E14 Candle Lamp, Xiaomi Philips Zhirui Downlight, Xiaomi Philips LED Ceiling Lamp, Xiaomi Philips Eyecare Lamp 2 and Philips Zhirui Desk Lamp.
## Features
### Philips LED Ball Lamp and Philips Zhirui LED Candle Lamp
### Philips LED Ball Lamp, Philips Zhirui LED Candle Lamp and Philips Zhirui Downlight
Supported models: `philips.light.bulb`, `philips.light.candle`, `philips.light.candle2`, `philips.light.downlight`
* Power (on, off)
* Brightness
@ -31,6 +33,8 @@ The `xiaomi_miio` platform allows you to control the state of your Xiaomi Philip
### Philips LED Ceiling Lamp
Supported models: `philips.light.ceiling`, `philips.light.zyceiling`
* Power (on, off)
* Brightness
* Color temperature (175...370 mireds)
@ -46,6 +50,8 @@ The `xiaomi_miio` platform allows you to control the state of your Xiaomi Philip
### Philips Eyecare Smart Lamp 2
Supported models: `philips.light.sread1`
* Eyecare light (on, off)
* Ambient light (on, off)
* Brightness (of each light)
@ -55,7 +61,7 @@ The `xiaomi_miio` platform allows you to control the state of your Xiaomi Philip
* Eye fatigue reminder / notification (on, off)
* Eyecare mode (on, off)
* Attributes
- model (Warning: set this value to philips.light.sread1)
- model
- scene
- delayed_turn_off
- night_light_mode
@ -64,6 +70,8 @@ The `xiaomi_miio` platform allows you to control the state of your Xiaomi Philip
### Philips Zhirui Desk Lamp
Supported models: `philips.light.mono1`
* Power (on, off)
* Brightness
* Scene (1, 2, 3, 4)
@ -102,7 +110,7 @@ name:
type: string
default: Xiaomi Philips Light
model:
description: The model of your miio light. Valid values are `philips.light.bulb`, `philips.light.candle`, `philips.light.candle2`, `philips.light.sread1`, `philips.light.ceiling`, `philips.light.zyceiling` and `philips.light.mono1`. This setting can be used to bypass the device model detection and is recommended if your device isn't always available.
description: The model of your light. Valid values are `philips.light.sread1`, `philips.light.ceiling`, `philips.light.zyceiling`, `philips.light.bulb`, `philips.light.candle`, `philips.light.candle2`, `philips.light.mono1` and `philips.light.downlight`. This setting can be used to bypass the device model detection and is recommended if your device isn't always available.
required: false
type: string
{% endconfiguration %}

View File

@ -0,0 +1,108 @@
---
layout: page
title: "Luftdaten"
description: "Instructions on how to setup Luftdaten sensors in Home Assistant."
date: 2018-11-05 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: luftdaten.png
ha_category: Health
ha_release: 0.82
ha_iot_class: "Cloud Polling"
ha_qa_scale: gold
---
The `luftdaten` component 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.
## {% linkable_title Setup %}
- 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/).
## {% linkable_title COnfiguration via the frontend %}
Menu: **Configuration** -> **Integrations**
Configure the integration:
* Enter the **Sensor ID**
* Choose if you want to show the sensor's location on the map.
## {% linkable_title Manual Configuration %}
To enable this sensor, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
luftdaten:
```
{% configuration %}
sensor_id:
description: The ID of the sensor.
required: true
type: string
name:
description: Name of the sensor to use in the frontend.
required: false
default: Luftdaten Sensor
type: string
show_on_map:
description: Option to show the position of the sensor on the map.
required: optional
default: false
type: boolean
scan_interval:
description: the frequency (in seconds) between data updates.
required: false
type: integer
default: 1800
sensors:
description: The sensor-related configuration options.
required: false
type: map
keys:
monitored_conditions:
description: A list of conditions you want to monitor.
required: true
type: list
keys:
P1:
description: Show the particle sensors (particles 10 microns and below).
P2:
description: Show the particle sensors (particles 2.5 microns and below).
temperature:
description: Display the temperature from the sensor.
humidity:
description: Display the humidity from the sensor.
pressure:
description: Display the pressure from the sensor.
{% endconfiguration %}
<p class='note warning'>
If you set `show_on_map` to `true` then the location attributes are named `latitude` and `longitude`. The default name of the location attributes is `lat` and `long` to avoid showing them on the map.
</p>
Not all sensors provide all conditions. Also, it's possible that the sensor values are not available all the time. To check what a sensor is publishing use `curl`:
```bash
$ curl https://api.luftdaten.info/v1/sensor/[sensorid]/
```
## {% linkable_title Full example %}
This example would use the sensor with the ID 155, show it on the `map` and would monitor `temperature` and `humidity`.
```yaml
# Example configuration.yaml entry
luftdaten:
sensor_id: 155
show_on_map: true
sensors:
monitored_conditions:
- temperature
- humidity
```

View File

@ -0,0 +1,51 @@
---
layout: page
title: "Lupus Electronics Home Security"
description: "Instructions on integrating Lupusec home security with Home Assistant."
date: 2018-10-03 16:00
sidebar: true
comments: false
sharing: true
footer: true
logo: lupusec.jpg
ha_category: Hub
ha_release: 0.83
ha_iot_class: "Local Polling"
---
The `Lupusec` component allows the user to integrate their Lupusec alarm control panel and ultimately all connected sensors and other devices. For more information about the LUPUS-Electronics security system please visit their [website](https://www.lupus-electronics.de).
The following devices are supported by the underlying `lupupy` python library and integrated into hass.
- [Alarm Control Panel](/components/alarm_control_panel.lupusec/): Displays the alarm status and controls arming, disarming and home modus.
- [Binary Sensor](/components/binary_sensor.lupusec/): Displays the status of binary sensors. Currently only Door and window sensors are supported.
- [Switch](/components/switch.lupusec/): Turn off and on your Lupus power switches.
To use Lupusec devices in your installation, add the following `lupusec` section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
lupusec:
username: YOUR_USERNAME
password: YOUR_PASSWORD
ip_address: 192.168.178.35
```
{% configuration %}
username:
description: The login username of your Lupusec alarm panel.
required: true
type: string
password:
description: The login password of your Lupusec alarm panel.
required: true
type: string
ip_address:
description: The IP-address of your Lupusec alarm panel.
required: true
type: string
name:
description: Name for your Lupusec panel.
required: false
type: string
{% endconfiguration %}

View File

@ -87,3 +87,17 @@ media_player:
```
It is important to notice that the host and port variables for slave/Genie receivers are the same as the master receiver.
## {% linkable_title Services %}
### {% linkable_title Media control services %}
Available services: turn_on, turn_off, media_play, media_pause, media_stop, media_next_track, media_previous_track, play_media
#### {% linkable_title Service `media_player.play_media` %}
| Service data attribute | Optional | Description |
| -----------------------| -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `entity_id` | yes | Target a specific media player. Defaults to all. |
| `media_content_id` | no | The channel number to change to. |
| `media_content_type` | no | A media type. Has to be `channel`.

View File

@ -14,9 +14,7 @@ ha_iot_class: "Local Polling"
---
The `firetv` platform allows you to control a [Amazon Fire TV/stick](https://www.amazon.com/b/?node=8521791011).
The python-firetv Python 2.x module with its helper script that exposes an HTTP server to fetch state and perform actions is used.
The `firetv` platform allows you to control an [Amazon Fire TV/stick](https://www.amazon.com/b/?node=8521791011).
Steps to configure your Amazon Fire TV stick with Home Assistant:
@ -27,59 +25,85 @@ Steps to configure your Amazon Fire TV stick with Home Assistant:
- Find Amazon Fire TV device IP:
- From the main (Launcher) screen, select Settings.
- Select System > About > Network.
- The following commands must be run in a Python 2.x environment. They will allow the component to function in an Ubuntu 16.04/Hassbian environment.
- `apt-get install swig libssl-dev python-dev libusb-1.0-0 python-yaml`
- `pip install flask`
- `pip install https://pypi.python.org/packages/source/M/M2Crypto/M2Crypto-0.24.0.tar.gz`
- `pip install firetv[firetv-server]`
- `firetv-server -d <fire tv device IP>:5555`, background the process
- Navigate to http://localhost:5556/devices/list
- You will get an output similar to below:
```json
{
"devices": {
"default": {
"host": "192.168.1.153:5555",
"state": "play"
}
}
}
```
- The `"default"` above is the device name you will need to use for your `configuration.yaml`
- Configure Home Assistant as follows:
To add FireTV to your installation, Note your device name, and add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
media_player:
# a device that does not require ADB authentication
- platform: firetv
name: Fire TV 1
host: 192.168.0.111
# a device that does require ADB authentication
- platform: firetv
name: Fire TV 2
host: 192.168.0.222
adbkey: "/config/android/adbkey"
# a device for which getting the current app (source) and the running apps (sources) cause issues
- platform: firetv
name: Fire TV 3
host: 192.168.0.123
get_source: false
get_sources: false
```
{% configuration %}
host:
description: "The host where `firetv-server` is running."
required: false
description: The IP address for your Fire TV device.
required: true
type: string
default: localhost
port:
description: "The port where `firetv-server` is running."
required: false
type: integer
default: 5556
device:
description: The device ID.
required: false
type: string
default: default
name:
description: The friendly name of the device.
required: false
type: string
default: Amazon Fire TV
type: string
port:
description: The port for your Fire TV device.
required: false
default: 5555
type: integer
adbkey:
description: The path to your `adbkey` file. Note that the file `adbkey.pub` must be in the same directory.
required: false
type: string
get_source:
description: Whether or not to retrieve the current app as the source.
required: false
default: true
type: boolean
get_sources:
description: Whether or not to retrieve the running apps as the list of sources.
required: false
default: true
type: boolean
{% endconfiguration %}
### {% linkable_title ADB Authentication (for Fire TV devices with recent software) %}
If you get a "Device authentication required, no keys available" error when trying to set up Fire TV, then you'll need to create an adbkey and add its path to your configuration. Follow the instructions on this page to connect to your Fire TV from your computer: [Connecting to Fire TV Through adb](https://developer.amazon.com/zh/docs/fire-tv/connecting-adb-to-device.html).
<p class='note warning'>
Note that python-firetv has support for multiple Amazon Fire TV devices. If you have more than one configured, be sure to specify the device ID in `device`. Run `firetv-server -h` and/or view the source for complete capabilities.
In the dialog appearing on your Fire TV, you must check the box that says "always allow connections from this device." ADB authentication in Home Assistant will only work using a trusted key.
</p>
Once you've successfully connected to your Fire TV via the command `adb connect <ipaddress>`, the files `adbkey` and `adbkey.pub` will be created on your computer. The default locations for these files are (from [https://developer.android.com/studio/command-line/adb](https://developer.android.com/studio/command-line/adb)):
* Linux and Mac: `$HOME/.android.`
* Windows: `%USERPOFILE%\.android.`
Copy the `adbkey` and `adbkey.pub` files to your Home Assistant folder and add the path to the `adbkey` file to your configuration.
#### ADB Troubleshooting
If you receive the error message `Issue: Error while setting up platform firetv` in your log when trying to set up a Fire TV device with an ADB key, then there is probably an issue with your ADB key. Here are some possible causes.
1. ADB is not enabled on your Fire TV. To remedy this, enable ADB by following the instructions above.
2. Your key is not pre-authenticated. Before using the `adbkey` in Home Assistant, you _**must**_ connect to your Fire TV device using the ADB binary and tell the Fire TV to always allow connections from this computer. For more information, see the section "ADB Authentication (for Fire TV devices with recent software)" above.
3. Home Assistant does not have the appropriate permissions for the `adbkey` file and so it is not able to use it. Once you fix the permissions, the component should work.
4. You are already connected to the Fire TV via ADB from another device. Only one device can be connected, so disconnect the other device, restart the Fire TV (for good measure), and then restart Home Assistant.

View File

@ -0,0 +1,51 @@
---
layout: page
title: "Panasonic Blu-Ray Player"
description: "Instructions on how to integrate a Panasonic Blu-Ray player into Home Assistant."
date: 2018-11-13 20:48
sidebar: true
comments: false
sharing: true
footer: true
logo: panasonic.png
ha_category: Media Player
ha_iot_class: "Local Polling"
ha_release: 0.83
---
The `panasonic_bluray` platform allows you to control a Panasonic Blu-Ray player. Note that the device must be on the same subnet as Home Assistant; connections from a different subnet will return an error.
Currently known supported models:
- DMP-BDT120
- DMP-BDT220
- DMP-BDT221
- DMP-BDT320
- DMP-BDT500
- DMP-BBT01
If your model is not on the list, then give it a try, if everything works correctly then add it to the list on [GitHub](https://github.com/home-assistant/home-assistant.github.io/blob/current/source/_components/media_player.panasonic_bluray.markdown).
Example configuration:
```yaml
media_player:
- platform: panasonic_bluray
host: 192.168.0.10
```
{% configuration %}
host:
description: The IP of the Panasonic Blu-Ray device, e.g., `192.168.0.10`.
required: true
type: string
name:
description: The name you would like to give to the Panasonic Blu-Ray device.
required: false
default: Panasonic Blu-Ray
type: string
{% endconfiguration %}
### {% linkable_title Supported operations %}
- These devices support play, pause, stop and power on/off operations. They will also report the current status, title duration and current playing position.

View File

@ -175,3 +175,4 @@ Plays a song, playlist, TV episode, or video on a connected client.
```
If this occurs, check the setting `Server`>`Network`>`Secure connections` in your Plex Media Server: if it is set to `Preferred` or `Required`, you may need to manually set the `ssl` and `verify` booleans in the `plex.conf` file to, respectively, `true` and `false`. See the **"Setup"** section above for details.
* Movies must be located under 'Movies' section in the Plex library to properly get 'playing' state.

View File

@ -70,53 +70,110 @@ structure:
type: list
{% endconfiguration %}
### {% linkable_title Services %}
### {% linkable_title Service `set_away_mode` %}
Currently there is a single `nest.set_mode` service available to switch between
"away" and "home" modes. This service requires a `home_mode` param and has an
optional `structure` param. While setting "away" mode, an estimated arrival time
can also be set with `eta`, `eta_window`, and `trip_id` parameters.
You can use the service `nest/set_away_mode` to set the structure(s) to "Home" or "Away".
- **home_mode** (*Required*): `home` or `away`
- **structure** (*Optional*): Structure(s). Default apply to all structures connected with Home Assistant.
- **eta** (*Optional*): Estimated Time of Arrival from now.
- **eta_window** (*Optional*): ETA window (default is 1 minute).
- **trip_id** (*Optional*): Unique ID for the trip. Using an existing trip ID will update that trip's ETA.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `away_mode` | no | String, must be `away` or `home`.
| `structure` | yes | String, will default to all configured Nest structures if not specified.
Examples:
```yaml
# Example script to set away, no structure specified so will execute for all
set_nest_away:
sequence:
- service: nest.set_mode
data:
home_mode: away
script:
nest_set_away:
sequence:
- service: nest.set_away_mode
data:
away_mode: away
```
```yaml
# Example script to set home, structure specified
set_nest_home:
sequence:
- service: nest.set_mode
data:
home_mode: home
structure:
- Building
script:
nest_set_home:
sequence:
- service: nest.set_away_mode
data:
away_mode: home
structure:
- Apartment
```
### {% linkable_title Service `set_eta` %}
You can use the service `nest/set_eta` to set or update the estimated time of arrival window. Calling this service will automatically set the structure(s) to "Away". Structures must have an associated Nest thermostat in order to use ETA function.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `eta` | no | Time period, estimated time of arrival from now.
| `eta_window` | yes | Time period, estimated time of arrival window. Default is 1 minute.
| `trip_id` | yes | String, unique ID for the trip. Default is auto-generated using a timestamp. Using an existing `trip_id` will update that trip's ETA.
| `structure` | yes | String, will default to all configured Nest structures if not specified.
Examples:
```yaml
# Example script to set ETA, no structure specified so will execute for all
script:
nest_set_eta:
sequence:
- service: nest.set_eta
data:
eta: 00:10:30
trip_id: Leave Work
```
```yaml
# Example script to set eta, structure specified
set_nest_eta:
sequence:
- service: nest.set_mode
data:
home_mode: away
structure:
- Building
eta: 00:10:30
eta_window: 00:05
# Example script to update ETA and specify window, structure specified
script:
nest_update_eta:
sequence:
- service: nest.set_eta
data:
eta: 00:11:00
eta_window: 00:05
trip_id: Leave Work
structure:
- Apartment
```
{% linkable_title Troubleshooting %}
### {% linkable_title Service `cancel_eta` %}
You can use the service `nest/cancel_eta` to cancel an existing estimated time of arrival window. Structures must have an associated Nest thermostat in order to use ETA function.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `trip_id` | no | String, unique ID for the trip. Using an existing `trip_id` will update that trip's ETA.
| `structure` | yes | String, will default to all configured Nest structures if not specified.
Examples:
```yaml
# Example script to cancel ETA, no structure specified so will execute for all
script:
nest_cancel_eta:
sequence:
- service: nest.cancel_eta
data:
trip_id: Leave Work
```
```yaml
# Example script to cancel ETA, structure specified
script:
nest_cancel_eta:
sequence:
- service: nest.cancel_eta
data:
trip_id: Leave Work
structure:
- Apartment
```
### {% linkable_title Troubleshooting %}
- If you're getting [rickrolled](https://www.youtube.com/watch?v=dQw4w9WgXcQ) instead of being able to see your Nest cameras, you may not have set up your developer account's permissions correctly. Go back through and make sure you've selected read/write under every category that it's an option.

View File

@ -0,0 +1,18 @@
---
layout: page
title: "TP-Link LTE Notify"
description: "Instructions on how to add TP-Link LTE notifications to Home Assistant."
date: 2018-10-03 21:30
sidebar: true
comments: false
sharing: true
footer: true
logo: tp-link.png
ha_category: Notifications
ha_release: "0.83"
ha_iot_class: "Local Polling"
---
The `tplink_lte` platform allows you to use a TP-Link LTE router for notifications from Home Assistant. The message will be sent as an SMS text message.
See the [TP-Link LTE component](/components/tplink_lte/) for configuration and setup instructions.

View File

@ -22,7 +22,7 @@ To enable Jabber notifications in your installation, add the following to your `
```yaml
# Example configuration.yaml entry
notify:
- name: NOTIFIER_NAME
- name: NOTIFIER_NAME # e.g. jabber
platform: xmpp
sender: YOUR_JID
password: YOUR_JABBER_ACCOUNT_PASSWORD
@ -34,7 +34,7 @@ name:
description: "Setting the optional parameter `name` allows multiple notifiers to be created. The default value is `notify`. The notifier will bind to the service `notify.NOTIFIER_NAME`."
required: false
type: string
default: Random Sensor
default: notify
sender:
description: "The Jabber ID (JID) that will act as origin of the messages. Add your JID including the domain, e.g. your_name@jabber.org."
required: true
@ -61,7 +61,7 @@ verify:
type: boolean
default: true
room:
description: Room's name (e.g., example@conference.jabber.org). If set, send a message to chatroom instead of the recipient.
description: "Room's name (e.g., example@conference.jabber.org). If set, send a message to chatroom instead of the recipient."
required: false
type: string
{% endconfiguration %}
@ -74,4 +74,120 @@ room:
All Jabber IDs (JID) must include the domain. Make sure that the password matches the account provided as sender.
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
You can send text messages and images as well as other files through Jabber.
### {% linkable_title Jabber Text Message %}
Here are some examples on how to set up a script, that can be run from an automation.
Number 1 shows a classical, text-only message. The Title is optional, although if omitted,
`Home-Assistant` will be set. To keep it empty set it to `""`.
```yaml
# Example script.yaml entry
1_send_jabber_message:
alias: "Text only Jabber message"
sequence:
- service: notify.jabber # from notify.NOTIFIER_NAME
data:
title: "Optional Title"
message: "My funny or witty message"
```
### {% linkable_title Jabber Image Message %}
You can send images or files from locally stored files or remote web locations via Jabber's HTTP Upload feature.
To send files and images, your jabber server must support [XEP_0363](https://xmpp.org/extensions/xep-0363.html).
<p class='note'>
Be aware that images are uploaded onto the Jabber server of your provider. They reside there un-encrypted and could be accessed by the server admins. Usually images are deleted after a few days.
<br/>
Home-Assistant supports TLS encryption to ensure transport encryption. TLS is enforced by default. You can disable it with the [`tls`](#tls) flag -- which is not recommended.
</p>
Number 2 sends only an image, retrieved from the URL. The TLS connection to get the image is also not verified (use with caution).
```yaml
# Example script.yaml entry
2_send_jabber_message_with_image_url:
alias: "Send Image via Jabber from website"
sequence:
- service: notify.jabber
data:
title: ""
message: ""
data:
url: "https://www.graz.at:8443/webcam_neu/getimg.php"
verify: false
```
Number 3 sends an image from a local path.
```yaml
# Example script.yaml entry
3_send_jabber_message_with_local_image_path:
alias: "Send Image via Jabber from local file"
sequence:
- service: notify.jabber
data:
title: ""
message: ""
data:
path: "/home/homeassistant/super_view.jpg"
```
### {% linkable_title Jabber File Message %}
Number 4 sends a text-file, retrieved from Github, renamed to `Hass_Cheatsheet.txt` to be viewable on a mobile Android device, as most don't offer any application to view `.md` files. Optionally you can add a timeout for the HTTP upload in seconds.
```yaml
# Example script.yaml entry
4_send_jabber_message_with_file:
alias: "Send text file via Jabber"
sequence:
- service: notify.jabber
data:
title: ""
message: ""
data:
url: "https://raw.githubusercontent.com/arsaboo/homeassistant-config/master/HASS%20Cheatsheet.md"
path: "Hass_Cheatsheet.txt"
timeout: 10
```
### {% linkable_title Templating %}
Number 5 sends an image retrieved from a URL, and an additional text message with `title` and `message`.
```yaml
# Example script.yaml entry
5_send_jabber_message_with_image_and_text:
alias: "Send Image and Text via Jabber"
sequence:
- service: notify.jabber
data:
title: "The Time is now"
message: "{% raw %} {{ {% endraw %}now(){% raw %} }} {% endraw %}, templating works as well..."
data:
url: "https://github.com/home-assistant/home-assistant.io/raw/next/source/images/favicon-192x192.png"
```
Number 6 sends an image from a templated URL.
```yaml
# Example script.yaml entry
6_send_jabber_message_with_image_from_url_template:
alias: "Send Image from template URL via Jabber"
sequence:
- service: notify.jabber
data:
title: ""
message: ""
data:
url_template: "https://www.foto-webcam.eu/webcam/dornbirn/{% raw %}{{ now().year }}/{{ '%02d' % now().month }}/{{ '%02d' % now().day }}/{{ '%02d' % now().hour }}{{ (now().minute + 58) % 60 // 10}}{% endraw %}0_hd.jpg"
```
The possible source of a file is prioritized and only one will be picked up. `url_template` has the hightest priority; next is `url` then `path_template` and finally if none of them are defined `path` would be used. `path` will be used to eliminate file extension guessing for unknown URL downloads. Only the file extension will be left, as Home Assistant changes the filename to a random string for added privacy.
To find out more about notifications, please see the [getting started with automation page](/getting-started/automation/).

View File

@ -11,18 +11,45 @@ logo: owntracks.png
ha_category: Presence Detection
featured: false
ha_release: 0.7.4
redirect_from:
- components/device_tracker.owntracks
- components/device_tracker.owntracks_http
---
This platform allows you to detect presence using [Owntracks](http://owntracks.org/). OwnTracks allows users to track their location on iOS and Android phones and publish it to an MQTT broker. This platform will connect to the broker and monitor for new locations.
OwnTracks is a free and open source application for iOS and Android that allow you to track your location and send it directly to Home Assistant. It can be set up via the integrations panel in the configuration screen.
This component requires [the MQTT component](/components/mqtt/) to be set up and works very well together with [the zone component](/components/zone/).
By default the integration will listen for incoming messages from OwnTracks via HTTP. It will also listen for MQTT messages if Home Assistant is configured to use MQTT.
To integrate Owntracks in Home Assistant, add the following section to your `configuration.yaml` file:
### {% linkable_title Configuring the app - Android %}
[Install the OwnTracks application for Android.](https://play.google.com/store/apps/details?id=org.owntracks.android)
In the OwnTracks app, open sidebar and click on preferences, then on connection. Change the following settings:
- Mode: Private HTTP
- Host: `<url given to you when setting up the integration>`
- Identification:
- Username: `<Your name>`
- Device ID: `<Your device name>`
### {% linkable_title Configuring the app - iOS %}
[Install the OwnTracks application for iOS.](https://itunes.apple.com/us/app/owntracks/id692424691?mt=8)
In the OwnTracks app, tap the (i) in the top left and click on settings. Change the following settings:
- Mode: HTTP
- URL: `<url given to you when setting up the integration>`
- Turn on authentication
- User ID: `<Your name>`
## {% linkable_title Advanced configuration %}
OwnTracks allows the user to set advanced configuration by adding a section to your `configuration.yaml`.
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: owntracks
owntracks:
```
{% configuration %}
@ -63,37 +90,20 @@ A full sample configuration for the `owntracks` platform is shown below:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: owntracks
max_gps_accuracy: 200
waypoints: true
mqtt_topic: "owntracks/#"
events_only: true
waypoint_whitelist:
- jon
- ram
region_mapping:
cabin: home
office: work
owntracks:
max_gps_accuracy: 200
waypoints: true
mqtt_topic: "owntracks/#"
events_only: true
waypoint_whitelist:
- jon
- ram
region_mapping:
cabin: home
office: work
```
### {% linkable_title Using Owntracks with other device trackers %}
Owntracks can also be used with other device trackers, such as [Nmap](/components/device_tracker.nmap_tracker/) or [Netgear](/components/device_tracker.netgear/). To do this, fill in the `mac` field to the Owntracks entry in `known_devices.yaml` with the MAC address of the device you want to track. This way the state of the device will be determined by the source that reported last. The naming convention for known device list is `<username>_<device-id>` and could be set in app configuration. More details about this config can found in [device tracker](/components/device_tracker/).
An example showing the inclusion of the `mac` field for multiple component tracking. The `mac` field will need to be added to the `owntracks` device and will enable tracking by all components that track via the `mac` address.
```yaml
USERNAME_DEVICE_ID:
name: Friendly Name
mac: EA:AA:55:E7:C6:94
picture: https://www.home-assistant.io/images/favicon-192x192.png
gravatar: test@example.com
track: yes
hide_if_away: no
```
### {% linkable_title Using Owntracks regions %}
## {% linkable_title Using Owntracks regions %}
Owntracks can track regions, and send region entry and exit information to Home Assistant (HA). You set up a region in the Owntracks app which you should name the same as your HA Zone, and then make sure to turn on the `share` option for the region in the owntracks app. Please see the [owntracks documentation](http://owntracks.org/booklet/guide/waypoints/).
@ -101,7 +111,7 @@ Home Assistant will use the enter and leave messages to set your zone location.
When you exit a zone, Home Assistant will start using location updates to track you again. To make sure that Home Assistant correctly exits a zone (which it calculates based on your GPS coordinates), you may want to set your Zone radius in HA to be slightly smaller that the Owntracks region radius.
### {% linkable_title Using Owntracks regions - forcing Owntracks to update using iBeacons %}
## {% linkable_title Using Owntracks regions - forcing Owntracks to update using iBeacons %}
<p class='note'>
Owntracks v2.0.0 removes support for iBeacons on Android.
@ -117,7 +127,7 @@ When you exit an iBeacon region HA will switch back to using GPS to determine yo
Sometimes Owntracks will lose connection with an iBeacon for a few seconds. If you name your beacon starting with `-` Owntracks will wait longer before deciding it has exited the beacon zone. HA will ignore the `-` when it matches the Owntracks region with Zones. So if you call your Owntracks region `-home` then HA will recognize it as `home`, but you will have a more stable iBeacon connection.
### {% linkable_title Using Owntracks iBeacons to track devices %}
## {% linkable_title Using Owntracks iBeacons to track devices %}
iBeacons don't need to be stationary. You could put one on your key ring, or in your car.
@ -127,13 +137,29 @@ To use mobile iBeacons with HA, you just set up a region that doesn't match your
This allows you to write zone automations for devices that can't track themselves (for example *alert me if I leave the house and my keys are still at home*). Another example would be *open the gates if my car arrives home*.
### {% linkable_title Using mobile and fixed iBeacons together %}
## {% linkable_title Using mobile and fixed iBeacons together %}
You can use iBeacons of both types together, so if you have a Zone `drive` with an iBeacon region called `-drive` and you arrive home with a mobile iBeacon called `-car`, then `device_tracker.beacon_car` will be set to a state of `drive`.
### {% linkable_title Importing Owntracks waypoints as zones %}
## {% linkable_title Importing Owntracks waypoints as zones %}
By default, any Owntracks user connected to Home Assistant can export their waypoint definitions (from the *Export - Export to Endpoint* menu item) which will then be translated to zone definitions in Home Assistant. The zones will be named `<user>-<device> - <waypoint name>`. This functionality can be controlled in 2 ways:
1. The configuration variable `waypoints` can be set to `false` which will disable importing waypoints for all users.
2. The configuration variable `waypoint_whitelist` can contain a list of users who are allowed to import waypoints.
## {% linkable_title Using Owntracks with other device trackers %}
Owntracks can also be used with other device trackers, such as [Nmap](/components/device_tracker.nmap_tracker/) or [Netgear](/components/device_tracker.netgear/). To do this, fill in the `mac` field to the Owntracks entry in `known_devices.yaml` with the MAC address of the device you want to track. This way the state of the device will be determined by the source that reported last. The naming convention for known device list is `<username>_<device-id>` and could be set in app configuration. More details about this config can found in [device tracker](/components/device_tracker/).
An example showing the inclusion of the `mac` field for multiple component tracking. The `mac` field will need to be added to the `owntracks` device and will enable tracking by all components that track via the `mac` address.
```yaml
USERNAME_DEVICE_ID:
name: Friendly Name
mac: EA:AA:55:E7:C6:94
picture: https://www.home-assistant.io/images/favicon-192x192.png
gravatar: test@example.com
track: yes
hide_if_away: no
```

View File

@ -0,0 +1,45 @@
---
layout: page
title: "Minut Point"
description: "Instructions on how to integrate Minut Point into Home Assistant."
date: 2018-11-19
sidebar: true
comments: false
sharing: true
footer: true
logo: minut.svg
ha_category: Hub
featured: true
ha_release: "0.83"
ha_iot_class: "Cloud Polling"
ha_qa_scale: silver
---
The Point component is the main component to integrate the [Minut Point](https://minut.se/). To connect Point, you will have to [sign up for a developer account](https://minut.com/community/developers/) and get a `client_id` and `client_secret` using the `callback url` as `base_url` + `/api/minut` eg. `http://localhost:8123/api/minut`. The `client_id` and `client_secret` should be used as below.
Once Home Assistant is started, a configurator will pop up asking you to Authenticate your Point account via a link when you follow the link and have clicked on **Accept** you will be redirected to the `callback url` and the Point integration will be automatically configured and you can go back to the original dialog and press **Submit**.
### {% linkable_title Configuration %}
```yaml
# Example configuration.yaml entry
point:
client_id: CLIENT_ID
client_secret: CLIENT_SECRET
```
{% configuration %}
client_id:
description: Your Minut Point developer client ID.
required: true
type: string
client_secret:
description: Your Minut Point developer client secret.
required: true
type: string
{% endconfiguration %}
<p class='note'>
The Point is just active occasionally so the sensors are only updated every hour or so.
The events sent from the Point is sent as a webhook back to Home Assistant with `event_type` as `point_webhook_received`, please consider the documentation for the [IFTT](https://www.home-assistant.io/components/ifttt/) component on how to write automations for webhooks.
</p>

View File

@ -100,4 +100,9 @@ records:
description: A list of records you want to update.
required: true
type: list
ttl:
description: The TTL value for the DNS records.
required: false
type: int
default: 300
{% endconfiguration %}

View File

@ -0,0 +1,50 @@
---
layout: page
title: Sense
description: "Instructions on how to integrate Sense within Home Assistant."
date: 2018-10-22 22:50
sidebar: true
comments: false
sharing: true
footer: true
logo: sense.png
ha_category: Energy
ha_iot_class: "Cloud Polling"
ha_release: 0.82
redirect_from: /components/sensor.sense/
---
Integrate your [Sense](https://sense.com) meter information into Home Assistant.
## {% linkable_title Configuration %}
To enable this sensor in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sense:
email: CLIENT_ID
password: CLIENT_SECRET
```
Sensors are added for both usage and production with the following names:
- **Active Usage/Production**: Current active power usage/production in Watts. Updated every 60 seconds.
- **Daily/Weekly/Monthly Usage/Production**: Daily/Weekly/Monthly power usage/production in kWh. Updated every 5 minutes.
Binary sensors are created for each of the devices detected by your Sense monitor to show their power state.
{% configuration %}
email:
description: The email associated with your Sense account/application.
required: true
type: string
password:
description: The password for your Sense account/application.
required: true
type: string
timeout:
description: Seconds for timeout of API requests
required: false
type: positive_int
{% endconfiguration %}

View File

@ -0,0 +1,20 @@
---
layout: page
title: "Asuswrt Sensor"
description: "Instructions on how to integrate Asuswrt sensors into Home Assistant."
date: 2017-08-30 12:21
sidebar: true
comments: false
sharing: true
footer: true
logo: asus.png
ha_category: System Monitor
ha_iot_class: "Local Polling"
ha_release: 0.83
---
The `asuswrt` platform allows you to get data from your [ASUSWRT](http://event.asus.com/2013/nw/ASUSWRT/) sensors from within Home Assistant.
The sensor platform will be automatically configured if Asuswrt component is configured.
For more configuration information see the [Asuswrt component](/components/asuswrt/) documentation.

View File

@ -30,10 +30,12 @@ To add Dark Sky to your installation, add the following to your `configuration.y
sensor:
- platform: darksky
api_key: YOUR_API_KEY
forecast:
- 0
monitored_conditions:
- summary
- icon
- nearest_storm_distance
- temperature
```
{% configuration %}
@ -47,7 +49,7 @@ name:
default: Dark Sky
type: string
forecast:
description: List of days in the 7 day forecast you would like to receive data on, starting with tomorrow as day 1. Any `monitored_condition` with a daily forecast by DarkSky will generate a sensor tagged with `_<day>`.
description: List of days in the 7-day forecast you would like to receive data on, starting with today as day 0 and ending with day 7. Any condition from `monitored_conditions` with a daily forecast by Dark Sky will generate a sensor with entity_id `<condition>_<day>`.
required: false
type: list
language:
@ -71,27 +73,29 @@ monitored_conditions:
type: list
keys:
summary:
description: A human-readable text summary of the current conditions.
description: A human-readable text summary.
icon:
description: A machine-readable text summary, suitable for selecting an icon for display. See [Dark Sky API documentation][] for the list of possible values.
precip_type:
description: The type of precipitation occurring.
description: The type of precipitation occurring at the given time. If `precip_intensity` is zero, then this property will be `unknown`. See [Dark Sky API documentation][] for the list of possible values.
precip_intensity:
description: The average expected intensity of precipitation occurring.
description: The intensity of precipitation occurring at the given time. This value is conditional on probability (that is, assuming any precipitation occurs at all).
precip_probability:
description: A value between 0 and 1 which is representing the probability of precipitation.
description: The probability of precipitation occurring, in percents.
precip_accumulation:
description: Daily snow accumulation. Returns unknown if no snow accumulation available.
description: The amount of snowfall accumulation expected to occur. If no snowfall is expected, this property will be `undefined`.
temperature:
description: The current temperature.
description: The air temperature.
apparent_temperature:
description: A numerical value representing the apparent (or "feels like") temperature.
description: The apparent (or "feels like") temperature.
dew_point:
description: The dew point.
wind_speed:
description: The wind speed.
wind_gust:
description: The wind gust.
description: The wind gust speed.
wind_bearing:
description: Where the wind is coming from in degrees, with true north at 0° and progressing clockwise.
description: The direction that the wind is coming **from** in degrees, with true north at 0° and progressing clockwise. If `wind_speed` is 0, then this value is `unknown`.
cloud_cover:
description: The percentage of sky occluded by clouds.
humidity:
@ -101,29 +105,33 @@ monitored_conditions:
visibility:
description: The average visibility.
ozone:
description: The columnar density of total atmospheric ozone in Dobson.
description: The columnar density of total atmospheric ozone at the given time in Dobson units.
minutely_summary:
description: A human-readable text summary for the next hour.
hourly_summary:
description: A human-readable text summary for the next 24 hours.
description: A human-readable text summary for the next two days.
daily_summary:
description: A human-readable text summary for the next 7 days.
description: A human-readable text summary for the next week.
temperature_high:
description: Today's daytime expected high temperature.
description: The daytime high temperature.
temperature_low:
description: Today's overnight expected low temperature.
description: The overnight low temperature.
apparent_temperature_high:
description: Today's daytime expected apparent high temperature.
description: The daytime high apparent temperature.
apparent_temperature_low:
description: Today's overnight expected apparent low temperature.
description: The overnight low apparent temperature.
precip_intensity_max:
description: Today's expected maximum intensity of precipitation.
description: The maximum value of `precip_intensity` during a given day.
uv_index:
description: The current UV index.
description: The UV index.
moon_phase:
description: The fractional part of the lunation number during the given day.
description: "The fractional part of the lunation number during the given day: a value of 0 corresponds to a new moon, 0.25 to a first quarter moon, 0.5 to a full moon, and 0.75 to a last quarter moon."
nearest_storm_distance:
description: The approximate distance to the nearest storm in miles.
nearest_storm_bearing:
description: The approximate direction of the nearest storm in degrees, with true north at 0° and progressing clockwise.
units:
description: Specify the unit system. Valid options are `auto`, `us`, `si`, `ca`, `uk` and `uk2`. `auto` will let Dark Sky decide the unit system based on location.
description: Specify the unit system. Valid options are `auto`, `us`, `si`, `ca` and `uk2`. `auto` will let Dark Sky decide the unit system based on location.
required: false
default: "`si` or `us`, based on the temperature preference in Home Assistant."
type: string
@ -196,4 +204,6 @@ All language options are described in this table that you can use for the dark s
While the platform is called "darksky" the sensors will show up in Home Assistant as "dark_sky" (eg: sensor.dark_sky_summary).
</p>
Details about the API are available in the [Dark Sky documentation](https://darksky.net/dev/docs).
More details about the API are available in the [Dark Sky API documentation][].
[Dark Sky API documentation]: https://darksky.net/dev/docs

View File

@ -20,7 +20,9 @@ The `fastdotcom` sensor component uses the [Fast.com](https://fast.com/) web ser
Currently fast.com only supports measuring download bandwidth. If you want to measure bandwidth metrics other then download such as ping and upload, utilize the [speedtest](/components/sensor.speedtest) component.
</p>
By default, it will run every hour. The user can change the update frequency in the config by defining the minute, hour, and day for a speedtest to run.
By default, it will run every hour. The user can change the update frequency in the configuration by defining the minute and hour for a speedtest to run.
## {% linkable_title Configuration %}
To add a Fast.com sensor to your installation, add the following to your `configuration.yaml` file:
@ -31,8 +33,6 @@ sensor:
- platform: fastdotcom
```
More examples:
Every half hour of every day:
```yaml
@ -67,6 +67,6 @@ manual:
There is also a service named `sensor.update_fastdotcom` that you can use to run a fast.com speedtest on demand. You can turn on manual mode to disable the scheduled speedtests.
## Note
## {% linkable_title Notes %}
- When running on Raspberry Pi, just note that the maximum speed is limited by its 100 Mbit/s LAN adapter.

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Fibaro sensors"
description: "Instructions on how to integrate Fibaro sensors into Home Assistant."
date: 2018-11-14 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: fibaro.png
ha_category: Light
ha_iot_class: "Local Push"
ha_release: 0.83
---
The `fibaro` platform allows you to get data from your [Fibaro](http://fibaro.com/) sensors connected to your Fibaro HCL or HC2 from within Home Assistant.
They will be automatically discovered if the `fibaro` component is loaded.

View File

@ -0,0 +1,64 @@
---
layout: page
title: "Flu Near You"
description: "Instructions on how to use Flu Near You data within Home Assistant"
date: 2018-11-02 21:05
sidebar: true
comments: false
sharing: true
footer: true
logo: flunearyou.jpg
ha_category: Health
ha_release: 0.83
ha_iot_class: "Cloud Polling"
---
The `flunearyou` sensor platform allows users in the United States and its
territories to get information regarding reported flu symptoms from Flu Near
You. The platform can return user-reported information as well reports from the
Center for Disease Control (CDC).
## {% linkable_title Configuration %}
To enable the platform, add the following lines to your `configuration.yaml`
file:
```yaml
sensor:
- platform: flunearyou
```
{% configuration %}
monitored_conditions:
description: The sensor categories to display.
required: false
type: list
default: ['cdc_report', 'user_report']
latitude:
description: The latitude of the location to monitor.
required: optional
type: string
default: The latitude defined under the `homeassistant` key in `configuration.yaml`.
longitude:
description: The longitude of the location to monitor.
required: optional
type: string
default: The longitude defined under the `homeassistant` key in `configuration.yaml`.
{% endconfiguration %}
## {% linkable_title Sensor Types %}
### User Report
* Number of reported cases of [Avian Flu](https://www.cdc.gov/flu/avianflu/index.htm) symptoms
* Number of reported cases of [Dengue](https://www.cdc.gov/dengue/index.html) symptoms
* Number of reported cases of [Flu](https://www.cdc.gov/flu/) symptoms
* Number of reported cases of [Flu-like](https://en.wikipedia.org/wiki/Influenza-like_illness) symptoms
* Number of reported cases of [Leptospirosis](https://www.cdc.gov/leptospirosis/index.html) symptoms
* Total number of reported cases with symptoms
* Number of reported cases with no symptoms
### CDC Report
* Current CDC level for the state
* Current CDC "Level 2" for the state

View File

@ -66,6 +66,24 @@ name:
required: false
type: string
default: Glances
username:
description: Your username for the HTTP connection to Glances.
required: false
type: string
password:
description: Your password for the HTTP connection to Glances.
required: false
type: string
ssl:
description: "If `true`, use SSL/TLS to connect to the Glances system."
required: false
type: boolean
default: false
verify_ssl:
description: Verify the certification of the system.
required: false
type: boolean
default: true
version:
description: "The version of the Glances API. Supported version: `2` and `3`."
required: false

View File

@ -0,0 +1,37 @@
---
layout: page
title: "Space Launch sensor"
description: "Instructions on how to integrate space launch information within Home Assistant."
date: 2018-11-06 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: rocket.png
ha_category: Sensor
ha_iot_class: "Cloud Polling"
ha_release: "0.83"
---
The `launch_library` sensor will provide you with information about the next planed space launch.
## {% linkable_title Configuration %}
Add the data to your `configuration.yaml` file as shown in the example:
```yaml
# Example configuration.yaml entry
sensor:
- platform: launch_library
```
{% configuration %}
name:
description: Name of the sensor.
required: false
type: string
{% endconfiguration %}
The data this platform are presenting are coming from [launchlibrary.net][launchlibrary].
[launchlibrary]: http://launchlibrary.net/

View File

@ -11,72 +11,9 @@ logo: luftdaten.png
ha_category: Health
ha_release: 0.57
ha_iot_class: "Cloud Polling"
ha_qa_scale: gold
---
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.
## {% linkable_title Setup %}
- 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/).
## {% linkable_title Configuration %}
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 %}
sensorid:
description: The ID of the sensor.
required: true
type: string
name:
description: Name of the sensor to use in the frontend.
required: false
default: Luftdaten Sensor
type: string
monitored_conditions:
description: A list of conditions you want to monitor.
required: true
type: list
keys:
P1:
description: Show the particle sensors (particles 10 microns and below).
P2:
description: Show the particle sensors (particles 2.5 microns and below).
temperature:
description: Display the temperature from the sensor.
humidity:
description: Display the humidity from the sensor.
pressure:
description: Display the pressure from the sensor.
show_on_map:
description: Option to show the position of the sensor on the map.
required: optional
default: false
type: boolean
{% endconfiguration %}
<p class='note warning'>
If you set `show_on_map` to `True` then the location attributes are named `latitude` and `longitude`. The default name of the location attributes is `lat` and `long` to avoid showing them on the map.
</p>
Not all sensors provide all conditions. Also, it's possible that the sensor values are not available all the time. To check what a sensor is publishing use `curl`:
```bash
$ curl https://api.luftdaten.info/v1/sensor/[sensorid]/
```
You must have the [`luftdaten` component](/components/luftdaten/) configured to use this platform. After configuring that component, sensors will automatically appear.

View File

@ -1,20 +0,0 @@
---
layout: page
title: "Melissa Sensor"
description: "Instructions on how to integrate Melissa sensors into Home Assistant."
date: 2017-08-30 12:21
sidebar: true
comments: false
sharing: true
footer: true
logo: mclimate.png
ha_category: Environment
ha_iot_class: "Cloud Polling"
ha_release: 0.63
---
The `melissa` platform allows you to get data from your [Melissa](http://seemelissa.com/) sensors from within Home Assistant.
The sensor platform will be automatically configured if Melissa component is configured.
For more configuration information see the [Melissa component](/components/melissa/) documentation.

View File

@ -0,0 +1,29 @@
---
layout: page
title: "Minut Point Sensor"
description: "Access your Minut Point Sensors."
date: 2018-11-19
sidebar: true
comments: false
sharing: true
footer: true
logo: minut.svg
ha_category: Sensor
ha_release: "0.83"
ha_iot_class: "Cloud Polling"
ha_qa_scale: silver
---
Each Point exposes the following sensors:
- **temperature**: Temperature in °C.
- **humidity**: Percentage of humidity in the air.
- **pressure**: Pressure in hPa.
- **sound_level**: Sound level in dBa.
For installation instructions, see [the Point component](/components/point/).
<p class='note'>
The Point is just active occasionally so the sensors are only updated every hour or so.
</p>

View File

@ -13,10 +13,11 @@ ha_release: 0.63
ha_iot_class: "Cloud Polling"
---
The `pollen` sensor platform collects and displays allergy and disease
information (based on a U.S. ZIP code) from [Pollen.com](https://www.pollen.com/). Data measured includes:
The `pollen` sensor platform collects and displays allergy, asthma, and disease
information (based on a U.S. ZIP code) from
[Pollen.com](https://www.pollen.com/). Data measured includes:
* Indicies for allergies and cold/flu measurements
* Indicies for allergies, asthma and cold/flu indices
* Trends
* Current outlook
* more!
@ -37,6 +38,11 @@ sensor:
- allergy_index_today
- allergy_index_tomorrow
- allergy_index_yesterday
- asthma_average_forecasted
- asthma_average_historical
- asthma_index_today
- asthma_index_tomorrow
- asthma_index_yesterday
- disease_average_forecasted
```
@ -69,6 +75,15 @@ historical allergy index over the past 30 days
tomorrow
* Allergy Index: Yesterday (`allergy_index_yesterday`): the allergy index for
yesterday
* Asthma Index: Forecasted Average (`asthma_average_forecasted`): the average
forecasted asthma index over the next 5 days
* Asthma Index: Historical Average (`asthma_average_historical`): the average
historical asthma index over the past 30 days
* Asthma Index: Today (`asthma_index_today`): the asthma index for today
* Asthma Index: Tomorrow (`asthma_index_tomorrow`): the asthma index for
tomorrow
* Asthma Index: Yesterday (`asthma_index_yesterday`): the asthma index for
yesterday
* Cold & Flu: Forecasted Average (`disease_average_forecasted`): the average
forecasted cold/flu index over the next 5 days
@ -84,3 +99,17 @@ Range | Rating
4.9 - 7.2 | Medium
7.3 - 9.6 | Medium/High
9.7 - 12.0 | High
## {% linkable_title Understanding Asthma Allergens %}
Several asthma-related sensors carry information regarding the top three
"asthma allergens" (i.e., irritants that may exacerbate asthma symptoms).
Example values include:
Pollutant | Symbol | More Info
--------- | ------ | ---------
Particulate (<= 2.5 μm) | PM2.5 | [EPA: Particulate Matter (PM) Pollution ](https://www.epa.gov/pm-pollution)
Particulate (<= 10 μm) | PM10 | [EPA: Particulate Matter (PM) Pollution ](https://www.epa.gov/pm-pollution)
Ozone | O | [EPA: Ozone Pollution](https://www.epa.gov/ozone-pollution)
Sulpher Dioxide | SO2 | [EPA: Sulfur Dioxide (SO2) Pollution](https://www.epa.gov/so2-pollution)
Carbon Monoxide | CO | [EPA: Carbon Monoxide (CO) Pollution in Outdoor Air](https://www.epa.gov/co-pollution)

View File

@ -0,0 +1,54 @@
---
layout: page
title: "Ruter Public Transport"
description: "Instructions on how to integrate departure times from Ruter within Home Assistant."
date: 2018-11-05 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: ruter.png
ha_category: Transport
ha_iot_class: "Cloud Polling"
ha_release: 0.83
---
The `ruter` sensor will provide you departure information for the larger Oslo area in Norway from the [Ruter][ruter] public transportation service.
This platform is using the [Ruter reisapi API][ruter-api] to gather the information.
To find the `stop_id` you need to visit the [Ruter][ruter] site and search for your stop.
In the URL after you have searched, there will be an ID right after the `Stoppested/` in a format like this `(2190400)`, the numbers there is what you need to put in the `stop_id:` configuration option.
Add the data to your `configuration.yaml` file as shown in the example:
```yaml
# Example configuration.yaml entry
sensor:
- platform: ruter
stop_id: STOPID
```
{% configuration %}
stop_id:
description: The stop id for the stop you want to monitor.
required: true
type: string
destination:
description: A destination name to show only departures that has this as the final stop.
required: false
type: string
offset:
description: An offset for the next departure, 0 will give the first one.
required: false
type: integer
default: 0
name:
description: Name of the sensor.
required: false
type: string
default: Ruter
{% endconfiguration %}
[ruter]: https://ruter.no/reiseplanlegger/Stoppested
[ruter-api]: http://reisapi.ruter.no/Help

View File

@ -0,0 +1,52 @@
---
layout: page
title: "17track.net"
description: "Instructions on how to use 17track.net data within Home Assistant"
date: 2018-10-31 10:42
sidebar: true
comments: false
sharing: true
footer: true
logo: 17track.png
ha_category: Postal Service
ha_release: 0.83
ha_iot_class: "Cloud Polling"
---
The 17track.net sensor platform allows users to get package data tied to their
17track.net account. The platform creates both summary sensors, which show the
number of packages in a current state (e.g., "In Transit"), as well as
individual sensors for each package within the account.
## {% linkable_title Configuration %}
To enable the platform, add the following lines to your `configuration.yaml`
file:
```yaml
sensor:
- platform: seventeentrack
username: <EMAIL ADDRESS>
password: <PASSWORD>
```
{% configuration %}
username:
description: The email address associated with your 17track.net account.
required: true
type: string
password:
description: The password associated with your 17track.net account.
required: true
type: string
show_archived:
description: Whether sensors should be created for archived packages.
required: false
type: boolean
default: false
show_delivered:
description: Whether sensors should be created for delivered packages.
required: false
type: boolean
default: false
{% endconfiguration %}

View File

@ -0,0 +1,45 @@
---
layout: page
title: "SRP Energy Sensor"
description: "How to integrate SRP Energy within Home Assistant."
date: 2018-10-30 08:00
sidebar: true
comments: false
ha_category: Energy
ha_release: "0.83"
ha_iot_class: "Cloud Polling"
---
The `srp_energy` component shows information from Srp hourly energy usage report for their customers. The srpenergy module fetches the data found on the website.
You need a Username, Password, and AccountId which you can create at [Srp](https://www.srpnet.com).
## {% linkable_title Configuration %}
To add Srp Energy to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: srp_energy
username: YOUR_USERNAME
password: YOUR_PASSWORD
id: YOUR_ACCOUNT_ID
```
{% configuration %}
username:
description: Your username for SRP.
required: true
type: string
password:
description: Your password for SRP.
required: true
type: string
id:
description: Your account id for SRP.
required: true
type: string
{% endconfiguration %}
Details about the API are available in the [SRP Energy Developers API documentation](https://srpenergy-api-client-python.readthedocs.io/en/latest/?badge=latest).

View File

@ -13,15 +13,11 @@ ha_iot_class: "Cloud Polling"
ha_release: 0.22
---
<p class='note warning'>
This sensor doesn't work at the moment due to changed by the [Swiss Federal Office for the Environment (Bundesamt für Umwelt - Abt. Hydrologie)](http://www.hydrodaten.admin.ch) to access the data.
</p>
The `swiss_hydrological_data` sensor will show you details (temperature, level, and discharge) of rivers and lakes in Switzerland.
## {% linkable_title Setup %}
The [station overview](http://www.hydrodaten.admin.ch/en/danger-levels-table.html) contains a list of all available measuring points and will help to determine the ID of station which is needed for the configuration.
The [station overview](https://www.hydrodaten.admin.ch/en/stations-and-data.html) contains a list of all available measuring points and will help to determine the ID of station which is needed for the configuration.
## {% linkable_title Configuration %}
@ -32,6 +28,10 @@ To enable this sensor, add the following lines to your `configuration.yaml` file
sensor:
- platform: swiss_hydrological_data
station: STATION_ID
monitored_conditions:
- temperature
- level
- discharge
```
{% configuration %}
@ -39,29 +39,27 @@ station:
description: The ID of the measurement point.
required: true
type: string
name:
description: Name to use in the frontend.
monitored_conditions:
description: The list of measurements you want to use. Available is `temperature`, `level` or `discharge`.
required: false
type: string
default:
type: list
default: temperature
{% endconfiguration %}
The hydrological measurings are coming from the [Swiss Federal Office for the Environment (Bundesamt für Umwelt - Abt. Hydrologie)](http://www.hydrodaten.admin.ch) and are updated almost in real-time.
Sensors are exposing additional values through their attributes for all available conditions:
## {% linkable_title Example %}
This sensor contains additional information which an easily accessed by a [template sensor](/components/sensor.template/).
{% raw %}
```yaml
# Example configuration.yaml entry
sensor:
platform: template
sensors:
discharge:
value_template: '{{ states.sensor.aare.attributes.Discharge }}'
friendly_name: 'Discharge'
```
{% endraw %}
- `delta-24h`: The delta measurement for the last 24 hours.
- `max-1h`: The maximum measurement for the last hour.
- `max-24h`: The maximum measurement for the last 24 hours.
- `mean-1h`: The mean measurement for the last hour.
- `mean-24h`: The mean measurement for the last 24 hours.
- `min-1h`: The minimum measurement for the last hour.
- `min-24h`: The minimum measurement for the last 24 hours.
- `previous-24h`: The previous measurement for the last 24 hours.
- `station_update`: There is a time span between the sensor update in Home Assistant and the updates from the stations. Include those information if you are building automations based on the discharge of a water body.
<p class='note info'>
The sensors don't show the latest measurement, but those from the last hour due to the source of data. Some stations also don't provide data for certain measurements.
</p>
The hydrological measurements are coming from the [Swiss Federal Office for the Environment (Bundesamt für Umwelt - Abt. Hydrologie)](http://www.hydrodaten.admin.ch) and are updated every 10 minutes.

View File

@ -0,0 +1,73 @@
---
layout: page
title: "Tautulli activity sensor"
description: "Instructions on how to set up Tautulli sensors in Home Assistant."
date: 2018-10-27 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: tautulli.png
ha_category: Sensor
ha_release: 0.82
ha_iot_class: "Local Polling"
---
The `Tautulli` sensor platform will monitor activity on a given [Tautulli Server][tautulli]. It will create a sensor that shows the number of currently active streams as the state. If you click the sensor for more details it will show you more statistics, the following stats are available by default:
- LAN bandwidth
- Number of direct plays
- Number of direct streams
- Stream count
- Top Movie
- Top TV Show
- Top User
- Total bandwidth
- Transcode count
- WAN bandwidth
More user statistics can be added with the `monitored_variables` configuration option, this will add one attribute per user in addition to the users current `activity`.
To find your `api_key` open the Tautulli web interface and navigate to `Settings` and then to `Web interface`, the `api_key` will be at the bottom of that page.
If you want to enable this sensor, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
sensor:
- platform: tautulli
api_key: 24b6eac0a858748664878d146bf63623b4
host: 192.168.1.14
```
{% configuration %}
api_key:
description: The API key for your Tautulli server.
required: true
type: string
host:
description: The DNS name or IP Address of the server running Tautulli.
required: true
type: string
port:
description: The port of your Tautulli server.
required: false
default: 8181
type: integer
ssl:
description: Use HTTPS to connect to Tautulli server. *NOTE* A host *cannot* be an IP address when this option is enabled.
required: false
default: false
type: boolean
monitored_users:
description: A list of Tautulli users you want to monitor, if not set this will monitor **all** users.
required: false
type: list
monitored_variables:
description: A list of attributes to expose for each Tautulli user you monitor, every key in the `session` [section here][tautulliapi] can be used.
required: false
type: list
{% endconfiguration %}
[tautulli]: https://tautulli.com
[tautulliapi]: https://github.com/Tautulli/Tautulli/blob/master/API.md#get_activity

View File

@ -14,15 +14,19 @@ ha_release: 0.81
---
The `transport_nsw` sensor will give you the time until the next departure from a Transport NSW stop (bus, train or ferry).
The `transport_nsw` sensor will give you the time until the next departure from a Transport NSW stop for bus, train, light rail or ferry.
Get your free API key from [Transport NSW](https://opendata.transport.nsw.gov.au/).
## {% linkable_title Setup %}
In order to find the stop id, just go to Google maps and click on the bus/train/ferry stop. It will give you there the stop ID.
Prerequisite is a free API key from [Transport NSW](https://opendata.transport.nsw.gov.au/).
You can define a bus line, but if you dont do it, the sensor will pick up the next stop event from any line servicing this stop.
In order to find your stop id, go to Google maps and click on any bus/train/ferry stop. The pop up window shows the stop ID underneath the station name. For train stations the easist way to get a stop id for a platform is through [Transport NSW Info](https://transportnsw.info/).
Then add the data to your `configuration.yaml` file as shown in the example:
As a default the sensor picks up the next mode of transport leaving from a stop id.
## {% linkable_title Configuration %}
To enable the sensor, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -34,15 +38,19 @@ sensor:
{% configuration %}
api_key:
description: Your API key for Open Data Transport NSW
description: Your API key for Open Data Transport NSW.
required: true
type: string
stop_id:
description: The ID of the stop to get the information for
description: The ID of the stop to get the information for.
required: true
type: string
route:
description: Only show a single bus route at the stop. This is the same as the bus number, e.g., `83`
description: Filter on bus route at the stop. This is the same as the bus number, e.g., `83`.
required: false
type: string
destination:
description: Useful for ferry or train stops to filter the destination of the sensor, e.g. `Circular Quay`.
required: false
type: string
name:
@ -51,4 +59,46 @@ name:
type: string
{% endconfiguration %}
The public information is coming from [Transport NSW](https://opendata.transport.nsw.gov.au/).
The public information is provided from [Transport NSW](https://opendata.transport.nsw.gov.au/).
## {% linkable_title Examples %}
More example configurations for bus or ferry.
```yaml
# Example bus route configuration.yaml entry
sensor:
- platform: transport_nsw
name: 'Bus'
stop_id: '209516'
route: '199'
api_key: 'YOUR API KEY'
```
```yaml
# Example ferry configuration.yaml entry
sensor:
- platform: transport_nsw
name: 'Ferry'
stop_id: '10102008'
destination: 'Circular Quay'
api_key: 'YOUR API KEY'
```
The sensor returns n/a if no stop event is found within the next 24h. A `template` sensor can help building a more meaninful string.
{% raw %}
```yaml
# Sample template sensor
- platform: template
sensors:
busmonitor:
friendly_name: "Bus Mon 199"
value_template: >-
{% if is_state_attr('sensor.bus', 'due', 'n/a') %}
No schedule found
{% else %}
{{ states.sensor.bus.attributes.route }} in {{ states.sensor.bus.attributes.due }}m ({{ states.sensor.bus.attributes.delay }})
{% endif %}
```
{% endraw %}

View File

@ -31,7 +31,7 @@ name:
description: Name to use in the frontend.
required: false
type: string
default: Current Version
default: "`Current Version` in case of `source: local`, `Latest Version` otherwise"
beta:
description: Flag to indicate that it will check for beta versions, only supported for the sources `pypi`, `hassio` and `docker`.
required: false

View File

@ -0,0 +1,18 @@
---
layout: page
title: "Fibaro switches"
description: "Instructions on how to integrate Fibaro switches into Home Assistant."
date: 2018-11-14 23:00
sidebar: true
comments: false
sharing: true
footer: true
logo: fibaro.png
ha_category: Light
ha_iot_class: "Local Push"
ha_release: 0.83
---
The `fibaro` platform allows you to get data from your [Fibaro](http://fibaro.com/) switches connected to your Fibaro HCL or HC2 from within Home Assistant.
They will be automatically discovered if the `fibaro` component is loaded.

View File

@ -0,0 +1,20 @@
---
layout: page
title: "Lupusec Switch"
description: "Instructions on how to integrate Lupusec switches into Home Assistant."
date: 2018-10-03 16:00
sidebar: true
comments: false
sharing: true
footer: true
logo: lupusec.jpg
ha_category: Switch
ha_release: 0.83
ha_iot_class: "Local Polling"
---
The `LUPUS-Electronics` security control panel platform allows you to control your [Lupusec](https://www.lupus-electronics.de) devices.
This component will automatically add `Power Switches` configured in your Lupusec control panel.
For the switches to work you have to setup your [Lupusec component](/components/lupusec/).

View File

@ -0,0 +1,59 @@
---
layout: page
title: "TP-Link LTE"
description: "Instructions on how to integrate your TP-Link LTE routers within Home Assistant."
date: 2018-10-03 21:30
sidebar: true
comments: false
sharing: true
footer: true
logo: tp-link.png
ha_release: 0.83
ha_category: Network
ha_iot_class: "Local Polling"
---
The TP-Link LTE integration for Home Assistant allows you to observe and control TP-Link LTE routers, currently only tested with TL-MR6400 (firmware 1.4.0).
The integration provides a notification service that will send an SMS.
## {% linkable_title Configuration %}
To enable the component, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
tplink_lte:
- host: IP_ADDRESS
password: SECRET
notify:
- name: sms1
target: "+15105550123"
- name: sms2
target: "+55520525252"
```
{% configuration %}
host:
description: The IP address of the router web interface.
required: true
type: string
password:
description: The password used for the router web interface.
required: true
type: string
notify:
description: A list of notification services connected to this specific host.
required: false
type: list
keys:
target:
description: The phone number of a default recipient or a list with multiple recipients.
required: true
type: string, list
name:
description: The name of the notification service.
required: false
default: notify
type: string
{% endconfiguration %}

View File

@ -0,0 +1,38 @@
---
layout: page
title: "W800rf32"
description: "Instructions on how to integrate a W800rf32(a) into Home Assistant."
date: 2018-10-16 10:15
sidebar: true
comments: false
sharing: true
footer: true
logo: w800rf32.png
ha_category: Hub
ha_release: 0.83
ha_iot_class: "Local Push"
---
The `w800rf32` component supports W800RF32 devices by [WGL Designs](http://www.wgldesigns.com/w800.html) which
communicate in the frequency range of 310MHz or if you are outside Canada or the U.S., 433.92 MHz.
The W800 family of RF receivers are designed to receive X10 RF signals generated from X10 products: Palm Pad
remotes, key chain remotes, Hawkeye motion detectors, and many, many other X10 RF devices.
To enable W800rf32 in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
w800rf32:
device: PATH_TO_DEVICE
```
{% configuration %}
device:
description: "The path to USB/serial device, example: /dev/ttyUSB0."
required: true
type: string
{% endconfiguration %}

View File

@ -99,7 +99,7 @@ gateways:
type: map
keys:
mac:
description: The MAC address of your gateway. *Optional if only using one gateway.*
description: The MAC address of your gateway. Needs to be formatted without ":". *Optional if only using one gateway.*
required: false
type: string
key:
@ -208,7 +208,7 @@ This example plays the sound of a dog barking when the button is held down and s
- alias: Let a dog bark on long press
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.switch_158d000xxxxxc2
click_type: long_click_press
@ -222,7 +222,7 @@ This example plays the sound of a dog barking when the button is held down and s
- alias: Stop barking immediately on single click
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.switch_158d000xxxxxc2
click_type: single
@ -240,7 +240,7 @@ This example toggles the living room lamp on a double click of the button.
- alias: Double Click to toggle living room lamp
trigger:
platform: event
event_type: click
event_type: xiaomi_aqara.click
event_data:
entity_id: binary_sensor.switch_158d000xxxxxc2
click_type: double

View File

@ -188,6 +188,7 @@ The following firmware for ESP8266, ESP32 and Sonoff unit has built-in support f
- [esphomeyaml](https://esphomelib.com/esphomeyaml/index.html)
- [ESPurna](https://github.com/xoseperez/espurna)
- [Arilux AL-LC0X LED controllers](https://github.com/mertenats/Arilux_AL-LC0X)
- [room-assistant](https://github.com/mKeRix/room-assistant) (starting with 1.1.0)
### {% linkable_title Examples %}

View File

@ -1,71 +0,0 @@
---
layout: page
title: "db_migrator"
description: "Script to migrate data in an InfluxDB database"
release_date: 2017-02-23 11:00:00
sidebar: true
comments: false
sharing: true
footer: true
---
<p class='note warning'>
This script was only use for 0.36 release cycle!
</p>
Starting with 0.36 the [InfluxDB](omponents/influxdb/) component has a new schema to store values in the InfluxDB databases.
- There will no longer be any tags/fields named `time`.
- All numeric fields (int/float/bool) will be stored as float inside InfluxDB database.
- All string fields corresponding to state attributes will be renamed as `FIELDNAME_str`, where `FIELDNAME` is the state attribute, to avoid type conflicts.
- All string fields corresponding to a state will be renamed as `state` (former value).
- Fields named `value` will always be stored as float.
- Fields named `state` will always be stored as string.
## {% linkable_title Migration script %}
If you need to migrate your database, you may require to run the `influxdb_migrator` script. Run the script after upgrade to 0.36 but before the first regular start of `hass` version 0.36.
These are the steps the script will perform:
1. Create a new database (called `DBNAME__old`) to store old data.
2. Copy data from `DBNAME` database to `DBNAME__old` database.
3. Empty `DBNAME` database (using `drop` then `create`). `DBNAME` database is now considered as the new database.
4. For each measurement of `DBNAME__old` database:
1. Read all points from the current measurement (in groups of 1000 points by default) and convert them.
2. Send group of points to `DBNAME` database.
5. Delete the `DBNAME__old` database if needed.
Example to run the script:
```bash
$ hass --script influxdb_migrator \
-H IP_INFLUXDB_HOST -u INFLUXDB_USERNAME -p INFLUXDB_PASSWORD \
-d INFLUXDB_DB_NAME
```
Script arguments:
```
required arguments:
-d dbname, --dbname dbname InfluxDB database name
optional arguments:
-h, --help show this help message and exit
-H host, --host host InfluxDB host address
-P port, --port port InfluxDB host port
-u username, --username username
InfluxDB username
-p password, --password password
InfluxDB password
-s step, --step step How many points to migrate at the same time
-o override_measurement, --override-measurement override_measurement
Store all your points in the same measurement
-D, --delete Delete old database
```
- If you run the script with only the `-h` option, you will get a help printout with a short explanation of the different options.
- The host option defaults to `'127.0.0.1'`.
- The port option defaults to `8086`.
- You should be able to omit username and password if InfluxDB authentication is disabled, which it is by default.
- The step option defaults to `1000`.

View File

@ -1,63 +0,0 @@
---
layout: page
title: "influxdb_import"
description: "Script to import data into an InfluxDB database"
release_date: 2017-02-23 11:00:00
sidebar: true
comments: false
sharing: true
footer: true
---
If you want to import all the recorded data from your recorder database you can use the data import script. It will read all your state_change events from the database and add them as data-points to the InfluxDB. You can specify the source database either by pointing the `--config` option to the config directory which includes the default SQLite database or by giving a sqlalchemy connection URI with `--uri`.
The writing to InfluxDB is done in batches that can be changed with `--step`.
You can control, which data is imported by using the command line options `--exclude_entities` and `--exclude_domains`. Both get a comma separated list of either entity-ids or domain names that are excluded from the import.
To test what gets imported you can use the `--simulate` option, which disables the actual write to the InfluxDB instance. This only writes the statistics how much points would be imported from which entity.
Example to run the script:
```bash
$ hass --script influxdb_import --config CONFIG_DIR \
-H IP_INFLUXDB_HOST -u INFLUXDB_USERNAME -p INFLUXDB_PASSWORD \
--dbname INFLUXDB_DB_NAME --exclude_domains automation,configurator
```
Script arguments:
```
required arguments:
-d dbname, --dbname dbname
InfluxDB database name
optional arguments:
-h, --help show this help message and exit
-c path_to_config_dir, --config path_to_config_dir
Directory that contains the Home Assistant
configuration
--uri URI Connect to URI and import (if other than default
sqlite) eg: mysql://localhost/homeassistant
-H host, --host host InfluxDB host address
-P port, --port port InfluxDB host port
-u username, --username username
InfluxDB username
-p password, --password password
InfluxDB password
-s step, --step step How many points to import at the same time
-t tags, --tags tags Comma separated list of tags (key:value) for all
points
-D default_measurement, --default-measurement default_measurement
Store all your points in the same measurement
-o override_measurement, --override-measurement override_measurement
Store all your points in the same measurement
-e exclude_entities, --exclude_entities exclude_entities
Comma separated list of excluded entities
-E exclude_domains, --exclude_domains exclude_domains
Comma separated list of excluded domains
-S, --simulate Do not write points but simulate preprocessing
and print statistics
```

View File

@ -1,39 +0,0 @@
---
layout: page
title: "influxdb_migrator"
description: "Script to convert an old-structure Influx database to a new one."
release_date: 2017-02-23 11:00:00
sidebar: true
comments: false
sharing: true
footer: true
---
Script to convert an old-structure Influx database to a new one.
Example to run the script:
```bash
$ hass --script influxdb_migrator -H IP_INFLUXDB_HOST \
-u INFLUXDB_USERNAME -p INFLUXDB_PASSWORD \
--dbname INFLUXDB_DB_NAME
```
Script arguments:
```
optional arguments:
-h, --help show this help message and exit
-d dbname, --dbname dbname
InfluxDB database name
-H host, --host host InfluxDB host address
-P port, --port port InfluxDB host port
-u username, --username username
InfluxDB username
-p password, --password password
InfluxDB password
-s step, --step step How many points to migrate at the same time
-o override_measurement, --override-measurement override_measurement
Store all your points in the same measurement
-D, --delete Delete old database
```

View File

@ -96,10 +96,7 @@
<li>{% active_link /docs/tools/benchmark/ benchmark %}</li>
<li>{% active_link /docs/tools/check_config/ check_config %}</li>
<li>{% active_link /docs/tools/credstash/ credstash %}</li>
<li>{% active_link /docs/tools/db_migrator/ db_migrator %}</li>
<li>{% active_link /docs/tools/ensure_config/ ensure_config %}</li>
<li>{% active_link /docs/tools/influxdb_import/ influxdb_import %}</li>
<li>{% active_link /docs/tools/influxdb_migrator/ influxdb_migrator %}</li>
<li>{% active_link /docs/tools/keyring/ keyring %}</li>
</ul>
</li>

View File

@ -72,20 +72,22 @@ name:
required: true
description: Main Label.
type: string
icon:
required: true
description: "Icon to display (e.g., `mdi:home`)"
type: string
action_name:
required: true
description: Button label.
type: string
service:
required: true
description: "Service like `media_player.media_play_pause`"
type: string
icon:
required: false
description: "Icon to display (e.g., `mdi:home`)"
type: string
default: "`mdi:remote`"
action_name:
required: false
description: Button label.
type: string
default: "`Run`"
service_data:
required: true
required: false
description: The service data to use.
type: object
{% endconfiguration %}

View File

@ -56,11 +56,11 @@ line_color:
required: false
description: Color of the line stroke
type: string
accuracy:
detail:
required: false
description: Amount of data points on the graph
description: Detail of the graph `1` or `2`, `1` equals one point/hour, `2` equals six points/hour
type: integer
default: 10
default: 1
hours_to_show:
required: false
description: Hours to show in graph

View File

@ -0,0 +1,44 @@
---
layout: page
title: "Shopping List Card"
sidebar_label: Shopping List
description: "The Shopping List Card allows you to add, edit, check-off, and clear items from your shopping list"
date: 2018-11-02 10:28 +00:00
sidebar: true
comments: false
sharing: true
footer: true
---
The Shopping List Card allows you to add, edit, check-off, and clear items from your shopping list.
Setup of the [Shopping List Intent](https://www.home-assistant.io/components/shopping_list/) is required
<p class='img'>
<img src='/images/lovelace/lovelace_shopping_list_card.gif' alt='Screenshot of the shopping list card'>
Screenshot of the Shopping List card.
</p>
```yaml
- type: shopping-list
```
{% configuration %}
type:
required: true
description: shopping-list
type: string
title:
required: false
description: Title of Shopping List
type: string
{% endconfiguration %}
## {% linkable_title Examples %}
Title Example:
```yaml
- type: shopping-list
title: Shopping List
```

View File

@ -0,0 +1,732 @@
---
layout: post
title: "0.83: Fibaro Home Center Hubs, locks via voice, Traccar"
description: "Our first release with over 100 contributors is packed with features, fixes and goodies."
date: 2018-11-29 00:01:00
date_formatted: "November 29, 2018"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
og_image: /images/blog/2018-11-release-83/components.png
---
<a href='/components/#version/0.83'><img src='/images/blog/2018-11-release-83/components.png' style='border: 0;box-shadow: none;'></a>
It's release day! Today we're happy to release Home Assistant 0.83. If you might have noticed, this is using our new release schedule which evolves around releases on Wednesdays instead of Fridays (this one is one day late). It's the same 2-week release schedule as before, except that it has moved 5 days later.
So what's new? A LOT. First, a contributor milestone. This release the backend has 99 contributors. That means that in the last 2,5 weeks since the last release, 99 people have written code that is now part of Home Assistant. The frontend has another 15 contributors. It's amazing to see how as a community we can rally around building the best piece of home automation software out there and get it done.
I want to give a shout out to [@MartinHjelmare] who is doing an amazing job going through PRs and helping out where possible. Good job! ✨
Alright, time for some highlights. First is that thanks to [@pbalogh77], Fibaro Home Center hubs are now supported. If you had already invested in a Z-Wave network with Fibaro, you can now seamlessly integrate that into Home Assistant and combine it with all the other intgrations out there.
The second cool thing is that Google Assistant now supports locks. Locking is enabled by default, but if you want to support unlocking, you will need to go to the Home Assistant Cloud settings to enable unlocking, or, if you're using the manual config, add `allow_unlock: true` to your config.
<p class='img'>
<img src='/images/blog/2018-11-release-83/google-unlock.png' alt='Screenshot of the Google Assistant card on the cloud panel.'>
See what entities are exposed to Google and enable unlocking of locks.
</p>
The frontend team hasn't sit still either. The extended release notes are [here](https://github.com/home-assistant/home-assistant-polymer/pull/2077) but the main highlight is the new shopping list card. [@iantrich] took the shopping list panel and shrunk it to the size of a Lovelace card.
Oh and if you're into GPS tracking: [OwnTracks][OwnTracks docs] is a lot easier to get started with in this release. But if you really like all the data in the world: [@ludeeus] has added support for Traccar, including accompanying [Hass.io add-on](https://community.home-assistant.io/t/community-hass-io-add-on-traccar/81407?u=frenck) by [@frenck].
Note, this release includes a migration to add an index to speed up the logbook queries. It might take a bit on first boot, please be patient.
## {% linkable_title New Platforms %}
- Add Tautulli sensor platform ([@ludeeus] - [#17835]) ([sensor.tautulli docs]) (new-platform)
- Implemented tplink_lte components and notify service via SMS ([@andtos90] - [#17111]) ([notify docs]) ([tplink_lte docs]) (new-platform)
- Add Traccar device tracker ([@ludeeus] - [#18200]) ([device_tracker docs]) (new-platform)
- Add support for Google Home device tracking ([@ludeeus] - [#18190]) ([device_tracker docs]) (new-platform)
- Add Norwegian Public Transportation sensor (Ruter). ([@ludeeus] - [#18237]) ([sensor.ruter docs]) (new-platform)
- Split out geofency with a component and platform. The geofency device_tracker platform no longer takes any configuration. The configuration needs to be applied to the component geofency instead. The platform will be automatically loaded with the component. ([@rohankapoorcom] - [#17933]) ([device_tracker docs]) ([geofency docs]) (breaking change) (new-platform)
- Add support for Lupusec alarm control panel ([@majuss] - [#17691]) ([lupusec docs]) ([alarm_control_panel.lupusec docs]) ([binary_sensor.lupusec docs]) ([switch.lupusec docs]) (new-platform)
- Add upload and download sensors and component for asuswrt ([@kennedyshead] - [#17757]) ([asuswrt docs]) ([device_tracker docs]) ([sensor.asuswrt docs]) (breaking change) (new-platform)
- Add support for 17track.net package sensors ([@bachya] - [#18038]) ([sensor.seventeentrack docs]) (new-platform)
- Add new launch sensor to keep track of space launches. ([@ludeeus] - [#18274]) ([sensor.launch_library docs]) (new-platform)
- W800rf32 ([@horga83] - [#17920]) ([w800rf32 docs]) ([binary_sensor.w800rf32 docs]) (new-platform)
- Srpenergy ([@briglx] - [#18036]) ([sensor.srp_energy docs]) (new-platform)
- Add support for sensors from Flu Near You ([@bachya] - [#18136]) ([sensor.flunearyou docs]) (new-platform)
- Add niko-home-control support ([@legovaer] - [#18019]) ([light.niko_home_control docs]) (new-platform)
- Readded climate.velbus ([@Cereal2nd] - [#18434]) ([velbus docs]) ([climate.velbus docs]) (new-platform)
- Support for Fibaro HomeCenter hubs ([@pbalogh77] - [#17891] - [#18487]) ([fibaro docs]) ([binary_sensor.fibaro docs]) (new-platform)
- Support for Point component ([@fredrike] - [#17466]) ([point docs]) ([binary_sensor.point docs]) ([sensor.point docs]) (new-platform)
- Adds light switch platform ([@frenck] - [#18562]) ([light.switch docs]) (new-platform)
- Add cloud pref for Google unlock ([@balloob] - [#18600]) ([cloud docs]) (new-platform)
- Add support for Panasonic Blu-Ray players ([@u1f35c] - [#18541]) ([media_player.panasonic_bluray 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 %}
- OwnTracks is now using config entries. To set it up, go to the configuration panel and configure it there. When configured and MQTT is available, will automatically listen there too. ([@kirichkov] - [#17034]) ([@balloob] - [#18759]) ([owntracks docs]) (breaking change)
- Removes melissa sensors (they should be state attributes as implemented in #18201) ([@kennedyshead] - [#18214]) ([melissa docs]) (breaking change)
- Enable config flow for Luftdaten ([@fabaff] - [#17700]) ([luftdaten docs]) ([sensor.luftdaten docs]) (breaking change)
- Update Neato states, actions and alerts based on Neato docs. The vacuum status attribute has new alerts and updated actions. ([@dshokouhi] - [#17353]) ([neato docs]) (breaking change)
- Add services to set/update and cancel Nest ETA. Rename service set_mode to set_away_mode ([@schmittx] - [#17836]) ([nest docs]) (breaking change)
- Split out geofency with a component and platform ([@rohankapoorcom] - [#17933]) ([device_tracker docs]) ([geofency docs]) (breaking change) (new-platform)
- Add upload and download sensors and component for asuswrt ([@kennedyshead] - [#17757]) ([asuswrt docs]) ([device_tracker docs]) ([sensor.asuswrt docs]) (breaking change) (new-platform)
- Show battery_level as a percent vs a decimal ([@chriskacerguis] - [#18328]) ([wirelesstag docs]) (breaking change)
- Enable native support + ADB authentication for Fire TV ([@JeffLIrion] - [#17767]) ([media_player.firetv docs]) (breaking change)
- Logbook speedup is now using the built-in entity filter modes. Means that ([@jaxer] - [#18376]) (breaking change)
- Template binary sensor will now fall back to manual updates only if we cannot extract the entity IDs to track from the templates ([@amelchio] - [#18573]) ([binary_sensor.template docs]) (breaking change)
- Darksky: Expose missing conditions for day 0 forecast and append `_0` to the day 0 attributes: `precip_accumulation`, `temperature_high`, `temperature_low`, `apparent_temperature_high`, `apparent_temperature_low`, `precip_intensity_max`, `moon_phase`. ([@leppa] - [#18312]) ([sensor.darksky docs]) (breaking change)
- Prefix all xiaomi_aqara events with "xiaomi_aqara". Please update your automations: `motion -> xiaomi_aqara.motion`, `click -> xiaomi_aqara.click`, `cube_action -> xiaomi_aqara.cube_action` ([@syssi] - [#17354]) ([binary_sensor.xiaomi_aqara docs]) (breaking change)
- Change channel with play_media instead of select_source ([@ehendrix23] - [#18474]) ([media_player.directv docs]) (breaking change)
## {% linkable_title Beta Fixes %}
- Rename sensor.launch to sensor.launch_library ([@ludeeus] - [#18337]) ([sensor.launch_library docs]) (beta fix)
- Use asyncio Lock for fibaro light ([@pbalogh77] - [#18622]) ([light.fibaro docs]) (beta fix)
- fixed wording that may confuse user ([@eliseomartelli] - [#18628]) (beta fix)
- Updated webhook_register, version bump pypoint ([@fredrike] - [#18635]) ([point docs]) (beta fix)
- Fix vol Dict -> dict ([@bramkragten] - [#18637]) ([lovelace docs]) (beta fix)
- Set correct default offset ([@ludeeus] - [#18678]) ([sensor.ruter docs]) (beta fix)
- Add permission checks to Rest API ([@balloob] - [#18639]) ([api docs]) ([http docs]) (beta fix)
- Fix logbook filtering entities ([@balloob] - [#18721]) ([logbook docs]) (beta fix)
- Async tests for owntracks device tracker ([@armills] - [#18681]) (beta fix)
- OwnTracks Config Entry ([@balloob] - [#18759]) ([device_tracker docs]) ([owntracks docs]) (breaking change) (beta fix)
- Default to on if logged in ([@balloob] - [#18766]) ([cloud docs]) (beta fix)
## {% linkable_title All changes %}
- Add support for various load level devices ([@rafale77] - [#18161]) ([zha docs])
- Add Tautulli sensor platform ([@ludeeus] - [#17835]) ([sensor.tautulli docs]) (new-platform)
- Add option to manually specify device detection method ([@heytensai] - [#17852]) ([device_tracker docs])
- Rename huawei_lte.py to test_huawei_lte.py ([@tjorim] - [#18170])
- Improve netgear_lte logging when unconnected ([@amelchio] - [#18163]) ([netgear_lte docs])
- XMPP HTTP upload ([@flowolf] - [#17426]) ([notify docs])
- Update Coinbase icons ([@tjorim] - [#18172]) ([sensor.coinbase docs])
- Added AU (Australia) ([@troykelly] - [#18183]) ([sensor.waze_travel_time docs])
- Upgrade toonlib to 1.1.3 ([@fabaff] - [#18189]) ([toon docs])
- Update python-openzwave to 0.4.11 ([@rafale77] - [#18160]) ([zwave docs])
- Refactor mysensors message handling ([@MartinHjelmare] - [#17214]) ([mysensors docs])
- Fix temperature interval Thermostat HomeKit ([@cdce8p] - [#18192]) ([homekit docs])
- Add more type hints to helpers ([@scop] - [#18196])
- Implemented tplink_lte components and notify service via SMS ([@andtos90] - [#17111]) ([notify docs]) ([tplink_lte docs]) (new-platform)
- Add destination and icon ([@Dav0815] - [#18210]) ([sensor.transport_nsw docs])
- Webhook names ([@balloob] - [#18206])
- Add Traccar device tracker ([@ludeeus] - [#18200]) ([device_tracker docs]) (new-platform)
- Turn off not cancellable scripts automatically HomeKit ([@quthla] - [#17793]) ([homekit docs])
- add service to reconnect the bot ([@hobbypunk90] - [#18142]) ([hangouts docs])
- Bump version of pywemo to 0.4.29 ([@sqldiablo] - [#18217]) ([wemo docs])
- Removes melissa sensors (they should be state attributes as implemented in #18201) ([@kennedyshead] - [#18214]) ([melissa docs]) (breaking change)
- Remove unrelated scripts ([@balloob] - [#18219])
- Add available property to DirecTV ([@ehendrix23] - [#18168]) ([media_player.directv docs])
- deCONZ - reflect hub status on entities ([@Kane610] - [#18106]) ([deconz docs]) ([binary_sensor.deconz docs]) ([cover.deconz docs]) ([light.deconz docs]) ([scene.deconz docs]) ([sensor.deconz docs]) ([switch.deconz docs])
- Ignore duplicate state changes GarageDoor HomeKit ([@cdce8p] - [#18149]) ([homekit docs])
- Activate kodi media player progress bar ([@vetegrodd] - [#17626]) ([media_player.kodi docs])
- Duplicate entities on discovery ([@ehendrix23] - [#18074]) ([media_player.directv docs])
- Mill room temp ([@Danielhiversen] - [#18203]) ([climate.mill docs])
- Add scenes as switches HomeKit ([@quthla] - [#17799]) ([homekit docs]) (new-feature)
- Improve debug log information ([@ehendrix23] - [#18230]) ([sensor.statistics docs])
- Tibber login validate ([@Danielhiversen] - [#18235]) ([tibber docs])
- Add Xiaomi Smartmi Fresh Air System support ([@syssi] - [#18097]) ([fan.xiaomi_miio docs])
- Elk-M1 fixes ([@gwww] - [#18154]) ([elkm1 docs])
- Lovelace: Duplicate ID check on load config + caching ([@bramkragten] - [#18152]) ([lovelace docs])
- deCONZ - manual input fallback in config flow ([@Kane610] - [#18116]) ([deconz docs])
- Fix IOLinc sensor ([@teharris1] - [#18250]) ([insteon docs]) ([binary_sensor.insteon docs])
- Add support for locks in google assistant component ([@ahayworth] - [#18233]) ([cloud docs]) ([google_assistant docs])
- Add workaround to use notification state for zwave lock state ([@mtreinish] - [#17386]) ([zwave docs]) ([lock.zwave docs])
- Add season icons ([@tjorim] - [#18221]) ([sensor.season docs])
- docstring fix ([@smurfix] - [#18257])
- Report *which* component didn't return a bool ([@smurfix] - [#18258])
- Fritz keepalive ([@akloeckner] - [#18155]) ([sensor.fritzbox_callmonitor docs])
- Add additional property to HomeKitSwitch to show whether the Homekit outlet is in use ([@drndos] - [#17448]) ([switch.homekit_controller docs])
- Add support for Google Home device tracking ([@ludeeus] - [#18190]) ([device_tracker docs]) (new-platform)
- Correct expose_by_default interaction with expose_domains ([@glentakahashi] - [#17745]) ([google_assistant docs])
- Melissa state_attributes ([@kennedyshead] - [#18201]) ([climate.melissa docs])
- Support eco mode option on Ziggo Mediabox XL ([@4lloyd] - [#17990]) ([media_player.ziggo_mediabox_xl docs])
- Add attributes of ARP table ([@akloeckner] - [#17987]) ([device_tracker docs])
- Add input_boolean reporting to Prometheus ([@TFenby] - [#17966]) ([prometheus docs])
- Add Xiaomi Air Purifier 2s support ([@syssi] - [#18260]) ([fan.xiaomi_miio docs])
- Allow alexa to simply turn on and off climate components. ([@Parlane] - [#16989]) ([alexa docs])
- Enable config flow for Luftdaten ([@fabaff] - [#17700]) ([luftdaten docs]) ([sensor.luftdaten docs]) (breaking change)
- Adding current_humidity to attributes if its not None. ([@kennedyshead] - [#18261]) ([climate docs])
- Add iAlarm "triggered" support ([@RyuzakiKK] - [#18263]) ([alarm_control_panel.ialarm docs])
- Add support for switches in homekit controller ([@drndos] - [#17916]) ([homekit_controller docs])
- Move more MQTT platforms to config entries ([@emontnemery] - [#18180]) ([lock docs]) ([mqtt docs]) ([light.mqtt_json docs]) ([lock.mqtt docs])
- Switch OwnTracks HTTP to use webhook component ([@kirichkov] - [#17034]) ([device_tracker docs]) (breaking change)
- Update Neato states, actions and alerts based on Neato docs ([@dshokouhi] - [#17353]) ([neato docs]) (breaking change)
- Add services to set/update and cancel Nest ETA ([@schmittx] - [#17836]) ([nest docs]) (breaking change)
- Normalize MAC addresses ([@balloob] - [#16916])
- HmIP thermostat fix with operations ([@pvizeli] - [#18068]) ([climate.homematic docs])
- Update PR checklist with commented out code check ([@armills] - [#18272])
- Add Norwegian Public Transportation sensor (Ruter). ([@ludeeus] - [#18237]) ([sensor.ruter docs]) (new-platform)
- Split out geofency with a component and platform ([@rohankapoorcom] - [#17933]) ([device_tracker docs]) ([geofency docs]) (breaking change) (new-platform)
- Use async_add_executor_job at the xiaomi_miio platforms ([@syssi] - [#18294]) ([device_tracker docs]) ([fan.xiaomi_miio docs]) ([light.xiaomi_miio docs]) ([remote.xiaomi_miio docs]) ([sensor.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs])
- Remove skipped device tracker tests ([@armills] - [#18291])
- Update litejet automation tests to async ([@armills] - [#18287])
- Update manual ACP tests to async ([@armills] - [#18289])
- Update input component tests to async ([@armills] - [#18290])
- Darksky: Add icon to summary sensors ([@leppa] - [#18275]) ([sensor.darksky docs])
- Add support for Lupusec alarm control panel ([@majuss] - [#17691]) ([lupusec docs]) ([alarm_control_panel.lupusec docs]) ([binary_sensor.lupusec docs]) ([switch.lupusec docs]) (new-platform)
- Improve version sensor ([@tjorim] - [#18292])
- Upgrade hdate to 0.7.5 ([@tsvi] - [#18296]) ([sensor.jewish_calendar docs])
- Add SUPPORT_SEEK for DLNA DMR devices + now (better) providing media_image_url for DLNA DMR devices ([@StevenLooman] - [#18157]) ([upnp docs]) ([media_player.dlna_dmr docs])
- Add upload and download sensors and component for asuswrt ([@kennedyshead] - [#17757]) ([asuswrt docs]) ([device_tracker docs]) ([sensor.asuswrt docs]) (breaking change) (new-platform)
- Update pyruter to 1.1.0 to be able to reuse aiohttp session. ([@ludeeus] - [#18310]) ([sensor.ruter docs])
- Make flux switch async ([@jawilson] - [#18277]) ([switch.flux docs])
- Add support for 17track.net package sensors ([@bachya] - [#18038]) ([sensor.seventeentrack docs]) (new-platform)
- Added optional precision configuration option to generic_thermostat. ([@partofthething] - [#18317]) ([climate.generic_thermostat docs])
- System groups ([@balloob] - [#18303])
- Doc fix: a circular dependency does not raise an error. ([@smurfix] - [#18298])
- Add new launch sensor to keep track of space launches. ([@ludeeus] - [#18274]) ([sensor.launch_library docs]) (new-platform)
- W800rf32 ([@horga83] - [#17920]) ([w800rf32 docs]) ([binary_sensor.w800rf32 docs]) (new-platform)
- Srpenergy ([@briglx] - [#18036]) ([sensor.srp_energy docs]) (new-platform)
- Restrict recorder query to include max age ([@ehendrix23] - [#18231]) ([sensor.statistics docs])
- Add support for sensors from Flu Near You ([@bachya] - [#18136]) ([sensor.flunearyou docs]) (new-platform)
- Rename sensor.launch to sensor.launch_library ([@ludeeus] - [#18337]) ([sensor.launch_library docs]) (beta fix)
- Switchmate library update ([@Danielhiversen] - [#18336]) ([switch.switchmate docs])
- bump total connect client to 0.22 ([@uchagani] - [#18344]) ([alarm_control_panel.totalconnect docs])
- Update credstash.py ([@iamtpage] - [#18349])
- Update HAP-python to 2.4.0 ([@cdce8p] - [#18355]) ([homekit docs])
- add heartbeat support to mysensors ([@inetAnt] - [#18359]) ([mysensors docs])
- Upgrade pytest and pytest-sugar ([@scop] - [#18338])
- Show battery_level as a percent vs a decimal ([@chriskacerguis] - [#18328]) ([wirelesstag docs]) (breaking change)
- Better error handling in Tibber ([@Danielhiversen] - [#18363]) ([tibber docs]) ([sensor.tibber docs])
- Upgrade async_upnp_client to 0.13.2 ([@StevenLooman] - [#18377]) ([upnp docs]) ([media_player.dlna_dmr docs])
- Add more type hints to helpers ([@scop] - [#18350])
- Return color information in Alexa Smart Home response ([@jackwilsdon] - [#18368]) ([alexa docs])
- Fix and improvment of Swiss Hydrological Data component ([@Bouni] - [#17166]) ([sensor.swiss_hydrological_data docs])
- Fixed misspellings in some of the Pollen sensor names ([@bachya] - [#18382]) ([sensor.pollen docs])
- Google assistant enable fan speed controls ([@marchingphoenix] - [#18373]) ([google_assistant docs])
- Discord - Minor bugfixes ([@sqldiablo] - [#18385]) ([notify docs])
- Update waze_travel_time.py ([@hmmbob] - [#18399]) ([sensor.waze_travel_time docs])
- Bumping aioasuswrt ([@kennedyshead] - [#18400]) ([asuswrt docs])
- Filter Coinbase account wallets ([@tjorim] - [#18167]) ([coinbase docs])
- Update pynello to 2.0.2 ([@ultrara1n] - [#18402]) ([lock.nello docs])
- Add niko-home-control support ([@legovaer] - [#18019]) ([light.niko_home_control docs]) (new-platform)
- Add support for keypad keypress ([@gwww] - [#18393]) ([elkm1 docs]) ([sensor.elkm1 docs])
- Use existing constant ([@fabaff] - [#18408]) ([weather.ecobee docs])
- Bumps pytile to 2.0.5 ([@bachya] - [#18395]) ([device_tracker docs])
- Daikin fixes ([@fredrike] - [#18415]) ([daikin docs]) ([climate.daikin docs])
- Sense will not list removed devices ([@kbickar] - [#18410]) ([binary_sensor.sense docs])
- Fix smhi docstrings ([@fabaff] - [#18414]) ([smhi docs]) ([weather.smhi docs])
- Avg price for tibber sensor ([@Danielhiversen] - [#18426]) ([sensor.tibber docs])
- Bumping aioasuswrt ([@kennedyshead] - [#18427]) ([asuswrt docs])
- Fixes issue for returning the correct docker version. ([@ludeeus] - [#18439]) ([sensor.version docs])
- Update Magicseaweed sensor ([@jcconnell] - [#18446]) ([sensor.magicseaweed docs])
- Bump elkm1_lib version ([@gwww] - [#18450]) ([elkm1 docs])
- Add Philips Zhirui Downlight support ([@syssi] - [#18455]) ([light.xiaomi_miio docs])
- Init statistics sensor upon HASS start ([@ehendrix23] - [#18236]) ([sensor.statistics docs])
- fixes for last version bump on pydaikin ([@fredrike] - [#18438])
- Readded climate.velbus ([@Cereal2nd] - [#18434]) ([velbus docs]) ([climate.velbus docs]) (new-platform)
- Make mikrotik method setting optional as intended ([@WoLpH] - [#18454]) ([device_tracker docs])
- Improve support for 1. generation mill heater ([@Danielhiversen] - [#18423]) ([climate.mill docs])
- Initial support for Fibaro HomeCenter hubs ([@pbalogh77] - [#17891]) ([fibaro docs]) ([binary_sensor.fibaro docs]) (new-platform)
- Add Rainmachine config entry ([@bachya] - [#18419]) ([rainmachine docs]) ([binary_sensor.rainmachine docs]) ([sensor.rainmachine docs]) ([switch.rainmachine docs])
- AirVisual: Show icon for air pollution level, based on its value ([@leppa] - [#18482]) ([sensor.airvisual docs])
- Add Rainmachine to the device registry ([@bachya] - [#18452]) ([rainmachine docs]) ([binary_sensor.rainmachine docs]) ([sensor.rainmachine docs]) ([switch.rainmachine docs])
- Fixed bug for receivers without support for new command ([@leothlon] - [#18478]) ([media_player.onkyo docs])
- Alexa v3 name change for additionalApplianceDetails ([@pc-coholic] - [#18485]) ([alexa docs])
- Add safe_mode HomeKit ([@cdce8p] - [#18356]) ([homekit docs])
- Update HAP-python 2.4.1 ([@cdce8p] - [#18417]) ([homekit docs])
- Upgrade youtube_dl to 2018.11.07 ([@fabaff] - [#18507]) ([media_extractor docs])
- Upgrade numpy to 1.15.4 ([@fabaff] - [#18506]) ([binary_sensor.trend docs]) ([image_processing.opencv docs]) ([image_processing.tensorflow docs]) ([sensor.pollen docs])
- Upgrade sphinx-autodoc-typehints to 1.5.0 ([@fabaff] - [#18505])
- Upgrade sqlalchemy to 1.2.14 ([@fabaff] - [#18504]) ([sensor.sql docs])
- Ban systemair-savecair ([@balloob] - [#18483])
- fixed sky_hub schema to reflect documentation ([@eliseomartelli] - [#18509]) ([device_tracker docs])
- Improve real time consumption for Tibber sensor ([@Danielhiversen] - [#18517]) ([tibber docs])
- Clean up left-behind dispatcher handlers when removing RainMachine ([@bachya] - [#18488]) ([rainmachine docs]) ([binary_sensor.rainmachine docs]) ([sensor.rainmachine docs]) ([switch.rainmachine docs])
- Improve handling of unavailable Sonos speakers ([@amelchio] - [#18534]) ([sonos docs]) ([media_player.sonos docs])
- Upgrade ruamel.yaml to 0.15.78 ([@fabaff] - [#18508]) ([media_extractor docs])
- Mill lib ([@Danielhiversen] - [#18529]) ([climate.mill docs])
- Upgrade pytest and pytest-cov ([@scop] - [#18542])
- Make MyQ platform async ([@bachya] - [#18489]) ([cover.myq docs])
- Upgrade vsure to 1.5.2 ([@persandstrom] - [#18557]) ([verisure docs])
- Allow unloading of LIFX config entry ([@amelchio] - [#18535]) ([lifx docs]) ([light.lifx docs])
- Re-adding the season attribute ([@sdelliot] - [#18523]) ([sensor.pollen docs])
- Enable native support + ADB authentication for Fire TV ([@JeffLIrion] - [#17767]) ([media_player.firetv docs]) (breaking change)
- Fix small issue related to topic prefix ([@emontnemery] - [#18512]) ([mqtt docs])
- Avoid race in entity_platform.async_add_entities() ([@emontnemery] - [#18445])
- Logbook speedup ([@jaxer] - [#18376]) (breaking change)
- Log delay and wait_template steps in scripts ([@pnbruckner] - [#18448])
- Remove turn_on and turn_off feature for clients ([@ehendrix23] - [#18234]) ([media_player.directv docs])
- Add support for sessions ([@ehendrix23] - [#18518]) ([august docs])
- Correct cached stale device tracker handling ([@arigilder] - [#18572]) ([device_tracker docs])
- Template binary sensor to not track all state changes ([@amelchio] - [#18573]) ([binary_sensor.template docs]) (breaking change)
- Support for Point component ([@fredrike] - [#17466]) ([point docs]) ([binary_sensor.point docs]) ([sensor.point docs]) (new-platform)
- Fix for epson state not updating ([@bw3] - [#18357]) ([media_player.epson docs])
- Update pyhomematic to 0.1.52 and add features for lights ([@danielperna84] - [#18499]) ([homematic docs]) ([light.homematic docs])
- Darksky: Expose missing conditions for day 0 forecast ([@leppa] - [#18312]) ([sensor.darksky docs]) (breaking change)
- Reconfigure MQTT binary_sensor component if discovery info is changed ([@emontnemery] - [#18169]) ([mqtt docs]) ([binary_sensor.mqtt docs])
- Add mikrotik SSL support ([@soosp] - [#17898]) ([device_tracker docs])
- Fix MQTT async_added_to_hass ([@balloob] - [#18575]) ([alarm_control_panel.manual_mqtt docs]) ([camera.mqtt docs])
- Prefix all xiaomi_aqara events ([@syssi] - [#17354]) ([binary_sensor.xiaomi_aqara docs]) (breaking change)
- Bumped ghlocalapi to 0.1.0 ([@eliseomartelli] - [#18584]) ([device_tracker docs])
- Added unique id to all Wink devices. ([@w1ll1am23] - [#18589]) ([wink docs])
- Adds light switch platform ([@frenck] - [#18562]) ([light.switch docs]) (new-platform)
- Bump Python-Nest to 4.0.5 ([@balloob] - [#18580]) ([nest docs]) ([climate.nest docs])
- Add websocket calls to shopping-list ([@iantrich] - [#18392]) ([shopping_list docs])
- Revert changes that broke UI ([@dapowers87] - [#18495])
- Hass.io config check ([@pvizeli] - [#18576]) ([hassio docs])
- Add support for Daikin BRP069B41 ([@fredrike] - [#18564]) ([daikin docs]) ([climate.daikin docs])
- Z-Wave Lock Config Entry Support ([@cgarwood] - [#18209]) ([lock docs]) ([zwave docs]) ([lock.zwave docs])
- Improve available for Mill heater ([@Danielhiversen] - [#18597]) ([climate.mill docs])
- Update Z-Wave Tests asyncio/yield from -> async/await ([@cgarwood] - [#18599])
- Add cloud pref for Google unlock ([@balloob] - [#18600]) ([cloud docs]) (new-platform)
- Change channel with play_media instead of select_source ([@ehendrix23] - [#18474]) ([media_player.directv docs]) (breaking change)
- Fibaro components ([@pbalogh77] - [#18487]) ([fibaro docs]) ([cover.fibaro docs]) ([light.fibaro docs]) ([sensor.fibaro docs]) ([switch.fibaro docs]) (new-platform)
- Upgrade blinkpy to 0.10.3 (Fixes #18341) ([@fronzbot] - [#18603]) ([blink docs])
- Add permissions check in service helper ([@balloob] - [#18596])
- Add support for HTTPS and basic HTTP authentication for Glances ([@ludeeus] - [#18608]) ([sensor.glances docs])
- Add support for Panasonic Blu-Ray players ([@u1f35c] - [#18541]) ([media_player.panasonic_bluray docs]) (new-platform)
- Update locationsharinglib requirement to 3.0.8 ([@pc-coholic] - [#18612]) ([device_tracker docs])
- Fix mqtt cover inverted ([@pszafer] - [#18456]) ([cover.mqtt docs])
- Upgrade requests to 2.20.1 ([@fabaff] - [#18615])
- Use asyncio Lock for fibaro light ([@pbalogh77] - [#18622]) ([light.fibaro docs]) (beta fix)
- fixed wording that may confuse user ([@eliseomartelli] - [#18628]) (beta fix)
- Updated webhook_register, version bump pypoint ([@fredrike] - [#18635]) ([point docs]) (beta fix)
- Fix vol Dict -> dict ([@bramkragten] - [#18637]) ([lovelace docs]) (beta fix)
- Set correct default offset ([@ludeeus] - [#18678]) ([sensor.ruter docs]) (beta fix)
- Add permission checks to Rest API ([@balloob] - [#18639]) ([api docs]) ([http docs]) (beta fix)
- Fix logbook filtering entities ([@balloob] - [#18721]) ([logbook docs]) (beta fix)
- Async tests for owntracks device tracker ([@armills] - [#18681]) (beta fix)
- OwnTracks Config Entry ([@balloob] - [#18759]) ([device_tracker docs]) ([owntracks docs]) (breaking change) (beta fix)
- Default to on if logged in ([@balloob] - [#18766]) ([cloud docs]) (beta fix)
[#16916]: https://github.com/home-assistant/home-assistant/pull/16916
[#16989]: https://github.com/home-assistant/home-assistant/pull/16989
[#17034]: https://github.com/home-assistant/home-assistant/pull/17034
[#17111]: https://github.com/home-assistant/home-assistant/pull/17111
[#17166]: https://github.com/home-assistant/home-assistant/pull/17166
[#17214]: https://github.com/home-assistant/home-assistant/pull/17214
[#17353]: https://github.com/home-assistant/home-assistant/pull/17353
[#17354]: https://github.com/home-assistant/home-assistant/pull/17354
[#17386]: https://github.com/home-assistant/home-assistant/pull/17386
[#17426]: https://github.com/home-assistant/home-assistant/pull/17426
[#17448]: https://github.com/home-assistant/home-assistant/pull/17448
[#17466]: https://github.com/home-assistant/home-assistant/pull/17466
[#17626]: https://github.com/home-assistant/home-assistant/pull/17626
[#17691]: https://github.com/home-assistant/home-assistant/pull/17691
[#17700]: https://github.com/home-assistant/home-assistant/pull/17700
[#17745]: https://github.com/home-assistant/home-assistant/pull/17745
[#17757]: https://github.com/home-assistant/home-assistant/pull/17757
[#17767]: https://github.com/home-assistant/home-assistant/pull/17767
[#17793]: https://github.com/home-assistant/home-assistant/pull/17793
[#17799]: https://github.com/home-assistant/home-assistant/pull/17799
[#17835]: https://github.com/home-assistant/home-assistant/pull/17835
[#17836]: https://github.com/home-assistant/home-assistant/pull/17836
[#17852]: https://github.com/home-assistant/home-assistant/pull/17852
[#17891]: https://github.com/home-assistant/home-assistant/pull/17891
[#17898]: https://github.com/home-assistant/home-assistant/pull/17898
[#17916]: https://github.com/home-assistant/home-assistant/pull/17916
[#17920]: https://github.com/home-assistant/home-assistant/pull/17920
[#17933]: https://github.com/home-assistant/home-assistant/pull/17933
[#17966]: https://github.com/home-assistant/home-assistant/pull/17966
[#17987]: https://github.com/home-assistant/home-assistant/pull/17987
[#17990]: https://github.com/home-assistant/home-assistant/pull/17990
[#18019]: https://github.com/home-assistant/home-assistant/pull/18019
[#18036]: https://github.com/home-assistant/home-assistant/pull/18036
[#18038]: https://github.com/home-assistant/home-assistant/pull/18038
[#18068]: https://github.com/home-assistant/home-assistant/pull/18068
[#18074]: https://github.com/home-assistant/home-assistant/pull/18074
[#18097]: https://github.com/home-assistant/home-assistant/pull/18097
[#18106]: https://github.com/home-assistant/home-assistant/pull/18106
[#18116]: https://github.com/home-assistant/home-assistant/pull/18116
[#18136]: https://github.com/home-assistant/home-assistant/pull/18136
[#18142]: https://github.com/home-assistant/home-assistant/pull/18142
[#18149]: https://github.com/home-assistant/home-assistant/pull/18149
[#18152]: https://github.com/home-assistant/home-assistant/pull/18152
[#18154]: https://github.com/home-assistant/home-assistant/pull/18154
[#18155]: https://github.com/home-assistant/home-assistant/pull/18155
[#18157]: https://github.com/home-assistant/home-assistant/pull/18157
[#18160]: https://github.com/home-assistant/home-assistant/pull/18160
[#18161]: https://github.com/home-assistant/home-assistant/pull/18161
[#18163]: https://github.com/home-assistant/home-assistant/pull/18163
[#18167]: https://github.com/home-assistant/home-assistant/pull/18167
[#18168]: https://github.com/home-assistant/home-assistant/pull/18168
[#18169]: https://github.com/home-assistant/home-assistant/pull/18169
[#18170]: https://github.com/home-assistant/home-assistant/pull/18170
[#18172]: https://github.com/home-assistant/home-assistant/pull/18172
[#18180]: https://github.com/home-assistant/home-assistant/pull/18180
[#18183]: https://github.com/home-assistant/home-assistant/pull/18183
[#18189]: https://github.com/home-assistant/home-assistant/pull/18189
[#18190]: https://github.com/home-assistant/home-assistant/pull/18190
[#18192]: https://github.com/home-assistant/home-assistant/pull/18192
[#18196]: https://github.com/home-assistant/home-assistant/pull/18196
[#18200]: https://github.com/home-assistant/home-assistant/pull/18200
[#18201]: https://github.com/home-assistant/home-assistant/pull/18201
[#18203]: https://github.com/home-assistant/home-assistant/pull/18203
[#18206]: https://github.com/home-assistant/home-assistant/pull/18206
[#18209]: https://github.com/home-assistant/home-assistant/pull/18209
[#18210]: https://github.com/home-assistant/home-assistant/pull/18210
[#18214]: https://github.com/home-assistant/home-assistant/pull/18214
[#18217]: https://github.com/home-assistant/home-assistant/pull/18217
[#18219]: https://github.com/home-assistant/home-assistant/pull/18219
[#18221]: https://github.com/home-assistant/home-assistant/pull/18221
[#18230]: https://github.com/home-assistant/home-assistant/pull/18230
[#18231]: https://github.com/home-assistant/home-assistant/pull/18231
[#18233]: https://github.com/home-assistant/home-assistant/pull/18233
[#18234]: https://github.com/home-assistant/home-assistant/pull/18234
[#18235]: https://github.com/home-assistant/home-assistant/pull/18235
[#18236]: https://github.com/home-assistant/home-assistant/pull/18236
[#18237]: https://github.com/home-assistant/home-assistant/pull/18237
[#18250]: https://github.com/home-assistant/home-assistant/pull/18250
[#18257]: https://github.com/home-assistant/home-assistant/pull/18257
[#18258]: https://github.com/home-assistant/home-assistant/pull/18258
[#18260]: https://github.com/home-assistant/home-assistant/pull/18260
[#18261]: https://github.com/home-assistant/home-assistant/pull/18261
[#18263]: https://github.com/home-assistant/home-assistant/pull/18263
[#18272]: https://github.com/home-assistant/home-assistant/pull/18272
[#18274]: https://github.com/home-assistant/home-assistant/pull/18274
[#18275]: https://github.com/home-assistant/home-assistant/pull/18275
[#18277]: https://github.com/home-assistant/home-assistant/pull/18277
[#18287]: https://github.com/home-assistant/home-assistant/pull/18287
[#18289]: https://github.com/home-assistant/home-assistant/pull/18289
[#18290]: https://github.com/home-assistant/home-assistant/pull/18290
[#18291]: https://github.com/home-assistant/home-assistant/pull/18291
[#18292]: https://github.com/home-assistant/home-assistant/pull/18292
[#18294]: https://github.com/home-assistant/home-assistant/pull/18294
[#18296]: https://github.com/home-assistant/home-assistant/pull/18296
[#18298]: https://github.com/home-assistant/home-assistant/pull/18298
[#18303]: https://github.com/home-assistant/home-assistant/pull/18303
[#18310]: https://github.com/home-assistant/home-assistant/pull/18310
[#18312]: https://github.com/home-assistant/home-assistant/pull/18312
[#18317]: https://github.com/home-assistant/home-assistant/pull/18317
[#18328]: https://github.com/home-assistant/home-assistant/pull/18328
[#18336]: https://github.com/home-assistant/home-assistant/pull/18336
[#18337]: https://github.com/home-assistant/home-assistant/pull/18337
[#18338]: https://github.com/home-assistant/home-assistant/pull/18338
[#18344]: https://github.com/home-assistant/home-assistant/pull/18344
[#18349]: https://github.com/home-assistant/home-assistant/pull/18349
[#18350]: https://github.com/home-assistant/home-assistant/pull/18350
[#18355]: https://github.com/home-assistant/home-assistant/pull/18355
[#18356]: https://github.com/home-assistant/home-assistant/pull/18356
[#18357]: https://github.com/home-assistant/home-assistant/pull/18357
[#18359]: https://github.com/home-assistant/home-assistant/pull/18359
[#18363]: https://github.com/home-assistant/home-assistant/pull/18363
[#18368]: https://github.com/home-assistant/home-assistant/pull/18368
[#18373]: https://github.com/home-assistant/home-assistant/pull/18373
[#18376]: https://github.com/home-assistant/home-assistant/pull/18376
[#18377]: https://github.com/home-assistant/home-assistant/pull/18377
[#18382]: https://github.com/home-assistant/home-assistant/pull/18382
[#18385]: https://github.com/home-assistant/home-assistant/pull/18385
[#18392]: https://github.com/home-assistant/home-assistant/pull/18392
[#18393]: https://github.com/home-assistant/home-assistant/pull/18393
[#18395]: https://github.com/home-assistant/home-assistant/pull/18395
[#18399]: https://github.com/home-assistant/home-assistant/pull/18399
[#18400]: https://github.com/home-assistant/home-assistant/pull/18400
[#18402]: https://github.com/home-assistant/home-assistant/pull/18402
[#18408]: https://github.com/home-assistant/home-assistant/pull/18408
[#18410]: https://github.com/home-assistant/home-assistant/pull/18410
[#18414]: https://github.com/home-assistant/home-assistant/pull/18414
[#18415]: https://github.com/home-assistant/home-assistant/pull/18415
[#18417]: https://github.com/home-assistant/home-assistant/pull/18417
[#18419]: https://github.com/home-assistant/home-assistant/pull/18419
[#18423]: https://github.com/home-assistant/home-assistant/pull/18423
[#18426]: https://github.com/home-assistant/home-assistant/pull/18426
[#18427]: https://github.com/home-assistant/home-assistant/pull/18427
[#18434]: https://github.com/home-assistant/home-assistant/pull/18434
[#18438]: https://github.com/home-assistant/home-assistant/pull/18438
[#18439]: https://github.com/home-assistant/home-assistant/pull/18439
[#18445]: https://github.com/home-assistant/home-assistant/pull/18445
[#18446]: https://github.com/home-assistant/home-assistant/pull/18446
[#18448]: https://github.com/home-assistant/home-assistant/pull/18448
[#18450]: https://github.com/home-assistant/home-assistant/pull/18450
[#18452]: https://github.com/home-assistant/home-assistant/pull/18452
[#18454]: https://github.com/home-assistant/home-assistant/pull/18454
[#18455]: https://github.com/home-assistant/home-assistant/pull/18455
[#18456]: https://github.com/home-assistant/home-assistant/pull/18456
[#18474]: https://github.com/home-assistant/home-assistant/pull/18474
[#18478]: https://github.com/home-assistant/home-assistant/pull/18478
[#18482]: https://github.com/home-assistant/home-assistant/pull/18482
[#18483]: https://github.com/home-assistant/home-assistant/pull/18483
[#18485]: https://github.com/home-assistant/home-assistant/pull/18485
[#18487]: https://github.com/home-assistant/home-assistant/pull/18487
[#18488]: https://github.com/home-assistant/home-assistant/pull/18488
[#18489]: https://github.com/home-assistant/home-assistant/pull/18489
[#18495]: https://github.com/home-assistant/home-assistant/pull/18495
[#18499]: https://github.com/home-assistant/home-assistant/pull/18499
[#18504]: https://github.com/home-assistant/home-assistant/pull/18504
[#18505]: https://github.com/home-assistant/home-assistant/pull/18505
[#18506]: https://github.com/home-assistant/home-assistant/pull/18506
[#18507]: https://github.com/home-assistant/home-assistant/pull/18507
[#18508]: https://github.com/home-assistant/home-assistant/pull/18508
[#18509]: https://github.com/home-assistant/home-assistant/pull/18509
[#18512]: https://github.com/home-assistant/home-assistant/pull/18512
[#18517]: https://github.com/home-assistant/home-assistant/pull/18517
[#18518]: https://github.com/home-assistant/home-assistant/pull/18518
[#18523]: https://github.com/home-assistant/home-assistant/pull/18523
[#18529]: https://github.com/home-assistant/home-assistant/pull/18529
[#18534]: https://github.com/home-assistant/home-assistant/pull/18534
[#18535]: https://github.com/home-assistant/home-assistant/pull/18535
[#18541]: https://github.com/home-assistant/home-assistant/pull/18541
[#18542]: https://github.com/home-assistant/home-assistant/pull/18542
[#18557]: https://github.com/home-assistant/home-assistant/pull/18557
[#18562]: https://github.com/home-assistant/home-assistant/pull/18562
[#18564]: https://github.com/home-assistant/home-assistant/pull/18564
[#18572]: https://github.com/home-assistant/home-assistant/pull/18572
[#18573]: https://github.com/home-assistant/home-assistant/pull/18573
[#18575]: https://github.com/home-assistant/home-assistant/pull/18575
[#18576]: https://github.com/home-assistant/home-assistant/pull/18576
[#18580]: https://github.com/home-assistant/home-assistant/pull/18580
[#18584]: https://github.com/home-assistant/home-assistant/pull/18584
[#18589]: https://github.com/home-assistant/home-assistant/pull/18589
[#18596]: https://github.com/home-assistant/home-assistant/pull/18596
[#18597]: https://github.com/home-assistant/home-assistant/pull/18597
[#18599]: https://github.com/home-assistant/home-assistant/pull/18599
[#18600]: https://github.com/home-assistant/home-assistant/pull/18600
[#18603]: https://github.com/home-assistant/home-assistant/pull/18603
[#18608]: https://github.com/home-assistant/home-assistant/pull/18608
[#18612]: https://github.com/home-assistant/home-assistant/pull/18612
[#18615]: https://github.com/home-assistant/home-assistant/pull/18615
[#18622]: https://github.com/home-assistant/home-assistant/pull/18622
[#18628]: https://github.com/home-assistant/home-assistant/pull/18628
[#18635]: https://github.com/home-assistant/home-assistant/pull/18635
[#18637]: https://github.com/home-assistant/home-assistant/pull/18637
[#18639]: https://github.com/home-assistant/home-assistant/pull/18639
[#18678]: https://github.com/home-assistant/home-assistant/pull/18678
[#18681]: https://github.com/home-assistant/home-assistant/pull/18681
[#18721]: https://github.com/home-assistant/home-assistant/pull/18721
[#18759]: https://github.com/home-assistant/home-assistant/pull/18759
[#18766]: https://github.com/home-assistant/home-assistant/pull/18766
[@4lloyd]: https://github.com/4lloyd
[@Bouni]: https://github.com/Bouni
[@Cereal2nd]: https://github.com/Cereal2nd
[@Danielhiversen]: https://github.com/Danielhiversen
[@Dav0815]: https://github.com/Dav0815
[@JeffLIrion]: https://github.com/JeffLIrion
[@Kane610]: https://github.com/Kane610
[@MartinHjelmare]: https://github.com/MartinHjelmare
[@Parlane]: https://github.com/Parlane
[@RyuzakiKK]: https://github.com/RyuzakiKK
[@StevenLooman]: https://github.com/StevenLooman
[@TFenby]: https://github.com/TFenby
[@WoLpH]: https://github.com/WoLpH
[@ahayworth]: https://github.com/ahayworth
[@akloeckner]: https://github.com/akloeckner
[@amelchio]: https://github.com/amelchio
[@andtos90]: https://github.com/andtos90
[@arigilder]: https://github.com/arigilder
[@armills]: https://github.com/armills
[@bachya]: https://github.com/bachya
[@balloob]: https://github.com/balloob
[@bramkragten]: https://github.com/bramkragten
[@briglx]: https://github.com/briglx
[@bw3]: https://github.com/bw3
[@cdce8p]: https://github.com/cdce8p
[@cgarwood]: https://github.com/cgarwood
[@chriskacerguis]: https://github.com/chriskacerguis
[@danielperna84]: https://github.com/danielperna84
[@dapowers87]: https://github.com/dapowers87
[@drndos]: https://github.com/drndos
[@dshokouhi]: https://github.com/dshokouhi
[@ehendrix23]: https://github.com/ehendrix23
[@eliseomartelli]: https://github.com/eliseomartelli
[@emontnemery]: https://github.com/emontnemery
[@fabaff]: https://github.com/fabaff
[@flowolf]: https://github.com/flowolf
[@fredrike]: https://github.com/fredrike
[@frenck]: https://github.com/frenck
[@fronzbot]: https://github.com/fronzbot
[@glentakahashi]: https://github.com/glentakahashi
[@gwww]: https://github.com/gwww
[@heytensai]: https://github.com/heytensai
[@hmmbob]: https://github.com/hmmbob
[@hobbypunk90]: https://github.com/hobbypunk90
[@horga83]: https://github.com/horga83
[@iamtpage]: https://github.com/iamtpage
[@iantrich]: https://github.com/iantrich
[@inetAnt]: https://github.com/inetAnt
[@jackwilsdon]: https://github.com/jackwilsdon
[@jawilson]: https://github.com/jawilson
[@jaxer]: https://github.com/jaxer
[@jcconnell]: https://github.com/jcconnell
[@kbickar]: https://github.com/kbickar
[@kennedyshead]: https://github.com/kennedyshead
[@kirichkov]: https://github.com/kirichkov
[@legovaer]: https://github.com/legovaer
[@leothlon]: https://github.com/leothlon
[@leppa]: https://github.com/leppa
[@ludeeus]: https://github.com/ludeeus
[@majuss]: https://github.com/majuss
[@marchingphoenix]: https://github.com/marchingphoenix
[@mtreinish]: https://github.com/mtreinish
[@partofthething]: https://github.com/partofthething
[@pbalogh77]: https://github.com/pbalogh77
[@pc-coholic]: https://github.com/pc-coholic
[@persandstrom]: https://github.com/persandstrom
[@pnbruckner]: https://github.com/pnbruckner
[@pszafer]: https://github.com/pszafer
[@pvizeli]: https://github.com/pvizeli
[@quthla]: https://github.com/quthla
[@rafale77]: https://github.com/rafale77
[@rohankapoorcom]: https://github.com/rohankapoorcom
[@schmittx]: https://github.com/schmittx
[@scop]: https://github.com/scop
[@sdelliot]: https://github.com/sdelliot
[@smurfix]: https://github.com/smurfix
[@soosp]: https://github.com/soosp
[@sqldiablo]: https://github.com/sqldiablo
[@syssi]: https://github.com/syssi
[@teharris1]: https://github.com/teharris1
[@tjorim]: https://github.com/tjorim
[@troykelly]: https://github.com/troykelly
[@tsvi]: https://github.com/tsvi
[@u1f35c]: https://github.com/u1f35c
[@uchagani]: https://github.com/uchagani
[@ultrara1n]: https://github.com/ultrara1n
[@vetegrodd]: https://github.com/vetegrodd
[@w1ll1am23]: https://github.com/w1ll1am23
[alarm_control_panel.ialarm docs]: /components/alarm_control_panel.ialarm/
[alarm_control_panel.lupusec docs]: /components/alarm_control_panel.lupusec/
[alarm_control_panel.manual_mqtt docs]: /components/alarm_control_panel.manual_mqtt/
[alarm_control_panel.totalconnect docs]: /components/alarm_control_panel.totalconnect/
[alexa docs]: /components/alexa/
[api docs]: /components/api/
[asuswrt docs]: /components/asuswrt/
[august docs]: /components/august/
[binary_sensor.deconz docs]: /components/binary_sensor.deconz/
[binary_sensor.fibaro docs]: /components/binary_sensor.fibaro/
[binary_sensor.insteon docs]: /components/binary_sensor.insteon/
[binary_sensor.lupusec docs]: /components/binary_sensor.lupusec/
[binary_sensor.mqtt docs]: /components/binary_sensor.mqtt/
[binary_sensor.point docs]: /components/binary_sensor.point/
[binary_sensor.rainmachine docs]: /components/binary_sensor.rainmachine/
[binary_sensor.sense docs]: /components/binary_sensor.sense/
[binary_sensor.template docs]: /components/binary_sensor.template/
[binary_sensor.trend docs]: /components/binary_sensor.trend/
[binary_sensor.w800rf32 docs]: /components/binary_sensor.w800rf32/
[binary_sensor.xiaomi_aqara docs]: /components/binary_sensor.xiaomi_aqara/
[blink docs]: /components/blink/
[camera.mqtt docs]: /components/camera.mqtt/
[climate docs]: /components/climate/
[climate.daikin docs]: /components/climate.daikin/
[climate.generic_thermostat docs]: /components/climate.generic_thermostat/
[climate.homematic docs]: /components/climate.homematic/
[climate.melissa docs]: /components/climate.melissa/
[climate.mill docs]: /components/climate.mill/
[climate.nest docs]: /components/climate.nest/
[climate.velbus docs]: /components/climate.velbus/
[cloud docs]: /components/cloud/
[coinbase docs]: /components/coinbase/
[cover.deconz docs]: /components/cover.deconz/
[cover.fibaro docs]: /components/cover.fibaro/
[cover.mqtt docs]: /components/cover.mqtt/
[cover.myq docs]: /components/cover.myq/
[daikin docs]: /components/daikin/
[deconz docs]: /components/deconz/
[device_tracker docs]: /components/device_tracker/
[elkm1 docs]: /components/elkm1/
[fan.xiaomi_miio docs]: /components/fan.xiaomi_miio/
[fibaro docs]: /components/fibaro/
[geofency docs]: /components/geofency/
[google_assistant docs]: /components/google_assistant/
[hangouts docs]: /components/hangouts/
[hassio docs]: /components/hassio/
[homekit docs]: /components/homekit/
[homekit_controller docs]: /components/homekit_controller/
[homematic docs]: /components/homematic/
[http docs]: /components/http/
[image_processing.opencv docs]: /components/image_processing.opencv/
[image_processing.tensorflow docs]: /components/image_processing.tensorflow/
[insteon docs]: /components/insteon/
[lifx docs]: /components/lifx/
[light.deconz docs]: /components/light.deconz/
[light.fibaro docs]: /components/light.fibaro/
[light.homematic docs]: /components/light.homematic/
[light.lifx docs]: /components/light.lifx/
[light.mqtt_json docs]: /components/light.mqtt_json/
[light.niko_home_control docs]: /components/light.niko_home_control/
[light.switch docs]: /components/light.switch/
[light.xiaomi_miio docs]: /components/light.xiaomi_miio/
[lock docs]: /components/lock/
[lock.mqtt docs]: /components/lock.mqtt/
[lock.nello docs]: /components/lock.nello/
[lock.zwave docs]: /components/lock.zwave/
[logbook docs]: /components/logbook/
[lovelace docs]: /components/lovelace/
[luftdaten docs]: /components/luftdaten/
[lupusec docs]: /components/lupusec/
[media_extractor docs]: /components/media_extractor/
[media_player.directv docs]: /components/media_player.directv/
[media_player.dlna_dmr docs]: /components/media_player.dlna_dmr/
[media_player.epson docs]: /components/media_player.epson/
[media_player.firetv docs]: /components/media_player.firetv/
[media_player.kodi docs]: /components/media_player.kodi/
[media_player.onkyo docs]: /components/media_player.onkyo/
[media_player.panasonic_bluray docs]: /components/media_player.panasonic_bluray/
[media_player.sonos docs]: /components/media_player.sonos/
[media_player.ziggo_mediabox_xl docs]: /components/media_player.ziggo_mediabox_xl/
[melissa docs]: /components/melissa/
[mqtt docs]: /components/mqtt/
[mysensors docs]: /components/mysensors/
[neato docs]: /components/neato/
[nest docs]: /components/nest/
[netgear_lte docs]: /components/netgear_lte/
[notify docs]: /components/notify/
[owntracks docs]: /components/owntracks/
[point docs]: /components/point/
[prometheus docs]: /components/prometheus/
[rainmachine docs]: /components/rainmachine/
[remote.xiaomi_miio docs]: /components/remote.xiaomi_miio/
[scene.deconz docs]: /components/scene.deconz/
[sensor.airvisual docs]: /components/sensor.airvisual/
[sensor.asuswrt docs]: /components/sensor.asuswrt/
[sensor.coinbase docs]: /components/sensor.coinbase/
[sensor.darksky docs]: /components/sensor.darksky/
[sensor.deconz docs]: /components/sensor.deconz/
[sensor.elkm1 docs]: /components/sensor.elkm1/
[sensor.fibaro docs]: /components/sensor.fibaro/
[sensor.flunearyou docs]: /components/sensor.flunearyou/
[sensor.fritzbox_callmonitor docs]: /components/sensor.fritzbox_callmonitor/
[sensor.glances docs]: /components/sensor.glances/
[sensor.jewish_calendar docs]: /components/sensor.jewish_calendar/
[sensor.launch_library docs]: /components/sensor.launch_library/
[sensor.luftdaten docs]: /components/sensor.luftdaten/
[sensor.magicseaweed docs]: /components/sensor.magicseaweed/
[sensor.point docs]: /components/sensor.point/
[sensor.pollen docs]: /components/sensor.pollen/
[sensor.rainmachine docs]: /components/sensor.rainmachine/
[sensor.ruter docs]: /components/sensor.ruter/
[sensor.season docs]: /components/sensor.season/
[sensor.seventeentrack docs]: /components/sensor.seventeentrack/
[sensor.sql docs]: /components/sensor.sql/
[sensor.srp_energy docs]: /components/sensor.srp_energy/
[sensor.statistics docs]: /components/sensor.statistics/
[sensor.swiss_hydrological_data docs]: /components/sensor.swiss_hydrological_data/
[sensor.tautulli docs]: /components/sensor.tautulli/
[sensor.tibber docs]: /components/sensor.tibber/
[sensor.transport_nsw docs]: /components/sensor.transport_nsw/
[sensor.version docs]: /components/sensor.version/
[sensor.waze_travel_time docs]: /components/sensor.waze_travel_time/
[sensor.xiaomi_miio docs]: /components/sensor.xiaomi_miio/
[shopping_list docs]: /components/shopping_list/
[smhi docs]: /components/smhi/
[sonos docs]: /components/sonos/
[switch.deconz docs]: /components/switch.deconz/
[switch.fibaro docs]: /components/switch.fibaro/
[switch.flux docs]: /components/switch.flux/
[switch.homekit_controller docs]: /components/switch.homekit_controller/
[switch.lupusec docs]: /components/switch.lupusec/
[switch.rainmachine docs]: /components/switch.rainmachine/
[switch.switchmate docs]: /components/switch.switchmate/
[switch.xiaomi_miio docs]: /components/switch.xiaomi_miio/
[tibber docs]: /components/tibber/
[toon docs]: /components/toon/
[tplink_lte docs]: /components/tplink_lte/
[upnp docs]: /components/upnp/
[vacuum.xiaomi_miio docs]: /components/vacuum.xiaomi_miio/
[velbus docs]: /components/velbus/
[verisure docs]: /components/verisure/
[w800rf32 docs]: /components/w800rf32/
[weather.ecobee docs]: /components/weather.ecobee/
[weather.smhi docs]: /components/weather.smhi/
[wemo docs]: /components/wemo/
[wink docs]: /components/wink/
[wirelesstag docs]: /components/wirelesstag/
[zha docs]: /components/zha/
[zwave docs]: /components/zwave/

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 82 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" width="123" height="54" viewBox="0 -0.555 123 54" overflow="visible"><path fill="#0F6497" d="M12.771 26.642l7.398-12.849c.104-.129.279-.337.525-.623.247-.286.629-.429 1.149-.429h2.647c.286 0 .532.104.74.312.208.208.311.454.311.74v25.153c0 .286-.104.531-.311.739a1.012 1.012 0 0 1-.74.312h-3.154a1.01 1.01 0 0 1-.74-.312 1.008 1.008 0 0 1-.312-.739V23.722l-5.062 8.761c-.13.207-.312.422-.545.643-.234.221-.532.331-.896.331h-2.025c-.363 0-.662-.11-.895-.331a3.33 3.33 0 0 1-.545-.643l-5.062-8.761v15.225c0 .286-.104.531-.312.739a1.012 1.012 0 0 1-.74.312h-3.15c-.286 0-.533-.104-.74-.312a1.01 1.01 0 0 1-.312-.74V13.793c0-.286.104-.532.312-.74a1.01 1.01 0 0 1 .74-.312h2.647c.519 0 .902.143 1.149.429.246.286.421.494.525.623l7.398 12.849zm21.61 13.355a1.01 1.01 0 0 1-.74-.312 1.006 1.006 0 0 1-.312-.739V13.793c0-.286.104-.532.312-.74a1.01 1.01 0 0 1 .74-.312h3.154c.285 0 .532.104.74.312.208.208.312.454.312.74v25.153c0 .286-.104.532-.312.739a1.012 1.012 0 0 1-.74.312h-3.154zm29.67 0c-.441 0-.779-.116-1.013-.35a6.895 6.895 0 0 1-.506-.546L51.629 22.904v16.042c0 .286-.104.532-.311.739a1.012 1.012 0 0 1-.74.312h-3.154a1.01 1.01 0 0 1-.74-.312 1.006 1.006 0 0 1-.312-.739V13.793c0-.286.104-.532.312-.74a1.01 1.01 0 0 1 .74-.312h2.726c.44 0 .778.117 1.012.35.234.234.402.416.506.545L62.57 29.834V13.793c0-.286.104-.532.312-.74.208-.208.453-.312.74-.312h3.154c.284 0 .531.104.74.312.207.208.311.454.311.74v25.153c0 .286-.104.532-.311.739a1.015 1.015 0 0 1-.74.312h-2.725zm31.888-27.255c.285 0 .531.104.74.312.207.208.312.455.312.74v15.964c0 1.61-.234 3.063-.701 4.361-.468 1.299-1.168 2.415-2.104 3.349-.934.935-2.102 1.654-3.503 2.16-1.402.506-3.024.76-4.868.76-1.869 0-3.498-.254-4.886-.76-1.39-.506-2.552-1.226-3.484-2.16a8.726 8.726 0 0 1-2.084-3.349c-.455-1.297-.682-2.751-.682-4.361V13.793c0-.285.104-.532.312-.74.208-.208.453-.312.74-.312h3.153c.286 0 .532.104.74.312s.312.455.312.74v15.769c0 1.065.143 1.974.429 2.726.285.753.687 1.37 1.207 1.85a4.71 4.71 0 0 0 1.868 1.051 8.135 8.135 0 0 0 2.375.332c.857 0 1.655-.111 2.396-.332.74-.22 1.368-.57 1.888-1.051.52-.48.928-1.096 1.227-1.85.298-.752.447-1.66.447-2.726V13.793c0-.285.104-.532.312-.74.207-.208.454-.312.739-.312h3.115zm26.009 0c.286 0 .532.104.74.312s.312.454.312.739v2.765c0 .286-.104.532-.312.74a1.01 1.01 0 0 1-.74.311h-7.008v21.338c0 .286-.104.531-.312.739s-.455.312-.739.312h-3.155c-.285 0-.532-.104-.739-.312a1.004 1.004 0 0 1-.312-.739V17.608h-7.008c-.287 0-.533-.103-.74-.311a1.006 1.006 0 0 1-.312-.74v-2.765c0-.285.103-.532.312-.74.207-.208.453-.312.74-.312h19.273zM35.962 46.755c1.666 0 2.97 1.26 2.97 2.971 0 1.71-1.305 3.016-2.97 3.016-1.666 0-3.016-1.396-3.016-3.016.001-1.622 1.35-2.971 3.016-2.971m0-46.755c1.666 0 2.97 1.26 2.97 2.971 0 1.71-1.305 3.016-2.97 3.016-1.666 0-3.016-1.396-3.016-3.016C32.947 1.35 34.296 0 35.962 0"/></svg>

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Some files were not shown because too many files have changed in this diff Show More