Skip to content

Commit e6b65dd

Browse files
authored
Merge pull request home-assistant#776 from home-assistant/next
0.26
2 parents 2c317f6 + 67c5bff commit e6b65dd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+871
-138
lines changed

source/_components/alarm_control_panel.verisure.markdown

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,3 +17,19 @@ The Verisure alarm control panel platform allows you to control your [Verisure](
1717

1818
The requirement is that you have setup your [Verisure hub](/components/verisure/).
1919

20+
The `changed_by` attribute enables one to be able to take different actions depending on who armed/disarmed the alarm in [automation](/getting-started/automation/).
21+
22+
```yaml
23+
automation:
24+
- alias: Alarm status changed
25+
trigger:
26+
- platform: state
27+
entity_id: alarm_control_panel.alarm_1
28+
action:
29+
- service: notify.notify
30+
data_template:
31+
message: >
32+
{% raw %}Alarm changed from {{ trigger.from_state.state }}
33+
to {{ trigger.to_state.state }}
34+
by {{ trigger.to_state.attributes.changed_by }}{% endraw %}
35+
```
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
---
2+
layout: page
3+
title: "FFmpeg Camera"
4+
description: "Instructions how to integrate a Video fees with FFmpeg as cameras within Home Assistant."
5+
date: 2016-08-13 08:00
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: ffmpeg.png
11+
ha_category: Camera
12+
ha_release: 0.26
13+
---
14+
15+
16+
The `ffmpeg` platform allows you to use every video feed with [FFmpeg](http://www.ffmpeg.org/) as camera in Home Assistant.
17+
18+
<p class='note'>
19+
You need a ffmpeg binary in your system path. On debain 8 you can install it from backports. If you want HW support on raspberry you need self build from source. Windows binary are avilable on ffmpeg homepage.
20+
</p>
21+
22+
To enable your FFmpeg feed in your installation, add the following to your `configuration.yaml` file:
23+
24+
```yaml
25+
# Example configuration.yaml entry
26+
camera:
27+
- platform: ffmpeg
28+
input: FFMPEG_SUPPORTED_INPUT
29+
name: FFmpeg
30+
ffmpeg_bin: /usr/bin/ffmpeg
31+
extra_arguments: -q:v 2
32+
```
33+
34+
Configuration variables:
35+
36+
- **input** (*Required*): A ffmpeg compatible input file, stream or feet.
37+
- **name** (*Optional*): This parameter allows you to override the name of your camera.
38+
- **ffmpeg_bin** (*Optional*): Default 'ffmpeg'.
39+
- **extra_arguments** (*Optional*): Extra option they will pass to ffmpeg. i.e. image quality or video filter options.
40+
41+
### {% linkable_title Image quality %}
42+
43+
You can control the `image quality` with [`extra_arguments`](https://www.ffmpeg.org/ffmpeg-codecs.html#jpeg2000) `-q:v 2-32` or with lossless option `-pred 1`.
44+

source/_components/device_tracker.locative.markdown

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ logo: locative.png
1111
ha_category: Presence Detection
1212
---
1313

14-
This platform allows you to detect presence using [Locative](https://my.locative.io/). Locative is an [open source](https://github.com/LocativeHQ/ios-app) app for iOS that allows users to set up a `GET` or `POST` request when a geofence is entered or exited. This can be configured with Home Assistant to update your location.
14+
This platform allows you to detect presence using [Locative](https://my.locative.io/). Locative is an open source app for [iOS](https://github.com/LocativeHQ/ios-app) and [Android](https://github.com/LocativeHQ/Locative-Android) that allows users to set up a `GET` or `POST` request when a geofence is entered or exited. This can be configured with Home Assistant to update your location.
1515

1616
To integrate Locative in Home Assistant, add the following section to your `configuration.yaml` file:
1717

@@ -21,6 +21,11 @@ device_tracker:
2121
platform: locative
2222
```
2323
24+
Install on your smartphone:
25+
26+
- [Android](https://play.google.com/store/apps/details?id=io.locative.app)
27+
- [iOS](https://itunes.apple.com/us/app/geofancy/id725198453)
28+
2429
To configure Locative, you must set up the app to send a `GET` request to your Home Assistant server at `http://<ha_server>/api/locative`. 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). When you enter or exit a geofence, Locative will send a `GET` request to that URL, updating Home Assistant.
2530

2631
<p class='img'>
Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
---
2+
layout: page
3+
title: Foursquare
4+
description: "Instructions how to the Foursquare API into Home Assistant."
5+
date: 2016-08-08 17:20
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: foursquare.png
11+
featured: true
12+
ha_category: Other
13+
ha_release: 0.26
14+
ha_iot_class: "Cloud Polling and Cloud Push"
15+
---
16+
17+
The `foursquare` component accepts pushes from the Foursquare [Real-Time API](https://developer.foursquare.com/overview/realtime) and a service to check users in on Swarm.
18+
19+
```yaml
20+
# Example configuration.yaml entry
21+
foursquare:
22+
access_token: "<foursquare access token>"
23+
push_secret: "<foursquare push secret>"
24+
```
25+
26+
Configuration variables:
27+
28+
- **access_token** (*Required*): A Foursquare API access token.
29+
- **push_secret** (*Required*): The push secret that Foursquare provides to you in the app dashboard.
30+
31+
#### {% linkable_title Real-Time API %}
32+
33+
The component accepts pushes from Foursquare at `/api/foursquare`. The route does not require authentication.
34+
35+
Foursquare checkin events can be used out of the box to trigger automation actions, e.g.:
36+
37+
```yaml
38+
automation:
39+
- alias: Trigger action when you check into a venue.
40+
trigger:
41+
platform: event
42+
event_type: foursquare.push
43+
action:
44+
service: script.turn_on
45+
entity_id: script.my_action
46+
```
47+
48+
#### {% linkable_title Check ins %}
49+
50+
To check a user in, use the `foursquare/checkin` service.
51+
52+
Parameters:
53+
54+
- **venueId** (*Required*): The Foursquare venue where the user is checking in.
55+
- **eventId** (*Optional*): The event the user is checking in to.
56+
- **shout** (*Optional*): A message about your check-in. The maximum length of this field is 140 characters.
57+
- **mentions** (*Optional*): Mentions in your check-in. This parameter is a semicolon-delimited list of mentions. A single mention is of the form "start,end,userid", where start is the index of the first character in the shout representing the mention, end is the index of the first character in the shout after the mention, and userid is the userid of the user being mentioned. If userid is prefixed with "fbu-", this indicates a Facebook userid that is being mention. Character indices in shouts are 0-based.
58+
- **broadcast** (*Optional*): "Who to broadcast this check-in to. Accepts a comma-delimited list of values: private (off the grid) or public (share with friends), facebook share on facebook, twitter share on twitter, followers share with followers (celebrity mode users only), If no valid value is found, the default is public."
59+
- **ll** (*Optional*): Latitude and longitude of the user's location. Only specify this field if you have a GPS or other device reported location for the user at the time of check-in.
60+
- **llAcc** (*Optional*): Accuracy of the user's latitude and longitude, in meters.
61+
- **alt** (*Optional*): Altitude of the user's location, in meters.
62+
- **altAcc** (*Optional*): Vertical accuracy of the user's location, in meters.

source/_components/influxdb.markdown

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@ influxdb:
3030
blacklist:
3131
- entity.id1
3232
- entity.id2
33+
whitelist:
34+
- entity.id3
35+
- entity.id4
3336
tags:
3437
- instance: prod
3538
```
@@ -44,5 +47,6 @@ Configuration variables:
4447
- **ssl** (*Optional*): Use https instead of http to connect. Defaults to false.
4548
- **verify_ssl** (*Optional*): Verify SSL certificate for https request. Defaults to false.
4649
- **blacklist** (*Optional*): List of entities not logged to InfluxDB.
50+
- **whitelist** (*Optional*): List of the entities (only) that will be logged to InfluxDB. If not set, all entities will be logged. Values set by the **blacklist** option will prevail.
4751
- **tags** (*Optional*): Tags to mark the data.
4852

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
---
2+
layout: page
3+
title: "MQTT JSON Light"
4+
description: "Instructions for how to setup MQTT JSON lights within Home Assistant."
5+
date: 2016-08-09 08:30
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: mqtt.png
11+
ha_category: Light
12+
ha_iot_class: "Local Push"
13+
ha_release: 0.26
14+
---
15+
16+
17+
The `mqtt_json` light platform let you control a MQTT-enabled light that can receive [JSON](https://en.wikipedia.org/wiki/JSON) messages.
18+
19+
This platform supports on/off, brightness, RGB colors, transitions, and short/long flashing. The messages sent to/from the lights look similar to this, omitting fields when they aren't needed:
20+
21+
```json
22+
{
23+
"brightness": 255,
24+
"color": {
25+
"g": 255,
26+
"b": 255,
27+
"r": 255
28+
},
29+
"transition": 2,
30+
"state": "ON"
31+
}
32+
```
33+
34+
35+
In an ideal scenario, the MQTT device will have a state topic to publish state changes. If these messages are published with the RETAIN flag, the MQTT light will receive an instant state update after subscription and will start with correct state. Otherwise, the initial state of the light will be off.
36+
37+
When a state topic is not available, the light will work in optimistic mode. In this mode, the light will immediately change state after every command. Otherwise, the light will wait for state confirmation from device (message from `state_topic`).
38+
39+
Optimistic mode can be forced, even if state topic is available. Try enabling it if the light is operating incorrectly.
40+
41+
To enable a light with brightness and RGB support in your installation, add the following to your `configuration.yaml` file:
42+
43+
```yaml
44+
# Example configuration.yaml entry
45+
light:
46+
- platform: mqtt_json
47+
name: mqtt_json_light_1
48+
state_topic: "home/rgb1"
49+
command_topic: "home/rgb1/set"
50+
brightness: true
51+
rgb: true
52+
```
53+
54+
To enable a light with brightness (but no color support) in your installation, add the following to your `configuration.yaml` file:
55+
56+
```yaml
57+
# Example configuration.yaml entry
58+
light:
59+
- platform: mqtt_json
60+
name: mqtt_json_light_1
61+
state_topic: "home/rgb1"
62+
command_topic: "home/rgb1/set"
63+
brightness: true
64+
```
65+
66+
Configuration variables:
67+
68+
- **name** (*Optional*): The name of the light. Default is "MQTT JSON Light."
69+
- **state_topic** (*Optional*): The MQTT topic subscribed to receive state updates.
70+
- **command_topic** (*Required*): The MQTT topic to publish commands to change the light's state.
71+
- **brightness** (*Optional*): Flag that defines if the light supports brightness. Default is false.
72+
- **rgb** (*Optional*): Flag that defines if the light supports RGB colors. Default is false.
73+
- **flash_time_short** (*Optional*): The duration, in seconds, of a "short" flash. Default is 2.
74+
- **flash_time_long** (*Optional*): The duration, in seconds, of a "long" flash. Default is 10.
75+
- **optimistic** (*Optional*): Flag that defines if the light works in optimistic mode. Default is true if no state topic defined, else false.
76+
- **qos** (*Optional*): The maximum QoS level of the state topic. Default is 0 and will also be used to publishing messages.
77+
78+
<p class='note warning'>
79+
Make sure that your topics match exact. `some-topic/` and `some-topic` are different topics.
80+
</p>
81+
82+
A full example of custom lighting using this platform and an ESP8266 microcontroller can be found [here](https://github.com/corbanmailloux/esp-mqtt-rgb-led). It supports on/off, brightness, transitions, RGB colors, and flashing.

source/_components/media_player.mpchc.markdown

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,12 @@ For this component to function, you will need to enable the Web Interface in the
2222
<img src='{{site_root}}/images/screenshots/mpc-hc.png' />
2323
</p>
2424

25+
If the server running Home Assistant is not the same device that is running MPC-HC, you will need to ensure that the *allow access from localhost only* option is not set.
26+
27+
<p class='note warning'>
28+
The MPC-HC web interface is highly insecure, and allows remote clients full player control file-system access without authentication. Never allow access to the Web UI from outside of your trusted network, and if possible [use a proxy script to restrict control or redact sensitive information](https://github.com/abcminiuser/mpc-hc-webui-proxy).
29+
</p>
30+
2531
To add MPC-HC to your installation, add the following to your `configuration.yaml` file:
2632

2733
```yaml

source/_components/nest.markdown

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,32 @@ thermostat:
2424
platform: nest
2525
```
2626
27+
```yaml
28+
# Example configuration.yaml entry to show only devices at your vacation home
29+
nest:
30+
username: USERNAME
31+
password: PASSWORD
32+
structure: Vacation
33+
34+
thermostat:
35+
platform: nest
36+
```
37+
38+
```yaml
39+
# Example configuration.yaml entry to show only devices at your vacation and primary homes
40+
nest:
41+
username: USERNAME
42+
password: PASSWORD
43+
structure:
44+
- Vacation
45+
- Primary
46+
47+
thermostat:
48+
platform: nest
49+
```
50+
2751
Configuration variables:
2852
2953
- **username** (*Required*): Your Nest username.
3054
- **password** (*Required*): Your Nest password.
55+
- **structure** (*Optional*): The structure or structures you would like to include devices from. If not specified, this will include all structures in your Nest account.

source/_components/notify.aws_lambda.markdown

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ The context will look like this:
6666
"latitude": 44.1234,
6767
"location_name": "Home",
6868
"longitude": 5.5678,
69-
"temperature_unit": "°C",
69+
"unit_system": "metric",
7070
"time_zone": "Europe/Zurich",
7171
"version": "0.20.0.dev0"
7272
},

source/_components/notify.smtp.markdown

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,27 @@ Configuration variables:
4242
- **recipient** (*Required*): Recipient of the notification.
4343
- **starttls** (*Optional*): Enables STARTTLS, eg. 1 or 0. Defaults to 0.
4444

45+
To use the smtp notification, refer to it in an automation or script like in this example:
46+
47+
```yaml
48+
burglar:
49+
alias: Burglar Alarm
50+
sequence:
51+
- service: shell_command.snapshot
52+
- delay:
53+
seconds: 1
54+
- service: notify.NOTIFIER_NAME
55+
data:
56+
title: 'Intruder alert'
57+
message: 'Intruder alert at apartment!!'
58+
data:
59+
images:
60+
- /home/pi/snapshot1.jpg
61+
- /home/pi/snapshot2.jpg
62+
```
63+
64+
The optional **images** field adds in-line image attachments to the email. This sends a text/HTML multi-part message instead of the plain text default.
65+
4566
This platform is fragile and not able to catch all exceptions in a smart way because of the large number of possible configuration combinations.
4667

4768
A combination that will work properly is port 587 and STARTTLS. It's recommended to enable STARTTLS, if possible.
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
layout: page
3+
title: "Panel Custom"
4+
description: "Instructions how to add customied panels to the frontend of Home Assistant."
5+
date: 2015-08-08 11:00
6+
sidebar: true
7+
comments: false
8+
sharing: true
9+
footer: true
10+
logo: home-assistant.png
11+
ha_category: Frontend
12+
ha_release: 0.26
13+
---
14+
15+
16+
The `panel_custom` support allows you to add additional panels to your Home Assistant frontend. The panels are listed in the sidebar if wished and can be highly customized.
17+
18+
To enable customized panels in your installation, add the following to your `configuration.yaml` file:
19+
20+
```yaml
21+
# Example configuration.yaml entry
22+
panel_custom:
23+
- name: todomvc
24+
sidebar_title: TodoMVC
25+
sidebar_icon: mdi:work
26+
url_path: my-todomvc
27+
webcomponent_path: /home/hass/hello.html
28+
config:
29+
hello: world
30+
```
31+
32+
Configuration variables:
33+
34+
- **name** (*Optional*): Name of the panel.
35+
- **sidebar_title** (*Optional*): Friendly title for the panel in the sidebar. Omitting it means no sidebar entry (but still accessible through the URL).
36+
- **sidebar_icon** (*Optional*): Icon for entry. Pick an icon that you can find on [materialdesignicons.com](https://materialdesignicons.com/) to use for your input and prefix the name with `mdi:`. For example `mdi:car`, `mdi:ambulance`, or `mdi:motorbike`.
37+
- **url_path** (*Optional*): The URL your panel will be available on. If omitted will default to the panel name.
38+
- **webcomponent_path** (*Optional*): The path to your component. If omitted will default to `<config dir>/panels/<component name>.html`
39+
- **config** (*Optional*): Configuration to be passed into your web component when being instantiated.
40+

0 commit comments

Comments
 (0)