diff --git a/_config.yml b/_config.yml index 0b78bb55b67..362cde0c422 100644 --- a/_config.yml +++ b/_config.yml @@ -141,9 +141,9 @@ social: # Home Assistant release details current_major_version: 0 -current_minor_version: 83 -current_patch_version: 3 -date_released: 2018-12-03 +current_minor_version: 84 +current_patch_version: 0 +date_released: 2018-12-12 # Either # or the anchor link to latest release notes in the blog post. # Must be prefixed with a # and have double quotes around it. diff --git a/source/_addons/snips.markdown b/source/_addons/snips.markdown index 6b09b585b59..d8d1255bfe1 100644 --- a/source/_addons/snips.markdown +++ b/source/_addons/snips.markdown @@ -27,7 +27,7 @@ Open garage door What is on my shopping list ``` -To get started creating your own configuration, follow [their tutorial](https://snips.gitbook.io/documentation/console) to create an assistant and download the training data. You can also add the Home Assistant Skill to your assistant to enable the built-in intents, and add or create your own intents to do more complex tasks. +To get started creating your own configuration, follow [their tutorial](https://docs.snips.ai/getting-started/quick-start-console) to create an assistant and download the training data. You can also add the Home Assistant Skill to your assistant to enable the built-in intents, and add or create your own intents to do more complex tasks. Now install and activate the [Samba](/addons/samba/) add-on so you can upload your training data. Connect to the "share" Samba share and copy your assistant over. Name the file `assistant.zip` or whatever you have configured in the configuration options. diff --git a/source/_components/cover.tellduslive.markdown b/source/_components/cover.tellduslive.markdown new file mode 100644 index 00000000000..a988bb1761b --- /dev/null +++ b/source/_components/cover.tellduslive.markdown @@ -0,0 +1,16 @@ +--- +layout: page +title: "Telldus Live Cover" +description: "Instructions on how to integrate Telldus Live Covers into Home Assistant." +date: 2016-01-17 15:49 +sidebar: true +comments: false +sharing: true +footer: true +logo: telldus.png +ha_category: Cover +featured: false +--- + +Integrates Telldus Live Covers into Home Assistant. See the [main component](/components/tellduslive/) for configuration instructions. + diff --git a/source/_components/device_tracker.googlehome.markdown b/source/_components/device_tracker.googlehome.markdown index 4c748fa4355..34a821bbd36 100644 --- a/source/_components/device_tracker.googlehome.markdown +++ b/source/_components/device_tracker.googlehome.markdown @@ -38,4 +38,11 @@ rssi_threshold: type: integer {% endconfiguration %} +## {% linkable_title Usage %} + +Devices will appear in the format `devicetracker._`. Note that dots are removed from the IP and BT MAC addresses. + +After running this component for a little while, you will likely see many devices appear. It's advisable to set the configuration to not discover new devices once the device you want to track have appeared (see [device tracker configuration][devicetrackerconfig] for details). + [googlehomeapi]: https://rithvikvibhu.github.io/GHLocalApi/ +[devicetrackerconfig]: https://www.home-assistant.io/components/device_tracker/#configuring-a-device_tracker-platform diff --git a/source/_components/device_tracker.gpslogger.markdown b/source/_components/device_tracker.gpslogger.markdown index bf98c0b62ed..10889993651 100644 --- a/source/_components/device_tracker.gpslogger.markdown +++ b/source/_components/device_tracker.gpslogger.markdown @@ -68,10 +68,7 @@ Right after enabling, the app will take you to the **Log to custom URL** setting The relevant endpoint is: `/api/gpslogger` ```text -https://YOUR.DNS.HOSTNAME:PORT/api/gpslogger? - latitude=%LAT&longitude=%LON&device=%SER&accuracy=%ACC - &battery=%BATT&speed=%SPD&direction=%DIR - &altitude=%ALT&provider=%PROV&activity=%ACT +https://YOUR.DNS.HOSTNAME:PORT/api/gpslogger?latitude=%LAT&longitude=%LON&device=%SER&accuracy=%ACC&battery=%BATT&speed=%SPD&direction=%DIR&altitude=%ALT&provider=%PROV&activity=%ACT ``` 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. diff --git a/source/_components/device_tracker.markdown b/source/_components/device_tracker.markdown index f452739e5f0..d3483e297c2 100644 --- a/source/_components/device_tracker.markdown +++ b/source/_components/device_tracker.markdown @@ -31,7 +31,11 @@ device_tracker: hide_if_away: false ``` -The following optional parameters can be used with any platform. However device tracker will only look for global settings under the configuration of the first configured platform: +The following optional parameters can be used with any platform: + +

+ Device tracker will only look for global settings under the configuration of the first configured platform. +

| Parameter | Default | Description | |----------------------|---------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| @@ -53,7 +57,8 @@ device_tracker: username: admin interval_seconds: 10 consider_home: 180 - track_new_devices: yes + new_device_defaults: + track_new_devices: true ``` Multiple device trackers can be used in parallel, such as [Owntracks](/components/device_tracker.owntracks/#using-owntracks-with-other-device-trackers) and [Nmap](/components/device_tracker.nmap_tracker/). The state of the device will be determined by the source that reported last. diff --git a/source/_components/device_tracker.volvooncall.markdown b/source/_components/device_tracker.volvooncall.markdown deleted file mode 100644 index 26ad808ce08..00000000000 --- a/source/_components/device_tracker.volvooncall.markdown +++ /dev/null @@ -1,16 +0,0 @@ ---- -layout: page -title: "Volvo On Call Device Tracker" -description: "Instructions for how to integrate Volvo On Call into Home Assistant." -date: 2016-10-02 17:00 -sidebar: true -comments: false -sharing: true -footer: true -logo: volvo.png -ha_category: Car -ha_release: "0.30" ---- - - -Integrates Volvo on Call device tracker into Home Assistant. See the [main component](/components/volvooncall/) for configuration instructions. diff --git a/source/_components/fibaro.markdown b/source/_components/fibaro.markdown index 13b999188b0..a1b12854d7a 100644 --- a/source/_components/fibaro.markdown +++ b/source/_components/fibaro.markdown @@ -11,6 +11,8 @@ logo: fibaro.png ha_category: Hub ha_release: 0.83 ha_iot_class: "Local Push" +redirect_from: + - /components/scene.fibaro/ --- The [Fibaro](http://fibaro.com) hub is a controller mainly connecting to Z-Wave devices. diff --git a/source/_components/hdmi_cec.markdown b/source/_components/hdmi_cec.markdown index 198d89b01bc..1ebe1831e67 100644 --- a/source/_components/hdmi_cec.markdown +++ b/source/_components/hdmi_cec.markdown @@ -11,6 +11,9 @@ ha_category: Automation logo: hdmi.png ha_release: 0.23 ha_iot_class: "Local Push" +redirect_from: + - /components/media_player.hdmi_cec/ + - /components/switch.hdmi_cec/ --- The `hdmi_cec` component provides services that allow selecting the active device, powering on all devices, setting all devices to standby and creates switch entities for HDMI devices. Devices are defined in the configuration file by associating HDMI port number and a device name. Connected devices that provide further HDMI ports, such as sound-bars and AVRs are also supported. Devices are listed from the perspective of the CEC-enabled Home Assistant device. Any connected device can be listed, regardless of whether it supports CEC. Ideally the HDMI port number on your device will map correctly the CEC physical address. If it does not, use `cec-client` (part of the `libcec` package) to listen to traffic on the CEC bus and discover the correct numbers. @@ -32,7 +35,7 @@ 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 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/python*/site-packages $ ln -s /path/to/your/installation/of/_cec.so /path/to/your/venv/lib/python*/site-packages @@ -49,19 +52,19 @@ $ ln -s /usr/local/lib/python*/dist-packages/_cec.so /srv/homeassistant/lib/pyth ``` -

