Merge pull request #1456 from home-assistant/next

0.33
This commit is contained in:
Paulus Schoutsen 2016-11-19 16:04:31 -08:00 committed by GitHub
commit 86c57c5e43
29 changed files with 732 additions and 77 deletions

View File

@ -129,6 +129,6 @@ social:
account: home_assistant
current_major_version: 0
current_minor_version: 32
current_patch_version: 4
date_released: 2016-11-15
current_minor_version: 33
current_patch_version: 0
date_released: 2016-11-20

View File

@ -27,6 +27,7 @@ If you want to select a specific sensor, set discovery to False for [netatmo](/c
binary_sensor:
platform: netatmo
home: home_name
timeout: 15
cameras:
- camera_name1
monitored_conditions:
@ -38,6 +39,7 @@ binary_sensor:
Configuration variables:
- **home** (*Optional*): Will use the cameras of this home only.
- **timeout** (*Optional*): The binary sensors will reflect the events from the last X minutes (default: 15)
- **cameras** array (*Optional*): Cameras to use. Multiple enties allowed.
- 'camera_name': Name of the camera to display.
- **monitored_conditions** array (*Optional*): List of monitored conditions.
@ -49,4 +51,4 @@ If **home** and **cameras** is not provided, all cameras will be used. If multip
<p class='note'>
[Welcome tags](https://www.netatmo.com/product/security/welcome/tags) are not yet supported, but will be in a next update.
</p>
</p>

View File

@ -0,0 +1,115 @@
---
layout: page
title: "Google Calendar Event"
description: "Instructions how to use Google Calendars in Home Assistant."
date: 2015-05-08 17:15
sidebar: true
comments: false
sharing: true
footer: true
logo: google_calendar.png
ha_category: Calendar
ha_iot_class: "Cloud Polling"
ha_release: 0.33
---
This platform allows you to connect to your [Google Calendars](https://calendar.google.com) and generate binary sensors. The sensors created can trigger based on any event on the calendar or only for matching events. When you first setup this component it will generate a new configuration file *google_calendars.yaml* that will contain information about all of the calendars you can see.
### {% linkable_title Prerequisites %}
Generate a Client ID and Client Secret on [Google Developers Console](https://console.developers.google.com/start/api?id=calendar).
1. Follow the wizard using the following information.
1. When it gets to the point of asking _Which API are you using?_ just click cancel.
1. Click on the tab 'OAuth consent screen'.
1. Set 'Product name shown to users' to anything you want. We suggest Home-Assistant.
1. Save this page. You don't have to fill out anything else there.
1. Click 'Create credentials' -> OAuth client ID.
1. Set the Application type to 'Other' and give this credential set a name then click Create.
1. Save the client ID and secret as you will need to put these in your configuration.yaml file.
### {% linkable_title Basic Setup %}
To integrate Google Calendar in Home Assistant, add the following section to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
google:
client_id: *Value_created_from_steps_above*
client_secret: *Value_created_from_steps_above*
```
Configuration variables:
- **client_id** (*Required*): Use the value you generated in the Prerequisites stage.
- **client_secret** (*Required*): Use the value you generated in the Prerequisites stage.
- **track_new_calendar** (*Optional*): Will automatically generate a binary sensor when a new calendar is detected. The system scans for new calendars on startup. By default this is set to `True`.
The next steps will require you to have Home Assistant running.
After you have it running complete the Google authentication that pops up. It will give you a URL and a code to enter. This will grant your Home Assistant service access to all the Google Calendars that the account you authenticate with can read. This is a Read-Only view of these calendars.
### {% linkable_title Calendar Configuration %}
Editing `google_calendars.yaml`
A basic entry for a single calendar looks like:
```yaml
- cal_id: "***************************@group.calendar.google.com"
entities:
- device_id: test_everything
name: Give me everything
track: true
- cal_id: "***************************@group.calendar.google.com"
entities:
- device_id: test_important
name: Important Stuff
track: true
search: "#Important"
offset: "!!"
- device_id: test_unimportant
name: UnImportant Stuff
track: true
search: "#UnImportant"
```
Variables:
- **cal_id**: The Google generated unique id for this calendar. **DO NOT CHANGE**
- **entities**: Yes, you can have multiple sensors for a calendar!
- **device_id**: (*Required*): The name that all your automations/scripts will use to reference this device.
- **name**: (*Required*): What is the name of your sensor that you'll see in the frontend.
- **track**: (*Required*): Should we create a sensor `True` or ignore it `False`?
- **search**: (*Optional*): If set will only trigger for matched events.
- **offset**: (*Optional*): A set of characters that precede a number in the event title for designating a pre-trigger state change on the sensor. (Default: `!!`)
From this we will end up with the binary sensors `calendar.test_unimportant` and `calendar.test_important` which will toggle themselves on/off based on events on the same calendar that match the search value set for each. You'll also have a sensor `calendar.test_everything` that will not filter events out and always show the next event available.
But what if you only wanted it to toggle based on all events? Just leave out the *search* parameter.
**Note**: If you use a `#` sign for search then wrap it up. It's better to be safe!
### {% linkable_title Sensor attributes %}
- **offset_reached**: If set in the event title and parsed out will be `on`/`off` once the offset in the title in minutes is reached. So the title `Very important meeting #Important !!-10` would trigger this attribute to be `on` 10 minutes before the event starts.
- **all_day**: `True`/`False` if this is an all day event. Will be `False` if there is no event found.
- **message**: The event title with the `search` and `offset` values extracted. So in the above example for **offset_reached** the **message** would be set to `Very important meeting`
- **description**: The event description.
- **location**: The event Location.
- **start_time**: Start time of event.
- **end_time**: End time of event.

View File

@ -0,0 +1,12 @@
---
layout: page
title: "Calendar"
description: "Instructions how to integrate calendars within Home Assistant."
date: 2016-11-19 08:36
sidebar: true
comments: false
sharing: true
footer: true
---
The calendar component allows you to integrate your calendars into Home Assistant.

View File

@ -0,0 +1,68 @@
---
layout: page
title: "Cisco IOS"
description: "Instructions how to integrate Cisco IOS routers into Home Assistant."
date: 2016-11-07 19:59
sidebar: true
comments: false
sharing: true
footer: true
logo: cisco.png
ha_category: Presence Detection
ha_release: 0.33
---
This is a presence detection scanner for [Cisco](http://www.cisco.com) IOS devices.
<p class='note warning'>
This device tracker needs SSH to be enabled on the router.
</p>
Before using this scanner it is recommended that you lower the ARP cache timeout on your router, as Cisco IOS normally comes with a 4 hour default ARP cache timeout.
For example, the following commands will lower the timeout to 2 minutes on Vlan1:
```bash
# 1. use this command to see what Vlan your devices are on
show ip arp
# 2. Go into configure mode
conf t
# 3. Use the Vlan name as you see it from step 1 above
interface Vlan1
# 4. Set a new arp cache timeout
arp timeout 120
# 5. Exit
# Press <ctrl+c> to exit configure mode
# 6. Don't forget to save the new config, so that it will survive a reboot
copy running-config startup-config
```
<p class='note warning'>
If you have a very large number of devices on your VLan (+1000), then you may want to adjust the ARP cache timeout to suit your needs. See [this discussion](https://supportforums.cisco.com/discussion/10169296/arp-timeout) to learn more.
</p>
To use this device tracker in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
- platform: cisco_ios
host: ROUTER_IP_ADDRESS
username: YOUR_ADMIN_USERNAME
password: YOUR_ADMIN_PASSWORD
```
Configuration variables:
- **host** (*Required*): The IP address of your router, e.g. 192.168.1.1.
- **username** (*Required*): The username of an user with administrative privileges.
- **password** (*Required*): The password for your given admin account.
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -0,0 +1,31 @@
---
layout: page
title: "Swisscom Internet-Box"
description: "Instructions how to integrate Swisscom Internet-Box into Home Assistant."
date: 2016-10-29 23:30
sidebar: true
comments: false
sharing: true
footer: true
logo: swisscom.png
ha_category: Presence Detection
ha_release: 0.32
---
The `swisscom` platform offers presence detection by looking at connected devices to an [Internet-Box](https://www.swisscom.ch/en/residential/help/device/internet-router.html) router from [Swisscom](https://www.swisscom.ch), which is the main Internet provider in Switzerland.
<p class='note'>
There are three models of Internet-Box (light, standard and plus). The platform has only been tested on the Internet-Box plus but the others should work as well because they have the same web interface.
</p>
To use an Internet-Box router in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
device_tracker:
platform: swisscom
host: "192.168.1.1" # only required if not 192.168.1.1
```
See the [device tracker component page](/components/device_tracker/) for instructions how to configure the people to be tracked.

View File

@ -32,6 +32,7 @@ Configuration variables:
- **ssl_certificate** (*Optional*): Path to your TLS/SSL certificate to serve Home Assistant over a secure connection.
- **ssl_key** (*Optional*): Path to your TLS/SSL key to serve Home Assistant over a secure connection.
- **cors_allowed_origins** (*Optional*): A list of origin domain names to allow [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing) requests from. Enabling this will set the `Access-Control-Allow-Origin` header to the Origin header if it is found in the list, and the `Access-Control-Allow-Headers` header to `Origin, Accept, X-Requested-With, Content-type, X-HA-access`. You must provide the exact Origin, i.e. `https://home-assistant.io` will allow requests from `https://home-assistant.io` but __not__ `http://home-assistant.io`.
- **use_x_forwarded_for** (*Optional*): Enable parsing of the `X-Forwarded-For` header, passing on the client's correct IP address in proxied setups. You should only enable this in a trustworthy network environment, as clients passing that header could easily spoof their source IP address.
- **trusted_networks** (*Optional*): List of trusted networks, consisting of IP addresses or networks, that are allowed to bypass password protection when accessing Home Assistant.
The sample below shows a configuration entry with possible values:

View File

@ -73,3 +73,19 @@ automation:
entity_id: light.flux_living_room_lamp
effect: random
```
Will add a light with out the white mode:
```yaml
192.168.1.10:
name: NAME
mode: "rgb"
```
Will add a light with white mode (default). Changing the brightness will set the bulb in white mode:
```yaml
192.168.1.10:
name: NAME
mode: "rgbw"
```

View File

@ -54,7 +54,7 @@ Turns one or multiple lights off.
### {% linkable_title Service `light.toggle` %}
Toggles the state of one or multiple lights using [groups]({{site_root}}/components/group/).
Toggles the state of one or multiple lights using [groups]({{site_root}}/components/group/).
*Note*: If `light.toggle` is used for a group of lights, it will toggle the individual state of each light.
@ -62,3 +62,17 @@ Toggles the state of one or multiple lights using [groups]({{site_root}}/compone
| ---------------------- | -------- | ----------- |
| `entity_id` | no | String or list of strings that point at `entity_id`s of lights. Else targets all.
| `transition` | yes | Integer that represents the time the light should take to transition to the new state in seconds.
### {% linkable_title Service `light.hue_activate_scene` %}
If you have hue lights, there is a service call to directly activate
scenes that are stored in your hue hub. This will have all the bulbs
transitioned at once, instead of one at a time using standard scenes
in Home Assistant.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `group_name` | no | The group/room name of the lights. Find this in the Hue official app.
| `scene_name` | no | The name of the Scene. Find this in the Hue official app.
*Note*: `group_name` is not linked to Home Assistant group name.

View File

@ -0,0 +1,109 @@
---
layout: page
title: "MQTT Template Light"
description: "Instructions for how to setup MQTT Template lights within Home Assistant."
date: 2016-11-06 21:16
sidebar: true
comments: false
sharing: true
footer: true
logo: mqtt.png
ha_category: Light
ha_iot_class: "Local Push"
ha_release: 0.33
---
The `mqtt_template` light platform lets you control a MQTT-enabled light that receive commands on a command topic and optionaly sends status update on a state topic.
It is format-agnostic so you can use any data format you want (i.e. string, JSON), just configure it with templating.
This platform supports on/off, brightness, RGB colors, transitions, and short/long flashing.
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 the correct state. Otherwise, the initial state of the light will be off.
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 the device (message from `state_topic`).
Optimistic mode can be forced, even if state topic is available. Try enabling it if the light is operating incorrectly.
```yaml
# Example configuration.yaml entry
light:
- platform: mqtt_template
command_topic: "home/rgb1/set"
command_on_template: "on"
command_off_template: "off"
```
Configuration variables:
- **name** (*Optional*): The name of the light. Default is "MQTT Template Light."
- **command_topic** (*Required*): The MQTT topic to publish commands to change the light's state.
- **state_topic** (*Optional*): The MQTT topic subscribed to receive state updates.
- **command_on_template** (*Required*): The template for *on* state changes. Available variables: `state`, `brightness`, `red`, `green`, `blue`, `flash` and `transition`.
- **command_off_template** (*Required*): The template for *off* state changes. Available variables: `state` and `transition`.
- **state_template** (*Optional*): Template to extract state from the state payload value.
- **brightness_template** (*Optional*): Template to extract brightness from the state payload value.
- **red_template** (*Optional*): Template to extract red color from the state payload value.
- **green_template** (*Optional*): Template to extract green color from the state payload value.
- **blue_template** (*Optional*): Template to extract blue color from the state payload value.
- **optimistic** (*Optional*): Flag that defines if the light works in optimistic mode. Default is true if no state topic or state template is defined, else false.
- **qos** (*Optional*): The maximum QoS level of the state topic. Default is 0 and will also be used to publishing messages.
<p class='note warning'>
Make sure that your topics match exact. `some-topic/` and `some-topic` are different topics.
</p>
## {% linkable_title Examples %}
In this section you find some real life examples of how to use this light.
### {% linkable_title Simple string payload %}
For a simple string payload with the format `state,brightness,r-g-b` (e.g. `on,255,255-255-255`), add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
light:
- platform: mqtt_template
command_topic: "home/rgb1/set"
state_topic: "home/rgb1/status"
command_on_template: "{% raw %}on,{{ brightness|d }},{{ red|d }}-{{ green|d }}-{{ blue|d }}{% endraw %}"
command_off_template: "off"
state_template: "{% raw %}{{ value.split(',')[0] }}{% endraw %}" # must return `on` or `off`
brightness_template: "{% raw %}{{ value.split(',')[1] }}{% endraw %}"
red_template: "{% raw %}{{ value.split(',')[2].split('-')[0] }}{% endraw %}"
green_template: "{% raw %}{{ value.split(',')[2].split('-')[1] }}{% endraw %}"
blue_template: "{% raw %}{{ value.split(',')[2].split('-')[2] }}{% endraw %}"
```
### {% linkable_title JSON payload %}
For a JSON payload with the format `{"state": "on", "brightness": 255, "color": [255, 255, 255]}`, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
light:
- platform: mqtt_template
command_topic: "home/rgb1/set"
state_topic: "home/rgb1/status"
command_on_template: >{% raw %}
{"state": "on"
{%- if brightness is defined -%}
, "brightness": {{ brightness }}
{%- endif -%}
{%- if red is defined and green is defined and blue is defined -%}
, "color": [{{ red }}, {{ green }}, {{ blue }}]
{%- endif -%}
}{% endraw %}
command_off_template: '{"state": "off"}'
state_template: '{% raw %}{{ value_json.state }}{% endraw %}'
brightness_template: '{% raw %}{{ value_json.brightness }}{% endraw %}'
red_template: '{% raw %}{{ value_json.color[0] }}{% endraw %}'
green_template: '{% raw %}{{ value_json.color[1] }}{% endraw %}'
blue_template: '{% raw %}{{ value_json.color[2] }}{% endraw %}'
```
### {% linkable_title No brightness or color support %}
If you don't want brightness or color support, just omit the corresponding configuration sections.

View File

@ -29,6 +29,16 @@ mqtt:
password: PASSWORD
certificate: /home/paulus/dev/addtrustexternalcaroot.crt
protocol: 3.1
birth_message:
topic: 'hass/status'
payload: 'online'
qos: 1
retain: true
will_message:
topic: 'hass/status'
payload: 'offline'
qos: 1
retain: true
```
Configuration variables:
@ -43,6 +53,16 @@ Configuration variables:
- **client_key** (*Optional*): Client key (example: `/home/user/owntracks/cookie.key`)
- **client_cert** (*Optional*): Client certificate (example: `/home/user/owntracks/cookie.crt`)
- **protocol** (*Optional*): Protocol to use: 3.1 or 3.1.1. By default it connects with 3.1.1 and falls back to 3.1 if server does not support 3.1.
- **birth_message** (*Optional*):
- **topic** (*Required*): The MQTT topic to publish the message.
- **payload** (*Required*): The message content.
- **qos** (*Optional*): The maximum QoS level of the topic. Default is 0.
- **retain** (*Optional*): If the published message should have the retain flag on or not. Defaults to `True`.
- **will_message** (*Optional*):
- **topic** (*Required*): The MQTT topic to publish the message.
- **payload** (*Required*): The message content.
- **qos** (*Optional*): The maximum QoS level of the topic. Default is 0.
- **retain** (*Optional*): If the published message should have the retain flag on or not. Defaults to `True`.
## {% linkable_title Picking a broker %}

View File

@ -0,0 +1,34 @@
---
layout: page
title: "Neato Robotics"
description: "Instructions how to integrate your Neato within Home Assistant."
date: 2016-10-09 20:15
sidebar: true
comments: false
sharing: true
footer: true
logo: neato.png
ha_category: Hub
ha_release: 0.33
featured: true
---
The `neato` component allows you to control your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
To enable `neato` in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
neato:
username: USERNAME
password: PASSWORD
```
Configuration variables:
- **username** (*Required*): Username for the Neato account.
- **password** (*Required*): Password for the Neato account.
<p class='note'>
The Home Assistant Neato platform has only be tested with a Botvac Connected. There is no support for the Botvac D3 Connected and Botvac D5 Connected robots at this time.
</p>

View File

@ -0,0 +1,24 @@
---
layout: page
title: "API Stream Sensor"
description: "Instructions how to count clients using the API stream within Home Assistant."
date: 2016-11-19 10:00
sidebar: true
comments: false
sharing: true
footer: true
logo: home-assistant.png
ha_category: Sensor
ha_release: 0.33
---
The `api_stream` sensor platform shows how many clients are connected to the stream API
To add the connected clients to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: api_streams
```

View File

@ -0,0 +1,58 @@
---
layout: page
title: "Broadlink RM2 and A1 sensor"
description: "Instructions how to integrate Broadlink RM2 and/or A1 E-air sensors within Home Assistant."
date: 2016-11-08 21:59
sidebar: true
comments: false
sharing: true
footer: true
logo: broadlink.png
ha_category: Sensor
ha_release: 0.34
---
The `broadlink` sensor platform let you monitor data from an RM2 and A1 E-air.
There is currently no support for the cloud API.
To set it up, add the following information to your `configuration.yaml` file:
Obtain sensor data from an A1:
```yaml
sensor:
platform: broadlink
update_interval: 60
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
monitored_conditions:
- temperature
- humidity
- air_quality
- light
- noise
```
Obtain temperature data from an RM2:
```yaml
sensor:
platform: broadlink
update_interval: 60
host: IP_ADDRESS
mac: 'MAC_ADDRESS'
monitored_conditions:
- temperature
```
Configuration options:
- **name** (*Optional*): Default BL. Sensor name
- **update_interval** (*Optional*): Default 300. Time in seconds to fetch data from sensors
- **host** (*Required*): The hostname/IP address to connect to.
- **mac** (*Required*): Device mac address.
- **monitored_conditions** array (*Required*): States to monitor.
- 'temperature'
- 'humidity'
- 'air_quality'
- 'light'
- 'noise'

View File

@ -0,0 +1,17 @@
---
layout: page
title: "Neato Robotics Sensor"
description: "Instructions how to integrate a Neato Botvac Connected sensors within Home Assistant."
date: 2016-11-09 20:11
sidebar: true
comments: false
sharing: true
footer: true
logo: neato.png
ha_category: Sensor
ha_release: 0.33
---
The `neato` sensor platform allows you to watch status and battery of your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
To add `neato` sensors to your installation, follow instructions in [Neato component](/components/neato/).

View File

@ -0,0 +1,37 @@
---
layout: page
title: "PVOutput Sensor"
description: "Instructions how to use PVOutput within Home Assistant."
date: 2016-11-06 10:00
sidebar: true
comments: false
sharing: true
footer: true
logo: pvoutput.png
ha_category: Energy
ha_release: 0.33
---
The `pvoutput` sensor platform consumes informations from [PVOutput](http://pvoutput.org/) which were uploaded by your solar photovoltaic (PV) system.
To add PVOutput details to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: pvoutput
system_id: YOUR_SYSTEM_ID
api_key: YOUR_API_KEY
scan_interval: 120
```
Configuration variables:
- **api_key** (*Required*): Your API key. A read-only key is fine.
- **system_id** (*Required*): The ID of your station.
<p class='note warning'>
It's recommended to set `scan_interval:` according to a value greater than 60 seconds. The service only allows 60 requests per hour but the sensor's default is 30 seconds.
</p>

View File

@ -14,7 +14,7 @@ ha_iot_class: depends
---
This `synologydsm` sensor allows getting various statistics from your [Synology NAS](https://www.synology.com). Please note that using this sensor wakes up your Synology NAS if in hibernation mode.
This `synologydms` sensor allows getting various statistics from your [Synology NAS](https://www.synology.com).
To use the `synologydsm` sensor in your installation, add the following to your `configuration.yaml` file:
@ -30,12 +30,19 @@ sensor:
- memory_real_usage
- network_up
```
Note: After booting Home Assistant it can take up to 15 minutes for the sensors to show up. This is due to the fact that sensors are created after Home Assistant has fully been initialized.
<p class='note'>
After booting Home Assistant it can take up to 15 minutes for the sensors to show up. This is due to the fact that sensors are created after Home Assistant has fully been initialized.
</p>
<p class='note warning'>
This sensor will wake up your Synology NAS if it's in hibernation mode.
</p>
Configuration variables:
- **host** (*Required*): The IP address of the Synology NAS to monitor
- **port** (*Optional*): The port number on which the Synology NAS is reachable. Defaults to `5000`.
- **port** (*Optional*): The port number on which the Synology NAS is reachable. Defaults to `5000`.
- **username** (*Required*): An user to connect to the Synology NAS (a separate account is advised, see the Separate User Configuration section below for details).
- **password** (*Required*): The password of the user to connect to the Synology NAS.
- **volumes** (*Optional*): Array of volumes to monitor. Defaults to all volumes.
@ -74,6 +81,6 @@ Configuration variables:
Separate User Configuration:
Due to the nature of the Synology DSM API it is required to grant the user admin rights. This is related to the fact that utilization information is stored in the core module.
Due to the nature of the Synology DSM API it is required to grant the user admin rights. This is related to the fact that utilization information is stored in the core module.
When creating the user it is possible to deny access to all locations and applications. By doing this the user will not be able to login to the web interface or view any of the files on the Synology NAS. It is still able to read the utilization and storage information using the API.

View File

@ -28,34 +28,45 @@ sensor:
- platform: wunderground
api_key: your_api_key
monitored_conditions:
- weather
- temp_f
- temp_c
- station_id
- alerts
- dewpoint_c
- dewpoint_f
- dewpoint_string
- feelslike_c
- feelslike_f
- feelslike_string
- heat_index_c
- heat_index_f
- heat_index_string
- dewpoint_c
- dewpoint_f
- dewpoint_string
- wind_kph
- wind_mph
- UV
- pressure_in
- pressure_mb
- wind_dir
- wind_string
- relative_humidity
- visibility_mi
- visibility_km
- elevation
- location
- observation_time
- precip_1hr_in
- precip_1hr_metric
- precip_1hr_string
- precip_today_in
- precip_today_metric
- precip_today_string
- pressure_in
- pressure_mb
- pressure_trend
- relative_humidity
- station_id
- solarradiation
- alerts
- temperature_string
- temp_c
- temp_f
- UV
- visibility_km
- visibility_mi
- weather
- wind_degrees
- wind_dir
- wind_gust_kph
- wind_gust_mph
- wind_kph
- wind_mph
- wind_string
```
@ -63,34 +74,42 @@ Configuration variables:
- **api_key** (Required): See above.
- **pws_id** (Optional): You can enter a Personal Weather Station ID. The current list of Wunderground PWS stations is available [here](https://www.wunderground.com/weatherstation/ListStations.asp). If you do not enter a PWS ID, the current location information (latitude and longitude) from your `configuration.yaml` will be used to display weather conditions.
- **monitored_conditions** array (*Required*): Conditions to display in the frontend. The following conditions can be monitored.
- **weather**: A human-readable text summary with picture from Wunderground.
- **temp_f**: Current temperature in Fahrenheit
- **temp_c**: Current temperature in Celsius
- **station_id**: Your personal weather station (PWS) ID
- **alerts**: Current severe weather advisories
- **dewpoint_c**: Temperature in Celsius below which water droplets begin to condense and dew can form
- **dewpoint_f**: Temperature in Fahrenheit below which water droplets begin to condense and dew can form
- **dewpoint_string**: Text summary of dew point
- **feelslike_c**: Feels like (or apparent) temperature in Celsius
- **feelslike_f**: Feels like (or apparent) temperature in Fahrenheit
- **feelslike_string**: Text summary of how the current temperature feels like
- **heat_index_c**: Heat index (combined effects of the temperature and humidity of the air) in Celsius
- **heat_index_f**: Heat index (combined effects of the temperature and humidity of the air) in Fahrenheit
- **heat_index_string**: Text summary of current heat index
- **dewpoint_c**: Temperature in Celsius below which water droplets begin to condense and dew can form
- **dewpoint_f**: Temperature in Fahrenheit below which water droplets begin to condense and dew can form
- **dewpoint_string**: Text summary of dew point
- **wind_kph**: Current wind speed in kph
- **wind_mph**: Current wind speed in mph
- **UV**: Current levels of UV radiation. See [here](https://www.wunderground.com/resources/health/uvindex.asp) for explanation.
- **pressure_in**: Atmospheric air pressure in inches
- **pressure_mb**: Atmospheric air pressure in millibars
- **wind_dir**: Wind direction
- **wind_string**: Text summary of current wind conditions
- **relative_humidity**: Relative humidity
- **visibility_mi**: Average visibility in miles
- **visibility_km**: Average visibility in km
- **elevation**: Elevation in feet
- **location**: City and State
- **observation_time**: Text summary of observation time
- **precip_today_in**: Total precipitation in inches
- **precip_today_metric**: Total precipitation in metric units
- **precip_today_string**: Text summary of precipitation today
- **pressure_in**: Atmospheric air pressure in inches
- **pressure_mb**: Atmospheric air pressure in millibars
- **pressure_trend**: Atmospheric air presure trend signal (+/-)
- **relative_humidity**: Relative humidity
- **station_id**: Your personal weather station (PWS) ID
- **solarradiation**: Current levels of solar radiation
- **alerts**: Current severe weather advisories
- **temperature_string**: Temperature text combinding Fahrenheit and Celsius
- **temp_c**: Current temperature in Celsius
- **temp_f**: Current temperature in Fahrenheit
- **UV**: Current levels of UV radiation. See [here](https://www.wunderground.com/resources/health/uvindex.asp) for explanation.
- **visibility_km**: Average visibility in km
- **visibility_mi**: Average visibility in miles
- **weather**: A human-readable text summary with picture from Wunderground.
- **wind_degrees**: Wind degrees
- **wind_dir**: Wind direction
- **wind_gust_kph**: Wind gusts speed in kph
- **wind_gust_mph**: Wind gusts speed in mph
- **wind_kph**: Current wind speed in kph
- **wind_mph**: Current wind speed in mph
- **wind_string**: Text summary of current wind conditions
All the conditions listed above will be updated each 5 minutes with exception of `alerts` that will be updated each 15 minutes by default.

View File

@ -14,23 +14,4 @@ ha_release: 0.31
The `neato` switch platform allows you to control your [Neato Botvac Connected](https://www.neatorobotics.com/robot-vacuum/botvac-connected-series/botvac-connected/).
This will automatically add a switch for each Botvac Connected that you have. The switch will start a full home cleaning when turned ON and return the robot to base when turned OFF.
To enable this switch in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
switch:
- platform: neato
username: USERNAME
password: PASSWORD
```
Configuration variables:
- **username** (*Required*): Username for the Neato account.
- **password** (*Required*): Password for the Neato account.
<p class='note'>
The Home Assistant Neato platform has only be tested with a Botvac Connected. There is no support for the Botvac D3 Connected and Botvac D5 Connected robots at this time.
</p>
To add `neato` switch to your installation, follow instructions in [Neato component](/components/neato/).

View File

@ -15,7 +15,7 @@ ha_release: 0.16
The `wake_on_lan` (WOL) switch platform allows you to turn on a [WOL](https://en.wikipedia.org/wiki/Wake-on-LAN) enabled computer.
<p class='note warning'>
The WOL switch can only turn on your computer and monitor the state. There is no universal way to turn off a computer remotely.
The WOL switch can only turn on your computer and monitor the state. There is no universal way to turn off a computer remotely. The `turn_off` variable is there to help you call a script when you have figured out how to remotely turn off your computer.
</p>
To enable this switch in your installation, add the following to your `configuration.yaml` file:
@ -32,4 +32,4 @@ Configuration variables:
- **mac_address** (*Required*): MAC address to send the wake up command to.
- **name** (*Optional*): The name of the switch. Default is 'Wake on LAN'.
- **host** (*Optional*): The IP address or hostname to check the state of the device (on/off).
- **turn_off** (*Optional*): Defines an [action](/getting-started/automation/) to run when the switch is turned off.

View File

@ -0,0 +1,86 @@
---
layout: post
title: "0.33: New Calendar component, Wink thermostats and Cisco IOS"
description: "Continued our upgrade to Async, fixed tons of bugs and added a few new things."
date: 2016-11-19 03:04:05 +0000
date_formatted: "November 20, 2016"
author: Fabian Affolter
author_twitter: fabaff
comments: true
categories: Release-Notes
---
For this release we put a lot of focus on finishing our async upgrade and fix a bunch of bugs in the process.
But a new release wouldn't be awesome if it didn't had some new goodies and this release is no different. This release includes a new calendar component by [@mnestor]. It comes now with Google Calendar support, which should allow you to automate things based on your calendar events!
### {% linkable_title Changes %}
- New [calendar component][google] including Google support ([@mnestor])
- Final core upgrade for async ([@pvizeli])
- [Neato] refactor + sensor support ([@turbokongen])
- Device Tracker: [Swisscom Internet-Box][swisscom] now supported ([@betrisey])
- Device Tracker - Locative: [Map support][locative] added ([@danijelst])
- [Emulated Hue] will now sent request info as variables to scripts that get called ([@bah2830])
- Wink: [Thermostats][wink-climate] are now supported ([@w1ll1am23])
- Light: New [MQTT template][mqtt-template] platform for custom communication ([@Diaoul])
- [Wake on Lan switch] can now configure a custom OFF script ([@Chris-V])
- Device Tracker: [Cisco IOS][cisco] now supported ([@fbradyirl])
- Sensor: Support for [PVOutput][pvoutput] snesor ([@fabaff])
- Sensor: Show count of connected clients to the [API stream][api-stream] ([@balloob])
- Fix platforms from doing I/O in the event loop ([@balloob], [@pvizeli], [@lwis], [@kellerza])
- Switch - [TP Link]: Add daily consumption ([@gonzalezcalleja])
- Templates: Add new `strptime` [template function] for parsing times ([@lwis])
- [HTTP] component: Fix X-Forwarded-For parsing ([@mweinelt])
- Switch - [Command Line]: Use configured object_id for entity IDs ([@n8henrie])
- [MQTT] now supports birth and last will messages ([@bestlibre])
- Better handling of accented characters in slugify ([@magicus])
- Alarm Control Panel - [Envisalink]: Add new keypress service ([@jnimmo])
- Light - [Hue]: Add service to activate scenes defined in Hue app ([@sdague])
### {% linkable_title Breaking changes %}
- We have included a fix that impacts how we generate entity ids. This only impacts devices with accented characters. Instead of being stripped out, they are now replaced with the non-accented version. So now `Tèst Mörê` will become `test_more` instead of `tst_mr`.
- Command line switches will now use the specified object ID for their entity ID instead of basing it off the name.
[@bah2830]: https://github.com/bah2830
[@balloob]: https://github.com/balloob
[@bestlibre]: https://github.com/bestlibre
[@betrisey]: https://github.com/betrisey
[@Chris-V]: https://github.com/Chris-V
[@danijelst]: https://github.com/danijelst
[@Diaoul]: https://github.com/Diaoul
[@fabaff]: https://github.com/fabaff
[@fbradyirl]: https://github.com/fbradyirl
[@gonzalezcalleja]: https://github.com/
[@jnimmo]: https://github.com/jnimmo
[@kellerza]: https://github.com/kellerza
[@lwis]: https://github.com/lwis
[@magicus]: https://github.com/magicus
[@mnestor]: https://github.com/mnestor
[@mweinelt]: https://github.com/mweinelt
[@n8henrie]: https://github.com/n8henrie
[@pvizeli]: https://github.com/pvizeli
[@sdague]: https://github.com/sdague
[@turbokongen]: https://github.com/turbokongen
[@w1ll1am23]: https://github.com/w1ll1am23
[api-stream]: /components/sensor.api_stream/
[cisco]: /components/device_tracker.cisco_ios/
[Command Line]: /components/switch.command_line/
[Envisalink]: /components/envisalink/
[google]: /components/calendar.google/
[Hue]: /components/light.hue/
[locative]: /components/device_tracker.locative/
[mqtt-template]: /components/light.mqtt_template/
[mqtt-will]: /components/mqtt/
[pvoutput]: /components/sensor.pvoutput/
[swisscom]: /components/device_tracker.swisscom/
[TP Link]: /components/switch.tplink/
[wink-climate]: /components/climate.wink/
[neato]: /components/neato/
[Emulated Hue]: /components/emulated_hue/
[Wake on Lan switch]: /components/switch.wake_on_lan/
[template function]: /topics/templating/#home-assistant-template-extensions
[HTTP]: /components/http/
[MQTT]: /components/mqtt/

View File

@ -77,11 +77,14 @@ Home Assistant adds extensions to allow templates to access all of the current s
- `closest()` will find the closest entity.
- `relative_time(timestamp)` will format the date time as relative time vs now (ie 7 seconds)
- `float` will format the output as float.
- `strptime(string, format)` will parse a string to a datetime based on a [format][strp-format].
- Filter `round(x)` will convert the input to a number and round it to `x` decimals.
- Filter `timestamp_local` will convert an UNIX timestamp to local time/data.
- Filter `timestamp_utc` will convert an UNIX timestamp to UTC time/data.
- Filter `timestamp_custom(format_string, local_boolean)` will convert an UNIX timestamp to a custom format, the use of a local timestamp is default, supporting [Python format options](https://docs.python.org/3/library/time.html#time.strftime).
[strp-format]: https://docs.python.org/3.4/library/datetime.html#strftime-and-strptime-behavior
## {% linkable_title Examples %}
### {% linkable_title States %}

View File

@ -19,16 +19,6 @@ This page contains a list of people who have contributed in one way or another t
(in alphabetical order)
- [Jon Caruana](https://github.com/joncar)
- [Jan Losinski](https://github.com/janLo)
- [Ferry van Zeelst](https://github.com/StaticCube)
- []()
- []()
- []()
- []()
- []()
- []()
- []()
- [Abhishek Anand](https://github.com/aa755)
- [Adam Mills](https://github.com/armills)
- [Adrien Brault](https://github.com/adrienbrault)
@ -41,6 +31,7 @@ This page contains a list of people who have contributed in one way or another t
- [Andrew LeCody](https://github.com/aceat64)
- [Andy Loughran](https://github.com/andylockran)
- [andythigpen](https://github.com/andythigpen)
- [Antoine Bertin](https://github.com/Diaoul)
- [Antonio Párraga Navarro](https://github.com/aparraga)
- [Ardetus](https://github.com/Ardetus)
- [Ardi Mehist](https://github.com/omgapuppy)
@ -63,6 +54,7 @@ This page contains a list of people who have contributed in one way or another t
- [Charles Spirakis](https://github.com/srcLurker)
- [Chris Mulder](https://github.com/chrisvis)
- [Christian Braedstrup](https://github.com/LinuxChristian)
- [Christopher Viel](https://github.com/Chris-V)
- [chrom3](https://github.com/chrom3)
- [Corban Mailloux](https://github.com/corbanmailloux)
- [coteyr](https://github.com/coteyr/)
@ -74,6 +66,7 @@ This page contains a list of people who have contributed in one way or another t
- [Daniel Matuschek](https://github.com/usul27)
- [Daniel Perna](https://github.com/danielperna84)
- [Daniel Zozin](https://github.com/zeroDenial)
- [Danijel Stojnic](https://github.com/danijelst)
- [Dan Smith](https://github.com/kk7ds)
- [Dan Sullivan](https://github.com/dansullivan86/)
- [Daren Lord](https://github.com/Xorso)
@ -92,6 +85,7 @@ This page contains a list of people who have contributed in one way or another t
- [Fabian Affolter](https://github.com/fabaff)
- [Fabian Heredia Montiel](https://github.com/fabianhjr)
- [Felix](https://github.com/xifle)
- [Ferry van Zeelst](https://github.com/StaticCube)
- [Finbarr Brady](https://github.com/fbradyirl)
- [Flavio Castelli](https://github.com/flavio)
- [Florian Holzapfel](https://github.com/florianholzapfel)
@ -124,6 +118,7 @@ This page contains a list of people who have contributed in one way or another t
- [Jacob Tomlinson](https://github.com/jacobtomlinson)
- [James Cole](https://github.com/jamespcole)
- [Jan Harkes](https://github.com/jaharkes)
- [Jan Losinski](https://github.com/janLo)
- [Jan-Preben Mossin](https://github.com/jpmossin)
- [Jared Beckham](https://github.com/tbeckha)
- [Jaret Stezelberger](https://github.com/DesignFirst)
@ -135,6 +130,7 @@ This page contains a list of people who have contributed in one way or another t
- [Jeff Schroeder](https://github.com/SEJeff)
- [Jesse Newland](https://github.com/jnewland)
- [jgriff2](https://github.com/jgriff2)
- [jnimmo](https://github.com/jnimmo)
- [Joel Asher Friedman](https://github.com/joelash)
- [Joe McMonagle](https://github.com/joemcmonagle)
- [John Arild Berentsen](https://github.com/turbokongen)
@ -142,6 +138,7 @@ This page contains a list of people who have contributed in one way or another t
- [John Lindley](https://github.com/jwl17330536)
- [John McLaughlin](https://github.com/loghound)
- [John Williams](https://github.com/Jaidan)
- [Jon Caruana](https://github.com/joncar)
- [Jon Maddox](https://github.com/maddox)
- [joopert](https://github.com/joopert)
- [Joseph Hughes](https://github.com/joshughes)
@ -166,6 +163,7 @@ This page contains a list of people who have contributed in one way or another t
- [Lewis Juggins](https://github.com/lwis/)
- [Luca Soldi](https://github.com/LucaSoldi)
- [Lukas Hetzenecker](https://github.com/lukas-hetzenecker)
- [Magnus Ihse Bursie](https://github.com/magicus)
- [Magnus Knutas](https://github.com/MagnusKnutas)
- [Mal Curtis](https://github.com/snikch)
- [Malte Deiseroth](https://github.com/deisi)
@ -220,6 +218,7 @@ This page contains a list of people who have contributed in one way or another t
- [Ryan Kraus](https://github.com/rmkraus)
- [Ryan Turner](https://github.com/ryanturner)
- [sam-io](https://github.com/sam-io)
- [Samuel Bétrisey](https://github.com/betrisey)
- [sander76](https://github.com/sander76)
- [schneefux](https://github.com/schneefux)
- [Scott O'Neil](https://github.com/americanwookie)

View File

@ -79,6 +79,8 @@ Configuration variables:
- **customize** (*Optional*): This attribute contains node-specific override values:
- **polling_intensity** (*Optional*): Enables polling of a value and sets the frequency of polling (0=none, 1=every time through the list, 2=every other time, etc). If not specified then your device will not be polled.
- **ignored** (*Optional*): Ignore this entitiy completely. It won't be shown in the Web Interface and no events are generated for it.
- **refresh_value** (*Optional*): Enable refreshing of the node value. Only light component uses this. Defaults to 2 second delay.
- **delay** (*Optional*): Specify the delay to wait for refresh of node value if you want other than 2 seconds.
To find the path of your Z-Wave USB stick or module, run:

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 52 KiB