From 8b990582ddb3f8f4ad3a74a7ea35deeeb2cc78bb Mon Sep 17 00:00:00 2001 From: Robin Date: Thu, 15 Feb 2018 17:47:16 +0000 Subject: [PATCH 01/63] Clarify distribution of random values (#4614) Clarify that values drawn produce a discrete uniform distribution, and not for example a normal (or bell shaped) distribution. I intend to implement a random physics sensor which will return a bell distribution and this edit will avoid confusion. --- source/_components/sensor.random.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/sensor.random.markdown b/source/_components/sensor.random.markdown index d550d4b88d..c7f2bf07b1 100644 --- a/source/_components/sensor.random.markdown +++ b/source/_components/sensor.random.markdown @@ -14,7 +14,7 @@ ha_release: 0.32 --- -The `random` sensor platform is creating random sensor values (integers) out of a given range. This can be useful if you want to test automation rules. It generates a new value every time it is polled. +The `random` sensor platform is creating random sensor values (integers) out of a given range. Returned values form a [discrete uniform distribution](https://en.wikipedia.org/wiki/Discrete_uniform_distribution), meaning that each integer value in the range configured is equally likely to be drawn. This can be useful if you want to test automation rules. It generates a new value every time it is polled. To enable the random sensor, add the following lines to your `configuration.yaml`: From 132b1528419c3c87acba38844e3d56b3bef90810 Mon Sep 17 00:00:00 2001 From: George Vedamanickam Date: Thu, 15 Feb 2018 23:23:27 +0530 Subject: [PATCH 02/63] Update tls_self_signed_certificate.markdown (#4679) Minor typo in the word complain --- .../ecosystem/certificates/tls_self_signed_certificate.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/ecosystem/certificates/tls_self_signed_certificate.markdown b/source/_docs/ecosystem/certificates/tls_self_signed_certificate.markdown index 53736e0693..d7c145fe8b 100644 --- a/source/_docs/ecosystem/certificates/tls_self_signed_certificate.markdown +++ b/source/_docs/ecosystem/certificates/tls_self_signed_certificate.markdown @@ -12,7 +12,7 @@ redirect_from: /cookbook/tls_self_signed_certificate/ If your Home Assistant instance is only accessible from your local network you can still protect the communication between your browsers and the frontend with SSL/TLS. [Let's encrypt]({{site_root}}/blog/2015/12/13/setup-encryption-using-lets-encrypt/) will only work if you have a DNS entry and remote access is allowed. -The solution is to use a self-signed certificate. As you most likely don't have a certification authority (CA) your browser will conplain about the security. If you have a CA then this will not be an issue. +The solution is to use a self-signed certificate. As you most likely don't have a certification authority (CA) your browser will complain about the security. If you have a CA then this will not be an issue. To create a certificate locally, you need the [OpenSSL](https://www.openssl.org/) command-line tool. From 8746192d160cfbd6798af247d49149a0512a6f9e Mon Sep 17 00:00:00 2001 From: DubhAd Date: Thu, 15 Feb 2018 17:55:36 +0000 Subject: [PATCH 03/63] Added note calling out Hass.io only (#4678) * Added note calling out Hass.io only Given the ongoing confusion that add-ons cause, adding a note box to call out that add-ons are Hass.io only. * Fix typo --- source/addons/index.html | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/addons/index.html b/source/addons/index.html index 5abc6504b7..413106dd86 100644 --- a/source/addons/index.html +++ b/source/addons/index.html @@ -16,6 +16,10 @@ regenerate: false Check the Hass.io forums for add-on repositories managed by the community.

+

+Add-ons are only available if you've used the Hass.io installer. If you installed Home Assistant using any other method then you cannot use add-ons (but you can achieve the same result manually). +

+ {% assign addons = site.addons | sort: 'title' %}

{% linkable_title Featured add-ons %}

From 648b83bad6cf6e661f16db4ba11bc4495442ced4 Mon Sep 17 00:00:00 2001 From: DubhAd Date: Thu, 15 Feb 2018 17:56:06 +0000 Subject: [PATCH 04/63] Added note about add-ons (#4677) Since this keeps causing confusion, adding a note to the FAQ --- source/_faq/ha-vs-hassio.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_faq/ha-vs-hassio.markdown b/source/_faq/ha-vs-hassio.markdown index a331e034aa..41e373cfee 100644 --- a/source/_faq/ha-vs-hassio.markdown +++ b/source/_faq/ha-vs-hassio.markdown @@ -14,3 +14,4 @@ Home Assistant is a Python program, in simple words. It can be run various opera [Hass.io](/hassio/) is a combination of Home Assistant and tools which allows one to run it easily on a Raspberry Pi and other platforms without setting up an operating system first. Hass.io is an all-in one-solution and has a management user interface that can be used from the Home Assistant frontend. This interface is not present in a standalone setup of Home Assistant. +Be aware that add-ons are only available in Hass.io, due to the way Hass.io is installed. From 903b86402096caab9c69aaae7ed6d3619759d67a Mon Sep 17 00:00:00 2001 From: DubhAd Date: Thu, 15 Feb 2018 17:57:16 +0000 Subject: [PATCH 05/63] Added FAQ link (#4674) * Added FAQ link Added link to the FAQ article that (starts to) explain the difference between Hass.io and stock Home Assistant. * Update link --- source/getting-started/index.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/getting-started/index.markdown b/source/getting-started/index.markdown index d70ee63662..abb8cf7e72 100644 --- a/source/getting-started/index.markdown +++ b/source/getting-started/index.markdown @@ -11,7 +11,7 @@ footer: true The goal of this getting started guide is to install [Hass.io](/hassio/) on a Raspberry Pi 3. Hass.io is our own all in one solution that turns your Raspberry Pi into the ultimate home automation hub. -Follow this guide if you want to easily get started with Home Assistant, or if you have no or little Linux experience. For advanced users or if you have no Raspberry Pi at hand, check our [alternative installation methods](/docs/installation/). +Follow this guide if you want to easily get started with Home Assistant, or if you have no or little Linux experience. For advanced users or if you have no Raspberry Pi at hand, check our [alternative installation methods](/docs/installation/). The [FAQ](/faq/#home-assistant-vs-hassio) explains more about the differences. ### {% linkable_title Hardware requirements %} From a668d5b26fdbf037d089e04d2a5f13c9856840e8 Mon Sep 17 00:00:00 2001 From: Thijs de Jong Date: Thu, 15 Feb 2018 18:58:08 +0100 Subject: [PATCH 06/63] Fix Tahoma documentation (#4673) * remove sensor config example * Set sensor category to sensor was cover before * remove cover config example --- source/_components/cover.tahoma.markdown | 8 ++------ source/_components/sensor.tahoma.markdown | 10 +++------- 2 files changed, 5 insertions(+), 13 deletions(-) diff --git a/source/_components/cover.tahoma.markdown b/source/_components/cover.tahoma.markdown index 787b6fb126..1176153355 100644 --- a/source/_components/cover.tahoma.markdown +++ b/source/_components/cover.tahoma.markdown @@ -12,10 +12,6 @@ ha_category: Cover ha_release: 0.59 --- -To use your tahoma covers in your installation, add the following to your `configuration.yaml` file: +The `tahoma` cover platform lets you control covers added to your Tahoma Box in Home Assistant. -```yaml -# Example configuration.yml entry -cover: - platform: tahoma -``` +Covers will be added automatically. Please refer to the [component](/components/tahoma/) configuration on how to setup Tahoma. diff --git a/source/_components/sensor.tahoma.markdown b/source/_components/sensor.tahoma.markdown index 80cf6bc4eb..7a2b960de8 100644 --- a/source/_components/sensor.tahoma.markdown +++ b/source/_components/sensor.tahoma.markdown @@ -8,14 +8,10 @@ comments: false sharing: true footer: true logo: tahoma.png -ha_category: Cover +ha_category: Sensor ha_release: 0.59 --- -To use your tahoma sensors in your installation, add the following to your `configuration.yaml` file: +The `tahoma` sensor platform lets you see sensors added to your Tahoma Box in Home Assistant. -```yaml -# Example configuration.yml entry -sensor: - platform: tahoma -``` +Sensors will be added automatically. Please refer to the [component](/components/tahoma/) configuration on how to setup Tahoma. From 4f6179e2ff679fe83580aac4bc64e2dca61a2b70 Mon Sep 17 00:00:00 2001 From: Otto Winter Date: Thu, 15 Feb 2018 19:04:37 +0100 Subject: [PATCH 07/63] Fix MQTT tls_version docs (#4666) * Fix MQTT tls_version docs * Quick fix for escaping issue * Remove space --- source/_docs/mqtt/broker.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_docs/mqtt/broker.markdown b/source/_docs/mqtt/broker.markdown index a5f9e9ba70..74e45a91d0 100644 --- a/source/_docs/mqtt/broker.markdown +++ b/source/_docs/mqtt/broker.markdown @@ -99,14 +99,14 @@ tls_insecure: type: boolean tls_version: required: false - description: "TLS/SSL protocol version to use. Available options are: `auto`, `1.0`, `1.1`, `1.2`. Defaults to `auto`." + description: "TLS/SSL protocol version to use. Available options are: `'auto'`, `'1.0'`, `'1.1'`, `'1.2'`. Make sure to put quotes around the value. Defaults to `'auto'`." type: string {% endconfiguration %}

There is an issue with the Mosquitto package included in Ubuntu 14.04 LTS. Specify `protocol: 3.1` in your MQTT configuration to work around this issue. -If you get this error `AttributeError: module 'ssl' has no attribute 'PROTOCOL_TLS'` then you need to set `tls_version: 1.2`. +If you get this error `AttributeError: module 'ssl' has no attribute 'PROTOCOL_TLS'` then you need to set `tls_version: '1.2'`.

From 0a0a0a20a29ed76bfe38ce38310e83dbd65af9c7 Mon Sep 17 00:00:00 2001 From: Omen Wild Date: Thu, 15 Feb 2018 10:13:53 -0800 Subject: [PATCH 08/63] Add a Python program to print the correct code sequence for compliant devices (#4619) * Add a Python program to print the correct code sequence for compliant devices * Remove blank lines --- source/_docs/z-wave/control-panel.markdown | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/source/_docs/z-wave/control-panel.markdown b/source/_docs/z-wave/control-panel.markdown index 06c9bd741b..5d89b164ce 100644 --- a/source/_docs/z-wave/control-panel.markdown +++ b/source/_docs/z-wave/control-panel.markdown @@ -130,6 +130,20 @@ If your node has user codes, you can set and delete them. The format is raw hex Some non compliant device like tag readers, have implemented to use raw hex code. Please refer to a hex ascii table to set your code. Example: http://www.asciitable.com/ +Here is a small Python program than will take numbers on the command line and print the correct sequence for compliant devices: + +```python +#! /usr/bin/python3 +import sys + +translations = {} + +for x in range(0, 10): + translations["%s" % x] = "\\x3%s" % x + +for c in sys.argv[1]: + print(translations[c], end='') +``` ## {% linkable_title OZW Log %} From ee1a21c9d9db769d3f41b7a9ac15c733d63197d5 Mon Sep 17 00:00:00 2001 From: mweimerskirch <362092+mweimerskirch@users.noreply.github.com> Date: Thu, 15 Feb 2018 19:14:47 +0100 Subject: [PATCH 09/63] Updated Google calendar documentation (#4621) The documentation was missing the step to enable the calendar API. It this step is not completed, the following error appears in the log: Encountered 403 Forbidden with reason "accessNotConfigured" --- source/_components/calendar.google.markdown | 1 + 1 file changed, 1 insertion(+) diff --git a/source/_components/calendar.google.markdown b/source/_components/calendar.google.markdown index 3442a972a0..acad749e7c 100644 --- a/source/_components/calendar.google.markdown +++ b/source/_components/calendar.google.markdown @@ -28,6 +28,7 @@ Generate a Client ID and Client Secret on [Google Developers Console](https://co 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. +1. Click on "Library", search for "Google Calendar API" and enable it. ### {% linkable_title Basic Setup %} From ec57b0725dbac28789b73729dcfd5f177f0c8b17 Mon Sep 17 00:00:00 2001 From: honcheng Date: Fri, 16 Feb 2018 02:16:17 +0800 Subject: [PATCH 10/63] Update vacuum.xiaomi_miio.markdown (#4594) Added additional instruction to get adb backup working for certain phones. --- source/_components/vacuum.xiaomi_miio.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/vacuum.xiaomi_miio.markdown b/source/_components/vacuum.xiaomi_miio.markdown index b04cfe04f3..03a8b0ecec 100644 --- a/source/_components/vacuum.xiaomi_miio.markdown +++ b/source/_components/vacuum.xiaomi_miio.markdown @@ -174,7 +174,7 @@ To fetch the token follow these instructions depending on your mobile phone plat 2. Enable developer mode, USB debugging and plug the Android phone into the computer. 3. Get ADB e.g. `apt-get install android-tools-adb` or `apt-get install adb` 4. `adb devices` should list your device. Consult ADB manual if necessary. -5. Issue a backup command via adb: `adb backup -noapk com.xiaomi.smarthome -f backup.ab` (set a password if prompted on your phone) +5. Issue a backup command via adb: `adb backup -noapk com.xiaomi.smarthome -f backup.ab` (set a password if prompted on your phone). Some devices may required single quotes in the command `adb backup '-noapk com.xiaomi.smarthome -f backup.ab'` 6. Download the 'ADB Backup Extractor' from [here](https://sourceforge.net/projects/adbextractor/files/latest/download) 7. Extract the data from the backup: `java -jar Android\ Backup\ Utilities/Android\ Backup\ Extractor/android-backup-extractor-20171005-bin/abe.jar unpack backup.ab unpacked.tar` (enter the password, if prompted) 8. Untar the unpacked data: `tar -xvf unpacked.tar` From d069fb8a8f17624406a5b0ea174e040eefcc4ee4 Mon Sep 17 00:00:00 2001 From: KD4SIR Date: Thu, 15 Feb 2018 13:18:21 -0500 Subject: [PATCH 11/63] Update media_player.vlc.markdown (#4605) * Update media_player.vlc.markdown (My first submission) Updated the page to state this component is not compatible with Hassio at the moment. * Minor changes --- source/_components/media_player.vlc.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_components/media_player.vlc.markdown b/source/_components/media_player.vlc.markdown index 21ed9cdf24..0925495764 100644 --- a/source/_components/media_player.vlc.markdown +++ b/source/_components/media_player.vlc.markdown @@ -60,3 +60,7 @@ You need to add the `homeassistant` user to the `audio` group: ```bash sudo usermod -a -G audio homeassistant ``` + +##### {% linkable_title VLC currently not supported with Hass.io %} + +According to the forum topic ["How to add VLC into my Hassio"](http://community.home-assistant.io/t/how-to-add-vlc-into-my-hassio/23000/5), it is not possible to install packages like VLC on Hass.io. From 1e0fd94239dfb179516b1c1a6f687a6b332bfb5b Mon Sep 17 00:00:00 2001 From: Scott Date: Fri, 16 Feb 2018 11:03:34 -0600 Subject: [PATCH 12/63] Fix broken link --- source/_components/alarm_control_panel.manual_mqtt.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/alarm_control_panel.manual_mqtt.markdown b/source/_components/alarm_control_panel.manual_mqtt.markdown index be1508c676..5a1a7d139c 100644 --- a/source/_components/alarm_control_panel.manual_mqtt.markdown +++ b/source/_components/alarm_control_panel.manual_mqtt.markdown @@ -58,7 +58,7 @@ The following configuration variables from the base manual alarm platform are av - **pending_time** (*Optional*): State specific setting for **pending_time** (all states except **disarmed**) - **trigger_time** (*Optional*): State specific setting for **trigger_time** (all states except **triggered**) -See the documentation for the [manual alarm platform](/component/alarm_control_panel.manual/) for a description. +See the documentation for the [manual alarm platform](/components/alarm_control_panel.manual/) for a description. Additionally, the following MQTT configuration variables are also available: From 8e240240c5171fe4bd11b4e839e5a99a85f858dd Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 16 Feb 2018 09:30:10 -0800 Subject: [PATCH 13/63] Updat deprecation notice --- .../2017-10-06-deprecating-python-3.4-support.markdown | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/source/_posts/2017-10-06-deprecating-python-3.4-support.markdown b/source/_posts/2017-10-06-deprecating-python-3.4-support.markdown index 8d9364a143..7b053dd690 100644 --- a/source/_posts/2017-10-06-deprecating-python-3.4-support.markdown +++ b/source/_posts/2017-10-06-deprecating-python-3.4-support.markdown @@ -10,6 +10,11 @@ comments: true categories: Technology --- +**Update February 16, 2018**: +Home Assistant 0.64 will be the last release to support Python 3.4. Starting with release 0.65, Home Assistant will require a minimum version of Python 3.5.3. + +--- + Starting with our next release, 0.55, we will deprecate Python 3.4 support. The current plan is to remove support for Python 3.4 at the beginning of 2018. Python 3.5 was released on September 13th, 2015. It has since then become the default Python installation on the stable releases of Debian, Ubuntu, Raspbian and Hassbian. Our other own operating system, Hass.io, is more advanced and is already running the greatly improved Python 3.6. @@ -17,7 +22,7 @@ Python 3.5 was released on September 13th, 2015. It has since then become the de The jump to Python 3.5 as a minimum version is driven by the Home Assistant core, which is based on asyncio. Starting with Python 3.5, asyncio got improved support in the language with dedicated keywords `async` and `await`. As this is the proper way of doing async in Python, we're seeing a move by async libraries to either only support the new syntax from the beginning or dropping support for the Python 3.4 approach. Not moving along means an increased maintenance burden as we cannot use the latest releases of our libraries. Next to that it will prevent our users from being able to leverage the bug fixes and performance improvements that come with Python 3.5. #### Hass.io -If you're running Hass.io, you don't have to do anything. Your system will always stay up to date. +If you're running Hass.io, you don't have to do anything. Your system will always stay up to date. #### Hassbian If you're running Hassbian it's recommended that you make a backup of your configuration files and restore them on a fresh install. Upgrading an existing installation isn't recommended. From 5d7f8f3b174624915a228419886fbd12db6d2f23 Mon Sep 17 00:00:00 2001 From: Otto Winter Date: Fri, 16 Feb 2018 22:09:21 +0100 Subject: [PATCH 14/63] Fix demo links (#4686) --- source/demo/frontend.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/demo/frontend.html b/source/demo/frontend.html index 0cb5b14886..6cf41b7575 100644 --- a/source/demo/frontend.html +++ b/source/demo/frontend.html @@ -2,4 +2,4 @@ },_distributeDirtyRoots:function(){for(var e,t=this.shadyRoot._dirtyRoots,o=0,i=t.length;o0?~setTimeout(e,t):(this._twiddle.textContent=this._twiddleContent++,this._callbacks.push(e),this._currVal++)},cancel:function(e){if(e<0)clearTimeout(~e);else{var t=e-this._lastVal;if(t>=0){if(!this._callbacks[t])throw"invalid async handle: "+e;this._callbacks[t]=null}}},_atEndOfMicrotask:function(){for(var e=this._callbacks.length,t=0;t +}var r=window.requestAnimationFrame;window.requestAnimationFrame=function(t){return r(function(e){window.document.timeline._updateAnimationsPromises(),t(e),window.document.timeline._updateAnimationsPromises()})},e.AnimationTimeline=function(){this._animations=[],this.currentTime=void 0},e.AnimationTimeline.prototype={getAnimations:function(){return this._discardAnimations(),this._animations.slice()},_updateAnimationsPromises:function(){e.animationsWithPromises=e.animationsWithPromises.filter(function(t){return t._updatePromises()})},_discardAnimations:function(){this._updateAnimationsPromises(),this._animations=this._animations.filter(function(t){return"finished"!=t.playState&&"idle"!=t.playState})},_play:function(t){var i=new e.Animation(t,this);return this._animations.push(i),e.restartWebAnimationsNextTick(),i._updatePromises(),i._animation.play(),i._updatePromises(),i},play:function(t){return t&&t.remove(),this._play(t)}};var o=!1;e.restartWebAnimationsNextTick=function(){o||(o=!0,requestAnimationFrame(n))};var a=new e.AnimationTimeline;e.timeline=a;try{Object.defineProperty(window.document,"timeline",{configurable:!0,get:function(){return a}})}catch(t){}try{window.document.timeline=a}catch(t){}}(c,e,f),function(t,e,i){e.animationsWithPromises=[],e.Animation=function(e,i){if(this.id="",e&&e._id&&(this.id=e._id),this.effect=e,e&&(e._animation=this),!i)throw new Error("Animation with null timeline is not supported");this._timeline=i,this._sequenceNumber=t.sequenceNumber++,this._holdTime=0,this._paused=!1,this._isGroup=!1,this._animation=null,this._childAnimations=[],this._callback=null,this._oldPlayState="idle",this._rebuildUnderlyingAnimation(),this._animation.cancel(),this._updatePromises()},e.Animation.prototype={_updatePromises:function(){var t=this._oldPlayState,e=this.playState;return this._readyPromise&&e!==t&&("idle"==e?(this._rejectReadyPromise(),this._readyPromise=void 0):"pending"==t?this._resolveReadyPromise():"pending"==e&&(this._readyPromise=void 0)),this._finishedPromise&&e!==t&&("idle"==e?(this._rejectFinishedPromise(),this._finishedPromise=void 0):"finished"==e?this._resolveFinishedPromise():"finished"==t&&(this._finishedPromise=void 0)),this._oldPlayState=this.playState,this._readyPromise||this._finishedPromise},_rebuildUnderlyingAnimation:function(){this._updatePromises();var t,i,n,r,o=!!this._animation;o&&(t=this.playbackRate,i=this._paused,n=this.startTime,r=this.currentTime,this._animation.cancel(),this._animation._wrapper=null,this._animation=null),(!this.effect||this.effect instanceof window.KeyframeEffect)&&(this._animation=e.newUnderlyingAnimationForKeyframeEffect(this.effect),e.bindAnimationForKeyframeEffect(this)),(this.effect instanceof window.SequenceEffect||this.effect instanceof window.GroupEffect)&&(this._animation=e.newUnderlyingAnimationForGroup(this.effect),e.bindAnimationForGroup(this)),this.effect&&this.effect._onsample&&e.bindAnimationForCustomEffect(this),o&&(1!=t&&(this.playbackRate=t),null!==n?this.startTime=n:null!==r?this.currentTime=r:null!==this._holdTime&&(this.currentTime=this._holdTime),i&&this.pause()),this._updatePromises()},_updateChildren:function(){if(this.effect&&"idle"!=this.playState){var t=this.effect._timing.delay;this._childAnimations.forEach(function(i){this._arrangeChildren(i,t),this.effect instanceof window.SequenceEffect&&(t+=e.groupChildDuration(i.effect))}.bind(this))}},_setExternalAnimation:function(t){if(this.effect&&this._isGroup)for(var e=0;e From 34d31fc368f68f4c03c6ad718f1112acf4d11e12 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Fri, 16 Feb 2018 23:20:12 -0800 Subject: [PATCH 15/63] Alexa skill now in 4 regions --- source/_components/cloud.alexa.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/cloud.alexa.markdown b/source/_components/cloud.alexa.markdown index 5f30f112a1..b4604434e1 100644 --- a/source/_components/cloud.alexa.markdown +++ b/source/_components/cloud.alexa.markdown @@ -21,7 +21,7 @@ To use this integration, you need to have: - An Alexa enabled device like the Amazon Echo - Activated the [Home Assistant Smart Home skill for Alexa][alexa skill] -

Only Amazon US is currently supported. Other regions are being certified.

+

Only Amazon US, UK, Canada and Germany are currently supported. Other regions are being certified.

You can use `configuration.yaml` to configure the entities that are being shown to Alexa and how they are exposed. From 037ba1619c26658a8c04a0a57ff5d35647f2e65b Mon Sep 17 00:00:00 2001 From: Li-Wen Yip Date: Sat, 17 Feb 2018 18:49:04 +1100 Subject: [PATCH 16/63] Added hyphen Added hyphen so that this example config will still work if there are already other scenes defined in configuration.yaml --- source/_components/scene.lifx_cloud.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/scene.lifx_cloud.markdown b/source/_components/scene.lifx_cloud.markdown index cddb7cafd2..7b6ac7a279 100644 --- a/source/_components/scene.lifx_cloud.markdown +++ b/source/_components/scene.lifx_cloud.markdown @@ -17,8 +17,8 @@ The `lifx_cloud` scene platform allows you to activate the scenes that LIFX smar ```yaml # Example configuration.yaml entry scene: - platform: lifx_cloud - token: YOUR_LIFX_TOKEN + - platform: lifx_cloud + token: YOUR_LIFX_TOKEN ``` Configuration variables: From c75af2b6151e294ed35edaa466f51e54ef0f0ee8 Mon Sep 17 00:00:00 2001 From: DubhAd Date: Sat, 17 Feb 2018 10:42:27 +0000 Subject: [PATCH 17/63] Note about rename node being broken Given https://github.com/home-assistant/home-assistant/issues/12430, adding a note that Rename Node is now broken, and pointing to the blog post on how to rename nodes. --- source/_docs/z-wave/control-panel.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_docs/z-wave/control-panel.markdown b/source/_docs/z-wave/control-panel.markdown index 5d89b164ce..f5a76b39f1 100644 --- a/source/_docs/z-wave/control-panel.markdown +++ b/source/_docs/z-wave/control-panel.markdown @@ -43,6 +43,10 @@ Here is where you [include and exclude](/docs/z-wave/adding/) Z-Wave devices fro * **Test Node** sends no_op test messages to the node. This could in theory bring back a dead node. +

+Since 0.63 and the new entity registry **Rename Node** no longer renames the entities. See [this blog post](https://home-assistant.io/blog/2018/02/10/release-63/#entity-registry) for information on the registry and [this issue](https://github.com/home-assistant/home-assistant/issues/12430). +

+

Battery powered devices need to be awake before you can use the Z-Wave control panel to update their settings. How to wake your device is device specific, and some devices will stay awake for only a couple of seconds. Please refer to the manual of your device for more details.

From daa2d1449d3b22d6ff0a305c94e711cddd43895e Mon Sep 17 00:00:00 2001 From: DubhAd Date: Sat, 17 Feb 2018 12:58:32 +0000 Subject: [PATCH 18/63] Update Made it clearer that while it renames the entity (whatever that means) it now no longer changes the entity_id. --- source/_docs/z-wave/control-panel.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/z-wave/control-panel.markdown b/source/_docs/z-wave/control-panel.markdown index f5a76b39f1..6d6bf8b290 100644 --- a/source/_docs/z-wave/control-panel.markdown +++ b/source/_docs/z-wave/control-panel.markdown @@ -44,7 +44,7 @@ Here is where you [include and exclude](/docs/z-wave/adding/) Z-Wave devices fro * **Test Node** sends no_op test messages to the node. This could in theory bring back a dead node.

-Since 0.63 and the new entity registry **Rename Node** no longer renames the entities. See [this blog post](https://home-assistant.io/blog/2018/02/10/release-63/#entity-registry) for information on the registry and [this issue](https://github.com/home-assistant/home-assistant/issues/12430). +Since 0.63 and the new entity registry **Rename Node** no longer changes the entity id (just the default *friendly_name* and *old_entity_id* and *new_entity_id attributes). See [this blog post](https://home-assistant.io/blog/2018/02/10/release-63/#entity-registry) for information on the registry and [this issue](https://github.com/home-assistant/home-assistant/issues/12430).

From ee6bb9eb96762f77abd9dbb058f54511a4cebdfd Mon Sep 17 00:00:00 2001 From: Phil Frost Date: Sat, 17 Feb 2018 13:25:37 +0000 Subject: [PATCH 19/63] Link to mike-grant fork of Haaska The owner of the original Haaska does not appear to be maintaining the repository. However, mike-grant has incorporated the v3 smart home API changes in his fork. --- source/_components/alexa.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/alexa.markdown b/source/_components/alexa.markdown index e39048053c..e7bfbfa746 100644 --- a/source/_components/alexa.markdown +++ b/source/_components/alexa.markdown @@ -375,7 +375,7 @@ which accepts and returns messages conforming to the [Smart Home v3 payload](https://developer.amazon.com/docs/smarthome/smart-home-skill-api-message-reference.html). You must then create an Amazon developer account with an Alexa skill and Lambda function to integrate this endpoint. See -[Haaska](https://github.com/auchter/haaska) for an example. +[Haaska](https://github.com/mike-grant/haaska) for an example. [amazon-dev-console]: https://developer.amazon.com [flash-briefing-api]: https://developer.amazon.com/alexa-skills-kit/flash-briefing From 10ab3fb8f95d8eb291229e12b6baac57686a05e1 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Sat, 17 Feb 2018 15:30:56 -0800 Subject: [PATCH 20/63] Release 0.63.3 --- _config.yml | 6 ++-- source/_posts/2018-02-10-release-63.markdown | 34 ++++++++++++++++++++ 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/_config.yml b/_config.yml index 6ee6d3f537..42fa468642 100644 --- a/_config.yml +++ b/_config.yml @@ -140,13 +140,13 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 63 -current_patch_version: 2 -date_released: 2018-02-14 +current_patch_version: 3 +date_released: 2018-02-17 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. # Major release: -patch_version_notes: "#release-0632---february-14" +patch_version_notes: "#release-0633---february-17" # Minor release (Example #release-0431---april-25): # Date we moved to Discourse for comments diff --git a/source/_posts/2018-02-10-release-63.markdown b/source/_posts/2018-02-10-release-63.markdown index b58560e3ad..185b28ad13 100644 --- a/source/_posts/2018-02-10-release-63.markdown +++ b/source/_posts/2018-02-10-release-63.markdown @@ -59,6 +59,16 @@ We're planning a lot of cool stuff around the entity registry. Stay tuned! - Introduce zone_id to identify player+zone ([@sdague] - [#12382]) ([media_player.yamaha docs]) - Downgrade limitlessled to 1.0.8 ([@amelchio] - [#12403]) ([light.limitlessled docs]) +## {% linkable_title Release 0.63.3 - February 17 %} + +- python-miio version bumped. (Closes: #12389, Closes: #12298) ([@syssi] - [#12392]) ([fan.xiaomi_miio docs]) ([light.xiaomi_miio docs]) ([remote.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs]) +- Fixed 3 small issues in isy994 component ([@OverloadUT] - [#12421]) ([isy994 docs]) +- Reduce the load on met.no servers, yr.no sensor ([@danielhiversen] - [#12435]) ([sensor.yr docs]) +- Fix for contentRating error ([@ryanm101] - [#12445]) ([media_player.plex docs]) +- Fix light template to return brightness as int ([@andrey-git] - [#12447]) ([light.template docs]) +- Optimize recorder purge ([@amelchio] - [#12448]) +- [SQL Sensor] always close session ([@dgomes] - [#12452]) ([sensor.sql docs]) + ## {% linkable_title If you need help... %} ...don't hesitate to use our very active [forums](https://community.home-assistant.io/) or join us for a little [chat](https://discord.gg/c5DvZ4e). The release notes have comments enabled but it's preferred if you use the former communication channels. Thanks. @@ -654,3 +664,27 @@ Experiencing issues introduced by this release? Please report them in our [issue [sensor.eddystone_temperature docs]: https://home-assistant.io/components/sensor.eddystone_temperature/ [sensor.mercedesme docs]: https://home-assistant.io/components/sensor.mercedesme/ [sensor.wunderground docs]: https://home-assistant.io/components/sensor.wunderground/ +[#12392]: https://github.com/home-assistant/home-assistant/pull/12392 +[#12421]: https://github.com/home-assistant/home-assistant/pull/12421 +[#12435]: https://github.com/home-assistant/home-assistant/pull/12435 +[#12445]: https://github.com/home-assistant/home-assistant/pull/12445 +[#12447]: https://github.com/home-assistant/home-assistant/pull/12447 +[#12448]: https://github.com/home-assistant/home-assistant/pull/12448 +[#12452]: https://github.com/home-assistant/home-assistant/pull/12452 +[@OverloadUT]: https://github.com/OverloadUT +[@amelchio]: https://github.com/amelchio +[@andrey-git]: https://github.com/andrey-git +[@danielhiversen]: https://github.com/danielhiversen +[@dgomes]: https://github.com/dgomes +[@ryanm101]: https://github.com/ryanm101 +[@syssi]: https://github.com/syssi +[fan.xiaomi_miio docs]: https://home-assistant.io/components/fan.xiaomi_miio/ +[isy994 docs]: https://home-assistant.io/components/isy994/ +[light.template docs]: https://home-assistant.io/components/light.template/ +[light.xiaomi_miio docs]: https://home-assistant.io/components/light.xiaomi_miio/ +[media_player.plex docs]: https://home-assistant.io/components/media_player.plex/ +[remote.xiaomi_miio docs]: https://home-assistant.io/components/remote.xiaomi_miio/ +[sensor.sql docs]: https://home-assistant.io/components/sensor.sql/ +[sensor.yr docs]: https://home-assistant.io/components/sensor.yr/ +[switch.xiaomi_miio docs]: https://home-assistant.io/components/switch.xiaomi_miio/ +[vacuum.xiaomi_miio docs]: https://home-assistant.io/components/vacuum.xiaomi_miio/ From fcded280afb6ca75adf610eccf2d9e2e6314d682 Mon Sep 17 00:00:00 2001 From: DubhAd Date: Mon, 19 Feb 2018 08:46:59 +0000 Subject: [PATCH 21/63] Added port clarity (#4693) * Added port clarity Added notes to make it clear that if they're not using port 443, the port has to be specified (very common problem) * Add some other minor changes --- source/_components/google_assistant.markdown | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/source/_components/google_assistant.markdown b/source/_components/google_assistant.markdown index 95ef0fff19..02d57817cd 100644 --- a/source/_components/google_assistant.markdown +++ b/source/_components/google_assistant.markdown @@ -131,8 +131,8 @@ If you're not using Linux, you can use sites such as [this one](https://www.brow ### {% linkable_title Setup %} 1. Download the [gactions CLI](https://developers.google.com/actions/tools/gactions-cli) to be used later. You can download and run this anywhere and on any machine. Just remember where you put it for later and don't forget to run `chmod +x gactions` to make it executable on Mac or Linux. -2. Create a new file named `project.json` (in the same directory you downloaded `gactions` to) and replace the `[YOUR HOME ASSISTANT URL]` below with the URL you use to access Home Assistant. - Note: This must be an HTTPS URL to work. +2. Create a new file named `project.json` (in the same directory you downloaded `gactions` to) and replace the `[YOUR HOME ASSISTANT URL:PORT]` below with the URL you use to access Home Assistant. + Note: This must be an HTTPS URL to work. Don't forget to include the port number if you're not using port 443. ```json { @@ -148,7 +148,7 @@ If you're not using Linux, you can use sites such as [this one](https://www.brow "automation": { "name": "automation", - "url": "https://[YOUR HOME ASSISTANT URL]/api/google_assistant" + "url": "https://[YOUR HOME ASSISTANT URL:PORT]/api/google_assistant" } } } @@ -190,7 +190,7 @@ The request_sync service requires that the initial sync from Google includes the The request_sync service may fail with a 404 if the project_id of the Homegraph API differs from the project_id of the Actions SDK found in the preferences of your project on [developer console](https://console.actions.google.com). Resolve this by: 1. Removing your project from the [developer console](https://console.actions.google.com). - 2. Add a new project to the [cloud console](https://console.cloud.google.com). Here you get a new project_id. + 2. Add a new project to the [cloud console](https://console.cloud.google.com). Here you get a new `project_id`. 3. Enable Homegraph API to the new project. 4. Generate a new API key. - 5. Again, create a new project in the [developer console](https://console.actions.google.com/). Described above. But at the step 'Build under the Actions SDK box' choose your newly created project. By this, they share the same project_id. + 5. Again, create a new project in the [developer console](https://console.actions.google.com/). Described above. But at the step 'Build under the Actions SDK box' choose your newly created project. By this, they share the same `project_id`. From d3279215b19564829919370db56c8e938cb7fa74 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Mon, 19 Feb 2018 16:09:06 -0800 Subject: [PATCH 22/63] Add cloud update --- source/_components/cloud.markdown | 22 +-------- source/_includes/asides/cloud_navigation.html | 14 ++++++ source/_includes/site/sidebar.html | 2 + .../_posts/2018-02-20-cloud-update.markdown | 19 ++++++++ .../alexa.markdown} | 9 +--- .../google_assistant.markdown} | 6 +-- source/cloud/index.markdown | 47 +++++++++++++++++++ source/index.html | 2 +- 8 files changed, 87 insertions(+), 34 deletions(-) create mode 100644 source/_includes/asides/cloud_navigation.html create mode 100644 source/_posts/2018-02-20-cloud-update.markdown rename source/{_components/cloud.alexa.markdown => cloud/alexa.markdown} (93%) rename source/{_components/cloud.google_assistant.markdown => cloud/google_assistant.markdown} (96%) create mode 100644 source/cloud/index.markdown diff --git a/source/_components/cloud.markdown b/source/_components/cloud.markdown index d45e9aa15f..3008a52cac 100644 --- a/source/_components/cloud.markdown +++ b/source/_components/cloud.markdown @@ -13,27 +13,7 @@ ha_category: Voice ha_iot_class: "Cloud Push" --- -

The Home Assistant Cloud is currently in open beta and will become part of the upcoming Community Support Package. [Learn more](/blog/2017/12/17/introducing-home-assistant-cloud/)

- -The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa. - -The following integrations are currently available: - - - [Amazon Alexa (Amazon Echo)](/components/cloud.alexa/) - - - -### {% linkable_title How does it work? %} - -The Home Assistant Cloud has been designed with security in mind. When you activate the Cloud component, your instance will create a secure connection to the Home Assistant Cloud. There is no need for any further configuration or to expose your instance to the internet. - -Integrations like Alexa will deliver messages to our cloud which we will forward to your local instance for processing. We just forward the response back to Alexa. This means that we do not have to store the state of your house in our cloud, we’re just the messenger! - -You can find a list of frequently asked questions (and their answers) in [this blog post](/blog/2017/12/17/introducing-home-assistant-cloud/#faq). - -### {% linkable_title Enabling the cloud %} - -The Home Assistant Cloud is enabled by default. If not, add this to your configuration: +The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa. [Learn more.](/cloud) ```yaml # Example configuration.yaml entry to enable the cloud component diff --git a/source/_includes/asides/cloud_navigation.html b/source/_includes/asides/cloud_navigation.html new file mode 100644 index 0000000000..93a7baf70e --- /dev/null +++ b/source/_includes/asides/cloud_navigation.html @@ -0,0 +1,14 @@ +
+

About Home Assistant

+
    +
  • + The Home Assistant Cloud is a cloud-based service provided to supporters of the Home Assistant project. +
  • +
  • + {% active_link /cloud/ Introduction %} +
  • +
  • + {% active_link /cloud/ Amazon Alexa %} +
  • +
+ diff --git a/source/_includes/site/sidebar.html b/source/_includes/site/sidebar.html index 289411a118..9e2417d29a 100644 --- a/source/_includes/site/sidebar.html +++ b/source/_includes/site/sidebar.html @@ -14,6 +14,8 @@ {% include asides/faq_navigation.html | compact_newlines %} {% elsif url_parts[1] == 'hassio' or url_parts[1] == 'addons' %} {% include asides/hassio_navigation.html | compact_newlines %} + {% elsif url_parts[1] == 'cloud' %} + {% include asides/cloud_navigation.html | compact_newlines %} {% else %} {% include asides/about.html %} diff --git a/source/_posts/2018-02-20-cloud-update.markdown b/source/_posts/2018-02-20-cloud-update.markdown new file mode 100644 index 0000000000..80473619e5 --- /dev/null +++ b/source/_posts/2018-02-20-cloud-update.markdown @@ -0,0 +1,19 @@ +--- +layout: post +title: "Cloud Update" +description: "Alexa skill now live in Germany, UK, Canada, Australia and India." +date: 2018-02-19 01:00:00 +date_formatted: "February 19, 2018" +author: Paulus Schoutsen +author_twitter: balloob +comments: true +categories: Cloud +--- + +We're happy to announce that the Home Assistant skill is now available in Canada, UK, Germany, India and Australia! Check it out in the [Amazon Alexa Skill store][alexa skill]. + +In the meanwhile, we have also been working on the Google Assistant integration. We passed the first verification and are now working with Google to do the final verification. Stay tuned! + +In less than 2 weeks the open beta is about to expire. We're still working on setting up the company and payment system so we can start accepting payments. Until we do, Home Assistant Cloud will remain free. + +[alexa skill]: https://alexa.amazon.com/spa/index.html#skills/dp/B0772J1QKB/?ref=skill_dsk_skb_sr_2 diff --git a/source/_components/cloud.alexa.markdown b/source/cloud/alexa.markdown similarity index 93% rename from source/_components/cloud.alexa.markdown rename to source/cloud/alexa.markdown index b4604434e1..7e140825af 100644 --- a/source/_components/cloud.alexa.markdown +++ b/source/cloud/alexa.markdown @@ -7,10 +7,7 @@ sidebar: true comments: false sharing: true footer: true -logo: home-assistant.png -ha_release: "0.60" -ha_category: Cloud -ha_iot_class: "Cloud Push" +redirect_from: /components/cloud.alexa/ --- The Alexa integration allows users to control the entities via the [Home Assistant Smart Home skill for Alexa][alexa skill]. This means that you can say things like "Alexa, turn on the kitchen light" to control your local Home Assistant. @@ -21,8 +18,6 @@ To use this integration, you need to have: - An Alexa enabled device like the Amazon Echo - Activated the [Home Assistant Smart Home skill for Alexa][alexa skill] -

Only Amazon US, UK, Canada and Germany are currently supported. Other regions are being certified.

- You can use `configuration.yaml` to configure the entities that are being shown to Alexa and how they are exposed. ```yaml @@ -45,7 +40,7 @@ cloud: display_categories: LIGHT ``` -{% configuration %} +{% configuration cloud %} alexa: description: Configuration options for the Amazon Alexa integration. required: false diff --git a/source/_components/cloud.google_assistant.markdown b/source/cloud/google_assistant.markdown similarity index 96% rename from source/_components/cloud.google_assistant.markdown rename to source/cloud/google_assistant.markdown index 3dc3dde7cf..f76dd80d48 100644 --- a/source/_components/cloud.google_assistant.markdown +++ b/source/cloud/google_assistant.markdown @@ -7,10 +7,6 @@ sidebar: true comments: false sharing: true footer: true -logo: home-assistant.png -ha_release: 0.61 -ha_category: Cloud -ha_iot_class: "Cloud Push" published: false --- @@ -45,7 +41,7 @@ cloud: type: 'action.devices.types.LIGHT' ``` -{% configuration %} +{% configuration cloud %} google_actions: description: Configuration options for the Google Assistant integration. required: false diff --git a/source/cloud/index.markdown b/source/cloud/index.markdown new file mode 100644 index 0000000000..449294d890 --- /dev/null +++ b/source/cloud/index.markdown @@ -0,0 +1,47 @@ +--- +layout: page +title: "Home Assistant Cloud" +description: "Enable the Home Assistant Cloud integration." +date: 2017-11-17 20:00 +sidebar: true +comments: false +sharing: true +footer: true +logo: home-assistant.png +ha_release: "0.60" +ha_category: Voice +ha_iot_class: "Cloud Push" +--- + +

The Home Assistant Cloud is currently free and will become part of the upcoming Community Support Package. [Learn more](/blog/2017/12/17/introducing-home-assistant-cloud/)

+ +The Home Assistant Cloud allows you to quickly integrate your local Home Assistant with various cloud services like Amazon Alexa. + +The following integrations are currently available: + + - [Amazon Alexa (Amazon Echo)](/cloud/alexa/) + + + +### {% linkable_title How does it work? %} + +The Home Assistant Cloud has been designed with security in mind. When you activate the Cloud component, your instance will create a secure connection to the Home Assistant Cloud. There is no need for any further configuration or to expose your instance to the internet. + +Integrations like Alexa will deliver messages to our cloud which we will forward to your local instance for processing. We just forward the response back to Alexa. This means that we do not have to store the state of your house in our cloud, we’re just the messenger! + +You can find a list of frequently asked questions (and their answers) in [this blog post](/blog/2017/12/17/introducing-home-assistant-cloud/#faq). + +### {% linkable_title Enabling the cloud %} + +The Home Assistant Cloud is enabled by default. If not, add this to your configuration: + +```yaml +# Example configuration.yaml entry to enable the cloud component +cloud: +``` + +Once activated, go to the configuration panel in Home Assistant and create an account and log in. If you are not seeing the **Configuration** panel, make sure you have the following option enabled in your configuration.yaml` file. + +```yaml +config: +``` diff --git a/source/index.html b/source/index.html index a847b2632b..11729ac796 100644 --- a/source/index.html +++ b/source/index.html @@ -38,7 +38,7 @@ description: Open-source home automation platform running on Python 3. Track and Use Alexa to control Home Assistant. From e081ef352a842f4cba986add63f713d8cf8e925f Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 11:39:09 +0000 Subject: [PATCH 23/63] Update input_datetime.markdown Fixes #4259 --- source/_components/input_datetime.markdown | 43 ++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index 7337114357..19f3a8b5ef 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -75,3 +75,46 @@ A datetime input entity's state exports several attributes that can be useful in ### {% linkable_title Restore State %} This component supports the `restore_state` function which restores the state after Home Assistant has started to the value it has been before Home Assistant stopped. To use this feature please make sure that the [`recorder`](/components/recorder/) component is enabled and your entity does not have a value set for `initial`. Additional information can be found in the [Restore state](/components/recorder/#restore-state) section of the [`recorder`](/components/recorder/) component documentation. + +### {% linkable_title Services %} + +This component provides a service to modify the state of the `input_datetime`. + +| Service | Data | Description | +| ------- | ---- | ----------- | +| `set_datetime` | `time` | This can be used to dynamically set the time. +| `set_datetime` | `date` | This can be used to dynamically set the date. + +## {% linkable_title Automation Examples %} + +The following example shows the usage of the `input_datetime` as a trigger in an automation (note that you will need a [time sensor](https://home-assistant.io/components/sensor.time_date/) elsewhere in your configuration): + + +```yaml +# Example configuration.yaml entry +# Turns on bedroom light at the time specifiedateutomadate: + trigger: + platform: template + + value_template: '{{ states.sensor.time.state == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom("%H:%M", False)) }}' + action: + - service: light.turn_on + entity_id: light.bedroom +``` + +To dynamically set the `input_datetime` you can call `input_datetime.set_datetime`. The following example can be used in an automation rule: + +```yaml +# Example configuration.yaml entry +# Sets input_datetime to '05:30' when an input_boolean is turned on. +automation: + trigger: + platform: state + entity_id: input_boolean.example + to: 'on' + action: + service: input_datetime.set_datetime + entity_id: input_datetime.bedroom_alarm_clock_time + data: + time: '05:30:00' +``` From a33ed1d11f51ff96ccc74402f9035d512f0f2aff Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 11:54:40 +0000 Subject: [PATCH 24/63] Update input_datetime.markdown --- source/_components/input_datetime.markdown | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index 19f3a8b5ef..1b2098bd26 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -89,10 +89,10 @@ This component provides a service to modify the state of the `input_datetime`. The following example shows the usage of the `input_datetime` as a trigger in an automation (note that you will need a [time sensor](https://home-assistant.io/components/sensor.time_date/) elsewhere in your configuration): - +{% raw %} ```yaml # Example configuration.yaml entry -# Turns on bedroom light at the time specifiedateutomadate: +# Turns on bedroom light at the time specified. trigger: platform: template @@ -101,6 +101,7 @@ The following example shows the usage of the `input_datetime` as a trigger in an - service: light.turn_on entity_id: light.bedroom ``` +{% endraw %} To dynamically set the `input_datetime` you can call `input_datetime.set_datetime`. The following example can be used in an automation rule: From 289e1092f15dfbd59410cbdc81d6484ff8f07744 Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 11:55:35 +0000 Subject: [PATCH 25/63] Update input_datetime.markdown --- source/_components/input_datetime.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index 1b2098bd26..50e20b8573 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -65,7 +65,7 @@ input_datetime: A datetime input entity's state exports several attributes that can be useful in automations and templates. | Attribute | Description | -| --------- | ----------- | +| ... | ... | | `has_time` | `true` if this entity has a time. | `has_date` | `true` if this entity has a date. | `year`
`month`
`day` | The year, month and day of the date.
(only available if `has_date: true`) @@ -81,7 +81,7 @@ This component supports the `restore_state` function which restores the state af This component provides a service to modify the state of the `input_datetime`. | Service | Data | Description | -| ------- | ---- | ----------- | +| ... | ... | ... | | `set_datetime` | `time` | This can be used to dynamically set the time. | `set_datetime` | `date` | This can be used to dynamically set the date. From 262100de4558092efb3913301aaeb84f0834b2cb Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 11:58:24 +0000 Subject: [PATCH 26/63] Update input_datetime.markdown --- source/_components/input_datetime.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index 50e20b8573..3600633161 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -87,7 +87,7 @@ This component provides a service to modify the state of the `input_datetime`. ## {% linkable_title Automation Examples %} -The following example shows the usage of the `input_datetime` as a trigger in an automation (note that you will need a [time sensor](https://home-assistant.io/components/sensor.time_date/) elsewhere in your configuration): +The following example shows the usage of the `input_datetime` as a trigger in an automation (note that you will need a [time sensor](/components/sensor.time_date/) elsewhere in your configuration): {% raw %} ```yaml From c12f2e7e67291e52c01d0668703ad12ee43cee47 Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 12:01:21 +0000 Subject: [PATCH 27/63] Update input_datetime.markdown --- source/_components/input_datetime.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index 3600633161..ccae9f30e7 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -65,7 +65,7 @@ input_datetime: A datetime input entity's state exports several attributes that can be useful in automations and templates. | Attribute | Description | -| ... | ... | +| ----- | ----- | | `has_time` | `true` if this entity has a time. | `has_date` | `true` if this entity has a date. | `year`
`month`
`day` | The year, month and day of the date.
(only available if `has_date: true`) @@ -81,7 +81,7 @@ This component supports the `restore_state` function which restores the state af This component provides a service to modify the state of the `input_datetime`. | Service | Data | Description | -| ... | ... | ... | +| ----- | ----- | ----- | | `set_datetime` | `time` | This can be used to dynamically set the time. | `set_datetime` | `date` | This can be used to dynamically set the date. From be3c0f0f54f4323222b79d4a1c45e5d865c42260 Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 12:08:19 +0000 Subject: [PATCH 28/63] Update input_datetime.markdown --- source/_components/input_datetime.markdown | 1 - 1 file changed, 1 deletion(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index ccae9f30e7..8cab8edf24 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -95,7 +95,6 @@ The following example shows the usage of the `input_datetime` as a trigger in an # Turns on bedroom light at the time specified. trigger: platform: template - value_template: '{{ states.sensor.time.state == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom("%H:%M", False)) }}' action: - service: light.turn_on From 7374aa5aef6668f636191593281a1eadbb75cdcd Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 13:03:38 +0000 Subject: [PATCH 29/63] Update input_datetime.markdown --- source/_components/input_datetime.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index 8cab8edf24..1ed907e183 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -95,8 +95,8 @@ The following example shows the usage of the `input_datetime` as a trigger in an # Turns on bedroom light at the time specified. trigger: platform: template - value_template: '{{ states.sensor.time.state == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom("%H:%M", False)) }}' - action: +    value_template: "{{ states('sensor.time') == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom("%H:%M", False)) }}" +  action: - service: light.turn_on entity_id: light.bedroom ``` From 0ad4f914a472cebe25a4dd70d57bad545e4a4630 Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Tue, 20 Feb 2018 13:10:05 +0000 Subject: [PATCH 30/63] Update input_datetime.markdown --- source/_components/input_datetime.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index 1ed907e183..cd425a5473 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -95,7 +95,7 @@ The following example shows the usage of the `input_datetime` as a trigger in an # Turns on bedroom light at the time specified. trigger: platform: template -    value_template: "{{ states('sensor.time') == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom("%H:%M", False)) }}" +    value_template: "{{ states('sensor.time') == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom('%H:%M', False)) }}"  action: - service: light.turn_on entity_id: light.bedroom From 9d171ff59683ba4fdc28b11c6c3f7074292df307 Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Tue, 20 Feb 2018 08:07:08 -0800 Subject: [PATCH 31/63] Small change to recommend adding a network key to the configuration We should consider recommending a network key for all z-wave installations. As users begin to add more and more devices they may not think about adding this later on as the network grows. Many users come to Discord or elsewhere and get confused as to why their Z-Wave device is not functioning correctly and come to find out they needed a network key and to add the device securely. As more and more Z-Wave Plus devices come out there are more security enabled devices as well. All locks and sensors are pretty much security devices. --- source/_docs/z-wave/installation.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/z-wave/installation.markdown b/source/_docs/z-wave/installation.markdown index 7b40c12bb4..4a25268bdd 100644 --- a/source/_docs/z-wave/installation.markdown +++ b/source/_docs/z-wave/installation.markdown @@ -53,7 +53,7 @@ usb_path: type: string default: /zwaveusbstick network_key: - description: The 16-byte network key in the form `"0x01, 0x02..."` used in order to connect securely to compatible devices. + description: The 16-byte network key in the form `"0x01, 0x02..."` used in order to connect securely to compatible devices. It is recommended that a network key is configured as security enabled devices will not function correctly if they are not added securely. required: false type: string default: None From 58bc0b814cdf1b410b392138fb97c9b5f98ba2c3 Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Tue, 20 Feb 2018 08:28:17 -0800 Subject: [PATCH 32/63] Wording change --- source/_docs/z-wave/installation.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/z-wave/installation.markdown b/source/_docs/z-wave/installation.markdown index 4a25268bdd..d4aba93861 100644 --- a/source/_docs/z-wave/installation.markdown +++ b/source/_docs/z-wave/installation.markdown @@ -53,7 +53,7 @@ usb_path: type: string default: /zwaveusbstick network_key: - description: The 16-byte network key in the form `"0x01, 0x02..."` used in order to connect securely to compatible devices. It is recommended that a network key is configured as security enabled devices will not function correctly if they are not added securely. + description: The 16-byte network key in the form `"0x01, 0x02..."` used in order to connect securely to compatible devices. It is recommended that a network key is configured as security enabled devices may not function correctly if they are not added securely. required: false type: string default: None From 11d93eff1791c9857a1b877d1ffa3533f8d6845c Mon Sep 17 00:00:00 2001 From: Antoni K <31101842+Antoni-K@users.noreply.github.com> Date: Wed, 21 Feb 2018 06:01:02 +0800 Subject: [PATCH 33/63] Update Docker note (#4714) Added extra information about running HASS in a Docker container to the module pass-through note. --- source/_docs/z-wave/controllers.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/z-wave/controllers.markdown b/source/_docs/z-wave/controllers.markdown index 941f8d1eea..7a0952abcc 100644 --- a/source/_docs/z-wave/controllers.markdown +++ b/source/_docs/z-wave/controllers.markdown @@ -27,7 +27,7 @@ You need to have a [supported Z-Wave USB stick or module](https://github.com/Ope | ZWave.me UZB1 | ✓ | | |

- If you're using Hass.io, it's recommended to use a USB stick, not a module. Passing a module through Docker is more complicated than passing a USB stick through. + If you're using Hass.io or running HASS in a Docker container, it's recommended to use a USB stick, not a module. Passing a module through Docker is more complicated than passing a USB stick through.

## {% linkable_title Stick Alternatives %} From b7fc3a148530495bb46bc906608b142345fd6261 Mon Sep 17 00:00:00 2001 From: Andrzej Date: Tue, 20 Feb 2018 23:02:03 +0100 Subject: [PATCH 34/63] Update light.mqtt (#4708) Bad name of a parameter (double 'value') --- source/_components/light.mqtt.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/light.mqtt.markdown b/source/_components/light.mqtt.markdown index 33f76eb5cc..898356c853 100644 --- a/source/_components/light.mqtt.markdown +++ b/source/_components/light.mqtt.markdown @@ -143,7 +143,7 @@ white_value_state_topic: description: The MQTT topic subscribed to receive white value updates. required: false type: string -white_value_value_template: +white_value_template: description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the white value." required: false type: string From 87d999f3ef05bdd05d3658a8e828d7f24057c676 Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Tue, 20 Feb 2018 16:15:35 -0800 Subject: [PATCH 35/63] Add some emphasis about Breaking Changes We should provide proper guidance to the user about the importance of release notes and paying attention to breaking changes. A common error users face while updating home assistant is not paying attention to the breaking changes. If the user has not done an update in sometime they may also forget about previous breaking changes that still stand. --- source/_docs/installation/updating.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown index a23aa31b27..4750a81291 100644 --- a/source/_docs/installation/updating.markdown +++ b/source/_docs/installation/updating.markdown @@ -14,7 +14,7 @@ redirect_from: /getting-started/updating/ The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [HASSbian](/docs/hassbian/common-tasks/#update-home-assistant), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).

-View what's new in the latest version and potential impacts on your system [here](https://github.com/home-assistant/home-assistant/releases). +View what's new in the latest version and potential impacts on your system [here](https://github.com/home-assistant/home-assistant/releases). It is in good practice to review the release notes and pay close attention to the Breaking Changes that are listed there. If you have not done an update in sometime, you should also look at previous release notes as they can also have Breaking Changes that may impact your system. Breaking Changes may require configuration updates for your components, if not done before the update home assistant may not load or the component will not work. The default way to update Home Assistant to the latest release, when available, is: From 6a2c0478893fffc7abf8ae20b26fdf4d7cd2744f Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Tue, 20 Feb 2018 16:20:44 -0800 Subject: [PATCH 36/63] Add capital letters for Home Assistant oops :) --- source/_docs/installation/updating.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown index 4750a81291..d3a271544d 100644 --- a/source/_docs/installation/updating.markdown +++ b/source/_docs/installation/updating.markdown @@ -14,7 +14,7 @@ redirect_from: /getting-started/updating/ The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [HASSbian](/docs/hassbian/common-tasks/#update-home-assistant), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).

-View what's new in the latest version and potential impacts on your system [here](https://github.com/home-assistant/home-assistant/releases). It is in good practice to review the release notes and pay close attention to the Breaking Changes that are listed there. If you have not done an update in sometime, you should also look at previous release notes as they can also have Breaking Changes that may impact your system. Breaking Changes may require configuration updates for your components, if not done before the update home assistant may not load or the component will not work. +View what's new in the latest version and potential impacts on your system [here](https://github.com/home-assistant/home-assistant/releases). It is in good practice to review the release notes and pay close attention to the Breaking Changes that are listed there. If you have not done an update in sometime, you should also look at previous release notes as they can also have Breaking Changes that may impact your system. Breaking Changes may require configuration updates for your components, if not done before the update Home Assistant may not load or the component will not work. The default way to update Home Assistant to the latest release, when available, is: From 479334e8692c24749a604d973f7325679b8ea6de Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Tue, 20 Feb 2018 17:14:23 -0800 Subject: [PATCH 37/63] updates --- source/_docs/installation/updating.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown index d3a271544d..2c3fd01c2e 100644 --- a/source/_docs/installation/updating.markdown +++ b/source/_docs/installation/updating.markdown @@ -14,7 +14,7 @@ redirect_from: /getting-started/updating/ The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [HASSbian](/docs/hassbian/common-tasks/#update-home-assistant), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).

-View what's new in the latest version and potential impacts on your system [here](https://github.com/home-assistant/home-assistant/releases). It is in good practice to review the release notes and pay close attention to the Breaking Changes that are listed there. If you have not done an update in sometime, you should also look at previous release notes as they can also have Breaking Changes that may impact your system. Breaking Changes may require configuration updates for your components, if not done before the update Home Assistant may not load or the component will not work. +View what's new in the latest version and potential impacts on your system in [release notes](https://github.com/home-assistant/home-assistant/releases). It is in good practice to review the release notes and pay close attention to the **Breaking Changes** that are listed there. If you have not done an update in sometime, you should also look at previous release notes as they can also have **Breaking Changes** that may impact your system. **Breaking Changes** may require configuration updates for your components, if not done before the update Home Assistant may not load or the component will not work. The default way to update Home Assistant to the latest release, when available, is: From 6257827b24a49d6571ee0581c950d9d29008e47f Mon Sep 17 00:00:00 2001 From: c727 Date: Wed, 21 Feb 2018 02:42:08 +0100 Subject: [PATCH 38/63] Fix indents in lets_encrypt automation example --- .../ecosystem/certificates/lets_encrypt.markdown | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/source/_docs/ecosystem/certificates/lets_encrypt.markdown b/source/_docs/ecosystem/certificates/lets_encrypt.markdown index ee9cb80892..8194c2effb 100644 --- a/source/_docs/ecosystem/certificates/lets_encrypt.markdown +++ b/source/_docs/ecosystem/certificates/lets_encrypt.markdown @@ -538,13 +538,13 @@ In your `configuration.yaml` add the following automation, adding your preferred automation: - alias: 'SSL expiry notification' trigger: - platform: numeric_state - entity_id: sensor.ssl_cert_expiry - below: 21 - action: - service: notify.[your_notification_preference] - data: - message: 'Warning - SSL certificate expires in 21 days and has not been automatically renewed' + platform: numeric_state + entity_id: sensor.ssl_cert_expiry + below: 21 + action: + service: notify.[your_notification_preference] + data: + message: 'Warning - SSL certificate expires in 21 days and has not been automatically renewed' ``` If you receive this warning notification, follow the steps for a manual update from step 8. Any error messages received at that point can be googled and resolved. If the manual update goes without a hitch there may be something wrong with your chosen method for automatic updates, and you can start troubleshooting from there. From ec300739f9bfb6cd8d569d34182eba3b67f1cfd1 Mon Sep 17 00:00:00 2001 From: Thijs de Jong Date: Wed, 21 Feb 2018 03:27:59 +0100 Subject: [PATCH 39/63] Update scene.hunterdouglas_powerview.markdown (#4687) --- source/_components/scene.hunterdouglas_powerview.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_components/scene.hunterdouglas_powerview.markdown b/source/_components/scene.hunterdouglas_powerview.markdown index 5598971724..2f63ba6264 100644 --- a/source/_components/scene.hunterdouglas_powerview.markdown +++ b/source/_components/scene.hunterdouglas_powerview.markdown @@ -8,7 +8,7 @@ comments: false sharing: true footer: true logo: hunter-douglas-powerview.png -ha_category: Cover +ha_category: Scene ha_release: 0.15 --- From 5ba8c556efe046759a3363e8e68f0c5bc3c42055 Mon Sep 17 00:00:00 2001 From: Michael Fester Date: Wed, 21 Feb 2018 03:38:10 +0100 Subject: [PATCH 40/63] Adapt documentation to new API (#4421) --- source/_components/snips.markdown | 87 +++++++++++++++---------------- 1 file changed, 41 insertions(+), 46 deletions(-) diff --git a/source/_components/snips.markdown b/source/_components/snips.markdown index 1e8dae2e05..6f876effdd 100644 --- a/source/_components/snips.markdown +++ b/source/_components/snips.markdown @@ -27,55 +27,63 @@ Snips takes voice or text as input and produces *intents* as output, which are e ### {% linkable_title Installation %} -The Snips Voice Platform is installed as a Docker image on Raspberry Pi with the following command: - -```bash -(pi) $ curl https://install.snips.ai -sSf | sh -``` - -Snips can also be installed on a Debian/Ubuntu machine as well: +The Snips platform can be installed via the Snips APT/Debian repository. If you prefer to install the platform using the Docker distribution, check out our [Docker Installation Guide](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Miscellaneous#using-docker). ```bash $ sudo apt-get update $ sudo apt-get install -y dirmngr -$ sudo bash -c 'echo "deb https://debian.snips.ai/$(lsb_release -cs) stable main" > /etc/apt/sources.list.d/snips.list' -$ sudo apt-key adv --keyserver pgp.mit.edu --recv-keys F727C778CCB0A455 - +$ sudo bash -c 'echo "deb https://raspbian.snips.ai/$(lsb_release -cs) stable main" > /etc/apt/sources.list.d/snips.list' +$ sudo apt-key adv --keyserver pgp.mit.edu --recv-keys D4F50CDCA10A2849 $ sudo apt-get update $ sudo apt-get install -y snips-platform-voice ``` +Note: if the keyserver pgp.mit.edu is down try to use another one in the 4th line , like pgp.surfnet.nl: + +```bash +sudo apt-key adv --keyserver pgp.surfnet.nl --recv-keys D4F50CDCA10A2849 +``` + ### {% linkable_title Creating an assistant %}
-Snips assistants are created via the [Snips Console](https://console.snips.ai). Once trained, the assistant should be downloaded and copied to the Raspberry Pi: +Head over to the [Snips Console](https://console.snips.ai) to create your assistant. Launch the training and download by clicking on the "Download Assistant" button. + +The next step is to get the assistant to work on your device. Unzip and copy the assistant folder that you downloaded from the web console to the path. Assuming your downloaded assistant folder is on your desktop, just run: ```bash -$ scp assistantproj_XXX.zip pi@pi_hostname:/home/pi/assistant.zip +$ scp -r ~/Desktop/assistant pi@:/home/pi/. ``` -and installed locally via the `snips-install-assistant` helper script: +Now ssh into your Raspberry Pi: ```bash -(pi) $ sudo snips-install-assistant assistant.zip +$ ssh pi@ +``` + +By default, this command is `ssh pi@raspberrypi.local`, if you are using the default Raspberry Pi hostname. + +Then, move the assistant to the right folder: + +```bash +(pi) $ sudo mv /home/pi/assistant /usr/share/snips/assistant +``` + +Note: if you already have an assistant installed and wish to replace it, start by removing the previous one, and then move the new one in its place: + +```bash +(pi) $ sudo rm -r /usr/share/snips/assistant +(pi) $ sudo mv /home/pi/assistant /usr/share/snips/assistant ``` ### {% linkable_title Running Snips %} Make sure that a microphone is plugged to the Raspberry Pi. If you are having trouble setting up audio, we have written a guide on [Raspberry Pi Audio Configuration](https://github.com/snipsco/snips-platform-documentation/wiki/1.-Setup-the-Snips-Voice-Platform-on-your-Raspberry-Pi#configuring-the-audio). -Start the Snips Voice Platform using the `snips` command: - -Raspberry Pi: - -```bash -(pi) $ snips -``` - -Debian/Ubuntu: +Start the Snips Voice Platform by starting the `snips-*` services: ```bash $ sudo systemctl start "snips-*" @@ -89,32 +97,17 @@ followed by a command, e.g. > Set the lights to green in the living room -We should see the transcribed phrase in the logs, as well as a properly parsed intent. The intent is published on MQTT, on the `hermes/intent/` topic. The Snips Home Assistant component subscribes to this topic, and handles the intent according to the rules defined in `configuration.yaml`, as explained below. +As the Snips Platform parses this query into an intent, it will be published on MQTT, on the `hermes/intent/` topic. The Snips Home Assistant component subscribes to this topic, and handles the intent according to the rules defined in `configuration.yaml`, as explained below. #### {% linkable_title Optional: specifying an external MQTT broker %} -By default, Snips runs its own MQTT broker. But we can also tell Snips to use an external broker by specifying this when launching Snips. In this case, instead of running the `snips` command above (which assumes we are using the internal MQTT broker), we use the full launch command with explicitly specified parameters (replace `MQTT_BROKER_IP` and `MQTT_BROKER_PORT` with appropriate values): - -Raspberry Pi: - -```sh -$ docker run -t --rm --name snips --log-driver none \ - -v /home/pi/.asoundrc:/root/.asoundrc \ - -v /opt/snips/config:/opt/snips/config \ - --privileged -v /dev/snd:/dev/snd snipsdocker/platform \ - --mqtt MQTT_BROKER_IP:MQTT_BROKER_PORT -``` -Debian/Ubuntu: - -Edit the `/etc/snips.toml` file. See snips documentation for more information on configuring this - -For more details on launch options, check the documentation on [Snips Platform Commands](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Learn-more:-Platform-Commands#using-a-custom-mqtt-bus). +By default, Snips runs its own MQTT broker. But we can also tell Snips to use an external broker by specifying this when launching Snips. In this case, we need to specify this in the `/etc/snips.toml` configuration file. For more information on configuring this, see the [Using an external MQTT broker](https://github.com/snipsco/snips-platform-documentation/wiki/6.--Miscellaneous#using-external-mqtt-broker) article. ## {% linkable_title Home Assistant configuration %} ### {% linkable_title Specifying the MQTT broker %} -Messages between Snips and Home Assistant are passed via MQTT. We must tell Home Assistant which [MQTT broker](/docs/mqtt/) to use by adding the following entry to the `configuration.yaml` file: +Messages between Snips and Home Assistant are passed via MQTT. We can either point Snips to the MQTT broker used by Home Assistant, as explained above, or tell Home Assistant which [MQTT broker](/docs/mqtt/) to use by adding the following entry to the `configuration.yaml` file: ```yaml mqtt: @@ -122,7 +115,7 @@ mqtt: port: MQTT_BROKER_PORT ``` -As explained above, Snips by default runs an MQTT broker on port 9898. So if we wish to use this broker, the entry will look as follows: +By default, Snips runs an MQTT broker on port 9898. So if we wish to use this broker, and if Snips and Home Assistant run on the same device, the entry will look as follows: ```yaml mqtt: @@ -130,11 +123,11 @@ mqtt: port: 9898 ``` -Alternatively, MQTT can be configured to bridge messages between servers if using a custom MQTT broker such as `mosquitto`. +Alternatively, MQTT can be configured to bridge messages between servers if using a custom MQTT broker such as [mosquitto](https://mosquitto.org/). ### {% linkable_title Triggering actions %} -In Home Assistant, we trigger actions based on intents produced by Snips using the [`intent_script`](/components/intent_script) component. For instance, the following block handles `ActivateLightColors` intents (included in the Snips IoT intent bundle) to change light colors: +In Home Assistant, we trigger actions based on intents produced by Snips using the [`intent_script`](/components/intent_script) component. For instance, the following block handles a `ActivateLightColor` intent to change light colors: {% raw %} ```yaml @@ -150,9 +143,11 @@ intent_script: ``` {% endraw %} -The variables that can be used in the template are of the form 'slotName = value'. +In the `data_template` block, we have access to special variables, corresponding to the slot names for the intent. In the present case, the `ActivateLightColor` has two slots, `objectLocation` and `objectColor`. -Snips intents that utilize builtin slot types will contain extended information along with the value and can be exposed using this format: +### {% linkable_title Special slots %} + +In the above example, the slots are plain strings. However, when more complex types are used, such as dates or time ranges, they will be transformed to rich Python objects, for example: {% raw %} ```yaml From 88746f2a6b2d2f3a4991613645897298f3e84985 Mon Sep 17 00:00:00 2001 From: pat <124277+ptc@users.noreply.github.com> Date: Wed, 21 Feb 2018 03:55:27 +0100 Subject: [PATCH 41/63] Update homematic.markdown (#4697) * Update homematic.markdown in order to get it running and hass.io to be able to add new homematic sensors, I had to change the configuration in this particular way. * Update homematic.markdown double checked. only changed interface name is needed --- source/_addons/homematic.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_addons/homematic.markdown b/source/_addons/homematic.markdown index 8cf3c3b9b3..6a92bbff81 100644 --- a/source/_addons/homematic.markdown +++ b/source/_addons/homematic.markdown @@ -57,7 +57,7 @@ Use the following configuration in Home Assistant to use it: ```yaml homematic: interfaces: - BidCoS-RF: + rf: host: core-homematic port: 2001 ``` From 0ab51b775e61edfe540de738aab1c17d929e6b9f Mon Sep 17 00:00:00 2001 From: Lars Kerick Date: Wed, 21 Feb 2018 04:19:20 +0100 Subject: [PATCH 42/63] Update lets_encrypt.markdown (#4719) --- source/_docs/ecosystem/certificates/lets_encrypt.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/ecosystem/certificates/lets_encrypt.markdown b/source/_docs/ecosystem/certificates/lets_encrypt.markdown index ee9cb80892..654775a8ed 100644 --- a/source/_docs/ecosystem/certificates/lets_encrypt.markdown +++ b/source/_docs/ecosystem/certificates/lets_encrypt.markdown @@ -113,7 +113,7 @@ static routers=192.168.0.1 <---- Your router's IP address static domain_name_servers=192.168.0.1 <---- Your router's IP address ``` -It is important to note that the first three bits of your static IP address and your router's IP address should be the same, eg: +It is important to note that the first three bytes of your static IP address and your router's IP address should be the same, eg: ```text Router: 192.168.0.1 From 5f91c5a3b8a41953742ca5412a727186491ffef5 Mon Sep 17 00:00:00 2001 From: cdce8p <30130371+cdce8p@users.noreply.github.com> Date: Wed, 21 Feb 2018 04:32:50 +0100 Subject: [PATCH 43/63] Changed parameter name (#4641) * Added device_config_domain and device_config_glob --- source/_docs/z-wave/installation.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/z-wave/installation.markdown b/source/_docs/z-wave/installation.markdown index d4aba93861..0319554707 100644 --- a/source/_docs/z-wave/installation.markdown +++ b/source/_docs/z-wave/installation.markdown @@ -82,7 +82,7 @@ new_entity_ids: required: false type: boolean default: True -device_config: +device_config / device_config_domain / device_config_glob: description: This attribute contains node-specific override values. (For releases prior to 0.39 this variable is called **customize**) See [Customizing devices and services](/docs/configuration/customizing-devices/) for the format. required: false type: string, list From 6f027086d0b10562bf23568a1cfee1c06c92688b Mon Sep 17 00:00:00 2001 From: Alan Tse Date: Tue, 20 Feb 2018 20:30:50 -0800 Subject: [PATCH 44/63] Clarifying hdmi_cec instructions to include _cec.so (#4595) * Clarifying instructions to include _cec.so * Removing deprecated AIO and manual install --- source/_components/hdmi_cec.markdown | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/source/_components/hdmi_cec.markdown b/source/_components/hdmi_cec.markdown index 758f8d468e..694c1e3357 100644 --- a/source/_components/hdmi_cec.markdown +++ b/source/_components/hdmi_cec.markdown @@ -31,32 +31,24 @@ If you are using [Hass.io](/hassio/) then just move forward to the configuration #### {% linkable_title Symlinking into virtual environment %} -Create a symlink to the `cec` installation. Keep in mind different installation methods will result in different locations of cec. +Create a symlink to the `cec` installation including the _cec.so file. Keep in mind different installation methods will result in different locations of cec. ```bash -$ ln -s /path/to/your/installation/of/cec /path/to/your/venv/lib/python3.4/site-packages +$ ln -s /path/to/your/installation/of/cec /path/to/your/venv/lib/python*/site-packages +$ ln -s /path/to/your/installation/of/_cec.so /path/to/your/venv/lib/python*/site-packages + ``` + ##### {% linkable_title Symlinking examples: %} For the default virtual environment of a [HASSbian Image for Raspberry Pi](/getting-started/installation-raspberry-pi-image/) the command would be as follows. ```bash -$ ln -s /usr/local/lib/python3.4/dist-packages/cec /srv/homeassistant/lib/python3.4/site-packages +$ ln -s /usr/local/lib/python*/dist-packages/cec /srv/homeassistant/lib/python*/site-packages +$ ln -s /usr/local/lib/python*/dist-packages/_cec.so /srv/homeassistant/lib/python*/site-packages + ``` -For the default virtual environment of a [Raspberry Pi All-In-One installation](/getting-started/installation-raspberry-pi-all-in-one/) the command would be as follows. - -```bash -$ ln -s /usr/local/lib/python3.4/site-packages/cec /srv/homeassistant/homeassistant_venv/lib/python3.4/site-packages -``` - -For the default virtual environment of a [Manual installation](/getting-started/installation-raspberry-pi/) the command would be as follows. - -```bash -$ ln -s /usr/local/lib/python3.4/site-packages/cec /srv/hass/hass_venv/lib/python3.4/site-packages -``` - -

If after symlinking and adding `hdmi_cec:` to your configuration you are getting the following error in your logs, `* failed to open vchiq instance` you will also need to add the user account Home Assistant runs under, to the `video` group. To add the Home Assistant user account to the `video` group, run the following command. `$ usermod -a -G video `

From 4880ebda59a66471b50c56e4dca7cc4d2460be11 Mon Sep 17 00:00:00 2001 From: c727 Date: Wed, 21 Feb 2018 05:58:50 +0100 Subject: [PATCH 45/63] Update updating.markdown --- source/_docs/installation/updating.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown index 2c3fd01c2e..dafb485e00 100644 --- a/source/_docs/installation/updating.markdown +++ b/source/_docs/installation/updating.markdown @@ -14,7 +14,7 @@ redirect_from: /getting-started/updating/ The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [HASSbian](/docs/hassbian/common-tasks/#update-home-assistant), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).

-View what's new in the latest version and potential impacts on your system in [release notes](https://github.com/home-assistant/home-assistant/releases). It is in good practice to review the release notes and pay close attention to the **Breaking Changes** that are listed there. If you have not done an update in sometime, you should also look at previous release notes as they can also have **Breaking Changes** that may impact your system. **Breaking Changes** may require configuration updates for your components, if not done before the update Home Assistant may not load or the component will not work. +Check what's new in the latest version and potentially impacts your system in [Home Assistant release notes](https://github.com/home-assistant/home-assistant/releases). It is good practice to review these release notes and pay close attention to the **Breaking Changes** that are listed there. If you havn't done an update for a while, you should also check previous release notes as they can also contain relevant **Breaking Changes**. **Breaking Changes** may require configuration updates for your components. If you missed this and Home Assistant refuses to start, check `/home-assistant.log` for details about broken components. The default way to update Home Assistant to the latest release, when available, is: From 7356c83162040beefae09c51ad55c8e16b9bdaae Mon Sep 17 00:00:00 2001 From: DubhAd Date: Wed, 21 Feb 2018 07:58:26 +0000 Subject: [PATCH 46/63] Pushed towards SSL, and clarity wording (#4716) Some clarity edits, plus a push towards SSL --- source/_components/device_tracker.gpslogger.markdown | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/source/_components/device_tracker.gpslogger.markdown b/source/_components/device_tracker.gpslogger.markdown index 34465aec4f..1f1437dca2 100644 --- a/source/_components/device_tracker.gpslogger.markdown +++ b/source/_components/device_tracker.gpslogger.markdown @@ -56,7 +56,7 @@ Right after enabling, the app will take you to the **Log to custom URL** setting The relevant endpoint is: `/api/gpslogger` ```text -http://[IP address Home Assistant]:[Port]/api/gpslogger? +https://[IP address Home Assistant]:[Port]/api/gpslogger? latitude=%LAT&longitude=%LON&device=%SER&accuracy=%ACC &battery=%BATT&speed=%SPD&direction=%DIR &altitude=%ALT&provider=%PROV&activity=%ACT @@ -65,8 +65,8 @@ http://[IP address Home Assistant]:[Port]/api/gpslogger? Add the above URL after you modified it with your settings into the **URL** field. Remove the line breaks as they are only there to make the URL readable here. - It's HIGHLY recommended to use SSL/TLS. -- Use the domain that Home Assistant is available on the internet or the public IP address. Can be a local IP address if you are using a VPN setup. -- Only remove `[Port]` if your Home Assistant instance is using port 80. Otherwise set it to 8123. +- Use the domain that Home Assistant is available on the internet or the public IP address. This can be a local IP address if you are using an always on VPN from your mobile device to your home network. +- Only remove `[Port]` if your Home Assistant instance is using port 443. Otherwise set it to the port you're using. - For Home Assistant only the above URL, as written, will work - do not add or remove any parameters. - Make sure to include your [API password](/components/http/) if you have configured a password. Add `&api_password=[Your password]` to the end of the URL. - You can change the name of your device name by replacing `&device=%SER` with `&device=[Devicename]`. From d16fcb8e997678a57969aab559d510db0e4ee82d Mon Sep 17 00:00:00 2001 From: Daniel Welch Date: Wed, 21 Feb 2018 08:16:43 -0500 Subject: [PATCH 47/63] Update addon_communication.markdown (#4706) * Update addon_communication.markdown * Update addon_communication.markdown * Update addon_communication.markdown --- .../hassio/addon_communication.markdown | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/source/developers/hassio/addon_communication.markdown b/source/developers/hassio/addon_communication.markdown index c95be391a5..775008162a 100644 --- a/source/developers/hassio/addon_communication.markdown +++ b/source/developers/hassio/addon_communication.markdown @@ -10,23 +10,26 @@ footer: true redirect_from: /hassio/addon_config/ --- -There are different ways to communication between add-ons inside Home Assistant. +There are different ways for communication between add-ons inside Hass.io. ## {% linkable_title Network %} -We use an internal network. That allow to speak with every add-on or from Home Assistant to add-on by name or alias. Only the add-ons which runs on the host network are a bit limited. They can speak with all internal add-ons over their name but all other add-on can't address the add-on in question with its name. But using an alias work well. Thus the name/alias is used to communicate inside Hass.io. The name have the following format `{REPO}-{SLUG}`, e.g. `local-xy` or `3283fh-myaddon`. +We use an internal network that allows to communicate with every add-on, even to/from Home Assistant, by using his name or alias. Only the add-ons which run on the host network are a bit limited. These can talk with all internal add-ons by their name but all other add-on can't address these add-on by name - using an alias works for both! -Use `hassio` to speak with the internal API. +Name/alias are used for communication inside Hass.io. +The name is generated using the following format: `{REPO}_{SLUG}`, e.g. `local_xy` or `3283fh_myaddon`. In this example, `{SLUG}` is defined in an add-ons `config.json`. If an add-on is installed locally, `{REPO}` will be `local`. If the add-on is installed from a Github repository, `{REPO}` is a hashed identifier generated from the GitHub repository's URL (ex: https://github.com/xy/my_hassio_addons). See [here](https://github.com/home-assistant/hassio/blob/587047f9d648b8491dc8eef17dc6777f81938bfd/hassio/addons/utils.py#L17) to understand how this identifier is generated. Note that this identifier is required in certain service calls that use the [Hass.io add-on API](hassio-addon-api). You can view the repository identifiers for all currently installed add-ons via a GET request to the hassio API `addons` endpoint. + +Use `hassio` for communication with the internal API. ## {% linkable_title Home Assistant %} -An add-on can speak to the [Home Assistant API][hass-api] with our internal proxy. That makes it very easy to communicate with the API without knowing the password, port or any other information of the Home Assistant instance. Use this URL: `http://hassio/homeassistant/api` and internal communication is redirected to the right place. The next stept is to add `homeassistant_api: true` to `config.json` and read the environment variable `HASSIO_TOKEN` and use this as Home-Assistant password. +An add-on can talk to the [Home Assistant API][hass-api] using the internal proxy. That makes it very easy to communicate with the API without knowing the password, port or any other information of the Home Assistant instance. Use this URL: `http://hassio/homeassistant/api` and internal communication is redirected to the right place. The next stept is to add `homeassistant_api: true` to `config.json` and read the environment variable `HASSIO_TOKEN` and use this as Home-Assistant password. -We have also a proxy for [Websocket Home Assistant API][hass-websocket]. It work like the API proxy above and use `HASSIO_TOKEN` as password. Use this URL: `http://hassio/homeassistant/websocket`. +There is also a proxy for the [Home Assistant Websocket API][hass-websocket]. It works like the API proxy above and requires `HASSIO_TOKEN` as password. Use this URL: `http://hassio/homeassistant/websocket`. -It is also possible to speak direct to the Home Assistant instance which is named `homeassistant` over our internal network. But you need to know the configuration that is used by the running instance. +It is also possible to talk direct to the Home Assistant instance which is named `homeassistant` over the internal network. But you need to know the configuration that is used by the running instance. -We have severals services for Hass.io inside Home Assistant to execute tasks. To send data over STDIN to an add-on use the simply `hassio.addon_stdin` service. +We have severals services for Hass.io inside Home Assistant to run tasks. To send data over STDIN to an add-on use the `hassio.addon_stdin` service. ## {% linkable_title Hass.io API %} @@ -35,3 +38,4 @@ To enables calls to the [Hass.io API][hassio-api], add `hassio_api: true` to `co [hass-api]: https://home-assistant.io/developers/rest_api/ [hass-websocket]: https://home-assistant.io/developers/websocket_api/ [hassio-api]: https://github.com/home-assistant/hassio/blob/master/API.md +[hassio-addon-api]: https://github.com/home-assistant/hassio/blob/dev/API.md#restful-for-api-addons From a6213b6230e45daaab61a8842fc738df17b4967e Mon Sep 17 00:00:00 2001 From: Frederik Bolding Date: Wed, 21 Feb 2018 15:08:30 +0100 Subject: [PATCH 48/63] Small changes to RPi Camera documentation (#4650) * Updated RPiCamera documentation slightly * Updated RPi Camera file path default * Update camera.rpi_camera.markdown --- source/_components/camera.rpi_camera.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_components/camera.rpi_camera.markdown b/source/_components/camera.rpi_camera.markdown index 6bfeb7696e..c649861be5 100644 --- a/source/_components/camera.rpi_camera.markdown +++ b/source/_components/camera.rpi_camera.markdown @@ -68,9 +68,9 @@ timelapse: file_path: description: Save the picture in a custom file path. required: false - default: The camera components folder. + default: A temporary file is used. type: string {% endconfiguration %} -The given **file_path** must be an existing file because the camera platform setup make a writeable check on it. +The given **file_path** must be an existing file because the camera platform setup performs a writeable check on it. Also, keep in mind that the path should be whitelisted. From 0e59f4548f7367985ca67e4536bb6641af6bf9a4 Mon Sep 17 00:00:00 2001 From: Spartan-II-117 Date: Wed, 21 Feb 2018 10:09:12 -0800 Subject: [PATCH 49/63] Update emulated_hue with info about initial device (#4624) * Update emulated_hue with info about initial device * Update emulated_hue.markdown * Update emulated_hue.markdown --- source/_components/emulated_hue.markdown | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/_components/emulated_hue.markdown b/source/_components/emulated_hue.markdown index e679f31129..44c7c76c38 100644 --- a/source/_components/emulated_hue.markdown +++ b/source/_components/emulated_hue.markdown @@ -29,6 +29,10 @@ A physical Hue Bridge is required for Philips Hue lights to function - this virt It is recommended to assign a static IP address to the computer running Home Assistant. This is because the Amazon Echo discovers devices by IP addresses, and if the IP changes, the Echo won't be able to control it. This is easiest done from your router, see your router's manual for details.

+

+Both Google Home and Alexa use the device they were initially set up with for communication with emulated_hue. In other words: if you remove/replace this device you will also break emulated_hue. +

+ ### {% linkable_title Configuration %} To enable the emulated Hue bridge, add one of the following configs to your `configuration.yaml` file: From 7139ee18fd7714b574a54d4a92b147d4ca0d9921 Mon Sep 17 00:00:00 2001 From: Daniel Shokouhi Date: Wed, 21 Feb 2018 19:11:07 -0800 Subject: [PATCH 50/63] typo (#4731) --- source/_docs/installation/updating.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/_docs/installation/updating.markdown b/source/_docs/installation/updating.markdown index dafb485e00..012a5a5c08 100644 --- a/source/_docs/installation/updating.markdown +++ b/source/_docs/installation/updating.markdown @@ -14,7 +14,7 @@ redirect_from: /getting-started/updating/ The upgrade process differs depending on the installation you have, so please review the documentation that is specific to your install [Hass.io](/hassio/), [HASSbian](/docs/hassbian/common-tasks/#update-home-assistant), [Vagrant](/docs/installation/vagrant/), or [Virtualenv](/docs/installation/virtualenv/#upgrading-home-assistant).

-Check what's new in the latest version and potentially impacts your system in [Home Assistant release notes](https://github.com/home-assistant/home-assistant/releases). It is good practice to review these release notes and pay close attention to the **Breaking Changes** that are listed there. If you havn't done an update for a while, you should also check previous release notes as they can also contain relevant **Breaking Changes**. **Breaking Changes** may require configuration updates for your components. If you missed this and Home Assistant refuses to start, check `/home-assistant.log` for details about broken components. +Check what's new in the latest version and potentially impacts your system in [Home Assistant release notes](https://github.com/home-assistant/home-assistant/releases). It is good practice to review these release notes and pay close attention to the **Breaking Changes** that are listed there. If you haven't done an update for a while, you should also check previous release notes as they can also contain relevant **Breaking Changes**. **Breaking Changes** may require configuration updates for your components. If you missed this and Home Assistant refuses to start, check `/home-assistant.log` for details about broken components. The default way to update Home Assistant to the latest release, when available, is: From 4144fb0974da7680267e968fd33b9e9b32ecb694 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 22 Feb 2018 14:32:42 -0800 Subject: [PATCH 51/63] Update Alexa skills in cloud FAQ --- .../2017-12-17-introducing-home-assistant-cloud.markdown | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/_posts/2017-12-17-introducing-home-assistant-cloud.markdown b/source/_posts/2017-12-17-introducing-home-assistant-cloud.markdown index b55eabb3e3..9577ea9b16 100644 --- a/source/_posts/2017-12-17-introducing-home-assistant-cloud.markdown +++ b/source/_posts/2017-12-17-introducing-home-assistant-cloud.markdown @@ -48,7 +48,7 @@ See the [Cloud component configuration](/components/cloud/) to learn how to filt ## {% linkable_title FAQ %} -_Last updated: December 26, 2017_ +_Last updated: February 22, 2018_ #### {% linkable_title I thought the Home Assistant crew didn't like the cloud? %} @@ -85,7 +85,7 @@ We have a lot of ideas! We are not going to make any promises but here are some #### {% linkable_title What countries are supported at launch? %} -Only US is currently supported. The reason for this limitation is that we need to do extra steps and certifications for each country's Alexa skill. This is in progress but the timeline depends on Amazon. +As of February 2018, we are live in all countries that have Alexa except for Japan (which is under certification). #### {% linkable_title How is the connection made to the cloud? %} From 51e4cfae9cfdb5837fb55b1834010a25126e13e7 Mon Sep 17 00:00:00 2001 From: Marc Forth Date: Fri, 23 Feb 2018 00:08:17 +0000 Subject: [PATCH 52/63] Update input_datetime.markdown (#4735) Missed the word 'automation' out of the first automation when I submitted the most recent change! Fixed now. --- source/_components/input_datetime.markdown | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/source/_components/input_datetime.markdown b/source/_components/input_datetime.markdown index cd425a5473..19898029df 100644 --- a/source/_components/input_datetime.markdown +++ b/source/_components/input_datetime.markdown @@ -93,12 +93,13 @@ The following example shows the usage of the `input_datetime` as a trigger in an ```yaml # Example configuration.yaml entry # Turns on bedroom light at the time specified. +automation: trigger: platform: template    value_template: "{{ states('sensor.time') == (states.input_datetime.bedroom_alarm_clock_time.attributes.timestamp | int | timestamp_custom('%H:%M', False)) }}"  action: - - service: light.turn_on - entity_id: light.bedroom + service: light.turn_on + entity_id: light.bedroom ``` {% endraw %} From 5200c5661970af991c3216d264731b85bbb4a9a2 Mon Sep 17 00:00:00 2001 From: Paulus Schoutsen Date: Thu, 22 Feb 2018 23:20:00 -0800 Subject: [PATCH 53/63] Add entity registry docs --- .../configuration/entity-registry.markdown | 54 +++++++++++++++++++ source/_includes/asides/docs_navigation.html | 3 +- 2 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 source/_docs/configuration/entity-registry.markdown diff --git a/source/_docs/configuration/entity-registry.markdown b/source/_docs/configuration/entity-registry.markdown new file mode 100644 index 0000000000..7d9369c1f9 --- /dev/null +++ b/source/_docs/configuration/entity-registry.markdown @@ -0,0 +1,54 @@ +--- +layout: page +title: "Entity Registry" +description: "The entity registry contains." +date: 2016-04-20 06:00 +sidebar: true +comments: false +sharing: true +footer: true +--- + +

+This is a new and experimental feature of Home Assistant. +

+ +Starting with version 0.63, Home Assistant keeps a registry of known entities. +The entity registry makes sure that entities get unique identifiers and allow +customizing the identifiers and names of these entities. + +As this is still a very new part of Home Assistant, changes will require a +restart of Home Assistant to take affect. A config user interface will be added +in a future version. + +

+An entity needs to have a unique ID to be registered in the entity registry. +Not all integrations currently provide a unique id for their entities. +

+ +The entity registry is stored in `/entity_registry.yaml`. As a user, +you are unable to add entries, only update them. Here is an example file: + +``` +climate.downstairs_virtual: + platform: nest + unique_id: EPoMyWkpNyoYu3pGlmGxabcdefghijkl + name: Downstairs thermostat +light.study_ceiling: + platform: hue + unique_id: f0:fe:6b:00:14:00:00:00-00 + disabled_by: user +``` + +As a user, you can change the `entity_id` and add the `name` and `disabled_by` +value to each entry. + + - The value of `name` will override the name of the entity as given by the + integration. + + _Added in Home Assistant 0.64._ + - The key `disabled_by` can either be `hass` or `user`. This functionality + is even more experimental than the whole entity registry itself and might + cause integrations to fail and might be removed in the future. + + _Added in Home Assistant 0.64._ diff --git a/source/_includes/asides/docs_navigation.html b/source/_includes/asides/docs_navigation.html index add2fd1bbc..b956865e7a 100644 --- a/source/_includes/asides/docs_navigation.html +++ b/source/_includes/asides/docs_navigation.html @@ -3,7 +3,7 @@

Topics