If after symlinking and adding `hdmi_cec:` to your configuration you are getting the following error in your logs, +

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 `

## {% linkable_title Testing your installation %} -* Login to Raspberry Pi +* Login to Raspberry Pi ```bash ssh pi@your_raspberry_pi_ip ``` -* at the command line type: +* at the command line type: ```bash echo scan | cec-client -s -d 1 @@ -169,7 +172,7 @@ action: data: device: Chromecast ``` - + ### {% linkable_title Power On %} Call the `hdmi_cec.power_on` service (no arguments) to power on any devices that support this function. diff --git a/source/_components/lifx.markdown b/source/_components/lifx.markdown index 11c478c6421..a4110d86fde 100644 --- a/source/_components/lifx.markdown +++ b/source/_components/lifx.markdown @@ -82,7 +82,7 @@ Run a flash effect by changing to a color and then back. | `brightness` | Integer between 0 and 255 for how bright the color should be. | `period` | The duration of a single pulse (in seconds). | `cycles` | The total number of pulses. -| `mode` | The way to change between colors. Valid modes: `blink` (default), `breathe`, `ping`, `strobe`, `solid`. +| `mode` | The way to change between colors. Valid modes: `blink` (default - direct transition to new color for 'period' time with original color between cycles), `breathe` (color fade transition to new color and back to original), `ping` (short pulse of new color), `strobe` (ligth turns off between color changes), `solid`(light does not return to original color beween cycles). | `power_on` | Set this to False to skip the effect on lights that are turned off (defaults to True). ### {% linkable_title Service `light.lifx_effect_colorloop` %} diff --git a/source/_components/light.tellduslive.markdown b/source/_components/light.tellduslive.markdown new file mode 100644 index 00000000000..5a923d1566a --- /dev/null +++ b/source/_components/light.tellduslive.markdown @@ -0,0 +1,16 @@ +--- +layout: page +title: "Telldus Live Light" +description: "Instructions on how to integrate Telldus Live Lights into Home Assistant." +date: 2016-01-17 15:49 +sidebar: true +comments: false +sharing: true +footer: true +logo: telldus.png +ha_category: Light +featured: false +--- + +Integrates Telldus Live Lights into Home Assistant. See the [main component](/components/tellduslive/) for configuration instructions. + diff --git a/source/_components/media_player.samsungtv.markdown b/source/_components/media_player.samsungtv.markdown index e0c8b5095a7..24fb1f8e1bc 100644 --- a/source/_components/media_player.samsungtv.markdown +++ b/source/_components/media_player.samsungtv.markdown @@ -66,6 +66,7 @@ Currently known supported models: - EH5300 - EH5600 - ES5500 +- ES6300 - ES6800 - F4580 - F6300 @@ -83,6 +84,7 @@ Currently known supported models: - KU6020 (port must be set to 8001, and `pip3 install websocket-client` must be executed) - KU6100 (port must be set to 8001, and `pip3 install websocket-client` must be executed) - KU6290 (port must be set to 8001) +- KU6400U (port must be set to 8001, and `pip3 install websocket-client` must be executed) - KU7000 (port must be set to 8001) - M5620 (port must be set to 8001, and `pip3 install websocket-client` must be executed) - MU6170UXZG (port must be set to 8001, and `pip3 install websocket-client` must be executed) @@ -91,9 +93,7 @@ Currently known supported models: - Q7F (port must be set to 8001, MAC must be specified for Power On) - U6000 (port must be set to 8001) - U6300 (port must be set to 8001, and `pip3 install websocket-client` must be executed) -- UE40KU6400U (port must be set to 8001, and `pip3 install websocket-client` must be executed) -- UE40ES6800 -- UE46D7000 +- D7000 - UE6199UXZG (port must be set to 8001, On/Off, Forward/Backward, Volume control, but no Play button) - UE65KS8005 (port must be set to 8001, On/Off, Forward/Backward, Volume are OK, but no Play button) @@ -119,7 +119,7 @@ The first letter (U, P, L, H & K) represent the screen type, e.g., LED or Plasma. The second letter represents the region, E is Europe, N is North America and A is Asia & Australia. The two numbers following that represent the screen size. -If you add your model remember to remove these before adding them to the list. +If you add your model remember to remove these first 4 characters before adding to the list. Changing channels can be done by calling the `media_player.play_media` service with the following payload: diff --git a/source/_components/notify.html5.markdown b/source/_components/notify.html5.markdown index c92a16c46f3..524b92ac9db 100644 --- a/source/_components/notify.html5.markdown +++ b/source/_components/notify.html5.markdown @@ -12,17 +12,15 @@ ha_category: Notifications ha_release: 0.27 --- -The `html5` notification platform enables you to receive push notifications to -Chrome or Firefox, no matter where you are in the world. `html5` also supports -Chrome and Firefox on Android, which enables native-app-like integrations -without actually needing a native app. +The `html5` notification platform enables you to receive push notifications to Chrome or Firefox, no matter where you are in the world. `html5` also supports Chrome and Firefox on Android, which enables native-app-like integrations without actually needing a native app.

HTML5 push notifications **do not** work on iOS.

-To enable this platform, -add the following lines to your `configuration.yaml` file: +## {% linkable_title Configuration %} + +To enable this platform, add the following lines to your `configuration.yaml` file: ```yaml # Example configuration.yaml entry @@ -51,23 +49,23 @@ gcm_sender_id: ### {% linkable_title Getting ready for Chrome %} -1. Make sure you can access your Home Assistant installation from outside your network over https ([see docs](/docs/configuration/remote/)). +1. Make sure you can access your Home Assistant installation from outside your network over HTTPS ([see docs](/docs/configuration/remote/)). 2. Create a new project at [https://console.cloud.google.com/home/dashboard](https://console.cloud.google.com/home/dashboard). 3. Go to [https://console.cloud.google.com/apis/credentials/domainverification](https://console.cloud.google.com/apis/credentials/domainverification) and verify your domain via Google Webmaster Central / Search Console - [instructions](#verify-your-domain). -4. With the domain verified, go to [https://console.firebase.google.com](https://console.firebase.google.com), select import Google project, and select the project you created. +4. With the domain verified, go to [https://console.firebase.google.com](https://console.firebase.google.com), select import Google project and select the project you created. 5. Then, click the cogwheel on top left and select "Project settings". 6. Select 'Cloud Messaging' tab, listed beneath Project Credentials will be your 152 character 'Server Key' and 12 digit ID 'Sender ID' you need for configuring this component. #### {% linkable_title Verify your domain %} -Follow these steps to verify domain ownership with Google Webmaster Central / Search Console: -1. Enter your domain and add **'/local'** at the end, ie. https://example.com:8123/local +Follow these steps to verify domain ownership with Google Webmaster Central/Search Console: +1. Enter your domain and add `/local` at the end, e.g., `https://example.com:8123/local` 2. Select HTML file verification and download the google*.html file. -2. Create a directory named "www" in your Home Assistant configuration directory (/config share from Samba add-on). -3. Place the downloaded google*.html file in the "www" directory. -4. RESTART Home Assistant - this is important! -5. Verify the file can be accessed in the browser, ie. **https://example.com:8123/local/google123456789.html** (change filename) - you should see a plain text message saying "google-site-verification: ..." - if you see "404: Not Found" or something else, retry the above steps. -6. Go back to Google Webmaster Central / Search Console and proceed with the verification. +2. Create a directory named `www` in your Home Assistant configuration directory (`/config/` share from Samba add-on). +3. Place the downloaded `google*.html` file in the `www` directory. +4. RESTART Home Assistant. **This is important!** +5. Verify the file can be accessed in the browser, e.g., **https://example.com:8123/local/google123456789.html** (change filename). You should see a plain text message saying "google-site-verification: ...". If you see "404: Not Found" or something else, retry the above steps. +6. Go back to Google Webmaster Central/Search Console and proceed with the verification. ### {% linkable_title Requirements %} @@ -76,11 +74,10 @@ The `html5` platform can only function if all of the following requirements are * You are using Chrome and/or Firefox on any desktop platform, ChromeOS or Android. * Your Home Assistant instance is exposed to the world. * If using a proxy, HTTP basic authentication must be off for registering or unregistering for push notifications. It can be re-enabled afterwards. -* If you don't run Hass.io: `pywebpush` must be installed. `libffi-dev`, `libpython-dev`, and `libssl-dev` must be installed prior to `pywebpush` (i.e. `pywebpush` probably won't automatically install). -* You have configured SSL for your Home Assistant. It doesn't need to be configured in Home Assistant though, i.e. you can be running [NGINX](/ecosystem/nginx/) in front of Home Assistant and this will still work. The certificate must be trustworthy (i.e. not self signed). +* If you don't run Hass.io: `pywebpush` must be installed. `libffi-dev`, `libpython-dev` and `libssl-dev` must be installed prior to `pywebpush` (i.e. `pywebpush` probably won't automatically install). +* You have configured SSL/TLS for your Home Assistant. It doesn't need to be configured in Home Assistant though, e.g., you can be running [NGINX](/ecosystem/nginx/) in front of Home Assistant and this will still work. The certificate must be trustworthy (i.e. not self signed). * You are willing to accept the notification permission in your browser. - ### {% linkable_title Setting up %} Assuming you have already added the platform to your configuration: @@ -92,7 +89,6 @@ Assuming you have already added the platform to your configuration: 5. Assuming you accept, that's all there is to it! 6. (Optional, but highly recommended!) Open the `html5_push_registrations.conf` file in your configuration directory. You will see a new entry for the browser you just added. Rename it from `unnamed device` to a name of your choice, which will make it easier to identify later. _Do not change anything else in this file!_ You need to restart Home Assistant after making any changes to the file. - ### {% linkable_title Testing %} Assuming the previous test completed successfully and your browser was registered, you can test the notification as follows: @@ -100,21 +96,17 @@ Assuming the previous test completed successfully and your browser was registere 1. Open Home Assistant in Chrome or Firefox. 2. Open the sidebar and click the Services button at the bottom (shaped like a remote control), located below the Developer Tools. 3. From the Services dropdown, search for your HTML5 notify service (e.g., notify.NOTIFIER_NAME) and select it. -4. In the Service Data text box enter: {"message":"hello world"}, then press the CALL SERVICE button. +4. In the Service Data text box enter: `{"message":"hello world"}`, then press the CALL SERVICE button. 5. If everything worked you should see a popup notification. - ### {% linkable_title Usage %} -The `html5` platform accepts a standard notify payload. However, there are also -some special features built in which you can control in the payload. +The `html5` platform accepts a standard notify payload. However, there are also some special features built in which you can control in the payload. #### {% linkable_title Actions %} -Chrome supports notification actions, -which are configurable buttons that arrive with the notification and can cause -actions on Home Assistant to happen when pressed. You can send up to 2 actions. +Chrome supports notification actions, which are configurable buttons that arrive with the notification and can cause actions on Home Assistant to happen when pressed. You can send up to 2 actions. ```yaml message: Anne has arrived home @@ -129,10 +121,7 @@ data: #### {% linkable_title Data %} -Any parameters that you pass in the notify payload that aren't valid for use in -the HTML5 notification (`actions`, `badge`, `body`, `dir`, `icon`, `image`, -`lang`, `renotify`, `requireInteraction`, `tag`, `timestamp`, `vibrate`) will be -sent back to you in the [callback events](#automating-notification-events). +Any parameters that you pass in the notify payload that aren't valid for use in the HTML5 notification (`actions`, `badge`, `body`, `dir`, `icon`, `image`, `lang`, `renotify`, `requireInteraction`, `tag`, `timestamp`, `vibrate`) will be sent back to you in the [callback events](#automating-notification-events). ```yaml title: Front door @@ -143,23 +132,18 @@ data: #### {% linkable_title Tag %} -By default, every notification sent has a randomly generated UUID (v4) set as -its _tag_ or unique identifier. The tag is unique to the notification, _not_ to -a specific target. If you pass your own tag in the notify payload you can -replace the notification by sending another notification with the same tag. -You can provide a `tag` like so: +By default, every notification sent has a randomly generated UUID (v4) set as its _tag_ or unique identifier. The tag is unique to the notification, _not_ to a specific target. If you pass your own tag in the notify payload you can replace the notification by sending another notification with the same tag. You can provide a `tag` like so: ```yaml title: Front door message: The front door is open data: tag: front-door-notification - ``` -Example of adding a tag to your notification. This won't create new notification -if there already exists one with the same tag. +Example of adding a tag to your notification. This won't create new notification if there already exists one with the same tag. +{% raw %} ```yaml - alias: Push/update notification of sensor state with tag trigger: @@ -168,17 +152,16 @@ if there already exists one with the same tag. action: service: notify.notify data_template: - message: "Last known sensor state is {% raw %}{{ states('sensor.sensor') }}{% endraw %}." + message: "Last known sensor state is {{ states('sensor.sensor') }}." data: data: tag: 'notification-about-sensor' ``` +{% endraw %} #### {% linkable_title Targets %} -If you do not provide a `target` parameter in the notify payload a notification -will be sent to all registered targets as listed in -`html5_push_registrations.conf`. You can provide a `target` parameter like so: +If you do not provide a `target` parameter in the notify payload a notification will be sent to all registered targets as listed in `html5_push_registrations.conf`. You can provide a `target` parameter like so: ```yaml title: Front door @@ -198,16 +181,11 @@ target: #### {% linkable_title Overrides %} -You can pass any of the parameters listed -[here](https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/showNotification#Parameters) -in the `data` dictionary. Please note, Chrome specifies that the maximum size -for an icon is 320px by 320px, the maximum `badge` size is 96px by 96px and the -maximum icon size for an action button is 128px by 128px. +You can pass any of the parameters listed [here](https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/showNotification#Parameters) in the `data` dictionary. Please note, Chrome specifies that the maximum size for an icon is 320px by 320px, the maximum `badge` size is 96px by 96px and the maximum icon size for an action button is 128px by 128px. #### {% linkable_title URL %} -You can provide a URL to open when the notification is clicked by putting `url` -in the data dictionary like so: +You can provide a URL to open when the notification is clicked by putting `url` in the data dictionary like so: ```yaml title: Front door @@ -216,15 +194,11 @@ data: url: https://google.com ``` -If no URL or actions are provided, interacting with a notification will open -your Home Assistant in the browser. You can use relative URLs to refer to Home -Assistant, i.e. `/map` would turn into `https://192.168.1.2:8123/map`. +If no URL or actions are provided, interacting with a notification will open your Home Assistant in the browser. You can use relative URLs to refer to Home Assistant, i.e. `/map` would turn into `https://192.168.1.2:8123/map`. ### {% linkable_title Automating notification events %} -During the lifespan of a single push notification, -Home Assistant will emit a few different events to the event bus which you can -use to write automations against. +During the lifespan of a single push notification, Home Assistant will emit a few different events to the event bus which you can use to write automations against. Common event payload parameters are: @@ -236,10 +210,7 @@ Common event payload parameters are: | `target` | The target that this notification callback describes. | | `type` | The type of event callback received. Can be `received`, `clicked` or `closed`. | -You can use the `target` parameter to write automations against a single -`target`. For more granularity, -use `action` and `target` together to write automations which will do specific -things based on what target clicked an action. +You can use the `target` parameter to write automations against a single `target`. For more granularity, use `action` and `target` together to write automations which will do specific things based on what target clicked an action. #### {% linkable_title received event %} @@ -255,9 +226,7 @@ notification is received on the device. #### {% linkable_title clicked event %} -You will receive an event named `html5_notification.clicked` when the -notification or a notification action button is clicked. -The action button clicked is available as `action` in the `event_data`. +You will receive an event named `html5_notification.clicked` when the notification or a notification action button is clicked. The action button clicked is available as `action` in the `event_data`. ```yaml - alias: HTML5 push notification clicked @@ -279,8 +248,7 @@ or #### {% linkable_title closed event %} -You will receive an event named `html5_notification.closed` when the -notification is closed. +You will receive an event named `html5_notification.closed` when the notification is closed. ```yaml - alias: HTML5 push notification clicked @@ -291,10 +259,7 @@ notification is closed. ### {% linkable_title Making notifications work with NGINX proxy %} -If you use [NGINX](/ecosystem/nginx/) as a proxy with authentication in front of -your Home Assistant instance, -you may have trouble with receiving events back to Home Assistant. -It's because of authentication token that cannot be passed through the proxy. +If you use [NGINX](/ecosystem/nginx/) as a proxy with authentication in front of your Home Assistant instance, you may have trouble with receiving events back to Home Assistant. It's because of authentication token that cannot be passed through the proxy. To solve the issue put additional location into your nginx site's configuration: @@ -308,8 +273,7 @@ location /api/notify.html5/callback { } ``` -This rule check if request have `Authorization` HTTP header and bypass the -htpasswd (if you use one). +This rule check if request have `Authorization` HTTP header and bypass the htpasswd (if you use one). If you still have the problem, even with mentioned rule, try to add this code: diff --git a/source/_components/proximity.markdown b/source/_components/proximity.markdown index 63952d3229f..b499efbd6e5 100644 --- a/source/_components/proximity.markdown +++ b/source/_components/proximity.markdown @@ -49,29 +49,28 @@ proximity: ``` {% configuration %} -proximity: - zone: - description: The zone to which this component is measuring the distance to. Default is the home zone. - required: false - type: map - keys: - ignored_zones: - description: Where proximity is not calculated for a device (either the device being monitored or ones being compared (e.g., work or school). - required: false - type: list - devices: - description: A list of devices to compare location against to check closeness to the configured zone. - required: false - type: list - tolerance: - description: The tolerance used to calculate the direction of travel in meters (m) to filter out small GPS coordinate changes. - required: false - type: integer - unit_of_measurement: - description: The unit of measurement for distance. Valid values are (km, m, mi, ft) [kilometers, meters, miles and feet respectively]. - required: false - type: string - default: km +zone: + description: The zone to which this component is measuring the distance to. Default is the home zone. + required: false + type: map + keys: + ignored_zones: + description: Where proximity is not calculated for a device (either the device being monitored or ones being compared (e.g., work or school). + required: false + type: list + devices: + description: A list of devices to compare location against to check closeness to the configured zone. + required: false + type: list + tolerance: + description: The tolerance used to calculate the direction of travel in meters (m) to filter out small GPS coordinate changes. + required: false + type: integer + unit_of_measurement: + description: The unit of measurement for distance. Valid values are (km, m, mi, ft) [kilometers, meters, miles and feet respectively]. + required: false + type: string + default: km {% endconfiguration %} To add multiple proximity components, simply use a list in your `configuration.yaml` file: diff --git a/source/_components/sensor.dwd_weather_warnings.markdown b/source/_components/sensor.dwd_weather_warnings.markdown index 84ed3ca5b52..9d4b14c472c 100644 --- a/source/_components/sensor.dwd_weather_warnings.markdown +++ b/source/_components/sensor.dwd_weather_warnings.markdown @@ -27,9 +27,14 @@ sensor: region_name: Hansestadt Hamburg ``` -To get the region name: +

