Merge remote-tracking branch 'origin/current' into next

This commit is contained in:
Paulus Schoutsen 2017-07-23 21:33:35 -07:00
commit 8660f52610
64 changed files with 476 additions and 264 deletions

View file

@ -1,7 +1,7 @@
---
layout: page
title: "Binary Sensor"
description: "Instructions how to setup your binary sensors with Home Assistant."
description: "Instructions on how-to setup binary sensors with Home Assistant."
date: 2015-11-20 14:00
sidebar: true
comments: false
@ -9,27 +9,27 @@ sharing: true
footer: true
---
Binary sensors are gathering information about state of switches, contacts, pins, and alike. The return value of those sensors is usually digital (1/0). This means that those sensors knows only two states: **0/off/low/closed/false** and **1/on/high/open/true**.
Binary sensors gather information about state of switches, contacts, pins, and alike. The return value of those sensors is usually digital (1/0). This means that those sensors knows only two states: **0/off/low/closed/false** and **1/on/high/open/true**.
Knowing that there are only two states allows Home Assistant to represent the sensor better in the frontend.
Knowing that there are only two states allows Home Assistant to represent these sensors in a better way in the frontend according to their functionality.
The display style of each entity can be modified in the [customize section](/getting-started/customizing-devices/). The following device classes are supported for binary sensors:
The way these sensors are displayed in the frontend can be modified in the [customize section](/getting-started/customizing-devices/). The following device classes are supported for binary sensors:
- **None**: Generic on/off
- **cold**: On means cold (or too cold)
- **connectivity**: On means connection present, Off means no connection
- **gas**: CO, CO2, etc
- **heat**: On means hot (or too hot)
- **cold**: `On` means cold
- **connectivity**: `On` means connection present, `Off` means no connection
- **gas**: `On` means gas detected
- **heat**: `On` means hot
- **light**: Lightness threshold
- **moisture**: Specifically a wetness sensor
- **motion**: Motion sensor
- **moving**: On means moving, Off means stopped
- **occupancy**: On means occupied, Off means not occupied
- **opening**: Door, window, etc. On means open, Off means closed
- **power**: Power, over-current, etc
- **safety**: On means unsafe, Off means safe
- **smoke**: Smoke detector
- **sound**: On means sound detected, Off means no sound
- **vibration**: On means vibration detected, Off means no vibration
- **moisture**: `On` means wet
- **motion**: `On` means motion detected
- **moving**: `On` means moving, `Off` means stopped
- **occupancy**: `On` means occupied, `Off` means not occupied
- **opening**: `On` means open, `Off` means closed
- **power**: Power, over-current, etc.
- **safety**: `On` means unsafe, `Off` means safe
- **smoke**: `On` means smoke detected
- **sound**: `On` means sound detected, `Off` means no sound
- **vibration**: `On` means vibration detected, `Off` means no vibration
For analog sensors please check the [component overview](https://home-assistant.io/components/#sensor).

View file

@ -54,6 +54,7 @@ Valid values for ignore are:
* `apple_tv`: Apple TV
* `axis`: (Axis Communications security devices)
* `bose_soundtouch`: Bose Soundtouch speakers
* `denonavr`: Denon Network Receivers
* `directv`: DirecTV
* `flux_led`: Flux Led/MagicLight

View file

@ -28,7 +28,6 @@ To enable the emulated Hue bridge, add one of the following configs to your `con
```yaml
# Google Home example configuration.yaml entry
emulated_hue:
type: google_home
listen_port: 80
# Google Home does not work on different ports.
```
@ -36,13 +35,11 @@ emulated_hue:
```yaml
# Amazon Echo example configuration.yaml entry
emulated_hue:
type: alexa
listen_port: 80
```
Configuration variables:
- **type** (*Optional*): The type of assistant who we are emulated for. Either `alexa` or `google_home`, defaults to `google_home`.
- **type** (*Optional*): The type of assistant who we are emulated for. Either `alexa` or `google_home`, defaults to `google_home`. **This configuration option is deprecated and will be removed in a future release. It is no longer necessary to define type.**
- **host_ip** (*Optional*): The IP address that your Home Assistant installation is running on. If you do not specify this option, the component will attempt to determine the IP address on its own.
- **listen_port** (*Optional*): The port the Hue bridge API web server will run on. If not specified, this defaults to 8300. This can be any free port on your system.
@ -52,11 +49,11 @@ Configuration variables:
- **upnp_bind_multicast** (*Optional*): Whether or not to bind the UPNP (SSDP) listener to the multicast address (239.255.255.250) or instead to the (unicast) host_ip address specified above (or automatically determined). The default is true, which will work for most situations. In special circumstances, like running in a FreeBSD or FreeNAS jail, you may need to disable this.
- **off_maps_to_on_domains** (*Optional*): The domains that maps an "off" command to an "on" command.
For example, if `script` is included in the list, and you ask Alexa to "turn off the *water plants* script," the command will be handled as if you asked her to turn on the script.
If not specified, this defaults to the following list:
- `script`
- `scene`
@ -87,7 +84,7 @@ emulated_hue:
- light
```
With additional customization you will be able to specify the behaviour of the existing entities.
With additional customization you will be able to specify the behavior of the existing entities.
```yaml
# Example customization
@ -113,13 +110,14 @@ You can verify that the `emulated_hue` component has been loaded and is respondi
- `http://<HA IP Address>:8300/description.xml` - This URL should return a descriptor file in the form of an XML file.
- `http://<HA IP Address>:8300/api/pi/lights` - This will return a list of devices, lights, scenes, groups, etc.. that `emulated_hue` is exposing to Alexa.
For Google Home, verify that the URLs above are using port 80, rather than port 8300 (i.e. http://<HA IP Address>:80/description.xml).
For Google Home, verify that the URLs above are using port 80, rather than port 8300 (i.e. `http://<HA IP Address>:80/description.xml`).
An additional step is required to run Home Assistant as non-root user and use port 80 when using the AiO script. Execute the following command to allow `emulated_hue` to use port 80 as non-root user.
```bash
sudo setcap 'cap_net_bind_service=+ep' /srv/homeassistant/homeassistant_venv/bin/python3
```
Please note that your path may be different depending on your installation method. For example, if you followed the [Virtualenv instructions](https://home-assistant.io/docs/installation/virtualenv/), your path will be `/srv/homeassistant/bin/python3`.
### {% linkable_title License %}

View file

@ -52,8 +52,8 @@ automation:
service: persistent_notification.create
data_template:
title: "New HA Podcast available"
message: "New Podcast available - {{ as_timestamp(now()) | timestamp_custom('%I:%M:%S %p %d%b%Y', true) }}"
notification_id: "{{ trigger.event.data.title }}"
message: {% raw %}"New Podcast available - {{ as_timestamp(now()) | timestamp_custom('%I:%M:%S %p %d%b%Y', true) }}"
notification_id: "{{ trigger.event.data.title }}"{% endraw %}
```
*Any field under the `<entry>` tag in the feed can be used for example `trigger.event.data.content` will get the body of the feed entry.

View file

@ -1,19 +0,0 @@
---
layout: page
title: "Home Assistant 0.49"
description: ""
date: 2016-12-16 17:00
sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_category: Other
ha_release: 0.49
---
Details about the latest release can always be found at:
- [Release blog posts](https://home-assistant.io/blog/categories/release-notes/)
- [GitHub releases](https://github.com/home-assistant/home-assistant/releases)
- [Python Package Index](https://pypi.python.org/pypi/homeassistant/)

View file

@ -7,10 +7,19 @@ sidebar: true
comments: false
sharing: true
footer: true
logo: lametric.png
ha_category: Hub
ha_release: 0.49
---
[LaMetric Time](http://lametric.com) is a smart clock that can be used to access applications, listen to web radio and display notifications.
There is currently support for the following device types within Home Assistant:
- [Notify](/components/notify.lametric)
The LaMetric Time can only be accessed by authorized applications. Therefore, each application that wants to access the LaMetric time needs to be registered at the LaMetric Developer webpage. Sign Up and login to the developer webpage. Click the Create button in the upper right corner, then select Notification App and click Create again. Enter an app name, a description and a redirect URL. Finally, click Save to create the application. For the newly created app you will obtain a client id and a client secret that is required in the following configuration.
```yaml
# configuration.yaml example
lametric:

View file

@ -21,21 +21,32 @@ To enable these lights, add the following lines to your `configuration.yaml` fil
# Example configuration.yaml entry
light:
- platform: avion
devices:
00:21:4D:00:00:01:
name: Light 1
api_key: Gr35a/rt3RgaRenl9ag8Ba==
00:21:3D:20:00:a1:
name: Bulb 2
api_key: Gr35a/rt3RgaRenl9ag8Ba==
username: testuser@fakedomain.com
password: foobar
```
Configuration variables:
- **devices**: A list of devices with their bluetooth address, a custom name to use in the frontend and the API key. The API key can be obtained by executing the following command:
- **username** (*Optional*): The username used in the Avion app. If username and password are both provided, any associated switches will automatically be added to your configuration.
- **password** (*Optional*): The password used in the Avion app.
- **devices** (*Optional*): An optional list of devices with their bluetooth address, a custom name to use in the frontend and the API key. The API key can be obtained by executing the following command:
```
curl -X POST -H "Content-Type: application/json" -d '{"email": "fakename@example.com", "password": "password"}' https://admin.avi-on.com/api/sessions | jq
```
with the email and password fields replaced with those used when registering the device via the mobile app. The passphrase field of the output should be used as the API key in the configuration.
If username and password are not supplied, devices must be configured manually like so:
```yaml
# Manual device configuration.yaml entry
light:
- platform: avion
devices:
00:21:4D:00:00:01:
name: Light 1
api_key: Gr35a/rt3RgaRenl9ag8Ba==
00:21:3D:20:00:a1:
name: Light 2
api_key: Gr35a/rt3RgaRenl9ag8Ba==
```

View file

@ -41,6 +41,7 @@ Change the light to a new state.
| ---------------------- | ----------- |
| `entity_id` | String or list of strings that point at `entity_id`s of lights. Else targets all.
| `transition` | Duration (in seconds) for the light to fade to the new state.
| `zones` | List of integers for the zone numbers to affect (each LIFX Z strip has 8 zones, starting at 0).
| `infrared` | Automatic infrared level (0..255) when light brightness is low (for compatible bulbs).
| `power` | Turn the light on (`True`) or off (`False`). Leave out to keep the power as it is.
| `...` | Use `color_name`, `brightness` etc. from [`light.turn_on`]({{site_root}}/components/light/#service-lightturn_on) to specify the new state.

View file

@ -52,7 +52,14 @@ Determine your bulb ip (using router, software, ping ...)
</p>
<p class='note warning'>
This component is tested to work with models YLDP01YL, YLDP02YL and YLDP03YL. If you have a different model and it is working please let us know.
This component is tested to work with the following models:
- **YLDP01YL**: LED Bulb (White)
- **YLDP02YL**: LED Bulb (Color)
- **YLDP03YL**: LED Bulb (Color) - E26
- **YLDD02YL**: Lightstrip (Color)
If you have a different model and it is working please let us know.
</p>

View file

@ -7,6 +7,7 @@ sidebar: true
comments: false
sharing: true
footer: true
logo: yeelight.png
ha_category: Light
ha_release: 0.39
ha_iot_class: "Local Polling"

View file

@ -1,7 +1,7 @@
---
layout: page
title: "Media Extractor"
description: "Instructions how to integrate the Media Extrator into Home Assistant."
description: "Instructions how to integrate the Media Extractor into Home Assistant."
date: 2017-07-12 07:00
sidebar: true
comments: false
@ -18,7 +18,7 @@ The `media_extractor` component gets an stream URL and send it to a media player
Media extractor doesn't transcode streams, it just tries to find stream that match requested query.
</p>
To use the media extrator service in your installation, add the following to your `configuration.yaml` file:
To use the media extractor service in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
@ -59,8 +59,6 @@ This will download the file from the given URL.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | Name(s) of entities to seek media on, eg. `media_player.living_room_chromecast`. Defaults to all.
| `entity_id` | yes | Name(s) of entities to seek media on, e.g., `media_player.living_room_chromecast`. Defaults to all.
| `media_content_id` | no | The ID of the content to play. Platform dependent.
| `media_content_type` | no | The type of the content to play. Must be one of MUSIC, TVSHOW, VIDEO, EPISODE, CHANNEL or PLAYLIST MUSIC.

View file

@ -29,6 +29,8 @@ If your Plex server has local authentication enabled or multiple users defined,
If you don't know your token, see [Finding your account token / X-Plex-Token](https://support.plex.tv/hc/en-us/articles/204059436).
If your server enforces SSL connections, write "`on`" or "`true`" in the _"Use SSL"_ field. If it does not have a valid SSL certificate available but you still want to use it, write "`on`" or "`true`" in the _"Do not verify SSL"_ field as well.
<p class='img'>
<img src='{{site_root}}/images/screenshots/plex-token.png' />
</p>
@ -44,12 +46,14 @@ media_player:
In case [discovery](/components/discovery/) does not work (GDM disabled or non-local plex server), you can create `~/.homeassistant/plex.conf` manually.
```json
{"IP_ADDRESS:PORT": {"token": "TOKEN"}}
{"IP_ADDRESS:PORT": {"token": "TOKEN", "ssl": false, "verify": true}}
```
- **IP_ADDRESS** (*Required*): IP address of the Plex Media Server
- **PORT** (*Required*): Port where Plex is listening. Default is 32400
- **IP_ADDRESS** (*Required*): IP address of the Plex Media Server.
- **PORT** (*Required*): Port where Plex is listening. Default is 32400.
- **TOKEN** (*Optional*): Only if authentication is required. Set to `null` (without quotes) otherwise.
- **ssl** (*Optional*): Whether to use SSL or not. _(Boolean)_
- **verify** (*Optional*): Whether to allow invalid or self-signed SSL certificates or not. _(Boolean)_
## Customization
You can customize the Plex component by adding any of the variables below to your configuration:
@ -129,4 +133,4 @@ Plays a song, playlist, TV episode, or video on a connected client.
INFO:homeassistant.components.media_player.plex:No server found at: http://192.168.1.10:32400
```
If this occurs, try changing the setting `Secure connections` in your Plex Media Server to `Preferred` (instead of `Required`). The Plex component does not currently support HTTPS.
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.

View file

@ -47,9 +47,11 @@ Currently known supported models:
- EH5300
- EH5600
- F6400AF
- F6400
- D6505
- D6300SF
- U6000 (port must be set to 8001)
- U6300 (port must be set to 8001, and `pip3 install websocket-client` must be executed)
- K6500AF (port must be set to 8001)
- KS8005 (port must be set to 8001, and `pip3 install websocket-client` must be executed)
- K5600AK (partially supported, turn on works but state is not updated)

View file

@ -9,7 +9,7 @@ sharing: true
footer: true
logo: vizio-smartcast.png
ha_category: Media Player
featured: true
featured: false
ha_release: 0.49
ha_iot_class: "Local Polling"
---

View file

@ -14,9 +14,9 @@ ha_release: "0.37"
The `microsoft_face` component platform is the main component for Microsoft Azure Cognitive service [Face](https://www.microsoft.com/cognitive-services/en-us/face-api). All data are stored in your own private instance in the Azure cloud.
You need an API key which is free but requires a [Azure registration](https://azure.microsoft.com/de-de/free/) using your microsoft ID. The free resource (*F0*) is limited to 20 requests per minute and 30k requests in a month. If you don't want to use the Azure cloud, you can also get an API key by registering with [cognitive-services](https://www.microsoft.com/cognitive-services/en-us/subscriptions). However, all keys on cognitive services must be recreated every 90 days.
You need an API key, which is free, but requires an [Azure registration](https://azure.microsoft.com/de-de/free/) using your Microsoft ID. The free resource (*F0*) is limited to 20 requests per minute and 30k requests in a month. If you don't want to use the Azure cloud, you can also get an API key by registering with [cognitive-services](https://www.microsoft.com/cognitive-services/en-us/subscriptions). Please note that all keys on cognitive services must be recreated every 90 days.
To enable the Microsoft Face component, add the following lines to your `configuration.yaml`:
To enable the Microsoft Face component, add the following to your `configuration.yaml`:
```yaml
# Example configuration.yaml entry
@ -33,9 +33,9 @@ Configuration variables:
### {% linkable_title Person and Groups %}
For most services, you need to set up a group or a person. This limits the processing and detection to elements provided by the group. Home Assistent creates an entty for all groups and allows you to show the state, person and IDs directly on the frontend.
For most services, you need to set up a group or a person. This limits the processing and detection to elements provided by the group. Home Assistant creates an entity for all groups and allows you to show the state, person, and IDs directly on the frontend.
The following services are available for managing this feature. They can be called via the Frontend, a script, or the REST API.
The following services are available for managing this feature and can be called via the Frontend, a script, or the REST API.
- *microsoft_face.create_group*
- *microsoft_face.delete_group*

View file

@ -1,6 +1,6 @@
---
layout: page
title: "ClickSend"
title: "ClickSend SMS"
description: "Instructions on how to add ClickSend notifications to Home Assistant."
date: 2017-06-22 00:00
sidebar: true

View file

@ -7,10 +7,13 @@ sidebar: true
comments: false
sharing: true
footer: true
ha_category: Notify
logo: lametric.png
ha_category: Notifications
ha_release: 0.49
---
This component allows to send notification to a LaMetric device. It need the LaMetric platform to be configured first.
```yaml
notify:
name: lametric1
@ -18,3 +21,8 @@ notify:
display_time: 20
icon: i555
```
- **name** (*Optional*): The name of the LaMetric device. Usually it is "My Lametric"
- **display_time** (*Optional*): Defines how long the message should be displayed (in seconds).
- **icon** (*Optional*): An icon or animation. Check out the list of all icons her: https://developer.lametric.com/icons
Note that icons always begin with "i" while animations begin with "a". This is part of the name, you can't just use the number.

View file

@ -121,6 +121,19 @@ Configuration variables:
- **keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom keyboard.
- **inline_keyboard** (*Optional*): List of rows of commands, comma-separated, to make a custom inline keyboard with buttons with associated callback data.
<p class='note'>
Since Homeassistant version 0.48 you have to [whitelist the source folder](/docs/configuration/basic/) of the file you want to include in the notification.
```yaml
configuration.yaml
...
homeassistant:
whitelist_external_dirs:
- /tmp
- /home/kenji/data
```
</p>
### {% linkable_title Document support %}

View file

@ -14,7 +14,7 @@ ha_release: pre 0.7
The `recorder` component is storing details in a database which then are handled by the [`history` component](/components/history/).
Home Assistant uses [SQLAlchemy](http://www.sqlalchemy.org/) as Object Relational Mapper (ORM). This means that you can now use **any** SQL backend for the recorder that is supported by SQLAlchemy, like [MySQL](https://www.mysql.com/), [MariaDB](https://mariadb.org/), or [PostgreSQL](https://www.postgresql.org/).
Home Assistant uses [SQLAlchemy](http://www.sqlalchemy.org/) as Object Relational Mapper (ORM). This means that you can now use **any** SQL backend for the recorder that is supported by SQLAlchemy, like [MySQL](https://www.mysql.com/), [MariaDB](https://mariadb.org/), [PostgreSQL](https://www.postgresql.org/), or [MS SQL Server](https://www.microsoft.com/en-us/sql-server/).
The default database engine is [SQLite](https://www.sqlite.org/) which doesn't require any configuration. The database is stored in your Home Assistant configuration directory (`.homeassistant`) and called `home-assistant_v2.db`.
@ -96,6 +96,7 @@ If you only want to hide events from e.g. your history, take a look at the [`his
| MySQL (pymysql) | `mysql+pymysql://user:password@SERVER_IP/DB_NAME` |
| PostgreSQL | `postgresql://SERVER_IP/DB_NAME` |
| PostgreSQL | `postgresql://scott:tiger@SERVER_IP/DB_NAME` |
| MS SQL Server | `mssql+pymssql://user:pass@SERVER_IP/?charset=utf8` |
## {% linkable_title Installation notes %}
@ -127,3 +128,20 @@ For PostgreSQL you may have to install a few dependencies:
$ sudo apt-get install postgresql-server-dev-X.Y
$ pip3 install psycopg2
```
### {% linkable_title MS SQL Server %}
For MS SQL Server you may have to install a few dependencies:
```bash
$ sudo apt-get install freetds-dev
$ pip3 install pymssql
```
If you are in a virtual environment, don't forget to activate it before installing the pymssql package.
```bash
$ sudo su -s /bin/bash homeassistant
$ source /srv/homeassistant/bin/activate
$ pip3 install pymssql
```

View file

@ -33,7 +33,13 @@ sensor:
Configuration variables:
- **name** (*Optional*): You can specify a name of the component, but do not have to. If you specify a name, the sensors will get an entity name of 'sensor.[name]`[monitored_condition]`, for example: `sensor.lopik_temperature`; if no name is specified the sensors will be called `sensor.br_[monitored_condition]`, for example `sensor.br_temperature`.
- **name** (*Optional*): You can specify a name of the component, but do not have to. If you specify a name, the sensors will get an entity name of `sensor.[name]_[default sensor display name]`, for example:
- `sensor.lopik_temperature`, since the name of the sensor is set to `lopik` and the default display name for monitored condition `temperature` is `Temperature`
- `sensor.lopik_wind_force`, since the name of the sensor is set to `lopik` and the default display name for monitored condition `windforce` is `Wind force`
If no name is specified the sensors will be called `sensor.br_[default sensor display name]`, for example:
- `sensor.br_wind_speed`, since no name has been set for the sensor and the default display name for monitored condition `windspeed` is `Wind speed`
- `sensor.br_ground_temperature`, since no name has been set for the sensor and the default display name for monitored condition `groundtemperature` is `Ground Temperature`
- **latitude** (*Optional*): Latitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration, but can be overridden/changed in this component to select a different location for buienradar.nl.
- **longitude** (*Optional*): Longitude to use for selection of data source location. Longitude and latitude will be taken from Home Assistant configuration, but can be overridden/changed in this component to select a different location for buienradar.nl.
- **timeframe** (*Optional*): Minutes to look ahead for precipitation (5..120) [default: 60].

View file

@ -7,6 +7,7 @@ sidebar: true
comments: false
sharing: true
footer: true
logo: citybikes.png
ha_category: Sensor
ha_release: 0.49
---

View file

@ -7,7 +7,7 @@ sidebar: true
comments: false
sharing: true
footer: true
logo: train.png
logo: dublin_bus.jpg
ha_category: Transport
ha_iot_class: "Cloud Polling"
ha_release: 0.36

View file

@ -2,12 +2,12 @@
layout: page
title: "London Undergound"
description: "Display the current status of London underground & overground lines within Home Assistant."
date: 2017-07-30 18:45
date: 2017-07-15 18:45
sidebar: true
comments: false
sharing: true
footer: true
logo: train.png
logo: london_underground.png
ha_category: Transport
ha_iot_class: "Cloud Polling"
ha_release: 0.49

View file

@ -7,7 +7,7 @@ sidebar: true
comments: false
sharing: true
footer: true
logo: xiaomi_vacuum.png
logo: xiaomi.png
ha_category: Switch
ha_release: 0.48
---