Automation: State triggers and conditions now takes optional for config parameter to only trigger when a state hasn’t changed for a certain period of time (@pavoni, @stefan-jonasson)
diff --git a/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html b/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html
index ea59c854e5..d9b085beaf 100644
--- a/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html
+++ b/blog/2014/12/26/home-control-home-automation-and-the-smart-home/index.html
@@ -258,6 +258,12 @@ This article will try to explain how they all relate.
diff --git a/blog/2015/02/08/looking-at-the-past/index.html b/blog/2015/02/08/looking-at-the-past/index.html
index ee7275572e..e830d9881c 100644
--- a/blog/2015/02/08/looking-at-the-past/index.html
+++ b/blog/2015/02/08/looking-at-the-past/index.html
@@ -234,6 +234,12 @@ Events are saved in a local database. Google Graphs is used to draw the graph. D
diff --git a/blog/2015/03/08/new-logo/index.html b/blog/2015/03/08/new-logo/index.html
index 29d3b497a9..4c8230ba66 100644
--- a/blog/2015/03/08/new-logo/index.html
+++ b/blog/2015/03/08/new-logo/index.html
@@ -210,6 +210,12 @@ The old logo, the new detailed logo and the new simple logo.
diff --git a/blog/2015/03/11/release-notes/index.html b/blog/2015/03/11/release-notes/index.html
index f094ed0038..b7dabe78fc 100644
--- a/blog/2015/03/11/release-notes/index.html
+++ b/blog/2015/03/11/release-notes/index.html
@@ -249,6 +249,12 @@ An initial version of voice control for Home Assistant has landed. The current i
diff --git a/blog/2015/03/22/release-notes/index.html b/blog/2015/03/22/release-notes/index.html
index 6f1696f1d6..a64cdc9aca 100644
--- a/blog/2015/03/22/release-notes/index.html
+++ b/blog/2015/03/22/release-notes/index.html
@@ -286,6 +286,12 @@ I (Paulus) have contributed a scene component. A user can create scenes that cap
diff --git a/blog/2015/05/14/release-notes/index.html b/blog/2015/05/14/release-notes/index.html
index ce24cccdf7..c7b79b2c50 100644
--- a/blog/2015/05/14/release-notes/index.html
+++ b/blog/2015/05/14/release-notes/index.html
@@ -324,6 +324,12 @@ Before diving into the newly supported devices and services, I want to highlight
diff --git a/blog/2015/06/10/release-notes/index.html b/blog/2015/06/10/release-notes/index.html
index 04ae933e93..0cef6cdb8e 100644
--- a/blog/2015/06/10/release-notes/index.html
+++ b/blog/2015/06/10/release-notes/index.html
@@ -377,6 +377,12 @@ This switch platform allows you to control your motion detection setting on your
diff --git a/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html b/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html
index 0f58f7b548..1260fc3406 100644
--- a/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html
+++ b/blog/2015/07/11/ip-cameras-arduino-kodi-efergy-support/index.html
@@ -329,6 +329,12 @@ Fabian has added support for Forecast.io to g
diff --git a/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html b/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html
index ca6c9e4a40..f6500f2429 100644
--- a/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html
+++ b/blog/2015/08/09/mqtt-raspberry-pi-squeezebox-asuswrt-support/index.html
@@ -318,6 +318,12 @@ Support for Temper temperature sensors has been contributed by
+
@@ -341,12 +347,6 @@ Support for Temper temperature sensors has been contributed by
- Smarter SmartThings with MQTT and Home Assistant
-
-
-
diff --git a/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html b/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html
index ba08ac6e47..471b054b0b 100644
--- a/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html
+++ b/blog/2015/08/17/verisure-and-modern-tp-link-router-support/index.html
@@ -228,6 +228,12 @@
diff --git a/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html b/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html
index 28023fd757..f90950ef81 100644
--- a/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html
+++ b/blog/2015/09/18/monitoring-with-glances-and-home-assistant/index.html
@@ -278,6 +278,12 @@ Glances web server started on http://0.0.0.0:61208/
diff --git a/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html b/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html
index 4ecf723e2c..af4eccb5e0 100644
--- a/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html
+++ b/blog/2015/09/19/alarm-sonos-and-itunes-support/index.html
@@ -257,6 +257,12 @@ Automation has gotten a lot of love. It now supports conditions, multiple trigge
diff --git a/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html b/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html
index b9a14e5f86..a383056b79 100644
--- a/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html
+++ b/blog/2015/10/05/home-assistant-goes-geo-with-owntracks/index.html
@@ -233,6 +233,12 @@ Map in Home Assistant showing two people and three zones (home, school, work)
diff --git a/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html b/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html
index 54ed40876c..59a31b8887 100644
--- a/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html
+++ b/blog/2015/10/26/firetv-and-radiotherm-now-supported/index.html
@@ -244,6 +244,12 @@ This makes more sense as most people run Home Assistant as a daemon
diff --git a/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html b/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html
index 401a30a3af..a323df683b 100644
--- a/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html
+++ b/blog/2016/01/30/insteon-lifx-twitter-and-zigbee/index.html
@@ -242,6 +242,12 @@ Example of the new views in the frontend. Learn mor
diff --git a/blog/2016/02/20/community-highlights/index.html b/blog/2016/02/20/community-highlights/index.html
index 72cff38936..2b8059b2cb 100644
--- a/blog/2016/02/20/community-highlights/index.html
+++ b/blog/2016/02/20/community-highlights/index.html
@@ -254,6 +254,12 @@ Hold your NFC tag against the belly of Garfield to unlock the alarm.
Automation: State triggers and conditions now takes optional for config parameter to only trigger when a state hasn’t changed for a certain period of time (@pavoni, @stefan-jonasson)
Automation: State triggers and conditions now takes optional for config parameter to only trigger when a state hasn’t changed for a certain period of time (@pavoni, @stefan-jonasson)
+
+]]>
+
+
@@ -216,35 +266,6 @@ Example of the new views in the frontend. numeric_state
-]]>
-
-
-
-
-
- 2015-12-06T19:29:00+00:00
- https://home-assistant.io/blog/2015/12/06/locks-rollershutters-binary-sensors-and-influxdb-support
- It’s been a few weeks but we managed to polish a nice new release of Home Assistant for y’all!
-
-
Automation: State triggers and conditions now takes optional for config parameter to only trigger when a state hasn’t changed for a certain period of time (@pavoni, @stefan-jonasson)
Exposing your Home Assistant instance outside of your network always has been tricky. You have to set up port forwarding on your router and most likely add a dynamic DNS service to work around your ISP changing your IP. After this you would be able to use Home Assistant from anywhere but there is one big red flag: no encryption.
-
-
This tutorial will take you through the steps to setup a dynamic DNS for your IP and allow trusted encrypted connection to it - for free using DuckDNS and Let’s Encrypt.
Exposing your Home Assistant instance outside of your network always has been tricky. You have to set up port forwarding on your router and most likely add a dynamic DNS service to work around your ISP changing your IP. After this you would be able to use Home Assistant from anywhere but there is one big red flag: no encryption.
+
+
This tutorial will take you through the steps to setup a dynamic DNS for your IP and allow trusted encrypted connection to it - for free using DuckDNS and Let’s Encrypt.
This release includes some architectural changes by me. The first is that the frontend is now based on a NuclearJS JavaScript backend. This has greatly helped to organize and optimize the frontend code. Another change is that Home Assistant will now install dependencies on-demand instead of installing dependencies for all supported devices.
-
-
IP Camera Support
-James has worked very hard to add support for IP cameras to Home Assistant which is included in this release. The initial release focusses on providing generic IP camera support. This means that any webcam that can exposes a JPEG image via a url can be integrated.
-
-
Home Assistant will route the requests to your camera via the server allowing you to expose IP camera’s inside your network via the Home Assistant app.
-
-
-
# Example configuration.yaml entry
-camera:
- platform: generic
- name: my sample camera
- username: MY_USERNAME
- password: MY_PASSWORD
- still_image_url: http://194.218.96.92/jpg/image.jpg
-
-
-
-
-
-To update to the latest version, run scripts/update. Please report any issues on GitHub.
-
This release includes some architectural changes by me. The first is that the frontend is now based on a NuclearJS JavaScript backend. This has greatly helped to organize and optimize the frontend code. Another change is that Home Assistant will now install dependencies on-demand instead of installing dependencies for all supported devices.
+
+
IP Camera Support
+James has worked very hard to add support for IP cameras to Home Assistant which is included in this release. The initial release focusses on providing generic IP camera support. This means that any webcam that can exposes a JPEG image via a url can be integrated.
+
+
Home Assistant will route the requests to your camera via the server allowing you to expose IP camera’s inside your network via the Home Assistant app.
+
+
+
# Example configuration.yaml entry
+camera:
+ platform: generic
+ name: my sample camera
+ username: MY_USERNAME
+ password: MY_PASSWORD
+ still_image_url: http://194.218.96.92/jpg/image.jpg
+
+
+
+
+
+To update to the latest version, run scripts/update. Please report any issues on GitHub.
+
Ever since the launch of Home Assistant you have been able to track the state of your house. But the view has always been limited to what the current state is. Not what it was. Today we are going to change that by introducing two brand new components:
-
-
-
Recorder component that will record every event to a SQLite database
-
History component that will query and aggregate the recorded events
-
-
-
By adding this view into the past, we are adding an extra dimension into the state of your house. This brings great new possibilities for future features. The focus of todays release is on getting the recording component to you to start recording and getting some data. To show what is being recorded a view has been added that shows the last 24 hours of your house. Expect more extensive tools to explore your history in the future.
-
-
Adding history to the UI was a challenge on itself because the old UI did not support easy navigation. So to add to the awesomeness of this release, Home Assistant also got a face lift.
-
-
The history component will be enabled for new users by default. For current users, run scripts/update to upgrade to the latest version and add [history] to your home-assistant.conf file.
-Events are saved in a local database. Google Graphs is used to draw the graph. Drawing is happening 100% in your browser - no data is transfered to anyone at any time.
-
Ever since the launch of Home Assistant you have been able to track the state of your house. But the view has always been limited to what the current state is. Not what it was. Today we are going to change that by introducing two brand new components:
+
+
+
Recorder component that will record every event to a SQLite database
+
History component that will query and aggregate the recorded events
+
+
+
By adding this view into the past, we are adding an extra dimension into the state of your house. This brings great new possibilities for future features. The focus of todays release is on getting the recording component to you to start recording and getting some data. To show what is being recorded a view has been added that shows the last 24 hours of your house. Expect more extensive tools to explore your history in the future.
+
+
Adding history to the UI was a challenge on itself because the old UI did not support easy navigation. So to add to the awesomeness of this release, Home Assistant also got a face lift.
+
+
The history component will be enabled for new users by default. For current users, run scripts/update to upgrade to the latest version and add [history] to your home-assistant.conf file.
+Events are saved in a local database. Google Graphs is used to draw the graph. Drawing is happening 100% in your browser - no data is transfered to anyone at any time.
+
diff --git a/components/automation/index.html b/components/automation/index.html
index 520d2750da..32bbd7d88d 100644
--- a/components/automation/index.html
+++ b/components/automation/index.html
@@ -241,6 +241,11 @@
# Optionalfrom: 'not_home'to: 'home'
+ # If given, will trigger when state has been the to state for X time.
+ for:
+ hours: 1
+ minutes: 10
+ seconds: 5
@@ -377,6 +382,12 @@
platform: stateentity_id: device_tracker.paulusstate: not_home
+ # optional: trigger only if state was this for last X time.
+ for:
+ hours: 1
+ minutes: 10
+ seconds: 5
+
In addition to the APCUPSd Sensor devices, you may also create a device which is simply on when the UPS status is ONLINE and off at all other times.
+
In addition to the APCUPSd Sensor devices, you may also create a device which is simply “on” when the UPS status is online and “off” at all other times.
-
Example
+
To enable this sensor, add the following lines to your configuration.yaml file for a GET request:
diff --git a/components/binary_sensor.arest/index.html b/components/binary_sensor.arest/index.html
index 8a3ff0065d..f0bf9086c3 100644
--- a/components/binary_sensor.arest/index.html
+++ b/components/binary_sensor.arest/index.html
@@ -166,6 +166,9 @@ This sensor is not suitable for fast state changes because there is a high possi
+
+ IoT class: Local Polling
+
Related components
@@ -184,7 +187,10 @@ This sensor is not suitable for fast state changes because there is a high possi
APCUPSd Binary Sensor
The nx584 platform provides integration with GE, Caddx, Interlogix (and other brands) alarm panels that support the NX584 interface module (or have it built in). Supported panels include NX4/6/8/8E. Actual integration is done through pynx584 which is required for this to work.
+
+
Enabling this sensor platform exposes all of your zones as binary sensors, which provides visibility through the UI as well as the ability to trigger automation actions instantly when something happens like a door opening, or a motion sensor trigger.
+
+
To enable this, add the following lines to your configuration.yaml:
+
+
+
binary_sensor:
+ platform: nx584
+ host: ADDRESS
+ exclude_zones:
+ - ZONE ...
+ zone_types:
+ ZONE: TYPE
+
+
+
+
+
Configuration variables:
+
+
+
host (Optional): This is the host connection string (host:port) for the nx584 server process. If unset, it is assumed to be localhost:5007, which will work if the server process is running on the same system as home-assistant.
+
exclude_zones (Optional): This is a list of zone numbers that should be excluded. Use this to avoid exposing a zone that is of no interest, unconnected, etc.
+
zone_types (Optional): This is a list of zone numbers mapped to zone types. Use this to designate zones as doors, motion sensors, smoke detectors, etc. The list of available zone types relevant to alarm zones are: opening, motion, gas, smoke, moisture, safety.
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/binary_sensor.rest/index.html b/components/binary_sensor.rest/index.html
index 5610723c85..8e53950c66 100644
--- a/components/binary_sensor.rest/index.html
+++ b/components/binary_sensor.rest/index.html
@@ -195,7 +195,10 @@ Make sure that the URL matches exactly your endpoint or resource.
APCUPSd Binary Sensor
diff --git a/components/binary_sensor.rpi_gpio/index.html b/components/binary_sensor.rpi_gpio/index.html
index c1e01a23ef..c5cb3c5daf 100644
--- a/components/binary_sensor.rpi_gpio/index.html
+++ b/components/binary_sensor.rpi_gpio/index.html
@@ -194,7 +194,7 @@ To avoid having to run Home Assistant as root when using this component, run a R
CPU speed
The TCP Binary Sensor is a type of TCP Sensor which is either “off” or “on”. In order to use this sensor type, in addition to the configuration for the TCP Sensor, you must supply a value_on value to represent what is returned when the device is turned on.
+
+
To enable this sensor, add the following lines to your configuration.yaml:
name (Required): The name you’d like to give the sensor in Home Assistant.
+
host (Required): The hostname/IP address to connect to.
+
port (Required): The port to connect to the host on.
+
payload (Required): What to send to the host in order to get the response we’re interested in.
+
value_on (Required): The value returned when the device is “on”.
+
timeout (Optional): How long in seconds to wait for a response from the service before giving up and disconnecting. Defaults to 10.
+
value_template (Optional): Defines a template to extract the value. By default it’s assumed that the entire response is the value.
+
unit (Optional): The unit of measurement to use for the value.
+
buffer_size (Optional): The size of the receive buffer in bytes. Set this to a larger value if you expect to receive a response larger than the default. Defaults to 1024.
friendly_name (Optional): Name to use in the Frontend.
+
sensor_class (Optional): Defines the class of the sensor (motion, heat, moisture, etc)
+
value_template (Optional): Defines a template to extract a value from the payload.
+
+
+
+
+
Examples
+
+
In this section you find some real life examples of how to use this sensor.
+
+
Sensor threshold
+
+
This example indicates true if a sensor is above a given threshold. Assuming a sensor of furnace that provides a current reading for the fan motor, we can determine if the furnace is running by checking that it is over some threshold:
The Wink binary sensor platform allows you to get data from your Wink binary sensors.
+
+
The requirement is that you have setup your Wink hub.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/binary_sensor.zigbee/index.html b/components/binary_sensor.zigbee/index.html
index 89b541cdca..30ccb03d56 100644
--- a/components/binary_sensor.zigbee/index.html
+++ b/components/binary_sensor.zigbee/index.html
@@ -113,9 +113,23 @@
-
A ZigBee binary sensor in this context is a device connected to one of the digital input pins on a ZigBee module. The states reported by such a device are limited to ‘on’ or ‘off’. By default, a binary sensor is considered ‘on’ when the ZigBee device’s digital input pin is held ‘high’ and considered ‘off’ when it is held ‘low’. This behaviour can be inverted by setting the on_state configuration variable to low.
+
A zigbee binary sensor in this context is a device connected to one of the digital input pins on a ZigBee module. The states reported by such a device are limited to ‘on’ or ‘off’. By default, a binary sensor is considered ‘on’ when the ZigBee device’s digital input pin is held ‘high’ and considered ‘off’ when it is held ‘low’. This behaviour can be inverted by setting the on_state configuration variable to low.
-
To configure a digital input as a binary sensor, use the following variables:
+
To enable the ZigBee binary sensors in your installation, add the following lines to your configuration.yaml:
diff --git a/components/device_tracker.actiontec/index.html b/components/device_tracker.actiontec/index.html
index 432cda7376..6b02e25f8b 100644
--- a/components/device_tracker.actiontec/index.html
+++ b/components/device_tracker.actiontec/index.html
@@ -220,6 +220,9 @@ This device tracker needs telnet to be enabled on the router.
diff --git a/components/device_tracker.aruba/index.html b/components/device_tracker.aruba/index.html
index 9bc8ac1ae1..64773ac7e0 100644
--- a/components/device_tracker.aruba/index.html
+++ b/components/device_tracker.aruba/index.html
@@ -220,6 +220,9 @@ This device tracker needs telnet to be enabled on the router.
diff --git a/components/device_tracker.asuswrt/index.html b/components/device_tracker.asuswrt/index.html
index a16b64d3d8..78fae62c06 100644
--- a/components/device_tracker.asuswrt/index.html
+++ b/components/device_tracker.asuswrt/index.html
@@ -213,6 +213,9 @@ This device tracker needs telnet to be enabled on the router.
diff --git a/components/device_tracker.fritz/index.html b/components/device_tracker.fritz/index.html
index 9471f0f2d4..bc45e50fa2 100644
--- a/components/device_tracker.fritz/index.html
+++ b/components/device_tracker.fritz/index.html
@@ -218,6 +218,9 @@ It seems that it is not necessary to use it in current generation Fritz!Box rout
diff --git a/components/device_tracker.icloud/index.html b/components/device_tracker.icloud/index.html
index 0769a0ebaa..95680a6731 100644
--- a/components/device_tracker.icloud/index.html
+++ b/components/device_tracker.icloud/index.html
@@ -216,6 +216,9 @@ You may receive an email from Apple stating that someone has logged into your ac
diff --git a/components/device_tracker.luci/index.html b/components/device_tracker.luci/index.html
index a91f1c9582..28c588956a 100644
--- a/components/device_tracker.luci/index.html
+++ b/components/device_tracker.luci/index.html
@@ -224,6 +224,9 @@ Some installations have a s
diff --git a/components/device_tracker.snmp/index.html b/components/device_tracker.snmp/index.html
index 7f585d3899..3aee039d24 100644
--- a/components/device_tracker.snmp/index.html
+++ b/components/device_tracker.snmp/index.html
@@ -219,6 +219,9 @@ This device tracker needs SNMP to be enabled on the router.
diff --git a/components/index.html b/components/index.html
index a89e5f972f..8c80d5034e 100644
--- a/components/index.html
+++ b/components/index.html
@@ -362,6 +362,18 @@ Support for these components is provided by the Home Assistant community.
+
+
# Example configuration.yaml entrylight:
platform: rfxtrx
+ signal_repetitions: 3devices:
living_room:
name: Living Room
@@ -135,6 +136,7 @@
devices (Required): A list of devices with their name to use in the frontend.
automatic_add (Optional): To enable the automatic addition of new lights.
+
signal_repetitionsOptional: Because the rxftrx device sends its actions via radio and from most receivers it’s impossible to know if the signal was received or not. Therefore you can configure the switch to try to send each signal repeatedly.
# Example configuration.yaml entrylight:
platform: tellstick
+ signal_repetitions: 3
+
Configuration variables:
+
+
+
signal_repetitionsOptional: Because the tellstick sends its actions via radio and from most receivers it’s impossible to know if the signal was received or not. Therefore you can configure the switch to try to send each signal repeatedly.
diff --git a/components/mqtt/index.html b/components/mqtt/index.html
index 64e6c58098..38b50ae0a4 100644
--- a/components/mqtt/index.html
+++ b/components/mqtt/index.html
@@ -385,6 +385,9 @@ Home Assistant will automatically load the correct certificate if you connect to
name (Optional): Setting the optional parameter name allows multiple notifiers to be created. The default value is notify. The notifier will bind to the service notify.NOTIFIER_NAME.
diff --git a/components/notify.free_mobile/index.html b/components/notify.free_mobile/index.html
index 26d18f1614..90c8f6fe27 100644
--- a/components/notify.free_mobile/index.html
+++ b/components/notify.free_mobile/index.html
@@ -169,6 +169,9 @@ If you disable and re-enable the SMS API option, please be sure to update your t
Google Voice is a notify platform and thus can be controlled by calling the notify service as described here. It will send a notification to all devices listed in the notification target.
+
+
# Example automation notification entry
+automation:
+ - alias: The sun has set
+ trigger:
+ platform: sun
+ event: sunset
+ action:
+ service: notify.googlevoice
+ data:
+ message: 'The sun has set'
+ target:
+ - 5555555555
+ - 5555555556
+
name (Optional): Setting the optional parameter name allows multiple notifiers to be created. The default value is notify. The notifier will bind to the service notify.NOTIFIER_NAME.
+
api_key (Required): SendGrid API key - https://app.sendgrid.com/settings/api_keys
+
sender (Required): E-mail address of the sender.
+
recipient (Required): Recipient of the notification.
diff --git a/components/notify.smtp/index.html b/components/notify.smtp/index.html
index 1e9564ec24..f5a0d50baa 100644
--- a/components/notify.smtp/index.html
+++ b/components/notify.smtp/index.html
@@ -180,6 +180,9 @@ which need special attention. By default, the usage by external applications, es
A rollershutter platform that issues specific commands when it is moved up, down and stopped. This might very well become our most powerful platform as it allows anyone to integrate any type of rollershutter into Home Assistant that can be controlled from the command line, including calling other scripts!
+
+
To enable command_rollershutter in your installation, add the following to your configuration.yaml file:
+
+
+
# Example configuration.yaml entry
+rollershutter:
+- platform: command_rollershutter
+ rollershutters:
+ Kitchen Rollershutter:
+ upcmd: move_command up kitchen
+ downcmd: move_command down kitchen
+ stopcmd: move_command stop kitchen
+ statecmd: state_command kitchen
+ value_template: '{{ value }}'
+
+
+
+
+
Configuration variables:
+
+
+
rollershutters (Required): The array that contains all command rollershutters.
+
+
entry (Required): Name of the command rollershutter. Multiple entries are possible.
+
+
upcmd (Required): The action to take for move up.
+
downcmd (Required): The action to take for move down.
+
stopcmd (Required): The action to take for stop.
+
statecmd (Optional): If given, this command will be run. Returning a result code 0 will indicate that the rollershutter is fully closed, returning a result code 100 will indicate that the rollershutter is fully open.
+
value_template (Optional - default: ‘{{ value }}’): If specified, statecmd will ignore the result code of the command but the template evaluating will indicate the position of the rollershutter.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/rollershutter.mqtt/index.html b/components/rollershutter.mqtt/index.html
index 6826fc7815..43af77e558 100644
--- a/components/rollershutter.mqtt/index.html
+++ b/components/rollershutter.mqtt/index.html
@@ -202,6 +202,9 @@
You can see directly in the frontend (Developer tools -> About) what release of Home Assistant you are running. The Home Assistant releases are available on the Python Package Index. This makes it possible to get the current release.
-
- platform: command_sensor
+
- platform: command_linecommand: python3 -c "import requests; print(requests.get('https://pypi.python.org/pypi/homeassistant/json').json()['info']['version'])"name: HA release
diff --git a/components/sensor.efergy/index.html b/components/sensor.efergy/index.html
index 06f0b87271..9bda3cea8f 100644
--- a/components/sensor.efergy/index.html
+++ b/components/sensor.efergy/index.html
@@ -179,7 +179,7 @@ negative number of minutes your timezone is ahead/behind UTC time.
CPU speed
diff --git a/components/sensor.glances/index.html b/components/sensor.glances/index.html
index 6e315b1dbc..ff853fbe1e 100644
--- a/components/sensor.glances/index.html
+++ b/components/sensor.glances/index.html
@@ -204,6 +204,9 @@ Glances web server started on http://0.0.0.0:61208/
+
+ IoT class: Local Polling
+
Category Sensor
@@ -220,7 +223,7 @@ Glances web server started on http://0.0.0.0:61208/
CPU speed
diff --git a/components/sensor.http/index.html b/components/sensor.http/index.html
index 0f3ef928eb..8bd50775a3 100644
--- a/components/sensor.http/index.html
+++ b/components/sensor.http/index.html
@@ -207,7 +207,7 @@ You should choose a unique device name (DEVICE_NAME) to avoid clashes with other
CPU speed
diff --git a/components/sensor.modbus/index.html b/components/sensor.modbus/index.html
index 65336712c6..35ce192bae 100644
--- a/components/sensor.modbus/index.html
+++ b/components/sensor.modbus/index.html
@@ -216,7 +216,7 @@ Each named register will create an integer sensor and each named bit will create
CPU speed
monitored_conditions array (Required): States to monitor.
+
+
‘weather_temperature’
+
‘weather_humidity’
+
‘weather_condition’
+
‘wind_speed’
+
‘wind_direction’
+
+
+
+
+
You must have the Nest component configured to use this sensor.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/sensor.netatmo/index.html b/components/sensor.netatmo/index.html
index ec81999aca..fdbddb5838 100644
--- a/components/sensor.netatmo/index.html
+++ b/components/sensor.netatmo/index.html
@@ -221,7 +221,7 @@ The Home Assistant NetAtmo platform has only be tested with the classic indoor a
CPU speed
Integrate your Neurio meter information into Home Assistant. To get an API key and secret, login to your Neurio account at https://my.neur.io/#settings/applications/register and register an application. Note the Homepage URL and Callback URL are optional.
+
+
To enable this sensor in your installation, add the following to your configuration.yaml file:
diff --git a/components/sensor.rest/index.html b/components/sensor.rest/index.html
index b8d1fc27b1..f1526b813d 100644
--- a/components/sensor.rest/index.html
+++ b/components/sensor.rest/index.html
@@ -265,7 +265,7 @@ Make sure that the URL matches exactly your endpoint or resource.
CPU speed
The Steam component will allow you to track the online status of public Steam accounts.
+
+
You need an API key which is free to use the component
+
+
To find an account’s 64-bit SteamID you can check the URL of the profile page, if it ends with a long string on numbers then that’s the 64-bit SteamID. However, if the profile has a custom URL you will have to copy the it and enter it into STEAMID I/O to find the 64-bit SteamID.
+
+
To use Steam in your installation, add the following to your configuration.yaml file:
The TCP component allows the integration of some services for which a specific Home Assistant component does not exist. If the service communicates over a TCP socket with a simple request/reply mechanism then the chances are that this component will allow integration with it.
+
+
To enable this sensor, add the following lines to your configuration.yaml:
name (Required): The name you’d like to give the sensor in Home Assistant.
+
host (Required): The hostname/IP address to connect to.
+
port (Required): The port to connect to the host on.
+
payload (Required): What to send to the host in order to get the response we’re interested in.
+
timeout (Optional): How long in seconds to wait for a response from the service before giving up and disconnecting. Defaults to 10
+
value_template (Optional): Defines a template to extract the value. By default it’s assumed that the entire response is the value.
+
unit (Optional): The unit of measurement to use for the value.
+
buffer_size (Optional): The size of the receive buffer in bytes. Set this to a larger value if you expect to receive a response larger than the default. Defaults to 1024.
+
+
+
Examples
+
+
In this section you find some real life examples of how to use this sensor.
+
+
EBUSd
+
+
The EBUSd service enables connection to an EBUS serial bus on some home heating/cooling systems. Using this service it is possible to extract various metrics which may be useful to have within Home Assistant. In order to use EBUSd, you connect to it using a TCP socket and send it a command. The service will respond with the value it has received from EBUS. On the command line, this would look something like:
You will notice that the output from the service is not just a single value (it contains “;ok” as well). To grab the value we’re interested in, we can use a Jinja2 template. The response received is injected into the template as the value variable. To use this value within Home Assistant, use the following configuration:
diff --git a/components/sensor.yr/index.html b/components/sensor.yr/index.html
index f5a21e43e0..5ec0ea6862 100644
--- a/components/sensor.yr/index.html
+++ b/components/sensor.yr/index.html
@@ -196,6 +196,9 @@ weather forecast is delivered by the Norwegian Meteorological Institute and the
Edimax Switch
diff --git a/components/switch.command_switch/index.html b/components/switch.command_line/index.html
similarity index 93%
rename from components/switch.command_switch/index.html
rename to components/switch.command_line/index.html
index bd12ab6038..a991afc8fe 100644
--- a/components/switch.command_switch/index.html
+++ b/components/switch.command_line/index.html
@@ -12,12 +12,12 @@
-
+
-
+
@@ -120,7 +120,7 @@
# Example configuration.yaml entryswitch:
- platform: command_switch
+ platform: command_lineswitches:
kitchen_light:
oncmd: switch_command on kitchen
@@ -159,7 +159,7 @@
# Example configuration.yaml entryswitch:
- platform: command_switch
+ platform: command_lineswitches:
arest_pin4:
oncmd: "/usr/bin/curl -X GET http://192.168.1.10/digital/4/1"
@@ -179,7 +179,7 @@ This switch will shutdown your host immediately, there will be no confirmation.
# Example configuration.yaml entryswitch:
- platform: command_switch
+ platform: command_lineswitches:
Home Assistant system shutdown:
offcmd: "/usr/sbin/poweroff"
@@ -194,7 +194,7 @@ This switch will shutdown your host immediately, there will be no confirmation.
# Example configuration.yaml entryswitch:
- platform: command_switch
+ platform: command_lineswitches:
VLC:
oncmd: "cvlc 1.mp3 vlc://quit &"
@@ -215,13 +215,30 @@ This switch will shutdown your host immediately, there will be no confirmation.
-
Edimax Switch
diff --git a/components/switch.modbus/index.html b/components/switch.modbus/index.html
index f7e809b50f..0e013617eb 100644
--- a/components/switch.modbus/index.html
+++ b/components/switch.modbus/index.html
@@ -207,7 +207,10 @@ Each named bit will create a switch.
Belkin WeMo Switch
# Example configuration.yaml entryswitch:
platform: rfxtrx
+ signal_repetitions: 3devices:
living_room:
name: Living Room
@@ -135,10 +136,10 @@
devices (Required): A list of devices with their name to use in the frontend.
automatic_add (Optional): To enable the automatic addition of new switches.
+
signal_repetitionsOptional: Because the rxftrx device sends its actions via radio and from most receivers it’s impossible to know if the signal was received or not. Therefore you can configure the switch to try to send each signal repeatedly.
Edimax Switch
diff --git a/components/switch.rpi_gpio/index.html b/components/switch.rpi_gpio/index.html
index 0de8e8e3e7..3261c02940 100644
--- a/components/switch.rpi_gpio/index.html
+++ b/components/switch.rpi_gpio/index.html
@@ -181,7 +181,10 @@ If you are not running Raspbian Jessie, you will need to run Home Assistant as r
Belkin WeMo Switch
They will be automatically discovered if the discovery component is enabled.
-
-
# Example configuration.yaml entry
-switch:
- platform: wemo
-
-
-
-
-
Alternately, wemos that are not discoverable can be statically configured. If you have WeMo devices on subnets other than where Home Assistant is running, and/or devices in a remote location reachable over a VPN, you will need to manually configure them. This is also useful if you wish to disable discovery for some wemos, even if they are local. Example static configuration:
Any WeMo devices that are not statically configured but reachable via discovery will still be added automatically.
-
-
Note that if you use this, you may want to configure your router (or whatever runs your DHCP server) to force your WeMo devices to use a static IP address. Check the DHCP section of your router configuration for this ability.
+
For more configuration information see the WeMo component documentation.
diff --git a/components/tellduslive/index.html b/components/tellduslive/index.html
index 33903a440f..31999db62a 100644
--- a/components/tellduslive/index.html
+++ b/components/tellduslive/index.html
@@ -181,6 +181,9 @@ API requests to certain methods are limited to one request every 10 minutes.
The wemo component is the main component to integrate various Belkin WeMo devices with Home Assistant.
+
+
Supported devices will be automatically discovered if the discovery component is enabled. If you are not using the discovery component, loading the wemo component will scan for WeMo devices on the local network.
+
+
+
# Example configuration.yaml entry
+wemo:
+
+
+
+
+
Alternately, WeMo devices that are not discoverable can be statically configured. If you have WeMo devices on subnets other than where Home Assistant is running, and/or devices in a remote location reachable over a VPN, you will need to manually configure them. This is also useful if you wish to disable discovery for some wemos, even if they are local. Example static configuration:
Any WeMo devices that are not statically configured but reachable via discovery will still be added automatically.
+
+
Note that if you use this, you may want to configure your router (or whatever runs your DHCP server) to force your WeMo devices to use a static IP address. Check the DHCP section of your router configuration for this ability.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/components/wink/index.html b/components/wink/index.html
index a86533a5de..8802e45aff 100644
--- a/components/wink/index.html
+++ b/components/wink/index.html
@@ -165,6 +165,9 @@ The Wink hub can only be accessed via the cloud. This means it requires an activ
diff --git a/developers/rest_api/index.html b/developers/rest_api/index.html
index b5bd00c8d7..b5b684795f 100644
--- a/developers/rest_api/index.html
+++ b/developers/rest_api/index.html
@@ -561,6 +561,16 @@ The result will include any changed states that changed while the service was be
+
Sample curl command:
+
+
+
$ curl -X POST -H "x-ha-access: YOUR_PASSWORD" \
+ -d '{"template": "It is !"}' \
+ http://localhost:8123/api/template
+
+
+
+
POST /api/event_forwarding
Setup event forwarding to another Home Assistant instance.
diff --git a/getting-started/templating/index.html b/getting-started/templating/index.html
index c8b4a7b7a4..02e58e11a2 100644
--- a/getting-started/templating/index.html
+++ b/getting-started/templating/index.html
@@ -152,38 +152,59 @@ The frontend has a template editor developer tool to help develop and debug temp
-
Home Assistant template extensions
+
Home Assistant template extensions
Home Assistant adds extensions to allow templates to access all of the current states:
-
Iterating states will yield each state sorted alphabetically by entity ID
-
Iterating states.domain will yield each state of that domain sorted alphabetically by entity ID
-
states.sensor.temperature returns the state object for sensor.temperature
+
Iterating states will yield each state sorted alphabetically by entity ID.
+
Iterating states.domain will yield each state of that domain sorted alphabetically by entity ID.
+
states.sensor.temperature returns the state object for sensor.temperature.
states('device_tracker.paulus') will return the state string (not the object) of the given entity or unknown if it doesn’t exist.
is_state('device_tracker.paulus', 'home') will test if the given entity is specified state.
is_state_attr('device_tracker.paulus', 'battery', 40) will test if the given entity is specified state.
-
Filter multiply(x) will convert the input to a number and multiply it with x
+
Filter multiply(x) will convert the input to a number and multiply it with x.
Filter round(x) will convert the input to a number and round it to x decimals.
+
now will be rendered as current time in your time zone.
+
utcnow will be rendered as UTC time.
+
distance() will measure the distance in meters between home, entity, coordinates.
+
closest() will find the closest entity.
-
Examples
+
Examples
+
+
States
+
Next two statements result in same value if state exists. Second one will result in an error if state does not exist.
-# Next two statements result in same value if state exists
-# Second one will result in an error if state does not exist
{{ states('device_tracker.paulus') }}
{{ states.device_tracker.paulus.state }}
+
{% for state in states.sensor %}
{{ state.entity_id }}={{ state.state }},
{% endfor %}
@@ -203,6 +224,58 @@ The frontend has a template editor developer tool to help develop and debug temp
+
Distance examples
+
+
If only 1 location is passed in will measure the distance from home.
+
+
+
+Using Lat Lng coordinates: {{ distance(123.45, 123.45) }}
+
+Using State: {{ distance(device_tracker.paulus) }}
+
+These can also be combined in any combination:
+{{ distance(123.45, 123.45, device_tracker.paulus) }}
+{{ distance(device_tracker.anne_therese, device_tracker.paulus) }}
+
+
+
+
+
Closest examples
+
+
Find entities closest to the Home Assistant location:
+
+
+
+Query all entities: {{ closest(states) }}
+Query all entities of a specific domain: {{ closest(states.device_tracker) }}
+Query all entities in group.children: {{ closest('group.children') }}
+Query all entities in group.children: {{ closest(states.group.children) }}
+
+
+
+
+
Find entities closest to a coordinate or another entity. All previous arguments still apply for 2nd argument.
+
+
+
+Closest to a coordinate: {{ closest(23.456, 23.456, 'group.children') }}
+Closest to an entity: {{ closest('zone.school', 'group.children') }}
+Closest to an entity: {{ closest(states.zone.school, 'group.children') }}
+
+
+
+
+
Combined
+
Since closest returns a state, we can combine it with distance too
+
+
+
+{{ closest(states).name }} is {{ distance(closest(states)) }} meters away.
+
+
+
+
Processing incoming data
The other part of templating is processing incoming data. It will allow you to modify incoming data and extract only the data you care about. This will work only for platforms and components that mentioned support for this in their documentation.