+As it suggests the region name is not the city or nearest city you want to get the warnings for but the next higher level of the governmental district called "Kreis" in German. + +Be aware, to get the region name you need to use the following link by replacing `Hamburg` with your city: - Find your region here: `https://www.dwd.de/DE/wetter/warnungen_landkreise/warnWetter_node.html?ort=Hamburg` -- Verify if you find any warning for your region here: `https://www.dwd.de/DWD/warnungen/warnapp_landkreise/json/warnings.json?jsonp=loadWarnings` +- On the page that is loaded in your browser you will find the correct region ("Kreis") below the map as a headding. +- Verify if you find any warning for your region here. Your region ("Kreis") will appear only if warnings exist: `https://www.dwd.de/DWD/warnungen/warnapp_landkreise/json/warnings.json?jsonp=loadWarnings` +

The warning level is between 0 (no danger) and 4 (extreme weather conditions): - Warnungen vor extremem Unwetter (Stufe 4) diff --git a/source/_components/sensor.seventeentrack.markdown b/source/_components/sensor.seventeentrack.markdown index dc08f3fbb06..922f952187b 100644 --- a/source/_components/sensor.seventeentrack.markdown +++ b/source/_components/sensor.seventeentrack.markdown @@ -13,10 +13,11 @@ ha_release: 0.83 ha_iot_class: "Cloud Polling" --- -The 17track.net sensor platform allows users to get package data tied to their -17track.net account. The platform creates both summary sensors, which show the -number of packages in a current state (e.g., "In Transit"), as well as -individual sensors for each package within the account. +The `seventeentrack` sensor platform allows users to get package data tied to their [17track.net](https://www.17track.net/en) account. The platform creates both summary sensors, which show the number of packages in a current state (e.g., "In Transit"), as well as individual sensors for each package within the account. + +

+Although the 17track.net website states that account passwords cannot be longer than 16 characters, users can technically set long-than-16-character passwords. These passwords **will not** work with the used API. Therefore, please ensure that your 17track.net password does not exceed 16 characters. +

## {% linkable_title Configuration %} diff --git a/source/_components/sensor.waterfurnace.markdown b/source/_components/sensor.waterfurnace.markdown new file mode 100644 index 00000000000..12545ff5a61 --- /dev/null +++ b/source/_components/sensor.waterfurnace.markdown @@ -0,0 +1,17 @@ +--- +layout: page +title: "WaterFurnace Sensors" +description: "Instructions on how to integrate WaterFurnace Geothermal System sensors into Home Assistant." +date: 2018-01-19 17:00 +sidebar: true +comments: false +sharing: true +footer: true +logo: waterfurnace.png +ha_category: Sensor +ha_release: 0.62 +ha_iot_class: "Cloud Polling" +--- + +Integrates WaterFurnace sensors into Home Assistant. See the [main component](/components/waterfurnace/) for configuration instructions. + diff --git a/source/_components/switch.volvooncall.markdown b/source/_components/switch.volvooncall.markdown deleted file mode 100644 index 993f777a9f6..00000000000 --- a/source/_components/switch.volvooncall.markdown +++ /dev/null @@ -1,16 +0,0 @@ ---- -layout: page -title: "Volvo On Call Switch" -description: "Instructions for how to integrate Volvo On Call into Home Assistant." -date: 2016-10-02 17:00 -sidebar: true -comments: false -sharing: true -footer: true -logo: volvo.png -ha_category: Car -ha_release: "0.30" ---- - - -Integrates Volvo on Call heater switch into Home Assistant. See the [main component](/components/volvooncall/) for configuration instructions. diff --git a/source/_components/volvooncall.markdown b/source/_components/volvooncall.markdown index 489879f7a78..fe00e91f204 100644 --- a/source/_components/volvooncall.markdown +++ b/source/_components/volvooncall.markdown @@ -11,6 +11,12 @@ logo: volvo.png ha_category: Car ha_release: 0.39 ha_iot_class: "Cloud Polling" +redirect_from: + - /components/binary_sensor.volvooncall/ + - /components/lock.volvooncall/ + - /components/sensor.volvooncall/ + - /components/switch.volvooncall/ + - /components/device_tracker.volvooncall/ --- The `volvooncall` component offers integration with the [Volvo On Call](http://www.volvocars.com/intl/own/connectivity/volvo-on-call) cloud service and offers presence detection as well as sensors such as odometer and fuel level. diff --git a/source/_components/weather.zamg.markdown b/source/_components/weather.zamg.markdown index 486f6d7fded..1bf04508ba9 100644 --- a/source/_components/weather.zamg.markdown +++ b/source/_components/weather.zamg.markdown @@ -49,5 +49,5 @@ longitude: {% endconfiguration %}

-This platform is an alternative to the [`zamg`](/components/sensor.zamg/) sensor. The weather platform is easier to configure but less customizable. +This platform is an alternative to the [`zamg`](/components/sensor.zamg/) sensor. The `weather` platform is easier to configure but less customizable and doesn't have support for conditions which is a key feature of the `weather` platforms.

diff --git a/source/_docs/automation/trigger.markdown b/source/_docs/automation/trigger.markdown index 1cf9b52f7a0..7a4e57b496a 100644 --- a/source/_docs/automation/trigger.markdown +++ b/source/_docs/automation/trigger.markdown @@ -201,9 +201,11 @@ Webhook triggers are triggered by web requests made to the webhook endpoint: `/a automation: trigger: platform: webhook - webhook_id: + webhook_id: some_hook_id ``` +You could test triggering above automation by sending a POST HTTP request to `http://your-home-assistant:8123/api/webhook/some_hook_id`. + ### {% linkable_title Zone trigger %} Zone triggers can trigger when an entity is entering or leaving the zone. For zone automation to work, you need to have setup a device tracker platform that supports reporting GPS coordinates. This includes [GPS Logger](/components/device_tracker.gpslogger/), the [OwnTracks platform](/components/device_tracker.owntracks/) and the [iCloud platform](/components/device_tracker.icloud/). diff --git a/source/_docs/ecosystem/appdaemon.markdown b/source/_docs/ecosystem/appdaemon.markdown index 3d6d6e13e85..5a65808db1a 100755 --- a/source/_docs/ecosystem/appdaemon.markdown +++ b/source/_docs/ecosystem/appdaemon.markdown @@ -35,9 +35,9 @@ The best way to show what AppDaemon does is through a few simple examples. Let's start with a simple App to turn a light on every night at sunset and off every morning at sunrise. Every App when first started will have its `initialize()` function called, which gives it a chance to register a callback for AppDaemons's scheduler for a specific time. In this case, we are using `run_at_sunrise()` and `run_at_sunset()` to register two separate callbacks. The argument `0` is the number of seconds offset from sunrise or sunset and can be negative or positive. For complex intervals, it can be convenient to use Python's `datetime.timedelta` class for calculations. When sunrise or sunset occurs, the appropriate callback function, `sunrise_cb()` or `sunset_cb()`, is called, which then makes a call to Home Assistant to turn the porch light on or off by activating a scene. The variables `args["on_scene"]` and `args["off_scene"]` are passed through from the configuration of this particular App, and the same code could be reused to activate completely different scenes in a different version of the App. ```python -import appdaemon.appapi as appapi +import appdaemon.plugins.hass.hassapi as hass -class OutsideLights(appapi.AppDaemon): +class OutsideLights(hass.Hass): def initialize(self): self.run_at_sunrise(self.sunrise_cb) @@ -58,9 +58,9 @@ This is also fairly easy to achieve with Home Assistant automations, but we are Our next example is to turn on a light when motion is detected and it is dark, and turn it off after a period of time. This time, the `initialize()` function registers a callback on a state change (of the motion sensor) rather than a specific time. We tell AppDaemon that we are only interested in state changes where the motion detector comes on by adding an additional parameter to the callback registration - `new = "on"`. When the motion is detected, the callback function `motion()` is called, and we check whether or not the sun has set using a built-in convenience function: `sun_down()`. Next, we turn the light on with `turn_on()`, then set a timer using `run_in()` to turn the light off after 60 seconds, which is another call to the scheduler to execute in a set time from now, which results in `AppDaemon` calling `light_off()` 60 seconds later using the `turn_off()` call to actually turn the light off. This is still pretty simple in code terms: ```python -import appdaemon.appapi as appapi +import appdaemon.plugins.hass.hassapi as hass -class FlashyMotionLights(appapi.AppDaemon): +class FlashyMotionLights(hass.Hass): def initialize(self): self.listen_state(self.motion, "binary_sensor.drive", new = "on") @@ -79,9 +79,9 @@ This is starting to get a little more complex in Home Assistant automations, req Now let's extend this with a somewhat artificial example to show something that is simple in AppDaemon but very difficult if not impossible using automations. Let's warn someone inside the house that there has been motion outside by flashing a lamp on and off ten times. We are reacting to the motion as before by turning on the light and setting a timer to turn it off again, but in addition, we set a 1-second timer to run `flash_warning()`, which, when called, toggles the inside light and sets another timer to call itself a second later. To avoid re-triggering forever, it keeps a count of how many times it has been activated and bails out after ten iterations. ```python -import appdaemon.appapi as appapi +import appdaemon.plugins.hass.hassapi as hass -class MotionLights(appapi.AppDaemon): +class MotionLights(hass.Hass): def initialize(self): self.listen_state(self.motion, "binary_sensor.drive", new = "on") diff --git a/source/_docs/installation/docker.markdown b/source/_docs/installation/docker.markdown index 5013025e267..77cc0547d41 100644 --- a/source/_docs/installation/docker.markdown +++ b/source/_docs/installation/docker.markdown @@ -10,18 +10,24 @@ footer: true redirect_from: /getting-started/installation-docker/ --- -Installation with Docker is straightforward. Adjust the following command so that `/path/to/your/config/` points at the folder where you want to store your configuration and run it: +Installation with Docker is straightforward. Adjust the following command so that `/PATH_TO_YOUR_CONFIG` points at the folder where you want to store your configuration and run it: ### {% linkable_title Linux %} ```bash -$ docker run -d --name="home-assistant" -v /path/to/your/config:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home-assistant +$ docker run -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home-assistant ``` ### {% linkable_title Raspberry Pi 3 (Raspbian) %} ```bash -$ docker run -d --name="home-assistant" -v /path/to/your/config:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/raspberrypi3-homeassistant +$ docker run -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/raspberrypi3-homeassistant +``` + +You need to replace `/PATH_TO_YOUR_CONFIG` with your path to the configuration, for example if you choose your configuration path to be `/home/pi/homeassistant`, then command would be: + +```bash +$ docker run -d --name="home-assistant" -v /home/pi/homeassistant:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/raspberrypi3-homeassistant ``` ### {% linkable_title macOS %} @@ -31,7 +37,7 @@ When using `docker-ce` (or `boot2docker`) on macOS, you are unable to map the lo If you wish to browse directly to `http://localhost:8123` from your macOS host, meaning forward ports directly to the container, replace the `--net=host` switch with `-p 8123:8123`. More detail can be found in [the docker forums](https://forums.docker.com/t/should-docker-run-net-host-work/14215/10). ```bash -$ docker run -d --name="home-assistant" -v /path/to/your/config:/config -e "TZ=America/Los_Angeles" -p 8123:8123 homeassistant/home-assistant +$ docker run -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -e "TZ=America/Los_Angeles" -p 8123:8123 homeassistant/home-assistant ``` Alternatively, `docker-compose` works with any recent release of `docker-ce` on macOS. Note that (further down this page) we provide an example `docker-compose.yml` however it differs from the `docker run` example above. To make the .yml directives match, you would need to make _two_ changes: first add the equivalent `ports:` directive, then _remove_ the `network_mode: host` section. This is because `Port mapping is incompatible with network_mode: host:`. More details can be found at [Docker networking docs](https://docs.docker.com/engine/userguide/networking/#default-networks). Note also the `/dev/tty*` device name used by your Arduino etc. devices will differ from the Linux example, so the compose `mount:` may require updates. @@ -39,7 +45,7 @@ Alternatively, `docker-compose` works with any recent release of `docker-ce` on ### {% linkable_title Windows %} ```powershell -$ docker run -d --name="home-assistant" -v /path/to/your/config:/config -e "TZ=America/Los_Angeles" --net=host homeassistant/home-assistant +$ docker run -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config -e "TZ=America/Los_Angeles" --net=host homeassistant/home-assistant ``` When running Home Assistant in Docker on Windows, you may have some difficulty getting ports to map for routing (since the `--net=host` switch actually applies to the hypervisor's network interface). To get around this, you will need to add port proxy ipv4 rules to your local Windows machine, like so (Replacing '192.168.1.10' with whatever your Windows IP is, and '10.0.50.2' with whatever your Docker container's IP is): @@ -169,7 +175,7 @@ As the docker command becomes more complex, switching to `docker-compose` can be container_name: home-assistant image: homeassistant/home-assistant volumes: - - /path/to/your/config:/config + - /PATH_TO_YOUR_CONFIG:/config - /etc/localtime:/etc/localtime:ro restart: always network_mode: host @@ -192,7 +198,7 @@ $ docker-compose restart In order to use Z-Wave, Zigbee or other components that require access to devices, you need to map the appropriate device into the container. Ensure the user that is running the container has the correct privileges to access the `/dev/tty*` file, then add the device mapping to your docker command: ```bash -$ docker run -d --name="home-assistant" -v /path/to/your/config:/config \ +$ docker run -d --name="home-assistant" -v /PATH_TO_YOUR_CONFIG:/config \ -v /etc/localtime:/etc/localtime:ro --device /dev/ttyUSB0:/dev/ttyUSB0 \ --net=host homeassistant/home-assistant ``` @@ -206,7 +212,7 @@ or in a `docker-compose.yml` file: container_name: home-assistant image: homeassistant/home-assistant volumes: - - /path/to/your/config:/config + - /PATH_TO_YOUR_CONFIG:/config - /etc/localtime:/etc/localtime:ro devices: - /dev/ttyUSB0:/dev/ttyUSB0 diff --git a/source/_docs/installation/fedora.markdown b/source/_docs/installation/fedora.markdown index 52f01886f6e..be37bdeecba 100644 --- a/source/_docs/installation/fedora.markdown +++ b/source/_docs/installation/fedora.markdown @@ -27,12 +27,13 @@ To isolate the Home Assistant installation a [venv](https://docs.python.org/3/li ```bash $ sudo mkdir -p /opt/homeassistant -$ sudo useradd -rm homeassistant -G dialout,gpio +$ sudo useradd -rm homeassistant -G dialout $ sudo chown -R homeassistant:homeassistant /opt/homeassistant ``` Now switch to the new directory, setup the venv, and activate it. ```bash +$ sudo -u homeassistant -H -s $ cd /opt/homeassistant $ python3.6 -m venv . $ source bin/activate diff --git a/source/_lovelace/gauge.markdown b/source/_lovelace/gauge.markdown index 86489df803d..60376bdc937 100644 --- a/source/_lovelace/gauge.markdown +++ b/source/_lovelace/gauge.markdown @@ -80,8 +80,8 @@ Title and Unit of Measurement Example: ```yaml - type: gauge - name: CPU Usuage - unit_of_measurement: '%' + title: CPU Usuage + unit: '%' entity: sensor.cpu_usage ``` @@ -94,8 +94,8 @@ Define the severity map: ```yaml - type: gauge - name: With Severity - unit_of_measurement: '%' + title: With Severity + unit: '%' entity: sensor.cpu_usage severity: green: 0 diff --git a/source/_lovelace/map.markdown b/source/_lovelace/map.markdown index a1fcaccf632..fadeb24d98e 100644 --- a/source/_lovelace/map.markdown +++ b/source/_lovelace/map.markdown @@ -55,7 +55,7 @@ default_zoom: ```yaml - type: map - aspect_ratio: 100% + aspect_ratio: 16:9 default_zoom: 8 entities: - device_tracker.demo_paulus diff --git a/source/_posts/2018-12-12-release-84.markdown b/source/_posts/2018-12-12-release-84.markdown new file mode 100644 index 00000000000..c5e85954777 --- /dev/null +++ b/source/_posts/2018-12-12-release-84.markdown @@ -0,0 +1,667 @@ +--- +layout: post +title: "0.84: Cloud webhooks, Wunderlist and USGS Earth Quakes" +description: "Final release of the year. Full of fixes and great little things." +date: 2018-12-12 00:01:00 +date_formatted: "December 12, 2018" +author: Paulus Schoutsen +author_twitter: balloob +comments: true +categories: Release-Notes +og_image: /images/blog/2018-12-release-84/components.png +--- + + + +Time for the last release of the year. We were hoping to end the year with an enourmous bang and make Lovelace the default UI. However, in our final stretch we realized that to get to the experience that we wanted, we had to make more last minute changes than we felt comfortable making. If you are a Lovelace tester, please read the section for existing testers below. + +We want to wish everybody happy holidays and want to thank all our contributors to the code, the documentation and all the ones in the chat for making up our amazing community. We had a great year with a lot of accomplishments and are looking forward to see all the great stuff you all come up with in 2019. Cheers! 🥂 + +Paulus + +_We will skip our next release in our bi-weekly release cycle and plan to be back on January 9. See you then!_ + +## {% linkable_title Cloud webhooks %} + +This release introduces a new Home Assistant Cloud feature available: cloud webhooks. With cloud webhooks you can enable any webhook-enabled integration or automation in Home Assistant to be accessible via a unique URL in the cloud without having to open up a port on your router. + +This means that you can send any data back to your instance for OwnTracks, IFTTT or an automation with a webhook-trigger. Check the cloud page in the configuration panel to get started or read more about the new functionality at [the Nabu Casa website](https://www.nabucasa.com/config/webhooks/). + +## {% linkable_title Improved service calling %} + +We have improved how we call services with better validation checks. This means that if you have an automation or a script that sends invalid data, we will now stop the execution and be better able to point out where your incorrect calls are coming from. + +## {% linkable_title For existing Lovelace testers %} + +If you are currently testing Lovelace, please read the notes thoroughly as a lot has changed. First, we now have now three different Lovelace modes: auto-generated, storage, and yaml (the old way of doing Lovelace). The UI editor will be limited to the storage mode, in which we control how the config is stored. + +So if you were using Lovelace before 0.84, you now have two options. Option one is to use the new storage mode and import your existing file. You can do this by opening the Lovelace UI and click on Configure UI, this will prompt you to change to storage mode. This will unlock a new option in the menu called "raw config editor". Open this and paste the content of your `ui-lovelace.yaml` file into it and click save. Note that YAML comments are not persisted. + +If you want to continue managing a YAML file, [check here how to enable the YAML mode](/lovelace/yaml-mode/). The file `ui-lovelace.yaml` will now follow the same options as `configuration.yaml`. This means that the Lovelace YAML config is now parsed with YAML 1.1 instead of YAML 1.2. Major change is that you need to make sure that you wrap `on` and `off` with quotes in your configs! + +We have also aligned the configuration of all the cards, causing breaking changes. Changes are especially focused around how we define actions for short and long presses. See [the docs][/lovelace/] for more info. + +Editor UI is now further processed. You can manage your Lovelace UI without leaving your browser! It is possible to add, edit and delete views. It is possible to add, edit, move and delete cards, including custom cards! + +## {% linkable_title New Platforms %} + +- Refactor ZHA ([@dmulcahey] - [#18629]) ([zha docs]) ([binary_sensor.zha docs]) ([fan.zha docs]) ([light.zha docs]) ([sensor.zha docs]) ([switch.zha docs]) (new-platform) +- Add Awair sensor platform ([@ahayworth] - [#18570]) ([sensor.awair docs]) (new-platform) +- Allow managing cloud webhook ([@balloob] - [#18672]) ([cloud docs]) (new-platform) +- U.S. Geological Survey Earthquake Hazards Program Feed platform ([@exxamalte] - [#18207]) ([geo_location docs]) (new-platform) +- Mqtt light refactor ([@emontnemery] - [#18227]) ([mqtt docs]) ([light.mqtt docs]) (breaking change) (new-platform) +- Added qbittorrent sensor platform ([@eliseomartelli] - [#18618]) ([sensor.qbittorrent docs]) (new-platform) +- Add Entur departure information sensor ([@hfurubotten] - [#17286]) ([sensor.entur_public_transport docs]) (new-platform) +- Add lightwave components for switches and lights ([@GeoffAtHome] - [#18026]) ([lightwave docs]) ([light.lightwave docs]) ([switch.lightwave docs]) (new-platform) +- Initial hlk-sw16 relay switch support ([@jameshilliard] - [#17855]) ([hlk_sw16 docs]) ([switch.hlk_sw16 docs]) (new-platform) +- Initial scene support for Fibaro hubs ([@pbalogh77] - [#18779]) ([fibaro docs]) ([scene.fibaro docs]) (new-platform) + +## {% 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. + +## {% linkable_title Reporting Issues %} + +Experiencing issues introduced by this release? Please report them in our [issue tracker](https://github.com/home-assistant/home-assistant/issues). Make sure to fill in all fields of the issue template. + + + +## {% linkable_title Breaking Changes %} + +- Support for multiple IHC controllers added. Manual IHC device configuration must be moved from platform sections to controller configuration section under the ihc component section. ([@mopolus] - [#18058]) ([ihc docs]) ([binary_sensor.ihc docs]) ([light.ihc docs]) ([switch.ihc docs]) (breaking change) +- Lutron: Change device_state_attributes() to use lowercase snakecase (Rename 'Lutron Integration ID' to 'lutron_integration_id') ([@cdheiser] - [#18650]) ([light.lutron docs]) (breaking change) +- Remove "since last boot" from systemmonitor sensor, use `last_boot` instead. ([@balloob] - [#18644]) ([sensor.systemmonitor docs]) (breaking change) +- All MQTT lights are merged into a single platform: `light.mqtt` ([@emontnemery] - [#18227]) ([mqtt docs]) ([light.mqtt docs]) (breaking change) (new-platform) +- Use a webhook to send data to push camera ([@dgomes] - [#18380]) ([camera.push docs]) (breaking change) +- Call services directly. Automations and scripts will now stop executing when a service call fails. The `service_executed` event is no longer being fired when a service is done. ([@balloob] - [#18720]) (breaking change) +- Fix issues with 17track.net sensor names. See PR for details. ([@bachya] - [#18860]) ([sensor.seventeentrack docs]) (breaking change) +- rtorrent: Changed the returned states of sensor.rtorrent from `Up`/`Down`, `Downloading` and `Seeding` to `up_down`, `downloading` and `seeding` to reflect the guidelines. Hence by automations relying on the state of this sensor should be updated. ([@eliseomartelli] - [#18778]) ([sensor.rtorrent docs]) (breaking change) +- Blink alarm control panel now inherits the name of the actual sync module rather than defaulting to blink_sync ([@fronzbot] - [#18663]) ([blink docs]) ([alarm_control_panel.blink docs]) ([binary_sensor.blink docs]) ([camera.blink docs]) ([sensor.blink docs]) (breaking change) +- Fix toon operation mode to follow our climate standard so it will work with Google Assistant / Alexa. ([@balloob] - [#18966]) ([climate.toon docs]) (breaking change) +- Waterfurnace: the unit parameter is removed from config. ([@sdague] - [#19040]) ([waterfurnace docs]) (breaking change) +- RainMachine: `configuration.yaml` format has changed to add support for multiple RainMachine controllers ([@bachya] - [#18989]) ([rainmachine docs]) (breaking change) +- Fibaro: the `id` attribute has been renamed to `fibaro_id` ([@pbalogh77] - [#19055]) ([fibaro docs]) (breaking change) +- Remove Instapush notify platform ([@fabaff] - [#19051]) ([notify docs]) (breaking change) + +## {% linkable_title Beta Fixes %} + +- Revert #17745 ([@balloob] - [#19064]) ([google_assistant docs]) (beta fix) +- Fix missing colorTemperatureInKelvin from Alexa responses ([@mikeage] - [#19069]) ([alexa docs]) (beta fix) +- Force refresh Lovelace ([@bramkragten] - [#19073]) ([lovelace docs]) (beta fix) +- Upgrade aiolifx to 0.6.7 ([@amelchio] - [#19077]) ([lifx docs]) (beta fix) +- Upgrade pyatv to 0.3.12 ([@postlund] - [#19085]) ([apple_tv docs]) (beta fix) +- Upgrade Tibber lib ([@Danielhiversen] - [#19098]) ([tibber docs]) (beta fix) +- Bump skybellpy version to fix api issue ([@nhorvath] - [#19100]) ([skybell docs]) (beta fix) +- Lovelace using storage ([@balloob] - [#19101]) ([frontend docs]) ([lovelace docs]) (beta fix) +- Remove marking device tracker stale if state is stale ([@arigilder] - [#19133]) ([device_tracker docs]) (beta fix) +- Google assistant fix target temp for *F values. ([@marchingphoenix] - [#19083]) ([google_assistant docs]) (beta fix) +- Drop OwnTracks bad packets ([@balloob] - [#19161]) ([owntracks docs]) (beta fix) +- Fix lovelace save ([@balloob] - [#19162]) ([lovelace docs]) (beta fix) +- Add raw service data to event ([@balloob] - [#19163]) (beta fix) +- Fix cloud defaults ([@balloob] - [#19172]) ([cloud docs]) (beta fix) +- Revert PR #18602 ([@balloob] - [#19188]) ([camera.mjpeg docs]) (beta fix) + +## {% linkable_title All changes %} + +- Add /sbin to launchd PATH ([@andersonshatch] - [#18601]) +- Minor change to still image on mjpeg ([@nragon] - [#18602]) ([camera.mjpeg docs]) +- Cleanup BOM dependencies + add basic test + IDEA autoformat ([@nickw444] - [#18462]) ([sensor.bom docs]) ([weather.bom docs]) +- Add support for multiple IHC controllers ([@mopolus] - [#18058]) ([ihc docs]) ([binary_sensor.ihc docs]) ([light.ihc docs]) ([switch.ihc docs]) (breaking change) +- Add support for cropping pictures in proxy camera ([@glpatcern] - [#18431]) ([camera.proxy docs]) +- Refactor ZHA ([@dmulcahey] - [#18629]) ([zha docs]) ([binary_sensor.zha docs]) ([fan.zha docs]) ([light.zha docs]) ([sensor.zha docs]) ([switch.zha docs]) (new-platform) +- IPMA Weather Service - version bump ([@dgomes] - [#18626]) ([weather.ipma docs]) +- [Breaking Change] Cleanup Lutron light component ([@cdheiser] - [#18650]) ([light.lutron docs]) (breaking change) +- Convert device tracker init tests to async ([@armills] - [#18640]) +- Remove since last boot from systemmonitor sensor ([@balloob] - [#18644]) ([sensor.systemmonitor docs]) (breaking change) +- Added deviceclass timestamp constant ([@eliseomartelli] - [#18652]) +- Add save command to lovelace ([@bramkragten] - [#18655]) ([lovelace docs]) +- converted majority of effects from ifs to dict map, which makes it easier to extend in the future. Also, added LSD effect! ([@pagenoare] - [#18656]) ([light.yeelight docs]) +- Dict -> dict ([@bramkragten] - [#18665]) ([lovelace docs]) +- Reconfigure MQTT climate component if discovery info is changed ([@emontnemery] - [#18174]) ([mqtt docs]) ([binary_sensor.mqtt docs]) ([climate.mqtt docs]) +- Reconfigure MQTT alarm component if discovery info is changed ([@emontnemery] - [#18173]) ([mqtt docs]) ([alarm_control_panel.mqtt docs]) ([binary_sensor.mqtt docs]) +- Async tests for device tracker mqtt ([@armills] - [#18680]) +- Async tests for remaining device trackers ([@armills] - [#18682]) +- Async timer tests ([@armills] - [#18683]) +- Async tests for counter ([@armills] - [#18684]) +- Async tests for mqtt switch ([@armills] - [#18685]) +- Add Awair sensor platform ([@ahayworth] - [#18570]) ([sensor.awair docs]) (new-platform) +- update mill lib, handle bad data from mill server ([@Danielhiversen] - [#18693]) ([climate.mill docs]) +- Upgrade youtube_dl to 2018.11.23 ([@fabaff] - [#18694]) ([media_extractor docs]) +- Fix false log message on CAPsMAN only devices ([@soosp] - [#18687]) ([device_tracker docs]) +- Adds SomfyContactIOSystemSensor to TaHoma ([@jensihnow] - [#18560]) +- Async device sun light trigger tests ([@armills] - [#18689]) +- Async cover template tests ([@armills] - [#18690]) +- Upgrade pysnmp to 4.4.6 ([@fabaff] - [#18695]) ([device_tracker docs]) ([sensor.snmp docs]) ([switch.snmp docs]) +- :arrow_up: Upgrades InfluxDB dependency to 5.2.0 ([@frenck] - [#18668]) ([influxdb docs]) ([sensor.influxdb docs]) +- Small refactoring of MQTT binary_sensor ([@emontnemery] - [#18674]) ([binary_sensor.mqtt docs]) +- Allow managing cloud webhook ([@balloob] - [#18672]) ([cloud docs]) (new-platform) +- Upgrade pytest and -timeout ([@scop] - [#18722]) +- Remove some unused imports ([@scop] - [#18732]) +- Enforce permissions for Websocket API ([@balloob] - [#18719]) ([websocket_api docs]) +- remove pbkdf2 upgrade path ([@Eriner] - [#18736]) +- Reconfigure MQTT cover component if discovery info is changed ([@emontnemery] - [#18175]) ([mqtt docs]) ([binary_sensor.mqtt docs]) ([cover.mqtt docs]) +- Reconfigure MQTT fan component if discovery info is changed ([@emontnemery] - [#18177]) ([mqtt docs]) ([binary_sensor.mqtt docs]) ([fan.mqtt docs]) +- Reconfigure MQTT sensor component if discovery info is changed ([@emontnemery] - [#18178]) ([mqtt docs]) ([binary_sensor.mqtt docs]) ([sensor.mqtt docs]) +- Add zones to evohome component ([@zxdavb] - [#18428]) ([evohome docs]) ([climate.evohome docs]) +- U.S. Geological Survey Earthquake Hazards Program Feed platform ([@exxamalte] - [#18207]) ([geo_location docs]) (new-platform) +- Geo Location platform code clean up ([@exxamalte] - [#18717]) ([geo_location docs]) +- Fix remaining issues ([@fabaff] - [#18416]) ([light.niko_home_control docs]) +- Update librouteros and re-connect to api if connection is lost ([@slackr31337] - [#18421]) ([device_tracker docs]) +- Mqtt light refactor ([@emontnemery] - [#18227]) ([mqtt docs]) ([light.mqtt docs]) (breaking change) (new-platform) +- Supports the new Netatmo Home Coach ([@lasote] - [#18308]) ([netatmo docs]) ([sensor.netatmo docs]) +- Fix google assistant request sync service call ([@awarecan] - [#17415]) ([google_assistant docs]) +- Updated codeowners ([@fredrike] - [#18746]) +- Add unique_id for tellduslive ([@fredrike] - [#18744]) ([tellduslive docs]) ([sensor.tellduslive docs]) +- Add unique_id for Daikin entities ([@fredrike] - [#18747]) ([daikin docs]) ([climate.daikin docs]) ([sensor.daikin docs]) +- Wunderlist component ([@lasote] - [#18339]) ([wunderlist docs]) +- Fix decora_wifi residences ([@trainman419] - [#17228]) ([light.decora_wifi docs]) +- Enable Google Assistant OnOffTrait for climate devices that support them ([@bryanyork] - [#18544]) ([google_assistant docs]) +- Fix typo in log ([@anton-johansson] - [#18751]) +- Bumped simplisafe-python to 3.1.14 ([@bachya] - [#18752]) ([simplisafe docs]) +- Moved stop method and registering STOP_EVENT outside of init ([@ehendrix23] - [#18582]) ([august docs]) +- Add config entry for ZHA ([@damarco] - [#18352]) ([zha docs]) ([binary_sensor.zha docs]) ([fan.zha docs]) ([light.zha docs]) ([sensor.zha docs]) ([switch.zha docs]) +- Update lupupy version to 0.0.13 ([@majuss] - [#18754]) ([lupusec docs]) +- Replace token in camera.push with webhook ([@dgomes] - [#18380]) ([camera.push docs]) (breaking change) +- Restore states through a JSON store instead of recorder ([@armills] - [#17270]) ([history docs]) +- Forbid float NaN in JSON ([@balloob] - [#18757]) ([http docs]) ([websocket_api docs]) +- Upgrade Adafruit-DHT to 1.4.0 (fixes #15847) ([@fabaff] - [#18614]) ([sensor.dht docs]) +- Add block after setting up component ([@ehendrix23] - [#18756]) +- Fix statistics for binary sensor ([@ehendrix23] - [#18764]) ([sensor.statistics docs]) +- Convert shopping-list clear to WebSockets ([@iantrich] - [#18769]) ([shopping_list docs]) +- Add more waterfurnace sensors ([@mdallaire] - [#18451]) ([sensor.waterfurnace docs]) +- Round average price for Tibber ([@Danielhiversen] - [#18784]) ([sensor.tibber docs]) +- Raise NotImplementedError ([@balloob] - [#18777]) ([owntracks docs]) +- Update switchmate lib ([@Danielhiversen] - [#18785]) ([switch.switchmate docs]) +- Update lang list (fixes #18768) ([@fabaff] - [#18773]) ([tts docs]) +- Added qbittorrent sensor platform ([@eliseomartelli] - [#18618]) ([sensor.qbittorrent docs]) (new-platform) +- Add support for Mode trait in Google Assistant. ([@marchingphoenix] - [#18772]) ([google_assistant docs]) +- Service already discovered log entry ([@ehendrix23] - [#18800]) +- Increase pyatv to 0.3.11 ([@ehendrix23] - [#18801]) ([apple_tv docs]) +- Store state last seen time separately ([@armills] - [#18806]) +- Bump python_awair to 0.0.3 ([@ahayworth] - [#18819]) ([sensor.awair docs]) +- Add Entur departure information sensor ([@hfurubotten] - [#17286]) ([sensor.entur_public_transport docs]) (new-platform) +- update netatmo library ([@Danielhiversen] - [#18823]) ([netatmo docs]) +- Add services description ([@schmittx] - [#18839]) +- Update of volvooncall component ([@molobrakos] - [#18702]) ([device_tracker docs]) ([volvooncall docs]) ([binary_sensor.volvooncall docs]) ([lock.volvooncall docs]) ([sensor.volvooncall docs]) ([switch.volvooncall docs]) +- Fix flaky geofency test ([@balloob] - [#18855]) +- RFC: Call services directly ([@balloob] - [#18720]) (breaking change) +- Bump py17track to 2.1.1 ([@bachya] - [#18861]) ([sensor.seventeentrack docs]) +- Fix issues with 17track.net sensor names ([@bachya] - [#18860]) ([sensor.seventeentrack docs]) (breaking change) +- Add tests for directv platform ([@ehendrix23] - [#18590]) +- Add support for zha device registry ([@damarco] - [#18755]) ([zha docs]) +- Added new filters for templates ([@skalavala] - [#18125]) +- Updated UVC camera component to support SSL connections ([@carlos-sarmiento] - [#18829]) ([camera.uvc docs]) +- fixed state case for rtorrent ([@eliseomartelli] - [#18778]) ([sensor.rtorrent docs]) (breaking change) +- Fix ordinal filter in template ([@ludeeus] - [#18878]) +- Reintroduce unique_id for Netatmo sensor ([@heinemml] - [#18774]) ([sensor.netatmo docs]) +- Upgrade keyring to 17.0.0 ([@fabaff] - [#18901]) +- Upgrade sphinx-autodoc-typehints to 1.5.1 ([@fabaff] - [#18893]) +- Small refactoring of MQTT cover ([@emontnemery] - [#18850]) ([cover.mqtt docs]) +- Small refactoring of MQTT alarm ([@emontnemery] - [#18813]) ([alarm_control_panel.mqtt docs]) +- Small refactoring of MQTT climate ([@emontnemery] - [#18814]) ([climate.mqtt docs]) +- Optionally do not log template rendering errors ([@emontnemery] - [#18724]) +- Restore states when removing/adding entities ([@armills] - [#18890]) +- Fibaro ubs ([@pbalogh77] - [#18889]) ([fibaro docs]) ([binary_sensor.fibaro docs]) +- Use string formatting ([@fabaff] - [#18886]) ([sense docs]) ([binary_sensor.sense docs]) ([sensor.sense docs]) +- Show ANSI color codes in logs in Hass.io ([@OttoWinter] - [#18834]) ([hassio docs]) +- Fix hdmi_cec entity race ([@yottatsa] - [#18753]) ([hdmi_cec docs]) ([media_player.hdmi_cec docs]) ([switch.hdmi_cec docs]) +- Set sensor to unavailable if battery is dead. ([@fucm] - [#18802]) ([binary_sensor.tahoma docs]) +- Reconfigure MQTT light component if discovery info is changed ([@emontnemery] - [#18176]) ([mqtt docs]) ([binary_sensor.mqtt docs]) ([light.mqtt docs]) +- Reconfigure MQTT switch component if discovery info is changed ([@emontnemery] - [#18179]) ([mqtt docs]) ([binary_sensor.mqtt docs]) ([switch.mqtt docs]) +- No more opt-out auth ([@balloob] - [#18854]) ([config docs]) ([frontend docs]) ([hassio docs]) ([http docs]) ([notify docs]) ([websocket_api docs]) +- Remove commented out code ([@emontnemery] - [#18925]) ([climate.mqtt docs]) +- Add lightwave components for switches and lights ([@GeoffAtHome] - [#18026]) ([lightwave docs]) ([light.lightwave docs]) ([switch.lightwave docs]) (new-platform) +- Allow verisure locks to be configured with a default code ([@ahayworth] - [#18873]) ([verisure docs]) ([lock.verisure docs]) +- Initial hlk-sw16 relay switch support ([@jameshilliard] - [#17855]) ([hlk_sw16 docs]) ([switch.hlk_sw16 docs]) (new-platform) +- Push to version 0.7.7 of denonavr ([@scarface-4711] - [#18917]) ([media_player.denonavr docs]) +- Extend partial reload to include packages ([@cdce8p] - [#18884]) +- Initial scene support for Fibaro hubs ([@pbalogh77] - [#18779]) ([fibaro docs]) ([scene.fibaro docs]) (new-platform) +- Add id when not exist and fix dup id check ([@bramkragten] - [#18960]) ([lovelace docs]) +- Refactor script helper actions into their own methods ([@balloob] - [#18962]) +- Point fix for multiple devices ([@fredrike] - [#18959]) ([point docs]) ([binary_sensor.point docs]) ([sensor.point docs]) +- VOC: Update library version. Moved method one step out. Instruments can be a set as well ([@molobrakos] - [#18967]) +- Support for mulitple Blink sync modules ([@fronzbot] - [#18663]) ([blink docs]) ([alarm_control_panel.blink docs]) ([binary_sensor.blink docs]) ([camera.blink docs]) ([sensor.blink docs]) (breaking change) +- no ordered dict ([@bramkragten] - [#18982]) ([lovelace docs]) +- Update CODEOWNERS ([@ludeeus] - [#18976]) +- Add @danielhiversen as codeowner ([@Danielhiversen] - [#18979]) +- Upgrade switchbot lib ([@Danielhiversen] - [#18980]) ([switch.switchbot docs]) +- New Events and Context Fixes ([@hunterjm] - [#18765]) ([automation docs]) ([image_processing docs]) ([logbook docs]) ([script docs]) +- Updated Yale Smart Alarm platform to new Yale API ([@domwillcode] - [#18990]) ([alarm_control_panel.yale_smart_alarm docs]) +- Lovelace fix: badges are removed from view after update ([@bramkragten] - [#18983]) ([lovelace docs]) +- remove the need to have query feature support ([@ticapix] - [#18942]) ([influxdb docs]) +- Tellduslive refactoring ([@fredrike] - [#18780]) ([tellduslive docs]) ([binary_sensor.tellduslive docs]) ([cover.tellduslive docs]) ([light.tellduslive docs]) ([sensor.tellduslive docs]) ([switch.tellduslive docs]) (new-platform) +- Add unnecessary-pass for pylint-update ([@cdce8p] - [#18985]) +- Mock out device tracker configuration loading funcs in Geofency + OwnTracks ([@balloob] - [#18968]) +- Fibaro Light fixes ([@pbalogh77] - [#18972]) ([fibaro docs]) ([light.fibaro docs]) +- Sort import order of zha component. ([@Adminiuga] - [#18993]) ([zha docs]) ([binary_sensor.zha docs]) ([fan.zha docs]) ([light.zha docs]) ([sensor.zha docs]) ([switch.zha docs]) +- Fix VOC configuration resource list ([@bratanon] - [#18992]) ([volvooncall docs]) +- Fix toon operation mode ([@balloob] - [#18966]) ([climate.toon docs]) (breaking change) +- Remove stale user salts code ([@Eriner] - [#19004]) +- Lupupy version push to 0.0.17 - will now transmitted state_alarm_triggered ([@majuss] - [#19008]) ([lupusec docs]) ([alarm_control_panel.lupusec docs]) +- Update requirement btsmarthub_devicelist==0.1.3 ([@jxwolstenholme] - [#18961]) ([device_tracker docs]) +- Allow checking entity permissions based on devices ([@balloob] - [#19007]) +- Add states to panels ([@bramkragten] - [#19026]) ([frontend docs]) +- Fix CI by pinning IDNA ([@balloob] - [#19038]) +- Bump waterfurnace to 1.0 ([@sdague] - [#19040]) ([waterfurnace docs]) (breaking change) +- Don't wait for answer for webhook register ([@balloob] - [#19025]) ([cloud docs]) +- Small refactoring of MQTT light ([@emontnemery] - [#19009]) ([light.mqtt docs]) +- Small refactoring of MQTT switch ([@emontnemery] - [#19010]) ([switch.mqtt docs]) +- Bump version of elkm1_lib ([@gwww] - [#19030]) ([elkm1 docs]) +- Change error to warning ([@doudz] - [#19035]) ([media_player.plex docs]) +- Catch 'BrokenPipeError' exceptions for ADB commands ([@JeffLIrion] - [#19011]) ([media_player.firetv docs]) +- Bump python-miio to 0.4.4 ([@rytilahti] - [#19042]) ([device_tracker docs]) ([fan.xiaomi_miio docs]) ([light.xiaomi_miio docs]) ([remote.xiaomi_miio docs]) ([sensor.xiaomi_miio docs]) ([switch.xiaomi_miio docs]) ([vacuum.xiaomi_miio docs]) +- Add last clean times to xiaomi vacuum ([@rytilahti] - [#19043]) ([vacuum.xiaomi_miio docs]) +- Add support for multiple RainMachine controllers ([@bachya] - [#18989]) ([rainmachine docs]) (breaking change) +- Remove unsupported strong mode of the Xiaomi Air Humidifier CA1 ([@syssi] - [#18926]) ([fan.xiaomi_miio docs]) +- Bump pyvizio version ([@photinus] - [#19048]) ([media_player.vizio docs]) +- Fix cloud const ([@balloob] - [#19052]) ([cloud docs]) +- VOC: Update external dependency to fix engine start issue ([@molobrakos] - [#19062]) ([volvooncall docs]) +- Fix saving YAML as JSON with empty array ([@bramkragten] - [#19057]) ([lovelace docs]) +- Update pyhomematic to 0.1.53 ([@danielperna84] - [#19056]) ([homematic docs]) +- Implemented unique ID support for Fibaro hub integration ([@pbalogh77] - [#19055]) ([fibaro docs]) (breaking change) +- Remove Instapush notify platform ([@fabaff] - [#19051]) ([notify docs]) (breaking change) +- Update locationsharinglib to 3.0.9 ([@pc-coholic] - [#19045]) ([device_tracker docs]) +- Add support for more Tibber Pulse data ([@Danielhiversen] - [#19033]) ([tibber docs]) ([sensor.tibber docs]) +- Revert #17745 ([@balloob] - [#19064]) ([google_assistant docs]) (beta fix) +- Fix missing colorTemperatureInKelvin from Alexa responses ([@mikeage] - [#19069]) ([alexa docs]) (beta fix) +- Force refresh Lovelace ([@bramkragten] - [#19073]) ([lovelace docs]) (beta fix) +- Upgrade aiolifx to 0.6.7 ([@amelchio] - [#19077]) ([lifx docs]) (beta fix) +- Upgrade pyatv to 0.3.12 ([@postlund] - [#19085]) ([apple_tv docs]) (beta fix) +- Upgrade Tibber lib ([@Danielhiversen] - [#19098]) ([tibber docs]) (beta fix) +- Bump skybellpy version to fix api issue ([@nhorvath] - [#19100]) ([skybell docs]) (beta fix) +- Lovelace using storage ([@balloob] - [#19101]) ([frontend docs]) ([lovelace docs]) (beta fix) +- Remove marking device tracker stale if state is stale ([@arigilder] - [#19133]) ([device_tracker docs]) (beta fix) +- Google assistant fix target temp for *F values. ([@marchingphoenix] - [#19083]) ([google_assistant docs]) (beta fix) +- Drop OwnTracks bad packets ([@balloob] - [#19161]) ([owntracks docs]) (beta fix) +- Fix lovelace save ([@balloob] - [#19162]) ([lovelace docs]) (beta fix) +- Add raw service data to event ([@balloob] - [#19163]) (beta fix) +- Fix cloud defaults ([@balloob] - [#19172]) ([cloud docs]) (beta fix) +- Revert PR #18602 ([@balloob] - [#19188]) ([camera.mjpeg docs]) (beta fix) + +[#17228]: https://github.com/home-assistant/home-assistant/pull/17228 +[#17270]: https://github.com/home-assistant/home-assistant/pull/17270 +[#17286]: https://github.com/home-assistant/home-assistant/pull/17286 +[#17415]: https://github.com/home-assistant/home-assistant/pull/17415 +[#17855]: https://github.com/home-assistant/home-assistant/pull/17855 +[#18026]: https://github.com/home-assistant/home-assistant/pull/18026 +[#18058]: https://github.com/home-assistant/home-assistant/pull/18058 +[#18125]: https://github.com/home-assistant/home-assistant/pull/18125 +[#18173]: https://github.com/home-assistant/home-assistant/pull/18173 +[#18174]: https://github.com/home-assistant/home-assistant/pull/18174 +[#18175]: https://github.com/home-assistant/home-assistant/pull/18175 +[#18176]: https://github.com/home-assistant/home-assistant/pull/18176 +[#18177]: https://github.com/home-assistant/home-assistant/pull/18177 +[#18178]: https://github.com/home-assistant/home-assistant/pull/18178 +[#18179]: https://github.com/home-assistant/home-assistant/pull/18179 +[#18207]: https://github.com/home-assistant/home-assistant/pull/18207 +[#18227]: https://github.com/home-assistant/home-assistant/pull/18227 +[#18308]: https://github.com/home-assistant/home-assistant/pull/18308 +[#18339]: https://github.com/home-assistant/home-assistant/pull/18339 +[#18352]: https://github.com/home-assistant/home-assistant/pull/18352 +[#18380]: https://github.com/home-assistant/home-assistant/pull/18380 +[#18416]: https://github.com/home-assistant/home-assistant/pull/18416 +[#18421]: https://github.com/home-assistant/home-assistant/pull/18421 +[#18428]: https://github.com/home-assistant/home-assistant/pull/18428 +[#18431]: https://github.com/home-assistant/home-assistant/pull/18431 +[#18451]: https://github.com/home-assistant/home-assistant/pull/18451 +[#18462]: https://github.com/home-assistant/home-assistant/pull/18462 +[#18544]: https://github.com/home-assistant/home-assistant/pull/18544 +[#18560]: https://github.com/home-assistant/home-assistant/pull/18560 +[#18570]: https://github.com/home-assistant/home-assistant/pull/18570 +[#18582]: https://github.com/home-assistant/home-assistant/pull/18582 +[#18590]: https://github.com/home-assistant/home-assistant/pull/18590 +[#18601]: https://github.com/home-assistant/home-assistant/pull/18601 +[#18602]: https://github.com/home-assistant/home-assistant/pull/18602 +[#18614]: https://github.com/home-assistant/home-assistant/pull/18614 +[#18618]: https://github.com/home-assistant/home-assistant/pull/18618 +[#18626]: https://github.com/home-assistant/home-assistant/pull/18626 +[#18629]: https://github.com/home-assistant/home-assistant/pull/18629 +[#18640]: https://github.com/home-assistant/home-assistant/pull/18640 +[#18644]: https://github.com/home-assistant/home-assistant/pull/18644 +[#18650]: https://github.com/home-assistant/home-assistant/pull/18650 +[#18652]: https://github.com/home-assistant/home-assistant/pull/18652 +[#18655]: https://github.com/home-assistant/home-assistant/pull/18655 +[#18656]: https://github.com/home-assistant/home-assistant/pull/18656 +[#18663]: https://github.com/home-assistant/home-assistant/pull/18663 +[#18665]: https://github.com/home-assistant/home-assistant/pull/18665 +[#18668]: https://github.com/home-assistant/home-assistant/pull/18668 +[#18672]: https://github.com/home-assistant/home-assistant/pull/18672 +[#18674]: https://github.com/home-assistant/home-assistant/pull/18674 +[#18680]: https://github.com/home-assistant/home-assistant/pull/18680 +[#18682]: https://github.com/home-assistant/home-assistant/pull/18682 +[#18683]: https://github.com/home-assistant/home-assistant/pull/18683 +[#18684]: https://github.com/home-assistant/home-assistant/pull/18684 +[#18685]: https://github.com/home-assistant/home-assistant/pull/18685 +[#18687]: https://github.com/home-assistant/home-assistant/pull/18687 +[#18689]: https://github.com/home-assistant/home-assistant/pull/18689 +[#18690]: https://github.com/home-assistant/home-assistant/pull/18690 +[#18693]: https://github.com/home-assistant/home-assistant/pull/18693 +[#18694]: https://github.com/home-assistant/home-assistant/pull/18694 +[#18695]: https://github.com/home-assistant/home-assistant/pull/18695 +[#18702]: https://github.com/home-assistant/home-assistant/pull/18702 +[#18717]: https://github.com/home-assistant/home-assistant/pull/18717 +[#18719]: https://github.com/home-assistant/home-assistant/pull/18719 +[#18720]: https://github.com/home-assistant/home-assistant/pull/18720 +[#18722]: https://github.com/home-assistant/home-assistant/pull/18722 +[#18724]: https://github.com/home-assistant/home-assistant/pull/18724 +[#18732]: https://github.com/home-assistant/home-assistant/pull/18732 +[#18736]: https://github.com/home-assistant/home-assistant/pull/18736 +[#18744]: https://github.com/home-assistant/home-assistant/pull/18744 +[#18746]: https://github.com/home-assistant/home-assistant/pull/18746 +[#18747]: https://github.com/home-assistant/home-assistant/pull/18747 +[#18751]: https://github.com/home-assistant/home-assistant/pull/18751 +[#18752]: https://github.com/home-assistant/home-assistant/pull/18752 +[#18753]: https://github.com/home-assistant/home-assistant/pull/18753 +[#18754]: https://github.com/home-assistant/home-assistant/pull/18754 +[#18755]: https://github.com/home-assistant/home-assistant/pull/18755 +[#18756]: https://github.com/home-assistant/home-assistant/pull/18756 +[#18757]: https://github.com/home-assistant/home-assistant/pull/18757 +[#18764]: https://github.com/home-assistant/home-assistant/pull/18764 +[#18765]: https://github.com/home-assistant/home-assistant/pull/18765 +[#18769]: https://github.com/home-assistant/home-assistant/pull/18769 +[#18772]: https://github.com/home-assistant/home-assistant/pull/18772 +[#18773]: https://github.com/home-assistant/home-assistant/pull/18773 +[#18774]: https://github.com/home-assistant/home-assistant/pull/18774 +[#18777]: https://github.com/home-assistant/home-assistant/pull/18777 +[#18778]: https://github.com/home-assistant/home-assistant/pull/18778 +[#18779]: https://github.com/home-assistant/home-assistant/pull/18779 +[#18780]: https://github.com/home-assistant/home-assistant/pull/18780 +[#18784]: https://github.com/home-assistant/home-assistant/pull/18784 +[#18785]: https://github.com/home-assistant/home-assistant/pull/18785 +[#18800]: https://github.com/home-assistant/home-assistant/pull/18800 +[#18801]: https://github.com/home-assistant/home-assistant/pull/18801 +[#18802]: https://github.com/home-assistant/home-assistant/pull/18802 +[#18806]: https://github.com/home-assistant/home-assistant/pull/18806 +[#18813]: https://github.com/home-assistant/home-assistant/pull/18813 +[#18814]: https://github.com/home-assistant/home-assistant/pull/18814 +[#18819]: https://github.com/home-assistant/home-assistant/pull/18819 +[#18823]: https://github.com/home-assistant/home-assistant/pull/18823 +[#18829]: https://github.com/home-assistant/home-assistant/pull/18829 +[#18834]: https://github.com/home-assistant/home-assistant/pull/18834 +[#18839]: https://github.com/home-assistant/home-assistant/pull/18839 +[#18850]: https://github.com/home-assistant/home-assistant/pull/18850 +[#18854]: https://github.com/home-assistant/home-assistant/pull/18854 +[#18855]: https://github.com/home-assistant/home-assistant/pull/18855 +[#18860]: https://github.com/home-assistant/home-assistant/pull/18860 +[#18861]: https://github.com/home-assistant/home-assistant/pull/18861 +[#18873]: https://github.com/home-assistant/home-assistant/pull/18873 +[#18878]: https://github.com/home-assistant/home-assistant/pull/18878 +[#18884]: https://github.com/home-assistant/home-assistant/pull/18884 +[#18886]: https://github.com/home-assistant/home-assistant/pull/18886 +[#18889]: https://github.com/home-assistant/home-assistant/pull/18889 +[#18890]: https://github.com/home-assistant/home-assistant/pull/18890 +[#18893]: https://github.com/home-assistant/home-assistant/pull/18893 +[#18901]: https://github.com/home-assistant/home-assistant/pull/18901 +[#18917]: https://github.com/home-assistant/home-assistant/pull/18917 +[#18925]: https://github.com/home-assistant/home-assistant/pull/18925 +[#18926]: https://github.com/home-assistant/home-assistant/pull/18926 +[#18942]: https://github.com/home-assistant/home-assistant/pull/18942 +[#18959]: https://github.com/home-assistant/home-assistant/pull/18959 +[#18960]: https://github.com/home-assistant/home-assistant/pull/18960 +[#18961]: https://github.com/home-assistant/home-assistant/pull/18961 +[#18962]: https://github.com/home-assistant/home-assistant/pull/18962 +[#18966]: https://github.com/home-assistant/home-assistant/pull/18966 +[#18967]: https://github.com/home-assistant/home-assistant/pull/18967 +[#18968]: https://github.com/home-assistant/home-assistant/pull/18968 +[#18972]: https://github.com/home-assistant/home-assistant/pull/18972 +[#18976]: https://github.com/home-assistant/home-assistant/pull/18976 +[#18979]: https://github.com/home-assistant/home-assistant/pull/18979 +[#18980]: https://github.com/home-assistant/home-assistant/pull/18980 +[#18982]: https://github.com/home-assistant/home-assistant/pull/18982 +[#18983]: https://github.com/home-assistant/home-assistant/pull/18983 +[#18985]: https://github.com/home-assistant/home-assistant/pull/18985 +[#18989]: https://github.com/home-assistant/home-assistant/pull/18989 +[#18990]: https://github.com/home-assistant/home-assistant/pull/18990 +[#18992]: https://github.com/home-assistant/home-assistant/pull/18992 +[#18993]: https://github.com/home-assistant/home-assistant/pull/18993 +[#19004]: https://github.com/home-assistant/home-assistant/pull/19004 +[#19007]: https://github.com/home-assistant/home-assistant/pull/19007 +[#19008]: https://github.com/home-assistant/home-assistant/pull/19008 +[#19009]: https://github.com/home-assistant/home-assistant/pull/19009 +[#19010]: https://github.com/home-assistant/home-assistant/pull/19010 +[#19011]: https://github.com/home-assistant/home-assistant/pull/19011 +[#19025]: https://github.com/home-assistant/home-assistant/pull/19025 +[#19026]: https://github.com/home-assistant/home-assistant/pull/19026 +[#19030]: https://github.com/home-assistant/home-assistant/pull/19030 +[#19033]: https://github.com/home-assistant/home-assistant/pull/19033 +[#19035]: https://github.com/home-assistant/home-assistant/pull/19035 +[#19038]: https://github.com/home-assistant/home-assistant/pull/19038 +[#19040]: https://github.com/home-assistant/home-assistant/pull/19040 +[#19042]: https://github.com/home-assistant/home-assistant/pull/19042 +[#19043]: https://github.com/home-assistant/home-assistant/pull/19043 +[#19045]: https://github.com/home-assistant/home-assistant/pull/19045 +[#19048]: https://github.com/home-assistant/home-assistant/pull/19048 +[#19051]: https://github.com/home-assistant/home-assistant/pull/19051 +[#19052]: https://github.com/home-assistant/home-assistant/pull/19052 +[#19055]: https://github.com/home-assistant/home-assistant/pull/19055 +[#19056]: https://github.com/home-assistant/home-assistant/pull/19056 +[#19057]: https://github.com/home-assistant/home-assistant/pull/19057 +[#19062]: https://github.com/home-assistant/home-assistant/pull/19062 +[#19064]: https://github.com/home-assistant/home-assistant/pull/19064 +[#19069]: https://github.com/home-assistant/home-assistant/pull/19069 +[#19073]: https://github.com/home-assistant/home-assistant/pull/19073 +[#19077]: https://github.com/home-assistant/home-assistant/pull/19077 +[#19083]: https://github.com/home-assistant/home-assistant/pull/19083 +[#19085]: https://github.com/home-assistant/home-assistant/pull/19085 +[#19098]: https://github.com/home-assistant/home-assistant/pull/19098 +[#19100]: https://github.com/home-assistant/home-assistant/pull/19100 +[#19101]: https://github.com/home-assistant/home-assistant/pull/19101 +[#19133]: https://github.com/home-assistant/home-assistant/pull/19133 +[#19161]: https://github.com/home-assistant/home-assistant/pull/19161 +[#19162]: https://github.com/home-assistant/home-assistant/pull/19162 +[#19163]: https://github.com/home-assistant/home-assistant/pull/19163 +[#19172]: https://github.com/home-assistant/home-assistant/pull/19172 +[#19188]: https://github.com/home-assistant/home-assistant/pull/19188 +[@Adminiuga]: https://github.com/Adminiuga +[@Danielhiversen]: https://github.com/Danielhiversen +[@Eriner]: https://github.com/Eriner +[@GeoffAtHome]: https://github.com/GeoffAtHome +[@JeffLIrion]: https://github.com/JeffLIrion +[@OttoWinter]: https://github.com/OttoWinter +[@ahayworth]: https://github.com/ahayworth +[@amelchio]: https://github.com/amelchio +[@andersonshatch]: https://github.com/andersonshatch +[@anton-johansson]: https://github.com/anton-johansson +[@arigilder]: https://github.com/arigilder +[@armills]: https://github.com/armills +[@awarecan]: https://github.com/awarecan +[@bachya]: https://github.com/bachya +[@balloob]: https://github.com/balloob +[@bramkragten]: https://github.com/bramkragten +[@bratanon]: https://github.com/bratanon +[@bryanyork]: https://github.com/bryanyork +[@carlos-sarmiento]: https://github.com/carlos-sarmiento +[@cdce8p]: https://github.com/cdce8p +[@cdheiser]: https://github.com/cdheiser +[@damarco]: https://github.com/damarco +[@danielperna84]: https://github.com/danielperna84 +[@dgomes]: https://github.com/dgomes +[@dmulcahey]: https://github.com/dmulcahey +[@domwillcode]: https://github.com/domwillcode +[@doudz]: https://github.com/doudz +[@ehendrix23]: https://github.com/ehendrix23 +[@eliseomartelli]: https://github.com/eliseomartelli +[@emontnemery]: https://github.com/emontnemery +[@exxamalte]: https://github.com/exxamalte +[@fabaff]: https://github.com/fabaff +[@fredrike]: https://github.com/fredrike +[@frenck]: https://github.com/frenck +[@fronzbot]: https://github.com/fronzbot +[@fucm]: https://github.com/fucm +[@glpatcern]: https://github.com/glpatcern +[@gwww]: https://github.com/gwww +[@heinemml]: https://github.com/heinemml +[@hfurubotten]: https://github.com/hfurubotten +[@hunterjm]: https://github.com/hunterjm +[@iantrich]: https://github.com/iantrich +[@jameshilliard]: https://github.com/jameshilliard +[@jensihnow]: https://github.com/jensihnow +[@jxwolstenholme]: https://github.com/jxwolstenholme +[@lasote]: https://github.com/lasote +[@ludeeus]: https://github.com/ludeeus +[@majuss]: https://github.com/majuss +[@marchingphoenix]: https://github.com/marchingphoenix +[@mdallaire]: https://github.com/mdallaire +[@mikeage]: https://github.com/mikeage +[@molobrakos]: https://github.com/molobrakos +[@mopolus]: https://github.com/mopolus +[@nhorvath]: https://github.com/nhorvath +[@nickw444]: https://github.com/nickw444 +[@nragon]: https://github.com/nragon +[@pagenoare]: https://github.com/pagenoare +[@pbalogh77]: https://github.com/pbalogh77 +[@pc-coholic]: https://github.com/pc-coholic +[@photinus]: https://github.com/photinus +[@postlund]: https://github.com/postlund +[@rytilahti]: https://github.com/rytilahti +[@scarface-4711]: https://github.com/scarface-4711 +[@schmittx]: https://github.com/schmittx +[@scop]: https://github.com/scop +[@sdague]: https://github.com/sdague +[@skalavala]: https://github.com/skalavala +[@slackr31337]: https://github.com/slackr31337 +[@soosp]: https://github.com/soosp +[@syssi]: https://github.com/syssi +[@ticapix]: https://github.com/ticapix +[@trainman419]: https://github.com/trainman419 +[@yottatsa]: https://github.com/yottatsa +[@zxdavb]: https://github.com/zxdavb +[alarm_control_panel.blink docs]: /components/alarm_control_panel.blink/ +[alarm_control_panel.lupusec docs]: /components/alarm_control_panel.lupusec/ +[alarm_control_panel.mqtt docs]: /components/alarm_control_panel.mqtt/ +[alarm_control_panel.yale_smart_alarm docs]: /components/alarm_control_panel.yale_smart_alarm/ +[alexa docs]: /components/alexa/ +[apple_tv docs]: /components/apple_tv/ +[august docs]: /components/august/ +[automation docs]: /components/automation/ +[binary_sensor.blink docs]: /components/binary_sensor.blink/ +[binary_sensor.fibaro docs]: /components/binary_sensor.fibaro/ +[binary_sensor.ihc docs]: /components/binary_sensor.ihc/ +[binary_sensor.mqtt docs]: /components/binary_sensor.mqtt/ +[binary_sensor.point docs]: /components/binary_sensor.point/ +[binary_sensor.sense docs]: /components/binary_sensor.sense/ +[binary_sensor.tahoma docs]: /components/binary_sensor.tahoma/ +[binary_sensor.tellduslive docs]: /components/binary_sensor.tellduslive/ +[binary_sensor.volvooncall docs]: /components/binary_sensor.volvooncall/ +[binary_sensor.zha docs]: /components/binary_sensor.zha/ +[blink docs]: /components/blink/ +[camera.blink docs]: /components/camera.blink/ +[camera.mjpeg docs]: /components/camera.mjpeg/ +[camera.proxy docs]: /components/camera.proxy/ +[camera.push docs]: /components/camera.push/ +[camera.uvc docs]: /components/camera.uvc/ +[climate.daikin docs]: /components/climate.daikin/ +[climate.evohome docs]: /components/climate.evohome/ +[climate.mill docs]: /components/climate.mill/ +[climate.mqtt docs]: /components/climate.mqtt/ +[climate.toon docs]: /components/climate.toon/ +[cloud docs]: /components/cloud/ +[config docs]: /components/config/ +[cover.mqtt docs]: /components/cover.mqtt/ +[cover.tellduslive docs]: /components/cover.tellduslive/ +[daikin docs]: /components/daikin/ +[device_tracker docs]: /components/device_tracker/ +[elkm1 docs]: /components/elkm1/ +[evohome docs]: /components/evohome/ +[fan.mqtt docs]: /components/fan.mqtt/ +[fan.xiaomi_miio docs]: /components/fan.xiaomi_miio/ +[fan.zha docs]: /components/fan.zha/ +[fibaro docs]: /components/fibaro/ +[frontend docs]: /components/frontend/ +[geo_location docs]: /components/geo_location/ +[google_assistant docs]: /components/google_assistant/ +[hassio docs]: /components/hassio/ +[hdmi_cec docs]: /components/hdmi_cec/ +[history docs]: /components/history/ +[hlk_sw16 docs]: /components/hlk_sw16/ +[homematic docs]: /components/homematic/ +[http docs]: /components/http/ +[ihc docs]: /components/ihc/ +[image_processing docs]: /components/image_processing/ +[influxdb docs]: /components/influxdb/ +[lifx docs]: /components/lifx/ +[light.decora_wifi docs]: /components/light.decora_wifi/ +[light.fibaro docs]: /components/light.fibaro/ +[light.ihc docs]: /components/light.ihc/ +[light.lightwave docs]: /components/light.lightwave/ +[light.lutron docs]: /components/light.lutron/ +[light.mqtt docs]: /components/light.mqtt/ +[light.niko_home_control docs]: /components/light.niko_home_control/ +[light.tellduslive docs]: /components/light.tellduslive/ +[light.xiaomi_miio docs]: /components/light.xiaomi_miio/ +[light.yeelight docs]: /components/light.yeelight/ +[light.zha docs]: /components/light.zha/ +[lightwave docs]: /components/lightwave/ +[lock.verisure docs]: /components/lock.verisure/ +[lock.volvooncall docs]: /components/lock.volvooncall/ +[logbook docs]: /components/logbook/ +[lovelace docs]: /components/lovelace/ +[lupusec docs]: /components/lupusec/ +[media_extractor docs]: /components/media_extractor/ +[media_player.demo docs]: /components/media_player.demo/ +[media_player.denonavr docs]: /components/media_player.denonavr/ +[media_player.firetv docs]: /components/media_player.firetv/ +[media_player.hdmi_cec docs]: /components/media_player.hdmi_cec/ +[media_player.plex docs]: /components/media_player.plex/ +[media_player.vizio docs]: /components/media_player.vizio/ +[mqtt docs]: /components/mqtt/ +[netatmo docs]: /components/netatmo/ +[notify docs]: /components/notify/ +[onboarding docs]: /components/onboarding/ +[owntracks docs]: /components/owntracks/ +[point docs]: /components/point/ +[rainmachine docs]: /components/rainmachine/ +[remote.xiaomi_miio docs]: /components/remote.xiaomi_miio/ +[scene.fibaro docs]: /components/scene.fibaro/ +[script docs]: /components/script/ +[sense docs]: /components/sense/ +[sensor.awair docs]: /components/sensor.awair/ +[sensor.blink docs]: /components/sensor.blink/ +[sensor.bom docs]: /components/sensor.bom/ +[sensor.daikin docs]: /components/sensor.daikin/ +[sensor.dht docs]: /components/sensor.dht/ +[sensor.entur_public_transport docs]: /components/sensor.entur_public_transport/ +[sensor.influxdb docs]: /components/sensor.influxdb/ +[sensor.mqtt docs]: /components/sensor.mqtt/ +[sensor.netatmo docs]: /components/sensor.netatmo/ +[sensor.point docs]: /components/sensor.point/ +[sensor.qbittorrent docs]: /components/sensor.qbittorrent/ +[sensor.rtorrent docs]: /components/sensor.rtorrent/ +[sensor.sense docs]: /components/sensor.sense/ +[sensor.seventeentrack docs]: /components/sensor.seventeentrack/ +[sensor.snmp docs]: /components/sensor.snmp/ +[sensor.statistics docs]: /components/sensor.statistics/ +[sensor.systemmonitor docs]: /components/sensor.systemmonitor/ +[sensor.tellduslive docs]: /components/sensor.tellduslive/ +[sensor.tibber docs]: /components/sensor.tibber/ +[sensor.volvooncall docs]: /components/sensor.volvooncall/ +[sensor.waterfurnace docs]: /components/sensor.waterfurnace/ +[sensor.xiaomi_miio docs]: /components/sensor.xiaomi_miio/ +[sensor.zha docs]: /components/sensor.zha/ +[shopping_list docs]: /components/shopping_list/ +[simplisafe docs]: /components/simplisafe/ +[skybell docs]: /components/skybell/ +[switch.hdmi_cec docs]: /components/switch.hdmi_cec/ +[switch.hlk_sw16 docs]: /components/switch.hlk_sw16/ +[switch.ihc docs]: /components/switch.ihc/ +[switch.lightwave docs]: /components/switch.lightwave/ +[switch.mqtt docs]: /components/switch.mqtt/ +[switch.snmp docs]: /components/switch.snmp/ +[switch.switchbot docs]: /components/switch.switchbot/ +[switch.switchmate docs]: /components/switch.switchmate/ +[switch.tellduslive docs]: /components/switch.tellduslive/ +[switch.volvooncall docs]: /components/switch.volvooncall/ +[switch.xiaomi_miio docs]: /components/switch.xiaomi_miio/ +[switch.zha docs]: /components/switch.zha/ +[tellduslive docs]: /components/tellduslive/ +[tibber docs]: /components/tibber/ +[tts docs]: /components/tts/ +[vacuum.xiaomi_miio docs]: /components/vacuum.xiaomi_miio/ +[verisure docs]: /components/verisure/ +[volvooncall docs]: /components/volvooncall/ +[waterfurnace docs]: /components/waterfurnace/ +[weather.bom docs]: /components/weather.bom/ +[weather.ipma docs]: /components/weather.ipma/ +[websocket_api docs]: /components/websocket_api/ +[wunderlist docs]: /components/wunderlist/ +[zha docs]: /components/zha/ diff --git a/source/cloud/alexa.markdown b/source/cloud/alexa.markdown index 58cbefee6a8..148e8cfe2d0 100644 --- a/source/cloud/alexa.markdown +++ b/source/cloud/alexa.markdown @@ -10,7 +10,7 @@ footer: true redirect_from: /components/cloud.alexa/ --- -Home Assistant Cloud is a subscription service provided by our partner Nabu Casa, Inc. Check out [their website](https://www.nabucasa.com/config/amazon_alexa/) for help with the Amazon Alexa integration via Home Assistant Cloud. +Home Assistant Cloud is a subscription service provided by our partner Nabu Casa, Inc. Check out [the Nabu Casa website](https://www.nabucasa.com/config/amazon_alexa/) for help with the Amazon Alexa integration via Home Assistant Cloud.
Logo of Nabu Casa, Inc
diff --git a/source/cloud/google_assistant.markdown b/source/cloud/google_assistant.markdown index 4d17dfb7fe5..8c849d5fa95 100644 --- a/source/cloud/google_assistant.markdown +++ b/source/cloud/google_assistant.markdown @@ -9,7 +9,7 @@ sharing: true footer: true --- -Home Assistant Cloud is a subscription service provided by our partner Nabu Casa, Inc. Check out [their website](https://www.nabucasa.com/config/google_assistant/) for help with the Google Assistant integration via Home Assistant Cloud. +Home Assistant Cloud is a subscription service provided by our partner Nabu Casa, Inc. Check out [the Nabu Casa website](https://www.nabucasa.com/config/google_assistant/) for help with the Google Assistant integration via Home Assistant Cloud.
Logo of Nabu Casa, Inc
diff --git a/source/cloud/index.markdown b/source/cloud/index.markdown index 92749a82231..c3ab5cfe1f1 100644 --- a/source/cloud/index.markdown +++ b/source/cloud/index.markdown @@ -13,7 +13,7 @@ ha_category: Voice ha_iot_class: "Cloud Push" --- -Home Assistant Cloud is a subscription service provided by our partner Nabu Casa, Inc. Check out [their website](https://www.nabucasa.com) For more information on features, pricing and how to configure Home Assistant. +Home Assistant Cloud is a subscription service provided by our partner Nabu Casa, Inc. Check out [their website](https://www.nabucasa.com) For more information on features, pricing and [how to configure Home Assistant](https://www.nabucasa.com/config/).
Logo of Nabu Casa, Inc
diff --git a/source/getting-started/configuration.markdown b/source/getting-started/configuration.markdown index 614ba27ad66..d942e732d04 100644 --- a/source/getting-started/configuration.markdown +++ b/source/getting-started/configuration.markdown @@ -68,7 +68,11 @@ Go to the add-on store (see the previous step), click on Configurator and click - You will be able to click the "OPEN WEB UI" link to open the Web UI on a new window - Type your username and password that you recently saved -Time for the first practice with the configurator. Add the following to `configuration.yaml` file to add a link to the Configurator in the sidebar: +Time for the first practice with the configurator. We're going to add the Configurator to the main Home Assistant sidebar: + + - Click the folder icon in the top left of the configurator window to open the file browser sidebar. + - Click the `configuration.yaml` file (in the `/config/` folder) to load it into the main Configurator edit window. + - Copy and paste the following to the end of the `configuration.yaml` file: ```yaml panel_iframe: @@ -78,7 +82,9 @@ panel_iframe: url: http://hassio.local:3218 ``` -Now restart Home Assistant for the changes to the configuration to take effect. You can do this by going to the config panel (Configuration in the sidebar) -> General -> Restart Home Assistant. + - Click the save icon in the top right to comit changes. + - Verify the configuration by going to the config panel (Configuration in the sidebar) -> General -> Click the "Check Config" button and you should get "Configuration valid!" + - Now Restart Home Assistant using the "restart" in the Server management section. ### {% linkable_title Editing config via Samba/Windows Networking %} diff --git a/source/images/blog/2018-12-release-84/components.png b/source/images/blog/2018-12-release-84/components.png new file mode 100644 index 00000000000..3f8eab8ca69 Binary files /dev/null and b/source/images/blog/2018-12-release-84/components.png differ diff --git a/source/lovelace/views.markdown b/source/lovelace/views.markdown index 0ea7de6abb3..502f85ac909 100644 --- a/source/lovelace/views.markdown +++ b/source/lovelace/views.markdown @@ -34,9 +34,9 @@ views: required: false description: Cards to display in this view. type: list - id: + path: required: false - description: IDs are used in the URL, more info below. If you don't specify an ID, a random one will be added automatically. + description: Paths are used in the URL, more info below. type: string default: view index icon: @@ -58,11 +58,9 @@ views: type: string {% endconfiguration %} -## {% linkable_title IDs %} +## {% linkable_title Paths %} -You can link to one view from another view by its ID. For this use cards that support navigation (`navigation_path`). Do not use special characters in IDs. - -IDs are also used to identify a view for editing in the Home Assistant frontend (not yet released), we will add a randomly generated ID to your view if you don't specify one. You can change this ID, as long as every view has a unique ID. +You can link to one view from another view by its path. For this use cards that support navigation (`navigation_path`). Do not use special characters in paths. ### {% linkable_title Example %} @@ -71,7 +69,7 @@ View config: ```yaml - title: Living room # the final path is /lovelace/living_room - id: living_room + path: living_room ``` Picture card config: diff --git a/source/lovelace/yaml-mode.markdown b/source/lovelace/yaml-mode.markdown index eaff16c8035..9c53a8c1f02 100644 --- a/source/lovelace/yaml-mode.markdown +++ b/source/lovelace/yaml-mode.markdown @@ -25,8 +25,6 @@ title: My Awesome Home views: # View tab title. - title: Example - panel: true - # Makes the first card fill the view cards: # The markdown card will render markdown text. - type: markdown @@ -54,8 +52,13 @@ excluded_entities: views: # View tab title. - title: Example +<<<<<<< HEAD # Unique id for direct access /lovelace/${id} and editing it from the UI. id: example +======= + # Unique path for direct access /lovelace/${path} + path: example +>>>>>>> origin/current # Optional background (overwrites the global background). background: radial-gradient(crimson, skyblue) # Each view can have a different theme applied. Theme should be defined in the frontend. @@ -63,8 +66,12 @@ views: # The cards to show on this view. cards: # The filter card will filter entities for their state +<<<<<<< HEAD - id: peoplehome # Every card needs an ID, for it to be edited from the UI. type: entity-filter +======= + - type: entity-filter +>>>>>>> origin/current entities: - device_tracker.paulus - device_tracker.anne_there