Merge branch 'current' into next

This commit is contained in:
Paulus Schoutsen 2016-10-02 15:05:41 -07:00
commit 636e5c12f2
116 changed files with 335 additions and 2935 deletions

View file

@ -163,7 +163,7 @@ alexa:
### {% linkable_title Working With Scenes %}
One of the more useful applications of Alexa integrations is to call scenes directly. This is easily achieved with some simple setup on the Home Assistant side and by letting Alexa know which scenes you want to run.
One of the most useful applications of Alexa integrations is to call scenes directly. This is easily achieved with some simple setup on the Home Assistant side and by letting Alexa know which scenes you want to run.
First we will configure Alexa. In the Amazon Interaction module add this to the intent schema:

View file

@ -19,4 +19,13 @@ Starting with 0.28 your automation rules can be controlled with the frontend.
<img src='{{site_root}}/images/screenshots/automation-switches.png' />
</p>
This allows one to reload the automation without restarting Home Assistant itself.
This allows one to reload the automation without restarting Home Assistant itself. If you don't want to see the automation rule in your frontend use `hide_entity: True` to hide it.
```yaml
automation:
- alias: Door alarm
hide_entity: True
trigger:
- platform: state
...
```

View file

@ -1,7 +1,7 @@
---
layout: page
title: "FFmpeg Binary Sensor"
description: "Instructions how to integrate a varius ffmpeg based binary sensor"
description: "Instructions on how to integrate an FFmpeg-based binary sensor"
date: 2016-08-25 08:00
sidebar: true
comments: false
@ -14,11 +14,15 @@ ha_iot_class: "Local Polling"
---
The `ffmpeg` platform allows you to use every video or audio feed with [FFmpeg](http://www.ffmpeg.org/) for various sensors in Home Assistant. Available are: **noise**, **motion**. If the `ffmpeg` process is broken, the sensor will be unavailable. To restart the instance, use the service *binary_sensor.ffmpeg_restart*.
The `ffmpeg` platform allows you to use any video or audio feed with [FFmpeg](http://www.ffmpeg.org/) for various sensors in Home Assistant. Available are: **noise**, **motion**.
<p class='note'>
If the `ffmpeg` process is broken, the sensor will be unavailable. To restart it, use the service *binary_sensor.ffmpeg_restart*.
</p>
### {% linkable_title Noise %}
To enable your FFmpeg with noise detection in your installation, add the following to your `configuration.yaml` file:
To add FFmpeg with noise detection to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -29,16 +33,16 @@ binary_sensor:
Configuration variables:
- **input** (*Required*): A ffmpeg compatible input file, stream or feed.
- **tool** (*Required*): Is fix set to `noise`.
- **name** (*Optional*): This parameter allows you to override the name of your camera.
- **peak** (*Optional*): Default -30. A peak of dB to detect it as noise. 0 is very loud and -100 is low.
- **duration** (*Optional*): Default 1 seconds. How long need the noise over the peak to trigger the state.
- **reset** (*Optional*): Defaults to 20 seconds. The time to reset the state after none new noise is over the peak.
- **extra_arguments** (*Optional*): Extra option they will pass to `ffmpeg`, like audio frequence filtering.
- **output** (*Optional*): Allow you to send the audio output of this sensor to an icecast server or other ffmpeg supported output, eg. to stream with sonos after state is triggered.
- **input** (*Required*): An FFmpeg-compatible input file, stream, or feed.
- **tool** (*Required*): `noise`.
- **name** (*Optional*): Override the name of your camera.
- **peak** (*Optional*): Default -30. The threshold of detecting noise, in dB. 0 is very loud and -100 is low.
- **duration** (*Optional*): Default 1 second. How long the noise needs to be over the peak to trigger the state.
- **reset** (*Optional*): Default 20 seconds. The time to reset the state after no new noise is over the peak.
- **extra_arguments** (*Optional*): Extra options to pass to `ffmpeg`, like audio frequency filtering.
- **output** (*Optional*): Allows you to send the audio output of this sensor to an Icecast server or other FFmpeg-supported output, e.g. to stream with Sonos after a state is triggered.
For playing with values:
To experiment with values:
```bash
$ ffmpeg -i YOUR_INPUT -vn -filter:a silencedetect=n=-30dB:d=1 -f null -
@ -46,9 +50,9 @@ $ ffmpeg -i YOUR_INPUT -vn -filter:a silencedetect=n=-30dB:d=1 -f null -
### {% linkable_title Motion %}
FFmpeg doesn't have a motion detection filter, so it uses a scene filter to detect a new scene/motion. In fact, you can set how big of an object or the size of an image that needs to change in order to detect motion. The option 'changes' is the percent value of change between frames. You can add a denoise filter to the video if you want a really small value for 'changes'.
FFmpeg doesn't have a motion detection filter, but can use a scene filter to detect a new scene/motion. You can set how much needs to change in order to detect motion with the option 'changes', the percent value of change between frames. If you want a really small value for 'changes', you can also add a denoise filter.
To enable your FFmpeg with motion detection in your installation, add the following to your `configuration.yaml` file:
To add FFmpeg with motion detection to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -60,19 +64,19 @@ binary_sensor:
Configuration variables:
- **input** (*Required*): A ffmpeg compatible input file, stream, or feed.
- **tool** (*Required*): Is fix set to `motion`.
- **name** (*Optional*): This parameter allows you to override the name of your camera.
- **changes** (*Optional*): Default 10 percent. A lower value is more sensitive. I use 4 / 3.5 on my cameras. It describes how much needs to change between two frames to detect it as motion. See on descripton.
- **input** (*Required*): An FFmpeg-compatible input file, stream, or feed.
- **tool** (*Required*): `motion`.
- **name** (*Optional*): Override the name of your camera.
- **changes** (*Optional*): Default 10%. How much needs to change between two frames to detect it as motion (a lower value is more sensitive).
- **reset** (*Optional*): Default 20 seconds. The time to reset the state after no new motion is detected.
- **repeat** (*Optional*): Default 0 repeats (deactivate). How many events need to be detected in *repeat_time* in order to trigger a motion.
- **repeat_time** (*Optional*): Default 0 seconds (deactivate). The span of time *repeat* events need to occur in before triggering a motion.
- **extra_arguments** (*Optional*): Extra option they will pass to ffmpeg. i.e. video denoise filtering.
- **extra_arguments** (*Optional*): Extra options to pass to FFmpeg, e.g. video denoise filtering.
For playing with values (changes/100 is the scene value on ffmpeg):
To experiment with values (changes/100 is the scene value in FFmpeg):
```bash
$ ffmpeg -i YOUR_INPUT -an -filter:v select=gt(scene\,0.1) -f framemd5 -
```
If you are running into trouble with this sensor, please refer to this [Troubleshooting section](/components/ffmpeg/#troubleshooting).
If you are running into trouble with this sensor, please refer to the [troubleshooting section](/components/ffmpeg/#troubleshooting).

View file

@ -2,7 +2,7 @@
layout: page
title: "MQTT Cover"
description: "Instructions how to integrate MQTT covers into Home Assistant."
date: 2016-06-28 17:30
date: 2016-09-28 17:30
sidebar: true
comments: false
sharing: true
@ -27,23 +27,24 @@ To use your MQTT cover in your installation, add the following to your `configur
# Example configuration.yml entry
cover:
- platform: mqtt
name: "MQTT Cover"
state_topic: "home-assistant/cover"
command_topic: "home-assistant/cover/set"
```
Configuration variables:
- **state_topic** (*Required*): The MQTT topic subscribed to receive sensor values.
- **name** (*Optional*): The name of the sensor. Default is `MQTT Cover`.
- **state_topic** (*Optional*): The MQTT topic subscribed to receive sensor values.
- **command_topic** (*Required*): The MQTT topic to publish commands to control the rollershutter.
- **name** (*Optional*): The name of the sensor. Default is "MQTT Sensor".
- **qos** (*Optional*): The maximum QoS level of the state topic. Default is 0 and will also be used to publishing messages.
- **retain** (*Optional*): If the published message should have the retain flag on or not.
- **payload_open** (*Optional*): The payload that opens the cover. Default is "UP"
- **payload_close** (*Optional*): The payload that closes the cover. Default is "DOWN"
- **payload_stop** (*Optional*): The payload that stops the rollershutter. default is "STOP"
- **state_open** (*Optional*): The payload that represents open state. Default is "STATE_OPEN"
- **state_closed** (*Optional*): The payload that represents closed state. Default is "STATE_CLOSED"
- **payload_open** (*Optional*): The payload that opens the cover. Default is `OPEN`.
- **payload_close** (*Optional*): The payload that closes the cover. Default is `CLOSE`.
- **payload_stop** (*Optional*): The payload that stops the rollershutter. default is `STOP`.
- **state_open** (*Optional*): The payload that represents open state. Default is `open`.
- **state_closed** (*Optional*): The payload that represents closed state. Default is `closed`.
- **optimistic** (*Optional*): Flag that defines if switch works in optimistic mode. Default is `true` if no state topic defined, else `false`.
- **qos** (*Optional*): The maximum QoS level of the state topic. Default is `0`. Will also be used when publishing messages.
- **retain** (*Optional*): If the published message should have the retain flag on or not. Default is `false`.
- **value_template** (*Optional*): Defines a [template](/topics/templating/) to extract a value from the payload.
## {% linkable_title Examples %}
@ -78,4 +79,3 @@ For a check you can use the command line tools `mosquitto_pub` shipped with `mos
```bash
$ mosquitto_pub -h 127.0.0.1 -t home-assistant/cover/set -m "CLOSE"
```

View file

@ -27,6 +27,7 @@ OID examples:
- BiPAC 7800DXL: `1.3.6.1.2.1.17.7.1.2.2.1.1` (confirmed on firmware 2.32e)
- OpenWrt: `1.3.6.1.2.1.4.22.1.2` (tested on Chaos Calmer 15.05 firmware, need to install snmpd package)
- pfSense: `1.3.6.1.2.1.4.22.1.2` (tested on 2.2.4-RELEASE, need to enable SNMP service)
- TPLink: `1.3.6.1.2.1.3.1.1.2.19.1` (Archer VR2600v, need to enable SNMP service)
To use the SNMP platform in your installation, add the following to your `configuration.yaml` file:

View file

@ -2,7 +2,7 @@
layout: page
title: "Envisalink Alarm Control Panel"
description: "Instructions on how to integrate a DSC/Honeywell alarm panel with Home Assistant using an envisalink evl3/evl4 board."
date: 2016-06-19 22:10
date: 2016-09-30 22:45
sidebar: true
comments: false
sharing: true
@ -25,6 +25,8 @@ There is currently support for the following device types within Home Assistant:
This is a fully event-based component. Any event sent by the Envisalink device will be immediately reflected within Home Assistant.
As of 0.29, the alarm_trigger service is supported. It is possible to fire off an envisalink-based alarm directly from Home Assistant. For example, a newer zwave/zigbee sensor can now be integrated into a legacy alarm system using a Home Assistant automation.
An `envisalink` section must be present in the `configuration.yaml` file and contain the following options as required:
```yaml
@ -39,6 +41,7 @@ envisalink:
evl_version: 3
keepalive_interval: 60
zonedump_interval: 30
panic_type: Police
zones:
11:
name: 'Back Door'
@ -62,6 +65,7 @@ Configuration variables:
- **evl_version** (*Optional*): 3 for evl3, or 4 for evl4. Default: `3`
- **keepalive_interval** (*Optional*): This is a periodic heartbeat signal (measured in seconds) sent to your Envisalink board to keep it from restarting. This is required for DSC and Honeywell systems. Defaults to `60` seconds.
- **zonedump_interval** (*Optional*): This is an interval (measured in seconds) where the evl will dump out all zone statuses. This is required for Honeywell systems, which do not properly send zone closure events. DSC boards do not technically need this. Default: `30`
- **panic_type** (*Optional*): Both DSC and Honeywell boards support a "panic" alarm. This is used when the alarm_trigger service is called in home assistant. This determines which type of panic alarm to raise. Default = Police. Valid values are: Police, Fire, Ambulance
- **zones** (*Optional*): Envisalink boards have no way to tell us which zones are actually in use, so each zone must be configured in Home Assistant. For each zone, at least a name must be given. *Note: if no zones are specified, Home Assistant will not load any binary_sensor components.*
- **partitions** (*Optional*): Again, Envisalink boards do not tell us what is in use and what is not, so each partition must be configured with a partition name. If no partition parameter is specified, then no alarm_panel or sensor components are loaded.

View file

@ -2,7 +2,7 @@
layout: page
title: "Music Player Daemon (MPD)"
description: "Instructions how to integrate Music Player Daemon into Home Assistant."
date: 2015-06-02 08:00
date: 2016-09-30 23:06
sidebar: true
comments: false
sharing: true
@ -16,6 +16,8 @@ ha_iot_class: "Local Polling"
The `mpd` platform allows you to control a [Music Player Daemon](http://www.musicpd.org/) from Home Assistant. Unfortunatly you will not be able to manipulate the playlist (add or delete songs) or add transitions between the songs.
Even though no playlist manipulation is possible, it is possible to use the play_media service to load an existing saved playlist as part of an automation or scene.
To add MPD to your installation, add the following to your `configuration.yaml` file:
```yaml
@ -32,5 +34,22 @@ Configuration variables:
- **location** (*Optional*): Location of your Music Player Daemon. Defaults to "MPD".
- **password** (*Optional*): Password for your Music Player Daemon.
Example script to load a saved playlist called "DeckMusic" and set the volume:
```yaml
relaxdeck:
sequence:
- service: media_player.play_media
data:
entity_id: media_player.main
media_content_type: playlist
media_content_id: DeckMusic
- service: media_player.volume_set
data:
entity_id: media_player.main
volume_level: 0.60
```
This platform works with [Music Player Daemon](http://www.musicpd.org/) and [mopidy](https://www.mopidy.com/) with [Mopidy-MPD](https://docs.mopidy.com/en/latest/ext/mpd/) as used by [Pi MusicBox](http://www.pimusicbox.com/).

View file

@ -26,9 +26,14 @@ If you want process all data local you need the command line tool `alpr` in vers
If you don't found binarys for you distribution you can compile from source. A documention how to build a openalpr is found [here](https://github.com/openalpr/openalpr/wiki).
On a debian system you can use this cmake command to build only the command line tool:
On a debian system you can use this cmake command to build only the command line tool (which second part on linux build instruction - ubuntu 14.04+):
```bash
cmake -DWITH_TEST=FALSE -DWITH_BINDING_JAVA=FALSE --DWITH_BINDING_PYTHON=FALSE --DWITH_BINDING_GO=FALSE -DWITH_DAEMON=FALSE -DCMAKE_INSTALL_PREFIX:PATH=/usr
cmake -DWITH_TEST=FALSE -DWITH_BINDING_JAVA=FALSE --DWITH_BINDING_PYTHON=FALSE --DWITH_BINDING_GO=FALSE -DWITH_DAEMON=FALSE -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
```
Verify your alpr installation with:
```
wget -O- -q http://plates.openalpr.com/h786poj.jpg | alpr -
```
### {% linkable_title Configuration Home Assistant %}

View file

@ -15,11 +15,23 @@ ha_release: 0.29
The `bom` platform allows you to get the current weather conditions from the [Bureau of Meteorology (BOM)](http://www.bom.gov.au/) Australia.
- Each sensor will be given the `device_id` of "bom [optionalname] friendlyname units"
- Get the station ID for your local BOM station from the BOM website: State -> Observations -> Latest Observations -> Choose the station
- The URL will look like http://www.bom.gov.au/products/IDS60801/IDS60801.94675.shtml. This is for Adelaide. The URL is read as: http://www.bom.gov.au/products/[zone_id]/[zone_id].[wmo_id].shtml
- A name is optional but if multiple BOM weather stations are used a name will be required.
- The sensor will update every minute 35 minutes after last data timestamp. This allows for the 30 minute observation cycle and the approximate 5 minute update delay in publishing the data.
To get the station ID `[zone_id]` and `[wmo_id]` for your local BOM station:
- Find your station on these maps:
- NSW: http://www.bom.gov.au/nsw/observations/map.shtml
- QLD: http://www.bom.gov.au/qld/observations/map.shtml
- VIC: http://www.bom.gov.au/vic/observations/map.shtml
- WA: http://www.bom.gov.au/wa/observations/map.shtml
- SA: http://www.bom.gov.au/sa/observations/map.shtml
- TAS: http://www.bom.gov.au/tas/observations/map.shtml
- ACT: http://www.bom.gov.au/act/observations/canberramap.shtml
- NT: http://www.bom.gov.au/nt/observations/map.shtml
- alternatively, from the [BOM website](http://www.bom.gov.au/), navigate to State -> Observations -> Latest Observations -> Choose the station.
- The URL will look like: http://www.bom.gov.au/products/[zone_id]/[zone_id].[wmo_id].shtml
- For Adelaide, the URL will look like http://www.bom.gov.au/products/IDS60801/IDS60801.94675.shtml.
To add the BOM weather observation to your installation, add the following to your `configuration.yaml` file:
```yaml

View file

@ -14,7 +14,7 @@ ha_iot_class: "Cloud Polling"
---
Integrate your [ELIQ Online](http://eliq.se) smart meter information into Home Assistant. To get an [acess token](https://my.eliq.se/user/settings/api) and the [Channel ID](https://my.eliq.se/user/settings/data), log in to your account.
Integrate your [ELIQ Online](http://eliq.se) smart meter information into Home Assistant. To get an [access token](https://my.eliq.se/user/settings/api) and the [Channel ID](https://my.eliq.se/user/settings/data), log in to your account.
To enable this sensor in your installation, add the following to your `configuration.yaml` file:

View file

@ -18,10 +18,11 @@ The Fitbit sensor allows you to expose data from [Fitbit](http://fitbit.com) to
Enable the sensor by adding the following to your configuration:
```yaml
# Example configuration.yaml entry
sensor:
platform: fitbit
monitored_resources:
- "body/weight"
- platform: fitbit
monitored_resources:
- "body/weight"
```
Restart Home Assistant once this is complete. Go to the frontend. You will see a new entry for configuring Fitbit. Follow the instructions there to complete the setup process.
@ -30,6 +31,10 @@ Please be aware that Fitbit has very low rate limits, 150 per user per hour. The
The unit system that the sensor will use is based on the country you set in your Fitbit profile.
Configuration variables:
- **monitored_resources** (*Required*): Resource to monitor.
Below is the list of resources that you can add to `monitored_resources`. One sensor is exposed for every resource.
```text

View file

@ -30,7 +30,9 @@ $ curl -X GET http://IP_ADDRESS:61208/api/2/mem/free
{"free": 203943936}
```
To enable the glances sensor, add the following lines to your `configuration.yaml`:
For details about auto-starting `glances`, please refer to [Start Glances through Systemd](https://github.com/nicolargo/glances/wiki/Start-Glances-through-Systemd).
To enable the Glances sensor, add the following lines to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry

View file

@ -29,18 +29,10 @@ sensor:
- 'temperature'
- 'target'
- 'humidity'
- 'mode'
- 'last_ip'
- 'local_ip'
- 'operation_mode'
- 'last_connection'
- 'battery_level'
- 'weather_condition'
- 'weather_temperature'
- 'weather_humidity'
- 'wind_speed'
- 'wind_direction'
- 'co_status'
- 'smoke_status'
- 'co_status' # Nest Protect only
- 'smoke_status' # Nest Protect only
```
Configuration variables:
@ -49,7 +41,7 @@ Configuration variables:
- 'temperature'
- 'target'
- 'humidity'
- 'mode'
- 'operation_mode'
- 'last_ip'
- 'local_ip'
- 'last_connection'

View file

@ -28,5 +28,5 @@ Configuration variables:
- **host** (*Optional*): The IP address of the Pi-Hole system. Defaults to `localhost`.
- **ssl** (*Optional*): If `true`, use SSL/TLS to connect to the Pi-Hole system. Defaults to `False`.
- **verify_ssl** (*Optional*): Verify the certification of the system. Default to True.
- **verify_ssl** (*Optional*): Verify the certification of the system. Default to `True`.

View file

@ -49,5 +49,5 @@ Configuration variables:
- **sunset_colortemp** (*Optional*): The sun set color temperature. Defaults to `3000`.
- **stop_colortemp** (*Optional*): The color temperature at the end. Defaults to `1900`.
- **brightness** (*Optional*): The brightness of the lights. Calculated with `RGB_to_xy` by default.
- **mode** (*Optional*): Select how color temperature is passed to lights. Valid values are 'xy', 'mired' and 'kelvin'. Defaults to 'xy'.
- **mode** (*Optional*): Select how color temperature is passed to lights. Valid values are `xy` and `mired`. Defaults to `xy`.