Merge branch 'current' into next

This commit is contained in:
Paulus Schoutsen 2017-12-03 20:19:15 -08:00
commit 224088b587
13 changed files with 152 additions and 76 deletions

View file

@ -13,7 +13,7 @@ ha_release: 0.59
---
This platform allows you to detect presence by looking at devices connected to a [UniFi AP](http://ubnt.com/unifi-ap/). This device tracker differs form [Ubiquiti Unifi WAP](https://home-assistant.io/components/device_tracker.unifi/) because it doesn't require the Unifi controller software.
This platform allows you to detect presence by looking at devices connected to a [UniFi AP](https://www.ubnt.com/products/#unifi). This device tracker differs form [Ubiquiti Unifi WAP](https://home-assistant.io/components/device_tracker.unifi/) because it doesn't require the Unifi controller software.
To use this device tracker in your installation, add the following to your `configuration.yaml` file:

View file

@ -96,7 +96,9 @@ If you are on Windows and you're using Python 3.5, download the [Netifaces](http
</p>
<p class='note'>
If you see `Not initializing discovery because could not install dependency netdisco==0.6.1` in the logs, you will need to install the `python3-dev` or `python3-devel` package on your system manually (eg. `sudo apt-get install python3-dev` or `sudo dnf -y install python3-devel`). On the next restart of home-assistant, discovery should work. If you still get an error, check if you have a compiler (`gcc`) available on your system.
If you see `Not initializing discovery because could not install dependency netdisco==0.6.1` in the logs, you will need to install the `python3-dev` or `python3-devel` package on your system manually (eg. `sudo apt-get install python3-dev` or `sudo dnf -y install python3-devel`). On the next restart of Home Assistant, the discovery should work. If you still get an error, check if you have a compiler (`gcc`) available on your system.
For DSM/Synology, install via debian-chroot [see this forum post](https://community.home-assistant.io/t/error-starting-home-assistant-on-synology-for-first-time/917/15).
</p>
If you are developing a new platform, please read [how to make your platform discoverable](/developers/component_discovery/) for further details.

View file

@ -13,7 +13,7 @@ ha_version: 0.57
ha_iot_class: "Local Polling"
---
The `xiaomi_miio` fan platform allows you to control the Xiaomi Air Purifier 2. The Air Purifier Pro isn't supported right now.
The `xiaomi_miio` fan platform allows you to control the Xiaomi Air Purifier 2, Air Purifier 2S andd Air Purifier Pro.
Currently, the supported features are

View file

@ -55,11 +55,9 @@ Configuration variables:
Here's an example of `input_number` being used as a trigger in an automation.
```yaml
{% raw %}
```yaml
# Example configuration.yaml entry using 'input_number' as a trigger in an automation
# Define input_number
input_number:
bedroom_brightness:
name: Brightness
@ -67,8 +65,6 @@ input_number:
min: 0
max: 254
step: 1
# Automation.
automation:
- alias: Bedroom Light - Adjust Brightness
trigger:
@ -76,20 +72,19 @@ automation:
entity_id: input_number.bedroom_brightness
action:
- service: light.turn_on
# Note the use of 'data_template:' below rather than the normal 'data:' if you weren't using an input variable
# Note the use of 'data_template:' below rather than the normal 'data:' if you weren't using an input variable
data_template:
entity_id: light.bedroom
brightness: '{{ trigger.to_state.state | int }}'
{% endraw %}
```
{% endraw %}
Another code example using `input_number`, this time being used in an action in an automation.
```yaml
{% raw %}
```yaml
# Example configuration.yaml entry using 'input_number' in an action in an automation
# Define 'input_select'
input_select:
scene_bedroom:
name: Scene
@ -101,8 +96,6 @@ input_select:
- Relax
- 'OFF'
initial: 'Select'
# Define input_number
input_number:
bedroom_brightness:
name: Brightness
@ -110,8 +103,6 @@ input_number:
min: 0
max: 254
step: 1
# Automation.
automation:
- alias: Bedroom Light - Custom
trigger:
@ -120,21 +111,18 @@ automation:
to: CUSTOM
action:
- service: light.turn_on
# Again, note the use of 'data_template:' rather than the normal 'data:' if you weren't using an input variable.
# Again, note the use of 'data_template:' rather than the normal 'data:' if you weren't using an input variable.
data_template:
entity_id: light.bedroom
brightness: '{{ states.input_number.bedroom_brightness.state | int }}'
{% endraw %}
```
{% endraw %}
Example of `input_number` being used in a bidirectional manner, both being set by and controlled by an MQTT action in an automation.
```yaml
{% raw %}
```yaml
# Example configuration.yaml entry using 'input_number' in an action in an automation
# Define input_number
input_number:
target_temp:
name: Target Heater Temperature Slider
@ -143,31 +131,29 @@ input_number:
step: 1
unit_of_measurement: step
icon: mdi:target
# Automation.
# This automation script runs when a value is received via MQTT on retained topic: setTemperature
# It sets the value slider on the GUI. This slides also had its own automation when the value is changed.
- alias: Set temp slider
trigger:
platform: mqtt
topic: "setTemperature"
action:
service: input_number.set_value
data_template:
entity_id: input_number.target_temp
value: '{{ trigger.payload}}'
# This automation script runs when the target temperature slider is moved.
# It publishes its value to the same MQTT topic it is also subscribed to.
- alias: Temp slider moved
trigger:
platform: state
entity_id: input_number.target_temp
action:
service: mqtt.publish
data_template:
automation:
- alias: Set temp slider
trigger:
platform: mqtt
topic: "setTemperature"
retain: true
payload: '{{ states.input_number.target_temp.state | int }}'
{% endraw %}
action:
service: input_number.set_value
data_template:
entity_id: input_number.target_temp
value: '{{ trigger.payload}}'
# This automation script runs when the target temperature slider is moved.
# It publishes its value to the same MQTT topic it is also subscribed to.
- alias: Temp slider moved
trigger:
platform: state
entity_id: input_number.target_temp
action:
service: mqtt.publish
data_template:
topic: "setTemperature"
retain: true
payload: '{{ states.input_number.target_temp.state | int }}'
```
{% endraw %}

View file

@ -28,7 +28,7 @@ sensor:
Configuration variables:
- **access_token** (*Required*): The Access Token for your account.
- **channel_id** (*Optional*): Channel ID (as integer) of your device. Needed if you have more than one device.
- **channel_id** (*Required*): Channel ID (as integer) of your device.
- **name** (*Optional*): The name of the sensor, eg. the city.
For details please check the [API documentation](https://my.eliq.se/knowledge/sv-SE/49-eliq-online/299-eliq-online-api).

View file

@ -49,6 +49,7 @@ Configuration variables:
- **username** (*Optional*): The username for accessing the REST endpoint.
- **password** (*Optional*): The password for accessing the REST endpoint.
- **headers** (*Optional*): The headers for the requests.
- **json_attributes** (*Optional*): A list of keys to extract values from a JSON dictionary result and then set as sensor attributes. Default is an empty list.
<p class='note warning'>
Make sure that the URL exactly matches your endpoint or resource.
@ -67,9 +68,7 @@ In this section you find some real life examples of how to use this sensor.
### {% linkable_title External IP address %}
You can find your external IP address using the service [JSON Test](http://www.jsontest.com) at their http://ip.jsontest.com/ endpoint.
To display the IP address, the entry for a sensor in the `configuration.yaml` file will look like this.
You can find your external IP address using the service [JSON Test](http://www.jsontest.com) at their [http://ip.jsontest.com/](http://ip.jsontest.com/) URL.
```yaml
sensor:
@ -83,8 +82,6 @@ sensor:
The [glances](/components/sensor.glances/) sensor is doing the exact same thing for all exposed values.
Add something similar to the entry below to your `configuration.yaml` file:
```yaml
sensor:
- platform: rest
@ -154,3 +151,63 @@ sensor:
User-Agent: Home Assistant REST sensor
```
### {% linkable_title Fetch multiple JSON values and present them as attibutes %}
[JSON Test](http://www.jsontest.com) returns the current time, date and milliseconds since epoch from [http://date.jsontest.com/](http://date.jsontest.com/).
{% raw %}
```yaml
sensor:
- platform: rest
name: JSON time
json_attributes:
- date
- milliseconds_since_epoch
resource: http://date.jsontest.com/
value_template: '{{ value_json.time }}'
- platform: template
sensors:
date:
friendly_name: 'Date'
value_template: '{{ states.sensor.json_time.attributes["date"] }}'
milliseconds:
friendly_name: 'milliseconds'
value_template: '{{ states.sensor.json_time.attributes["milliseconds_since_epoch"] }}'
```
{% endraw %}
This sample fetches a weather report from [OpenWeatherMap](http://openweathermap.org/), maps the resulting data into attributes of the RESTful sensor and then creates a set of [template](/components/sensor.template/) sensors that monitor the attributes and present the values in a usable form.
{% raw %}
```yaml
sensor:
- platform: rest
name: OWM_report
json_attributes:
- main
- weather
value_template: '{{ value_json["weather"][0]["description"].title() }}'
resource: http://api.openweathermap.org/data/2.5/weather?zip=80302,us&APPID=VERYSECRETAPIKEY
- platform: template
sensors:
owm_weather:
value_template: '{{ states.sensor.owm_report.attributes.weather[0]["description"].title() }}'
icon_template: '{{ "http://openweathermap.org/img/w/"+states.sensor.owm_report.attributes.weather[0]["icon"]+".png" }}'
entity_id: sensor.owm_report
owm_temp:
friendly_name: 'Outside temp'
value_template: '{{ states.sensor.owm_report.attributes.main["temp"]-273.15 }}'
unit_of_measurement: "°C"
entity_id: sensor.owm_report
owm_pressure:
friendly_name: 'Outside pressure'
value_template: '{{ states.sensor.owm_report.attributes.main["pressure"] }}'
unit_of_measurement: "hP"
entity_id: sensor.owm_report
owm_humidity:
friendly_name: 'Outside humidity'
value_template: '{{ states.sensor.owm_report.attributes.main["humidity"] }}'
unit_of_measurement: "%"
entity_id: sensor.owm_report
```
{% endraw %}

View file

@ -14,8 +14,8 @@ ha_release: 0.59
To use your tahoma sensors in your installation, add the following to your `configuration.yaml` file:
``yaml
```yaml
# Example configuration.yml entry
sensor:
platform: tahoma
```
```

View file

@ -13,11 +13,11 @@ ha_release: 0.56
ha_iot_class: "Cloud Polling"
---
The `skybell` implementation allows you to integrate your [Skybell.com](https://skybell.com) doorbells in Home Assistant.
The `skybell` implementation allows you to integrate your [Skybell.com](http://www.skybell.com/) doorbells in Home Assistant.
Currently only the Skybell HD is supported by this platform.
To enable devices set up with your [Skybell.com](https://skybell.com/) account, add the following to your `configuration.yaml` file:
To enable devices set up with your [Skybell.com](http://www.skybell.com/) account, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -26,9 +26,15 @@ skybell:
password: secret
```
Configuration variables:
- **username** (*Required*): The username for accessing your Skybell account.
- **password** (*Required*): The password for accessing your Skybell account.
{% configuration %}
username:
description: The username for accessing your Skybell account.
required: true
type: string
password:
description: The password for accessing your Skybell account.
required: true
type: string
{% endconfiguration %}
Finish your configuration by visiting the [Skybell binary sensor](/components/binary_sensor.skybell/), [Skybell camera](/components/camera.skybell/), [Skybell light](/components/light.skybell/), [Skybell sensor](/components/sensor.skybell/), or [Skybell switch](/components/switch.skybell/) documentation.