diff --git a/_config.yml b/_config.yml index 3a9f638c958..d3d24e66756 100644 --- a/_config.yml +++ b/_config.yml @@ -101,8 +101,8 @@ social: # Home Assistant release details current_major_version: 0 current_minor_version: 108 -current_patch_version: 6 -date_released: 2020-04-16 +current_patch_version: 8 +date_released: 2020-04-22 # 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/_docs/automation/trigger.markdown b/source/_docs/automation/trigger.markdown index e946477df98..be745deb41a 100644 --- a/source/_docs/automation/trigger.markdown +++ b/source/_docs/automation/trigger.markdown @@ -341,7 +341,7 @@ Do not prefix numbers with a zero - using `'00'` instead of '0' for example will ### Webhook trigger -Webhook trigger fires when a web request is made to the webhook endpoint: `/api/webhook/`. This endpoint does not require authentication besides knowing the webhook id. You can either send encoded form or JSON data, available in the template as either `trigger.json` or `trigger.data`. URL query parameters are available in the template as `trigger.query`. +Webhook trigger fires when a web request is made to the webhook endpoint: `/api/webhook/`. The webhook endpoint is created automatically when you set it as the `webhook_id` in an automation trigger. ```yaml automation: @@ -350,9 +350,15 @@ automation: webhook_id: some_hook_id ``` -You could run the above automation by sending a POST HTTP request to `http://your-home-assistant:8123/api/webhook/some_hook_id`. An example with no data sent to a SSL/TLS secured installation and using the command-line curl program is `curl -d "" https://your-home-assistant:8123/api/webhook/some_hook_id`. +You can run this automation by sending an HTTP POST request to `http://your-home-assistant:8123/api/webhook/some_hook_id`. Here is an example using the **curl** command line program, with an empty data payload: -Note that each webhook can only be used in one automation at a time. +```shell +curl -d "" https://your-home-assistant:8123/api/webhook/some_hook_id +``` + +Webhook endpoints don't require authentication, other than knowing a valid webhook ID. You can send a data payload, either as encoded form data or JSON data. The payload is available in an automation template as either `trigger.json` or `trigger.data`. URL query parameters are available in the template as `trigger.query`. Remember to use an HTTPS URL if you've secured your Home Assistant installation with SSL/TLS. + +Note that a given webhook can only be used in one automation at a time. That is, only one automation trigger can use a specific webhook ID. ### Zone trigger diff --git a/source/_docs/z-wave/device-specific.markdown b/source/_docs/z-wave/device-specific.markdown index feaf37bd625..e50db11b4d8 100644 --- a/source/_docs/z-wave/device-specific.markdown +++ b/source/_docs/z-wave/device-specific.markdown @@ -191,9 +191,9 @@ Triple tap on|2|4 5x tap off|1|6 5x tap on|2|6 -### Zooz Scene Capable On/Off and Dimmer Wall Switches (Zen21v2 & Zen22v2 - Firmware 3.0+ and Zen26 & Zen27 - Firmware 2.0+) +### Zooz Scene Capable On/Off and Dimmer Wall Switches (Zen21v2 & Zen22v2 - Firmware 3.0+, Zen26 & Zen27 - Firmware 2.0+, Zen30 Double Switch) -Many Zooz Zen26/27 switches that have been sold do not have firmware 2.0+. Contact Zooz to obtain the over the air firmware update instructions and new user manual for the switches. +Many Zooz switches that have been sold do not have the latest firmwares. Contact Zooz to obtain the over the air firmware update instructions and new user manual for the switches. Once the firmware is updated, the the new configuration parameters will have to be added to the `zwcfg` file. Replace the existing `COMMAND_CLASS_CONFIGURATION` with the one of the following options (depending on your model of switch): @@ -587,6 +587,138 @@ Zen27 (Dimmer): ``` +Zen30 (Double Switch): +```xml + + + LED Indicator Mode for Dimmer. Normal has the dimmer (top) LED indication on when the switch is off, off when the switch is on. Default: Normal + + + + + + + LED Indicator Mode for Relay. Normal has the relay (bottom) LED indication on when the switch is off, off when the switch is on. Default: Normal + + + + + + + LED Indicater color for Dimmer. White, Blue, Green or Red. Default: White + + + + + + + LED Indicater color for Relay. White, Blue, Green or Red. Default: White + + + + + + + LED Indicater Brightness for Dimmer. Bright (100%), Medium (60%) or Low (30%). Default: Medium + + + + + + LED Indicater Brightness for Relay. Bright (100%), Medium (60%) or Low (30%). Default: Medium + + + + + + LED Indicator Mode for Scene Control. Enable/Disable LED indicators next to the dimmer lighting up when a scene is selected. Default: disabled + + + + + Auto Turn-Off Timer for Dimmer. Sets the time (in minutes) after which you want the dimmer to automatically turn off once it has been turned on. Range: 1-65535. Default: 0 (disabled) + + + Auto Turn-On Timer for Dimmer. Sets the time (in minutes) after which you want the dimmer to automatically turn on once it has been turned off. Range: 1-65535. Default: 0 (disabled) + + + Auto Turn-Off Timer for Relay. Sets the time (in minutes) after which you want the relay to automatically turn off once it has been turned on. Range: 1-65535. Default: 0 (disabled) + + + Auto Turn-On Timer for Relay. Sets the time (in minutes) after which you want the relay to automatically turn on once it has been turned off. Range: 1-65535. Default: 0 (disabled) + + + On Off Status After Power Failure. Default: Restore both to prior state + + + + + + + + + + + + Ramp Rate Control for Dimmer. Adjust the ramp rate for your dimmer (fade-in / fade-out effect for on / off operation). Values correspond to the number of seconds it take for the dimmer to reach full brightness or turn off when operated manually. Note that 0 is instant. Default: 1 + + + Minimum Brightness. Set the minimum brightness level (in %) for your dimmer. You won't be able to dim the light below the set value. Default: 1 + + + Maximum Brightness. Set the maximum brightness level (in %) for your dimmer. You won't be able to add brightness to the light beyond the set value. Default: 99 + + + Double Tap Function for Dimmer. When set to full, turns light on to 100%. If set to maximum level, turns light on to % set in Parameter 15. Default: full + + + + + Enable/Disable Double-tap for Dimmer. Enables/Disables the double-tap fucntion and assign brightness to single tap. enabled: single tap turns on to maximum brightness level. disabled (last level): single tap returns to last brightness level. disabled (full/max level): single tap returns to full brightmess. Default: enabled + + + + + + Enable/Disable Load Control for Dimmer (Smart Bulb Setting). Enable or disable direct manual and Z-Wave control of the connected light (works great for smart bulb control). If disabled, the dimmer will no longer control the connected bulb directly but will still send on/off and brightness reports to the hub so you cn use them to create automations for your smart bulbs or other switches. Scenes and other functionality will still be available through the paddles. Default: manual disabled + + + + + + Enable/Disable Load Control for Relay (Smart Bulb Setting). Enable or disable direct manual and Z-Wave control of the connected light (works great for smart bulb control). If disabled, the relay will no longer control the connected bulb directly but will still send on/off and brightness reports to the hub so you cn use them to create automations for your smart bulbs or other switches. Scenes and other functionality will still be available through the paddles. Default: manual disabled + + + + + + Choose how many seconds it takes for the dimmer to go from 0% to 100% brightness when pressing and holding the paddle. Default: 4. + + + Default Brightness Level On for Dimmer. Set custom brightness level (in %) for the dimmer to come on to at single tap. Choose 0 for last brightness level. Default: 0. + + + Sets behavior of the dimmer when physical control is disabled + + + + + Sets behavior of the relay when physical control is disabled + + + + + Set the brightness level the dimmer will turn on to when off and when lower paddle is held DOWN for a second. Default: 20 + + + Normal mode: Upper paddle turns the light on, lower paddle turns the light off. Reverse mode: Upper paddle turns the light off, lower paddle turns the light on. Toggle mode: Either paddle toggles the light. + + + + + +``` + For Zooz switches, you'll need to update (or possibly add) the `COMMAND_CLASS_CENTRAL_SCENE` for each node in your `zwcfg` file with the following: ```xml @@ -597,6 +729,17 @@ For Zooz switches, you'll need to update (or possibly add) the `COMMAND_CLASS_CE ``` +For the Zooz Zen30 Double Switch, you'll need to add the `COMMAND_CLASS_CENTRAL_SCENE` for each node in your `zwcfg` file with the following: +```xml + + + + + + + +``` + Go to the Z-Wave Network Management section in the Home Assistant Configuration, select the node which has just been updated and enable the scene support configuration parameter. Once this is complete, you should see the following `zwave.scene_activated` events: @@ -613,6 +756,10 @@ Triple tap on|2|7920 4x tap on|2|7980 5x tap off|1|8040 5x tap on|2|8040 +Held off|1|7800 +Held on|2|7800 +Released off|1|7740 +Released on|2|7740 ### HomeSeer Switches diff --git a/source/_integrations/manual.markdown b/source/_integrations/manual.markdown index ed33d84527c..dc50cb28703 100644 --- a/source/_integrations/manual.markdown +++ b/source/_integrations/manual.markdown @@ -1,5 +1,5 @@ --- -title: Manual +title: Manual Alarm Control Panel description: Instructions on how to integrate manual alarms into Home Assistant. ha_category: - Alarm @@ -8,7 +8,7 @@ ha_quality_scale: internal ha_domain: manual --- -The `manual` alarm control panel platform enables you to set manual alarms in Home Assistant. +The `manual` alarm control panel platform enables you to create an alarm system in Home Assistant. ## Configuration @@ -85,37 +85,37 @@ armed_custom_bypass/armed_home/armed_away/armed_night/disarmed/triggered: ## State machine -The state machine of the manual alarm integration is complex but powerful. The +The state machine of the manual alarm integration is complex but powerful. The transitions are timed according to three values, **delay_time**, **pending_time** -and **trigger_time**. The values in turn can come from the default configuration +and **trigger_time**. The values in turn can come from the default configuration variable or from a state-specific override. When the alarm is armed, its state first goes to **pending** for a number of seconds equal to the destination state's **pending_time**, and then transitions to one of the "armed" states. Note that **code_template** never receives "pending" in the **to_state** variable; instead, -**to_state** contains the state which the user has requested. However, +**to_state** contains the state which the user has requested. However, **from_state** *can* contain "pending". When the alarm is triggered, its state goes to **pending** for a number of seconds equal to the previous state's **delay_time** plus the triggered -state's **pending_time**. Then the alarm transitions to the "triggered" -states. The code is never checked when triggering the alarm, so the +state's **pending_time**. Then the alarm transitions to the "triggered" +states. The code is never checked when triggering the alarm, so the **to_state** variable of **code_template** cannot ever contain "triggered" either; again, **from_state** *can* contain "triggered". The alarm remains in the "triggered" state for a number of seconds equal to the -previous state's **trigger_time**. Then, depending on **disarm_after_trigger**, -it goes back to either the previous state or **disarmed**. If the previous +previous state's **trigger_time**. Then, depending on **disarm_after_trigger**, +it goes back to either the previous state or **disarmed**. If the previous state's **trigger_time** is zero, the transition to "triggered" is entirely blocked and the alarm remains in the armed state. -Each of the settings is useful in different scenarios. **pending_time** gives +Each of the settings is useful in different scenarios. **pending_time** gives you some time to leave the building (for "armed" states) or to disarm the alarm (for the "triggered" state). **delay_time** can also be used to allow some time to disarm the alarm, but with -more flexibility. For example, you could specify a delay time for the +more flexibility. For example, you could specify a delay time for the "armed away" state, in order to avoid triggering the alarm while the garage door opens, but not for the "armed home" state. @@ -126,9 +126,9 @@ be used for example to sound the siren for a shorter time during the night. In the configuration example below: -- the disarmed state never triggers the alarm; -- the armed_home state will leave no time to leave the building or disarm the alarm; -- while other states state will give 30 seconds to leave the building before triggering the alarm, and 20 seconds to disarm the alarm when coming back. +- The `disarmed` state never triggers the alarm. +- The `armed_home` state will leave no time to leave the building or disarm the alarm. +- The other states will give 30 seconds to leave the building before triggering the alarm, and 20 seconds to disarm the alarm when coming back. ```yaml # Example configuration.yaml entry diff --git a/source/_integrations/panasonic_viera.markdown b/source/_integrations/panasonic_viera.markdown index 786a6324fd0..073d8968ae5 100644 --- a/source/_integrations/panasonic_viera.markdown +++ b/source/_integrations/panasonic_viera.markdown @@ -91,6 +91,7 @@ script: ### Currently known supported models +- TC-P50ST50 - TC-P60S60 - TC-P65VT30 - TX-32AS520E diff --git a/source/_integrations/plex.markdown b/source/_integrations/plex.markdown index 8dfeb8a36bd..26db3d91ae3 100644 --- a/source/_integrations/plex.markdown +++ b/source/_integrations/plex.markdown @@ -110,39 +110,79 @@ By default the Plex integration will create Media Player entities for all local, ### Service `play_media` -Plays a song, playlist, TV episode, or video on a connected client. +Plays a song, album, artist, playlist, TV show/season/episode, movie, or video on a connected client. + +Required fields within the `media_content_id` payloads are marked as such, others are optional. #### Music -| Service data attribute | Optional | Description | Example | -| ---------------------- | -------- | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `entity_id` | no | `entity_id` of the client | media_player.theater_plex | -| `media_content_id` | no | Quote escaped JSON with `library_name`, `artist_name`, `album_name`, `track_name`, `shuffle` (0 or 1). | { \\"library_name\\" : \\"My Music\\", \\"artist_name\\" : \\"Adele\\", \\"album_name\\" : \\"25\\", \\"track_name\\" : \\"hello\\", \\"shuffle\\": \\"0\\" } | -| `media_content_type` | no | Type of media to play, in this case `MUSIC` | MUSIC | +| Service data attribute | Description | +| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `entity_id` | `entity_id` of the client | +| `media_content_id` | Quoted JSON containing:
| +| `media_content_type` | `MUSIC` | + +##### Examples: +```yaml +entity_id: media_player.plex_player +media_content_type: MUSIC +media_content_id: '{ "library_name": "Music", "artist_name": "Adele", "album_name": "25", "track_name": "Hello" }' +``` +```yaml +entity_id: media_player.plex_player +media_content_type: MUSIC +media_content_id: '{ "library_name": "Music", "artist_name": "Stevie Wonder", "shuffle": "1" }' +``` #### Playlist -| Service data attribute | Optional | Description | Example | -| ---------------------- | -------- | ------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `entity_id` | no | `entity_id` of the client | media_player.theater_plex | -| `media_content_id` | no | Quote escaped JSON with `playlist_name`, `shuffle` (0 or 1). | { \\"playlist_name\\" : \\"The Best of Disco\\" \\"shuffle\\": \\"0\\" } | -| `media_content_type` | no | Type of media to play, in this case `PLAYLIST` | PLAYLIST | +| Service data attribute | Description | +| ---------------------- | --------------------------------------------------------------------------------------------------- | +| `entity_id` | `entity_id` of the client | +| `media_content_id` | Quoted JSON containing:
| +| `media_content_type` | `PLAYLIST` | + +##### Example: +```yaml +entity_id: media_player.plex_player +media_content_type: PLAYLIST +media_content_id: '{ "playlist_name": "The Best of Disco", "shuffle": "1" }' +``` #### TV Episode -| Service data attribute | Optional | Description | Example | -| ---------------------- | -------- | ----------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `entity_id` | no | `entity_id` of the client | media_player.theater_plex | -| `media_content_id` | no | Quote escaped JSON with `library_name`, `show_name`, `season_number`, `episode_number`, `shuffle` (0 or 1). | { \\"library_name\\" : \\"Adult TV\\", \\"show_name\\" : \\"Rick and Morty\\", \\"season_number\\" : 2, \\"episode_number\\" : 5, \\"shuffle\\": \\"0\\" } | -| `media_content_type` | no | Type of media to play, in this case `EPISODE` | EPISODE | +| Service data attribute | Description | +| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `entity_id` | `entity_id` of the client | +| `media_content_id` | Quoted JSON containing:
| +| `media_content_type` | `EPISODE` | + +##### Examples: +```yaml +entity_id: media_player.plex_player +media_content_type: EPISODE +media_content_id: '{ "library_name": "Adult TV", "show_name": "Rick and Morty", "season_number": 2, "episode_number": 5 }' +``` +```yaml +entity_id: media_player.plex_player +media_content_type: EPISODE +media_content_id: '{ "library_name": "Kid TV", "show_name": "Sesame Street", "shuffle": "1" }' +``` #### Video -| Service data attribute | Optional | Description | Example | -| ---------------------- | -------- | ------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `entity_id` | no | `entity_id` of the client | media_player.theater_plex | -| `media_content_id` | no | Quote escaped JSON with `library_name`, `video_name`, `shuffle` (0 or 1). | { \\"library_name\\" : \\"Adult Movies\\", \\"video_name\\" : \\"Blade\\", \\"shuffle\\": \\"0\\" } | -| `media_content_type` | no | Type of media to play, in this case `VIDEO` | VIDEO | +| Service data attribute | Description | +| ---------------------- | ------------------------------------------------------------------------------------------------------- | +| `entity_id` | `entity_id` of the client | +| `media_content_id` | Quoted JSON containing:
| +| `media_content_type` | `VIDEO` | + +##### Example: +```yaml +entity_id: media_player.plex_player +media_content_type: VIDEO +media_content_id: '{ "library_name": "Adult Movies", "video_name": "Blade" }' +``` ### Compatibility diff --git a/source/_integrations/proliphix.markdown b/source/_integrations/proliphix.markdown index f9dcdd602a0..ce19e7be95a 100644 --- a/source/_integrations/proliphix.markdown +++ b/source/_integrations/proliphix.markdown @@ -1,7 +1,6 @@ --- title: Proliphix description: Instructions on how to integrate Proliphix thermostats within Home Assistant. -logo: proliphix.png ha_category: - Climate ha_release: 0.11 diff --git a/source/_integrations/ripple.markdown b/source/_integrations/ripple.markdown index 52f209cf638..221bf8359a8 100644 --- a/source/_integrations/ripple.markdown +++ b/source/_integrations/ripple.markdown @@ -1,7 +1,6 @@ --- title: Ripple description: Instructions on how to integrate ripple.com data within Home Assistant. -logo: ripple.png ha_category: - Finance ha_release: 0.47 diff --git a/source/_posts/2020-04-08-release-108.markdown b/source/_posts/2020-04-08-release-108.markdown index 336103f1ca7..9b9d0530cdb 100644 --- a/source/_posts/2020-04-08-release-108.markdown +++ b/source/_posts/2020-04-08-release-108.markdown @@ -543,6 +543,40 @@ These integrations have been removed. The websites for both have changed, causin [sonos docs]: /integrations/sonos/ [vizio docs]: /integrations/vizio/ +## Release 0.108.7 - April 21 + +- Fix setting up multiple UPSes with NUT in 0.108.x ([@bdraco] - [#34427]) ([nut docs]) +- Cloud do checks during setup ([@balloob] - [#33507]) ([cloud docs]) +- Rollback modbus to version 0.107.7 keep new functionality ([@janiversen] - [#34287]) ([modbus docs]) +- Ensure nexia state file is in a writable location ([@bdraco] - [#34325]) ([nexia docs]) +- Modify requirements for CameraStreamController in Alexa ([@ochlocracy] - [#34470]) ([alexa docs]) +- Fix cloud binary_sensor & TTS/STT ([@pvizeli] - [#34505]) + +[#33507]: https://github.com/home-assistant/core/pull/33507 +[#34287]: https://github.com/home-assistant/core/pull/34287 +[#34325]: https://github.com/home-assistant/core/pull/34325 +[#34427]: https://github.com/home-assistant/core/pull/34427 +[#34470]: https://github.com/home-assistant/core/pull/34470 +[#34505]: https://github.com/home-assistant/core/pull/34505 +[@balloob]: https://github.com/balloob +[@bdraco]: https://github.com/bdraco +[@janiversen]: https://github.com/janiversen +[@ochlocracy]: https://github.com/ochlocracy +[@pvizeli]: https://github.com/pvizeli +[alexa docs]: /integrations/alexa/ +[cloud docs]: /integrations/cloud/ +[modbus docs]: /integrations/modbus/ +[nexia docs]: /integrations/nexia/ +[nut docs]: /integrations/nut/ + +## Release 0.108.8 - April 22 + +- Bump hass-nabucasa 0.34.1 ([@pvizeli] - [#34480]) ([cloud docs]) + +[#34480]: https://github.com/home-assistant/core/pull/34480 +[@pvizeli]: https://github.com/pvizeli +[cloud docs]: /integrations/cloud/ + ## All changes