Merge branch 'rc' into current

This commit is contained in:
Paulus Schoutsen 2019-04-24 14:49:51 -07:00
commit 3cd5448415
58 changed files with 2467 additions and 248 deletions

View File

@ -138,9 +138,9 @@ social:
# Home Assistant release details
current_major_version: 0
current_minor_version: 91
current_patch_version: 4
date_released: 2019-04-16
current_minor_version: 92
current_patch_version: 0
date_released: 2019-04-24
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.

View File

@ -56,6 +56,15 @@ command_topic:
description: The MQTT topic to publish commands to change the alarm state.
required: true
type: string
command_template:
description: "The [template](/docs/configuration/templating/#processing-incoming-data) used for the command payload. Available variables: `action` and `code`."
required: false
type: string
default: action
value_template:
description: "Defines a [template](/docs/configuration/templating/#processing-incoming-data) to extract the value."
required: false
type: template
qos:
description: The maximum QoS level of the state topic.
required: false
@ -86,7 +95,12 @@ code:
required: false
type: string
code_arm_required:
description: If true the code is required to arm the alarm.
description: If true the code is required to arm the alarm. If false the code is not validated.
required: false
type: boolean
default: true
code_disarm_required:
description: If true the code is required to disarm the alarm. If false the code is not validated.
required: false
type: boolean
default: true

View File

@ -10,6 +10,7 @@ footer: true
logo: amcrest.png
ha_category:
- Hub
- Binary Sensor
- Camera
- Sensor
- Switch
@ -25,9 +26,10 @@ The `amcrest` camera platform allows you to integrate your [Amcrest](https://amc
There is currently support for the following device types within Home Assistant:
- [Camera](#camera)
- [Sensor](#sensor)
- [Switch](#switch)
- Binary Sensor
- Camera
- Sensor
- Switch
## {% linkable_title Configuration %}
@ -92,6 +94,7 @@ ffmpeg_arguments:
image quality or video filter options.
required: false
type: string
default: -pred 1
authentication:
description: >
Defines which authentication method to use only when **stream_source**
@ -104,6 +107,16 @@ scan_interval:
required: false
type: integer
default: 10
binary_sensors:
description: >
Conditions to display in the frontend.
The following conditions can be monitored:
required: false
type: list
default: None
keys:
motion_detected:
description: "Return `on` when a motion is detected, `off` when not."
sensors:
description: >
Conditions to display in the frontend.
@ -113,7 +126,11 @@ sensors:
default: None
keys:
motion_detector:
description: "Return `true`/`false` when a motion is detected."
description: >
Return `true`/`false` when motion is detected.
**Note:** This sensor is deprecated and will be removed in a future release.
Use **binary_sensors** option **motion_detected** instead.
sdcard:
description: Return the SD card usage by reporting the total and used space.
ptz_preset:
@ -148,7 +165,7 @@ documentation to install the `ffmpeg`.
To check if your Amcrest camera is supported/tested, visit the
[supportability matrix](https://github.com/tchellomello/python-amcrest#supportability-matrix)
link from the `python-amcrest` project.
link from the `amcrest` project.
## {% linkable_title Advanced Configuration %}
@ -160,8 +177,9 @@ amcrest:
- host: IP_ADDRESS_CAMERA_1
username: YOUR_USERNAME
password: YOUR_PASSWORD
binary_sensors:
- motion_detected
sensors:
- motion_detector
- sdcard
switches:
- motion_detection
@ -171,40 +189,15 @@ amcrest:
- host: IP_ADDRESS_CAMERA_2
username: YOUR_USERNAME
password: YOUR_PASSWORD
name: Amcrest Camera 2
resolution: low
stream_source: snapshot
sensors:
- ptz_preset
```
## {% linkable_title Camera %}
Once you have enabled the [Amcrest component](/components/amcrest), you can add cameras to your Home Assistant configuration. add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
camera:
- platform: amcrest
```
To check if your Amcrest camera is supported/tested, visit the [supportability matrix](https://github.com/tchellomello/python-amcrest#supportability-matrix) link from the `python-amcrest` project.
## {% linkable_title Sensor %}
Once you have enabled the [Amcrest component](/components/amcrest), you can add sensors to your Home Assistant configuration. Add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: amcrest
```
## {% linkable_title Switch %}
The `amcrest` switch platform lets you control settings of [Amcrest IP Camera](#camera) through Home Assistant.
Switches will be configured automatically. Please refer to the [component](/components/amcrest/) configuration on how to setup.
<p class='note warning'>
In previous versions, switch devices in setups with multiple cameras, would not have specific entity ID causing them to change randomly after each Home Assistant restart. The current version adds the name of the camera at the end of the switch entity ID, making it more specific and consistent and causes the name option to be required in a multi-camera system. This behavior matches the sensor behavior of the Amcrest component. Because of this, older automations may require updates to the entity ID.
</p>

View File

@ -0,0 +1,46 @@
---
layout: page
title: "Ampio Smog"
description: "Instructions on how to setup Ampio Smog sensors in Home Assistant."
date: 2019-02-17 00:00
sidebar: true
comments: false
sharing: true
footer: true
logo: ampio_smog.png
ha_category:
- Health
- Sensor
ha_release: 0.92
ha_iot_class: "Cloud Polling"
---
The `ampio` air quality platform will query the open data API of [ampio.pl](http://smog1.ampio.pl:3050/) to monitor air quality sensor station.
## {% linkable_title Setup %}
To get the ID of a station you need to contact Ampio directly.
## {% linkable_title Manual Configuration %}
To enable this platform, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
air_quality:
- platform: ampio
station_id: STATION_ID
```
{% configuration %}
station_id:
description: The ID of the station to monitor.
required: true
type: string
name:
description: Name of the sensor to use in the frontend.
required: false
default: Station name
type: string
{% endconfiguration %}

View File

@ -11,6 +11,7 @@ logo: bom.png
ha_category:
- Weather
- Sensor
- Camera
ha_release: 0.36
ha_iot_class: Cloud Polling
redirect_from:
@ -22,6 +23,7 @@ The `bom` weather platform uses the [Australian Bureau of Meteorology (BOM)](htt
There is currently support for the following device types within Home Assistant:
- [Camera](#camera)
- [Sensor](#sensor)
## {% linkable_title Configuration %}
@ -51,6 +53,116 @@ This platform is an alternative to the [`bom`](#sensor) sensor.
The weather platform is easier to configure but less customizable.
</p>
## {% linkable_title Camera %}
The `bom` camera platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) [radar web service](http://www.bom.gov.au/australia/radar/) as a source to generate an animated radar image.
To add the BOM camera to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
camera:
- platform: bom
location: YOUR_LOCATION
```
See below for a list of valid `location` values, and subsitute one for `YOUR_LOCATION`.
{% configuration %}
location:
description: Required unless `id` is specified. See below for a list of valid locations.
required: true
type: string
name:
description: Allows you to override the Home Assistant-generated camera name.
required: false
type: string
id:
description: Allows you to manually specify a BOM Radar ID (either `location` or `id` must be defined, but not both).
required: false
type: integer
delta:
description: Time in seconds between BOM radar images available for this radar. Optional if `location` is defined; required if `id` is defined.
required: false
type: integer
frames:
description: Number of frames in the animated GIF. Optional if `location` is defined; required if `id` is defined.
required: false
type: integer
filename:
description: Periodically save the animated GIF image to this filesystem path.
required: false
type: string
{% endconfiguration %}
### {% linkable_title Valid `location` values %}
```
Adelaide Albany AliceSprings Bairnsdale Bowen
Brisbane Broome Cairns Canberra Carnarvon
Ceduna Dampier Darwin Emerald Esperance
Geraldton Giles Gladstone Gove Grafton
Gympie HallsCreek Hobart Kalgoorlie Katherine
Learmonth Longreach Mackay Marburg Melbourne
Mildura Moree MorningtonIs MountIsa MtGambier
Namoi Newcastle Newdegate NorfolkIs NWTasmania
Perth PortHedland SellicksHill SouthDoodlakine Sydney
Townsville WaggaWagga Warrego Warruwi Watheroo
Weipa WillisIs Wollongong Woomera Wyndham
Yarrawonga
```
### {% linkable_title Examples %}
#### {% linkable_title Using `location` and `name` %}
Example `configuration.yaml` entry to display the `Townsville` radar with a camera named `mytowsvilleradar`:
```yaml
camera:
- platform: bom
name: mytownsvilleradar
location: Townsville
```
#### {% linkable_title Using `id`, `delta` and `frames` %}
In the event BOM creates a new radar, or a radar's ID changes, you may define a custom `id` along with corresponding `delta` and `frames` values. You may also specify custom `delta` and `frames` values, along with a valid `location`, to override the default values for an existing radar. You may not define `location` and `id` in the same entity; you must specify one or the other. If `id` is specified, then `delta` and `frames` values _must_ be provided. If `location` is specified, `delta` and `frames` _may_ be provided to override the default values.
To find a live radar ID (e.g. for the `Townsville` radar), visit the [BOM website's radars page](http://www.bom.gov.au/australia/radar/), click the link for the radar you are interested in, and note the URL, for example: `http://www.bom.gov.au/products/IDR733.loop.shtml`. The ID is the number following `IDR` (i.e. `733`) in the URL. You can also see, at the bottom of the radar image, a rotating set of times corresponding to the frames of the BOM's JavaScript-driven animation. The number of minutes (in seconds) between these times corresponds to the camera's `delta` value, and the number of frames corresponds to the `frames` value. At the time of this writing, the `Townsville` radar loop is composed of 4 frames at 10-minute (600 second) intervals. Since these are also the default values, this configuration block
```yaml
camera:
- platform: bom
location: Townsville
```
is equivalent to this one
```yaml
camera:
- platform: bom
id: '053'
delta: 600
frames: 4
name: 'Carnarvon'
```
#### {% linkable_title Using `filename` %}
This option can be specified to save the animated radar-imagery GIF to the given filesystem path.
Example `configuration.yaml` entry to display the `Sydney` radar and save the animated GIF to a file named `sydneyradar.gif` to the filesystem path accessible as `/local/sydneyradar.gif` via Home Assistant's web server:
```yaml
camera:
- platform: bom
id: Sydney
filename: /config/www/images/sydneyradar.gif
```
The file will be updated every `delta` seconds when the camera regenerates the animation.
## {% linkable_title Sensor %}
The `bom` sensor platform uses the [Australian Bureau of Meteorology (BOM)](http://www.bom.gov.au) as a source for current (half-hourly) meteorological data.
@ -174,4 +286,4 @@ monitored_conditions:
<p class='note'>
This sensor is an alternative to the [`bom`](#configuration) weather platform.
The weather platform is easier to configure but less customisable.
</p>
</p>

View File

@ -142,6 +142,11 @@ entities:
required: false
type: boolean
default: true
max_results:
description: "Max number of entries to retrieve"
required: false
type: int
default: 5
{% endconfiguration %}
From this we will end up with the binary sensors `calendar.test_unimportant` and

View File

@ -39,10 +39,11 @@ extra_arguments:
description: Extra options to pass to `ffmpeg`, e.g., image quality or video filter options.
required: false
type: string
default: "-pred 1"
{% endconfiguration %}
### {% linkable_title Image quality %}
You can control the image quality with [`extra_arguments`](https://www.ffmpeg.org/ffmpeg-codecs.html#jpeg2000) `-q:v 2-32` or with lossless option `-pred 1`.
You can control the image quality with [`extra_arguments`](https://www.ffmpeg.org/ffmpeg-codecs.html#jpeg2000) `-q:v 2-32` or with lossless option `-pred 1`. Default is lossless.
If you are running into trouble with this sensor, please refer to the [Troubleshooting section](/components/ffmpeg/#troubleshooting).

View File

@ -1,73 +0,0 @@
---
layout: page
title: "Logi Circle Camera"
description: "Instructions on how to integrate your Logi Circle cameras within Home Assistant."
date: 2018-09-08 11:00
sidebar: true
comments: false
sharing: true
footer: true
logo: logi_circle.png
ha_category: Camera
ha_release: 0.79
ha_iot_class: Cloud Polling
---
The `logi_circle` camera platform allows you to watch the still frames of your [Logi Circle](https://circle.logi.com/) camera's live stream in Home Assistant.
<p class='note'>
You must have the [Logi Circle component](/components/logi_circle/) configured to use this camera platform.
</p>
Logi Circle cameras support the `camera.turn_on` and `camera.turn_off` services. This will set the streaming mode property of your camera accordingly, controlling whether the live stream is available and activity recordings are captured.
## {% linkable_title Configuration %}
Once you have enabled the [Logi Circle component](/components/logi_circle), add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
camera:
- platform: logi_circle
```
{% configuration %}
scan_interval:
description: How frequently to query for new camera stills, value are in seconds.
required: false
type: integer
default: 60
{% endconfiguration %}
### {% linkable_title Service `camera.logi_circle_livestream_record` %}
Initiates a recording of the camera's live stream.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | Name(s) of entities to initiate a recording for, e.g., `camera.living_room_camera`. If blank, targets all Logi Circle cameras. |
| `filename ` | no | Template of a file name. Variable is `entity_id`, e.g., {% raw %}`/tmp/snapshot_{{ entity_id }}.mp4`{% endraw %}. |
| `duration` | no | Duration of recording, in seconds.
The path part of `filename` must be an entry in the `whitelist_external_dirs` in your [`homeassistant:`](/docs/configuration/basic/) section of your `configuration.yaml` file.
### {% linkable_title Service `camera.logi_circle_livestream_snapshot` %}
Take a snapshot from a camera's live stream. This differs from the generic [snapshot](/components/camera/#service-snapshot) service in that it sources the snapshot from the camera's live stream. For battery powered devices, this will wake your camera from sleep to perform this action.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | Name(s) of entities to create a live stream snapshot from, e.g., `camera.living_room_camera`. If blank, targets all Logi Circle cameras. |
| `filename` | no | Template of a file name. Variable is `entity_id`, e.g., {% raw %}`/tmp/snapshot_{{ entity_id }}.jpg`{% endraw %}. |
The path part of `filename` must be an entry in the `whitelist_external_dirs` in your [`homeassistant:`](/docs/configuration/basic/) section of your `configuration.yaml` file.
### {% linkable_title Service `camera.logi_circle_set_config` %}
Sets a configuration property for your camera.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | Name(s) of entities to set the operation mode for, e.g., `camera.living_room_camera`. If blank, targets all Logi Circle cameras. |
| `mode` | no | Configuration property to set. Allowed values: `BATTERY_SAVING`, `LED`, `PRIVACY_MODE` |
| `value` | no | Mode value. Allowed values: `true`, `false` |

View File

@ -0,0 +1,149 @@
---
layout: page
title: "Cisco Webex Teams"
description: "Instructions on how to add Cisco Webex Teams notifications to Home Assistant."
date: 2017-02-20 15:00
sidebar: true
comments: false
sharing: true
footer: true
logo: cisco_webex_teams.png
ha_category: Notifications
ha_release: "0.40"
---
The `cisco_webex_teams` notification platform allows you to deliver rich notifications from Home Assistant to [Cisco Webex Teams](https://www.webex.com/team-collaboration.html) (formerly known as Cisco Spark).
To use this notification platform you will need an app (bot) token. To obtain a token visit [Cisco Webex for Developers](https://developer.webex.com/).
* Detailed instructions can be found in the section titled **Creating a Webex Teams Bot** on the [Webex Teams bot documentation](https://developer.webex.com/docs/bots).
You also need to specify the `room_id` that you wish to post messages into. The `room_id` can be found in one of two ways:
1. Logging in at [Cisco Webex for Developers](https://developer.webex.com/) and navigate to `Documentation`>`API Reference`>`Messages` and select List Messages, or
2. Log into the web client at [teams.webex.com](https://teams.webex.com/),
* select the room (or create a new room),
* then copying the room ID from the URL.
<strong>**Note:** you must add the bot email (in the format `mybot@webex.bot`) as a participant to the room specified above.</strong>
To enable this platform in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
notify:
- name: NOTIFIER_NAME
platform: cisco_webex_teams
token: YOUR_BOT_TOKEN
room_id: CISCO_WEBEX_TEAMS_ROOMID
```
## {% linkable_title Rich Text Formatting %}
Webex Teams clients can render rich text via a whitelisted set of html tags.
For example, you could configure automations to display details in an easy to read fashion like so:
<p class='img'>
<img src='/images/components/cisco_webex_teams/rich_formatting.png' />
Rich text as displayed in the macOS client.
</p>
Here are the automations for the above screenshot:
```yaml
# Rich Text Example 1.
# Show a one line message with a red banner
- alias: "Notify On Build Failing"
trigger:
- platform: webhook
webhook_id: build_failed
action:
service: notify.cisco_webex_teams_notify
data:
message: "<blockquote class=danger>Build 0.89.5 compile failed."
# Rich Text Example 2.
# Show a title and multi-line message with a yellow banner,
# with lists, a person mention and a link
- alias: "Notify On Build Unstable"
trigger:
- platform: webhook
webhook_id: build_unstable
action:
service: notify.cisco_webex_teams_notify
data:
title: "<strong>Build 0.89.6 is unstable.</strong>"
message: "<blockquote class=warning>Version 0.89.6 failed verifications.
<ul>
<li> test_osx
<li> test_win_lint
<li>... and 4 more.
</ul>
<p><@personEmail:sparkbotjeeves@sparkbot.io></p>
<p><small><i>View <a href='https://demo/testReport/'>Test Report</a></i></small><br></p>
"
# Rich Text Example 3.
# Show a title and multi-line message with a blue banner,
# with lists, a person mention and a link
- alias: "Notify On Build Passing"
trigger:
- platform: webhook
webhook_id: build_passed
action:
service: notify.cisco_webex_teams_notify
data:
title: "<strong>✅ Version 0.89.7 passed all tests and deployed to production!</strong>"
message: "<blockquote class=info>Version 0.89.7 passed all verifications.
<ul>
<li> test_cov
<li> test_osx
<li> test_win
<li> test_linux
<li>... and 45 more.
</ul>
"
```
The following is a list of the allowed html tags and attributes:
Tag | More Info
--- | ---
`<@personEmail:email@examplecompany.com>` | Used to tag another Webex Team user by email address.
`<a>` | Defines a hyperlink. Allows attribute `href`.
`<blockquote>` | Defines a section that is quoted from another source. Allows attribute `class` with allowed values `danger`, `warning`, `info`, `primary`, `secondary`.
`<b>` | Defines bold text.
`<strong>` | Defines important text.
`<i>` | Defines italic text.
`<em>` | Defines emphasized text.
`<pre>` | Defines preformatted text.
`<code>` | Defines a piece of computer code.
`<br>` | Defines a single line break.
`<p>` | Defines a paragraph.
`<ul>` | Defines an unordered list.
`<ol>` | Defines an ordered list.
`<li>` | Defines a list item.
`<h1>` to `<h3>` | Defines HTML headings.
{% configuration %}
name:
description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`.
required: false
default: notify
type: string
token:
description: Your app (bot) token.
required: true
type: string
room_id:
description: The Room ID.
required: true
type: string
{% endconfiguration %}
To use notifications, please see the [getting started with automation page](/getting-started/automation/).

View File

@ -128,6 +128,22 @@ temperature_state_template:
description: A template to render the value received on the `temperature_state_topic` with.
required: false
type: template
temperature_low_command_topic:
description: The MQTT topic to publish commands to change the target low temperature.
required: false
type: string
temperature_low_state_topic:
description: The MQTT topic to subscribe for changes in the target low temperature. If this is not set, the target low temperature works in optimistic mode (see below).
required: false
type: string
temperature_high_command_topic:
description: The MQTT topic to publish commands to change the high target temperature.
required: false
type: string
temperature_high_state_topic:
description: The MQTT topic to subscribe for changes in the target high temperature. If this is not set, the target high temperature works in optimistic mode (see below).
required: false
type: string
fan_mode_command_topic:
description: The MQTT topic to publish commands to change the fan mode.
required: false

View File

@ -47,6 +47,15 @@ port:
required: false
type: integer
default: 5007
code:
description: If defined, specifies a code to enable or disable the alarm in the frontend.
required: false
type: string
mode:
description: audible/silent if defined, specifies wether Alarm Panel should be audible or silent when armed in Home Mode.
required: false
type: string
default: audible
{% endconfiguration %}
## {% linkable_title Binary Sensor %}

View File

@ -30,7 +30,7 @@ There is currently support for the following device types within Home Assistant:
## {% linkable_title Supported hardware %}
The European versions of Daikin AC (models BRP069A41, 42, 43, 45).
This component supports the European versions of Daikin AC (BRP069A[41,42,43,45]) and AU AirBase units (BRP15B61).
The Australian version of the Daikin Wifi Controller Unit BRP072A42. Confirmed working on a Daikin Cora Series Reverse Cycle Split System Air Conditioner 2.5kW Cooling FTXM25QVMA with operation mode, temp, fan swing (3d, horizontal, vertical) which is powered by the [DAIKIN Mobile Controller](https://itunes.apple.com/au/app/daikin-mobile-controller/id917168708?mt=8)

View File

@ -180,6 +180,7 @@ All language options are described in this table that you can use for the dark s
|Azerbaijani|`az`|
|Belarusian|`be`|
|Bulgarian|`bg`|
|Bengali|`bn`|
|Bosnian|`bs`|
|Catalan|`ca`|
|Czech|`cs`|
@ -187,11 +188,13 @@ All language options are described in this table that you can use for the dark s
|German|`de`|
|Greek|`el`|
|English|`en`|
|Esperanto|`eo`|
|Spanish|`es`|
|Estonian|`et`|
|Finnish|`fi`|
|French|`fr`|
|Hebrew|`he`|
|Hindi|`hi`|
|Croatian|`hr`|
|Hungarian|`hu`|
|Indonesian|`id`|
@ -199,11 +202,15 @@ All language options are described in this table that you can use for the dark s
|Italian|`it`|
|Japanese|`ja`|
|Georgian|`ka`|
|Kannada|`kn`|
|Korean|`ko`|
|Cornish|`kw`|
|Latvian|`lv`|
|Malayam|`ml`|
|Marathi|`mr`|
|Norwegian Bokmål|`nb`|
|Dutch|`nl`|
|Punjabi|`pa`|
|Polish|`pl`|
|Portuguese|`pt`|
|Romanian|`ro`|
@ -212,9 +219,12 @@ All language options are described in this table that you can use for the dark s
|Slovenian|`sl`|
|Serbian|`sr`|
|Swedish|`sv`|
|Tamil|`ta`|
|Telugu|`te`|
|Tetum|`tet`|
|Turkish|`tr`|
|Ukrainian|`uk`|
|Urdu|`ur`|
|Igpay Atinlay|`x-pig-latin`|
|simplified Chinese|`zh`|
|traditional Chinese|`zh-tw`|

View File

@ -139,6 +139,7 @@ The `dyson` fan platform allows you to control your Dyson Purifier fans.
- Pure Cool link (desk and tower)
- Pure Hot+cool link (see climate part) for thermal control
- Pure Cool 2018 (DP04 and TP04)
### {% linkable_title Attributes %}
@ -146,8 +147,14 @@ There are several attributes which can be used for automations and templates.
| Attribute | Description |
| --------- | ----------- |
| `is_night_mode` | A boolean that indicates if the night mode of the fan device is on.
| `is_auto_mode` | A boolean that indicates if the auto mode of the fan device is on.
| `night_mode` | A boolean that indicates if the night mode of the fan device is on.|
| `auto_mode` | A boolean that indicates if the auto mode of the fan device is on.|
| `angle_low` | Int (between 5 and 355) that indicates the low angle of oscillation (only for DP04 and TP04).|
| `angle_high` | Int (between 5 and 355) that indicates the high angle of oscillation (only for DP04 and TP04).|
| `flow_direction_front` | Boolean that indicates if the frontal flow direction is enabled (only for DP04 and TP04).|
| `timer` | Attribute that indicates the status of the auto power off timer, can be either 'OFF' or an integer representing the time remaining until shutdown in minutes (only for DP04 and TP04).|
| `hepa filter` | State of the fan's HEPA filter in % (only for DP04 and TP04).|
| `carbon filter` | State of the fan's carbon filter in % (only for DP04 and TP04).|
## {% linkable_title Sensor %}

View File

@ -40,6 +40,11 @@ port:
required: false
default: 88
type: integer
rtsp_port:
description: The port that the camera uses for RTSP. This is normally auto-discovered but some models may need this set, such as the R2 and R2C.
required: false
default: None
type: integer
username:
description: The username for accessing your camera.
required: true

View File

@ -0,0 +1,75 @@
---
layout: page
title: "Genius Hub"
description: "Instructions on how to integrate Genius Hub with Home Assistant."
date: 2019-03-03 16:00
sidebar: true
comments: false
sharing: true
footer: true
logo: geniushub.png
ha_category:
- Climate
ha_release: 0.92
ha_iot_class: Local Polling
---
The `geniushub` integration links Home Assistant with your Genius Hub for controlling climate devices (the hub does not have to be in the same network as HA).
Each Zone controlled by your Genius hub will report back the state, mode, setpoint and temperature. Other properties are available via the device's attributes.
There are two distinct options for accessing a Genius Hub:
### {% linkable_title Option 1: hub token only %}
- requires a **hub token** obtained from [https://my.geniushub.co.uk/tokens](https://my.geniushub.co.uk/tokens)
- uses the v1 API - which is well-documented
- polls Heat Genius' own servers (so is slower, say 10-20s response time)
### {% linkable_title Option 2: hub hostname/address with user credentials %}
- requires your **username** & **password**, as used with [https://www.geniushub.co.uk/app](https://www.geniushub.co.uk/app)
- uses the v3 API - results are WIP and may not be what you expect
- polls the hub directly (so is faster, say 1s response time)
## {% linkable_title Configuration %}
To add your Genius Hub into your Home Assistant installation, add one of the following to your `configuration.yaml` file.
If you want to poll Heat Genius' own servers:
```yaml
# Example configuration.yaml entry, using a Hub Token
geniushub:
token: GENIUS_HUB_TOKEN
```
Alternatively, if you want to poll the hub directly:
```yaml
# Example configuration.yaml entry, directly polling the Hub
geniushub:
host: IP_ADDRESS
username: GENIUS_HUB_USERNAME
password: GENIUS_HUB_PASSWORD
```
Note that if a `host` is used instead of `token`, then the `username` and `password` are also required.
{% configuration %}
token:
description: The Hub Token of the Genius Hub
required: true
type: string
host:
description: The hostname/IP address of the Genius Hub
required: true
type: string
username:
description: Your Genius Hub username
required: false
type: string
password:
description: Your Genius Hub password
required: false
type: integer
{% endconfiguration %}

View File

@ -22,6 +22,7 @@ The [Geolocation trigger](/docs/automation/trigger/#geolocation-trigger) can be
| Platform | Source |
|---------------------------------------------------|-------------------------------|
| GeoJSON Events | `geo_json_events` |
| IGN Sismología | `ign_sismologia` |
| NSW Rural Fire Service Incidents | `nsw_rural_fire_service_feed` |
| U.S. Geological Survey Earthquake Hazards Program | `usgs_earthquakes_feed` |

View File

@ -53,7 +53,7 @@ Since release 0.80, the `Authorization Code` type of `OAuth` account linking is
<p class='note'>
If you've added Home Assistant to the home screen, you have to first remove it from home screen, otherwise, this HTML5 app will show up instead of a browser. Using it would prevent Home Assistant to redirect back to the `Google Assistant` app.
If you're still having trouble, make sure that you're not connected to the same network Home Assistant is running on, e.g., use 4G/LTE instead.
</p>
@ -129,11 +129,11 @@ project_id:
description: Project ID from the Actions on Google console (looks like `words-2ab12`)
required: true
type: string
allow_unlock:
description: "When True, allows Google Assistant to unlock locks."
secure_devices_pin:
description: "Pin code to say when you want to interact with a secure device."
required: false
type: boolean
default: false
type: string
default: ""
api_key:
description: Your Homegraph API key (for the `google_assistant.request_sync` service)
required: false
@ -199,8 +199,8 @@ Currently, the following domains are available to be used with Google Assistant,
### {% linkable_title Media Player Sources %}
Media Player sources are sent via the Modes trait in Google Assistant.
There is currently a limitation with this feature that requires a hard-coded set of settings. Because of this, the only sources that will be usable by this feature are listed here:
Media Player sources are sent via the Modes trait in Google Assistant.
There is currently a limitation with this feature that requires a hard-coded set of settings. Because of this, the only sources that will be usable by this feature are listed here:
https://developers.google.com/actions/reference/smarthome/traits/modes
#### Example Command:
@ -213,7 +213,7 @@ Entities that have not got rooms explicitly set and that have been placed in Hom
### {% linkable_title Climate Operation Modes %}
There is not an exact 1-1 match between Home Assistant and Google Assistant for the available operation modes.
There is not an exact 1-1 match between Home Assistant and Google Assistant for the available operation modes.
Here are the modes that are currently available:
- off

View File

@ -1,7 +1,7 @@
---
layout: page
title: "Google Text-to-Speech"
description: "Instructions on how to setup Google Text-to-Speech with Home Assistant."
title: "Google Translate Text-to-Speech"
description: "Instructions on how to setup Google Translate Text-to-Speech with Home Assistant."
date: 2016-12-13 07:00
sidebar: true
comments: false
@ -12,9 +12,14 @@ ha_category: Text-to-speech
ha_release: 0.35
redirect_from:
- /components/tts.google/
- /components/google/
---
The `google` text-to-speech platform uses [Google Text-to-Speech engine](https://console.developers.google.com/apis/library/texttospeech.googleapis.com) Text-to-Speech engine to read a text with natural sounding voices.
The `google_translate` text-to-speech platform uses unofficial [Google Translate Text-to-Speech engine](https://translate.google.com/) to read a text with natural sounding voices.
<p class='note'>
This platform renamed to `google_translate` from `google` since release 0.92
</p>
## {% linkable_title Configuration %}
@ -23,7 +28,7 @@ To enable text-to-speech with Google, add the following lines to your `configura
```yaml
# Example configuration.yaml entry
tts:
- platform: google
- platform: google_translate
```
{% configuration %}
@ -44,7 +49,7 @@ A full configuration sample including optional variables:
```yaml
# Example configuration.yaml entry
tts:
- platform: google
- platform: google_translate
language: 'de'
```

View File

@ -27,16 +27,37 @@ There is currently support for the following device types within Home Assistant:
Menu: *Configuration* -> *Integrations*
Configure the integration:
* Enter your **Google Mail Address** and **Password**
* In the authentication form there is an Optional Field: **Authorization Code** which should only be used if you get an invalid login error with email and password (see note below for details).
* If you secured your account with 2-factor authentication you will be asked for a 2-factor authentication token.
- Enter your **Google Mail Address** and **Password**
- If you secured your account with 2-factor authentication you will be asked for a 2-factor authentication token.
## {% linkable_title Manual Authentication %}
If you are sure your email and password are correct, but the component says the login is invalid then you would need to use the manual authentication method.
To use the manual method, first you would need to obtain an authorization code (see <a href="#steps-to-obtain-authorization-code">instructions below</a> for details).
Once the code is obtained fill in the form with your email, password and the authorization code to complete authentication.
### {% linkable_title Steps to obtain Authorization Code %}:
1. To obtain your authorization code, open [this URL](https://accounts.google.com/o/oauth2/programmatic_auth?scope=https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthLogin+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&client_id=936475272427.apps.googleusercontent.com&device_name=hangups) in your browser.
2. Log into your Google account normally.
3. You should be redirected to a loading screen. Copy the `oauth_code` cookie value set by this page and paste it here.
To obtain the `oauth_code` cookie value using Chrome or Firefox, follow the steps below:
* Press F12 to open developer tools.
* Select the "Application" (Chrome) or "Storage" (Firefox) tab.
* In the sidebar, expand "Cookies" and select `https://accounts.google.com`
* In the cookie list, double click on the value for the `oauth_code` cookie to select it, and copy the value. This is the authorization code
<p class='note'>
You can't write messages to yourself or get notifications in a group, if "you" write the message. The best way is to create a new Google Hangouts account for this integration.<br>
<br>
If you secured your account with 2-factor authentication: Only verification by app or SMS are supported. There is no support for verification by prompt on your phone.<br>
<br>
If you are sure your email and password are correct, but the component says the login is invalid, wait a few hours and try again. It might be that Google asks for a captcha which we can't support. Google does not provide official support for using bots with Google Hangouts, that's why we have to work around this.
The manual authentication work-around is a result of unofficial support for using bots in hangouts from Google.
</p>
The authentication token will be generated and stored internally.
@ -291,4 +312,4 @@ The conversations has to be precreated, the conversation id can be obtained from
This may have more if the account is in multiple hangout conversations, for configuring the bot to be in a conversation you will need the ID that would be where `<Hangout ID>` is in that example. Make sure to use quotes around the conversation id or alias to escape special characters (`!`, and `#`) in YAML.
To use notifications, please see the [getting started with automation page](/getting-started/automation/).
To use notifications, please see the [getting started with automation page](/getting-started/automation/).

View File

@ -0,0 +1,62 @@
---
layout: page
title: "Denon HEOS"
description: "Instructions on how to integrate Denon HEOS into Home Assistant."
date: 2019-03-06 22:00
sidebar: true
comments: false
sharing: true
footer: true
logo: heos.png
ha_category: Media Player
ha_release: 0.92
ha_iot_class: Local Push
---
The HEOS integration adds support for [HEOS](http://heosbydenon.denon.com) capable products, such as speakers, amps, and receivers (Denon and Marantz) into Home Assistant. Features currently include:
- Each device is represented as a media player entity
- View the currently playing media
- Control play mode (play, pause, stop, next and previous), volume, mute and shuffle
- Clear playlist
- Select source from device physical inputs and HEOS favorites
## {% linkable_title Configuration %}
HEOS devices are discovered and setup automatically when the [discovery](/components/discovery) component is enabled. Alternatively, the component can be setup through the frontend control panel integrations page or manually by adding the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
heos:
host: IP_ADDRESS
```
{% configuration %}
host:
description: "Address of the device. Example: 192.168.1.32."
required: true
type: string
{% endconfiguration %}
<p class='note info'>
A connection to a single device enables control for all devices on the network. If you have multiple HEOS devices, enter the host of one that is connected to the LAN via wire or has the strongest wireless signal.
</p>
## {% linkable_title Notes %}
- HEOS groups are not currently supported.
- Receivers with multiple zones are represented as a single media player. They will be turned on when playback is started, but cannot be turned off by the integration at this time.
## {% linkable_title Debugging %}
The HEOS component will log additional information about commands, events, and other messages when the log level is set to `debug`. Add the the relevent line below to the `configuration.yaml` to enable debug logging:
```yaml
logger:
default: info
logs:
homeassistant.components.heos: debug
pyheos: debug
```

View File

@ -31,9 +31,13 @@ homekit:
- alarm_control_panel
- light
- media_player
include_entities:
- binary_sensor.living_room_motion
entity_config:
alarm_control_panel.home:
code: 1234
binary_sensor.living_room_motion:
linked_battery_sensor: sensor.living_room_motion_battery
light.kitchen_table:
name: Kitchen Table Light
lock.front_door:
@ -113,6 +117,10 @@ homekit:
description: Name of the entity to show in HomeKit. HomeKit will cache the name on the first run so a device must be removed and then re-added for any change to take effect.
required: false
type: string
linked_battery_sensor:
description: The `entity_id` of a `sensor` entity to use as the battery of the accessory. HomeKit will cache an accessory's feature set on the first run so a device must be removed and then re-added for any change to take effect.
required: false
type: string
code:
description: Code to `arm / disarm` an alarm or `lock / unlock` a lock. Only applicable for `alarm_control_panel` or `lock` entities.
required: false
@ -400,7 +408,7 @@ Pairing works fine when the filter is set to only include `demo.demo`, but fails
#### {% linkable_title Pairing hangs - no error %}
1. Make sure that you don't try to add more than 100 accessories, see [device limit](#device-limit). In rare cases, one of your entities doesn't work with the HomeKit component. Use the [filter](#configure-filter) to find out which one. Feel free to open a new issue in the `home-assistant` repo, so we can resolve it.
2. Check logs, and search for `Starting accessory Home Assistant Bridge on address`. Make sure Home Assistant Bridge hook ups to a correct interface. If it did not, explicitly set `homekit.ip_address` configuration variable.
2. Check logs, and search for `Starting accessory Home Assistant Bridge on address`. Make sure Home Assistant Bridge hook ups to a correct interface. If it did not, explicitly set `homekit.ip_address` configuration variable.
#### {% linkable_title Duplicate AID found when attempting to add accessory %}
@ -439,3 +447,7 @@ Unfortunately, that sometimes happens at the moment. It might help to close the
#### {% linkable_title Accessories not responding / behaving unusual - Upgrade from `0.65.x` %}
To fix this, you need to unpair the `Home Assistant Bridge`, delete the `.homekit.state` file ([guide](#deleting-the-homekitstate-file)) and pair it again. This should only be an issue if you're upgrading from `0.65.x` or below.
#### {% linkable_title The linked battery sensor isn't recognized %}
Try removing the entity from HomeKit and then adding it again. If you are adding this config option to an existing entity in HomeKit, any changes you make to this entity's config options won't appear until the accessory is removed from HomeKit and then re-added.

View File

@ -95,6 +95,7 @@ authtoken:
* Window Rotary Handle Sensor (*HmIP-SRH*)
* Smoke sensor and alarm (*HmIP-SWSD*)
* Motion Detector with Brightness Sensor - indoor (*HmIP-SMI*)
* Motion Detector with Brightness Sensor - outdoor (*HmIP-SMO*)
* Water Sensor (*HmIP-SWD*)
* homematicip_cloud.climate
@ -126,13 +127,15 @@ authtoken:
* Temperature and Humidity Sensor with display - indoor (*HmIP-STHD*)
* Temperature and Humidity sensor - outdoor (*HmIP-STHO, -A*)
* Motion Detector with Brightness Sensor - indoor (*HmIP-SMI*)
* Motion Detector with Brightness Sensor - outdoor (*HmIP-SMO*)
* Light Sensor - outdoor (*HmIP-SLO*)
* homematicip_cloud.switch
* Pluggable Switch (*HmIP-PS*)
* Pluggable Switch and Meter (*HmIP-PSM*) - should also work with (*HmIP-PSM-CH, -IT, -UK, -PE*)
* Switch Actuator for brand switches with signal lamp (*HmIP-BSL*)
* Open Collector Module Receiver - 8x (*HmIP-MOD-OC8)
* Open Collector Module Receiver - 8x (*HmIP-MOD-OC8*)
* Multi IO Box - 2x (*HmIP-MIOB*)
* homematicip_cloud.weather
* Weather Sensor basic (*HmIP-SWO-B*)

View File

@ -0,0 +1,96 @@
---
layout: page
title: "IGN Sismología"
description: "Instructions on how to integrate the Instituto Geográfico Nacional Sismología (Earthquakes) Feed feed into Home Assistant."
date: 2019-04-04 08:00
sidebar: true
comments: false
sharing: true
footer: true
logo: ign-sismologia.png
ha_category: Geolocation
ha_iot_class: Cloud Polling
ha_release: 0.92
---
The `ign_sismologia` platform lets you integrate a GeoRSS feed provided by the
Spanish [Instituto Geográfico Nacional](http://www.ign.es/) with information
about seismic events like earthquakes on the Iberian Peninsula and Canary
Islands. It retrieves incidents from a feed and shows information of those
incidents filtered by distance to Home Assistant's location.
Entities are generated, updated and removed automatically with each update
from the feed. Each entity defines latitude and longitude and will be shown
on the default map automatically, or on a map card by defining the source
`ign_sismologia`. The distance in kilometers is available as the state
of each entity.
<p class='img'>
<img src='{{site_root}}/images/screenshots/ign-sismologia-feed-map.png' />
</p>
The data is updated every 5 minutes.
## {% linkable_title Configuration %}
To integrate the IGN Sismología feed, add the following lines to your `configuration.yaml`.
```yaml
# Example configuration.yaml entry
geo_location:
- platform: ign_sismologia
```
{% configuration %}
minimum_magnitude:
description: The minimum magnitude of an earthquake to be included.
required: false
type: float
default: 0.0
radius:
description: The distance in kilometers around Home Assistant's coordinates in which seismic events are included.
required: false
type: float
default: 50.0
latitude:
description: Latitude of the coordinates around which events are considered.
required: false
type: string
default: Latitude defined in your `configuration.yaml`
longitude:
description: Longitude of the coordinates around which events are considered.
required: false
type: string
default: Longitude defined in your `configuration.yaml`
{% endconfiguration %}
## {% linkable_title State Attributes %}
The following state attributes are available for each entity in addition to
the standard ones:
| Attribute | Description |
|--------------------|-------------|
| latitude | Latitude of the earthquake. |
| longitude | Longitude of the earthquake. |
| source | `ign_sismologia` to be used in conjunction with `geo_location` automation trigger. |
| external_id | The external ID used in the feed to identify the earthquake in the feed. |
| title | Original title from the feed. |
| region | Textual description of named geographic region near to the event. |
| magnitude | Reported magnitude of the earthquake. |
| publication_date | Date and time when this event occurred. |
| image_url | URL to a map supplied in the feed marking the location of the event. This could for example be used in notifications. |
## {% linkable_title Full Configuration %}
```yaml
# Example configuration.yaml entry
geo_location:
- platform: ign_sismologia
radius: 100
minimum_magnitude: 2.0
latitude: 37.39
longitude: -5.99
```

View File

@ -29,6 +29,7 @@ With this setup sending and receiving commands to and from LCN modules is possib
There is currently support for the following device types within Home Assistant:
- [Binary Sensor](#binary_sensor)
- [Cover](#cover)
- [Light](#light)
- [Sensor](#sensor)
@ -49,6 +50,11 @@ lcn:
username: lcn
password: lcn
binary_sensors:
- name: Kitchen window
address: myhome.s0.m7
source: binsensor1
covers:
- name: Living room cover
address: myhome.s0.m7
@ -111,6 +117,24 @@ connections:
default: steps50
type: string
binary_sensors:
description: List of your binary sensors.
required: false
type: map
keys:
name:
description: "Name of the sensor."
required: true
type: string
address:
description: "[Address](/components/lcn#lcn-addresses) of the module/group."
required: true
type: string
source:
description: "Sensor source ([BINSENSOR](/components/lcn#ports), [SETPOINT](/components/lcn#variables-and-units), [KEYS](/components/lcn#keys))."
required: true
type: string
covers:
description: List of your covers.
required: false
@ -244,6 +268,7 @@ The platforms and service calls use several predefined constants as parameters.
| MOTOR_PORT | `motor1`, `motor2`, `motor3`, `motor4` |
| LED_PORT | `led1`, `led2`, `led3`, `led4`, `led5`, `led6`, `led7`, `led8`, `led9`, `led10`, `led11`, `led12` |
| LOGICOP_PORT | `logicop1`, `logicop2`, `logicop3`, `logicop4` |
| BINSENSOR_PORT | `binsensor1`, `binsensor2`, `binsensor3`, `binsensor4`, `binsensor5`, `binsensor6`, `binsensor7`, `binsensor8` |
The [MOTOR_PORT](/components/lcn#ports) values specify which hardware relay configuration will be used:
@ -271,8 +296,23 @@ The [MOTOR_PORT](/components/lcn#ports) values specify which hardware relay conf
| LED_STATE | `on`. `off`, `blink`, `flicker` |
| LOGICOP_STATE | `not`. `or`, `and` |
### {% linkable_title Keys %}:
Whenever a key has to be provided, it is defined by a joint string consisting of the table identifier (`a`, `b`, `c`, `d`) and the corresponding key number.
Examples: `a1`, `a5`, `d8`.
## {% linkable_title Platforms %}
### {% linkable_title Binary Sensor %}
The `lcn` binary sensor platform allows the monitoring of the following [LCN](http://www.lcn.eu) binary data sources:
- Binary hardware sensors
- Lock state of regulator setpoints
- Lock state of keys
The binary sensor can be used in automation scripts or in conjunction with `template` platforms.
### {% linkable_title Cover %}
The `lcn` cover platform allows the control of [LCN](http://www.lcn.eu) relays which have been configured as motor controllers.

View File

@ -8,12 +8,34 @@ comments: false
sharing: true
footer: true
logo: logi_circle.png
ha_category: Camera
ha_category:
- Camera
- Sensor
ha_release: 0.79
ha_iot_class: Cloud Polling
redirect_from:
- /components/camera.logi_circle/
- /components/sensor.logi_circle/
---
The `logi_circle` implementation allows you to integrate your [Logi Circle](https://circle.logi.com/) cameras in Home Assistant.
The `logi_circle` implementation allows you to integrate your [Logi Circle](https://circle.logi.com/) cameras in Home Assistant. To connect Logi Circle, you will have to [sign up for API access](#requesting-api-access) and get a `client_id`, `client_secret` and `api_key`.
## {% linkable_title Requesting API access %}
1. Navigate to the [Circle OAuth2 Client Request Form](https://docs.google.com/forms/d/184FUILJ10rVxotyOQR5DAiu6GcCbK31AZszUdzT1ybs).
2. Fill out your contact name and e-mail address.
3. For the User Visible Client Name, specify "Home Assistant"
3. Request the following scopes:
* `circle:activities`
* `circle:accessories`
* `circle:live_image`
* `circle:live`
* `circle:notifications`
* `circle:summaries`
4. Request the `authorization_code` grant type.
5. For the redirect URI, specify your Home Assistant URL followed by `/api/logi_circle`. For example, if your Home Assistant URL is `https://homeassistant.local`, then request `https://homeassistant.local/api/logi_circle`. The redirect URI _must_ be HTTPS.
Please note that the turn-around time for API access takes a few business days after which you will be contacted by Logitech using the email address you provided in the form.
## {% linkable_title Configuration %}
@ -22,19 +44,122 @@ To integrate cameras linked with your [Logi Circle](https://circle.logi.com/) ac
```yaml
# Example configuration.yaml entry
logi_circle:
username: YOUR_USERNAME
password: YOUR_PASSWORD
client_id: YOUR_CLIENT_ID
client_secret: YOUR_CLIENT_SECRET
api_key: YOUR_API_KEY
redirect_uri: YOUR_REDIRECT_URI
```
{% configuration %}
username:
description: The username for accessing your Logi Circle account.
client_id:
description: The client ID issued to you by Logitech.
required: true
type: string
password:
description: The password for accessing your Logi Circle account.
client_secret:
description: The client secret issued to you by Logitech.
required: true
type: string
api_key:
description: The API key issued to you by Logitech.
required: true
type: string
redirect_uri:
description: >
The redirect URI that corresponds to your Home Assistant instance.
It must match one of the redirect URIs specified when you requested API
access from Logitech.
required: true
type: string
{% endconfiguration %}
Finish its configuration by visiting the [Logi Circle camera](/components/camera.logi_circle/) or [Logi Circle sensor](/components/sensor.logi_circle/) documentation.
### {% linkable_title Camera %}
The `logi_circle` camera platform allows you to view still frames from your [Logi Circle](https://circle.logi.com/) camera's live stream in Home Assistant.
Logi Circle cameras support the `camera.turn_on` and `camera.turn_off` services. This will set the streaming mode property of your camera accordingly, controlling whether the live stream is available and activity recordings are captured.
### {% linkable_title Sensor %}
The `logi_circle` sensor platform lets you monitor sensors connected to your [Logi Circle](https://circle.logi.com) cameras in Home Assistant.
To customize which sensors are setup, you can extend the Logi Circle component configuration in your `configuration.yaml` file with the following settings:
```yaml
# Example configuration.yaml entry
logi_circle:
sensors:
monitored_conditions:
- battery_level
- last_activity_time
- recording
- signal_strength_category
- signal_strength_percentage
- streaming
```
By default, all sensors available from your Logi Circle devices will be monitored. Leave `monitored_conditions` blank to disable all sensors for the Logi Circle component. Devices without an internal battery will not expose a `battery_level` sensor.
{% configuration %}
sensor:
description: Configuration to pass to all sensors.
required: false
type: map
keys:
monitored_conditions:
description: The conditions to create sensors from.
required: false
type: list
default: all
keys:
battery_level:
description: Returns the battery level percentage from the camera.
last_activity_time:
description: Return the timestamp from the last time the Logi Circle camera detected any activity.
recording:
description: The camera's recording mode. If false, the camera will not capture activities.
signal_strength_category:
description: Return the WiFi signal level from the camera.
signal_strength_percentage:
description: Return the WiFi signal percentage from the camera.
streaming:
description: The soft on/off status of the camera.
{% endconfiguration %}
## {% linkable_title Services %}
The `logi_circle` platform exposes 3 services for interacting with your Logi Circle device. When calling a service with one or more entity IDs, please ensure you target the camera entity (eg. `camera.living_room_camera`).
### {% linkable_title Service `logi_circle.livestream_record` %}
Initiates a recording of the camera's live stream.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | Name(s) of entities to initiate a recording for, e.g., `camera.living_room_camera`. If blank, targets all Logi Circle cameras. |
| `filename ` | no | Template of a file name. Variable is `entity_id`, e.g., {% raw %}`/tmp/recording_{{ entity_id }}.mp4`{% endraw %}. |
| `duration` | no | Duration of recording, in seconds.
The path part of `filename` must be an entry in the `whitelist_external_dirs` in your [`homeassistant:`](/docs/configuration/basic/) section of your `configuration.yaml` file.
### {% linkable_title Service `logi_circle.livestream_snapshot` %}
Take a snapshot from a camera's live stream. This differs from the generic [snapshot](/components/camera/#service-snapshot) service in that explicitly requests a fresh image from Logi Circle's API. This will force cameras in a deep sleep state to wake.
Please note that new snapshots will only be generated if the cached snapshot is older than 30s. Requesting multiple snapshots in quick succession will likely return the same image. Likewise, requesting a snapshot from a camera that is actively streaming (ie. is not in deep sleep) will return a cached image no older than 30s.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | Name(s) of entities to create a live stream snapshot from, e.g., `camera.living_room_camera`. If blank, targets all Logi Circle cameras. |
| `filename` | no | Template of a file name. Variable is `entity_id`, e.g., {% raw %}`/tmp/snapshot_{{ entity_id }}.jpg`{% endraw %}. |
The path part of `filename` must be an entry in the `whitelist_external_dirs` in your [`homeassistant:`](/docs/configuration/basic/) section of your `configuration.yaml` file.
### {% linkable_title Service `logi_circle.set_config` %}
Sets a configuration property for your camera.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `entity_id` | yes | Name(s) of entities to set the operation mode for, e.g., `camera.living_room_camera`. If blank, targets all Logi Circle cameras. |
| `mode` | no | Configuration property to set. Allowed values: `LED`, `RECORDING_MODE` |
| `value` | no | Mode value. Allowed values: `true`, `false` |

View File

@ -0,0 +1,44 @@
---
layout: page
title: "N26"
description: "Instructions on how to integrate N26 component within Home Assistant."
date: 2019-03-11 20:00
sidebar: true
comments: false
sharing: true
footer: true
logo: n26.png
ha_category:
- Finance
- Sensor
- Switch
ha_release: 0.92
featured: false
ha_iot_class: "Local Polling"
---
The [N26](https://n26.com) integration for Home Assistant allows you to track your N26 account.
N26 is a bank from germany that launched as a start up. It is an "online only" bank in that it has no local "stores" to retrieve or deposit money and account management is done only through their web interface and mobile apps. The sensor allows to show account info including balance, spaces (sub-accounts within an account) and bank card status. The switch allows to change the "Blocked/Unblocked" status of an N26 bank card.
## {% linkable_title Configuration %}
Add the following entry to the `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
n26:
username: YOUR_EMAIL
password: YOUR_PASSWORD
```
{% configuration %}
username:
description: The account username.
required: true
type: string
password:
description: The account password.
required: true
type: string
{% endconfiguration %}

View File

@ -13,6 +13,7 @@ ha_category:
- Network
- Notifications
- Sensor
- Binary Sensor
ha_iot_class: Local Polling
redirect_from:
- /components/notify.netgear_lte/
@ -23,14 +24,11 @@ The Netgear LTE integration for Home Assistant allows you to observe and control
There is currently support for the following device types within Home Assistant:
- [Notifications](#notifications)
- [Sensor](#sensor)
- Notifications
- Sensors
- Binary Sensors
The integration provides:
* a notify service that will send an SMS
* a sensor with the number of unread SMS messages in the inbox
* a sensor with data usage
The integration supports sending notifications with SMS, reporting incoming SMS with events and reporting the modem and connection state in a number of sensors and binary sensors.
## {% linkable_title Configuration %}
@ -48,7 +46,10 @@ netgear_lte:
monitored_conditions:
- usage
- sms
binary_sensor:
monitored_conditions:
- wire_connected
- mobile_connected
```
{% configuration %}
@ -85,20 +86,91 @@ sensor:
default: usage
type: list
keys:
cell_id:
description: The Cell ID, a number identifying the base station.
connection_text:
description: A connection text, e.g., "4G".
connection_type:
description: The connection type, e.g., "IPv4Only".
current_band:
description: The radio band used, e.g., "LTE B3".
current_ps_service_type:
description: The service type, e.g. "LTE".
radio_quality:
description: A number with the radio quality in percent, e.g., "55"
register_network_display:
description: The name of the service provider.
rx_level:
description: The RSRP value, a measurement of the received power level, e.g., "-95".
sms:
description: Number of unread SMS messages in the modem inbox.
sms_total:
description: Number of SMS messages in the modem inbox.
tx_level:
description: Transmit power, e.g., "23".
upstream:
description: Current upstream connection, "WAN" or "LTE".
usage:
description: Amount of data transferred.
binary_sensor:
description: Configuration options for binary sensors.
required: false
type: map
keys:
monitored_conditions:
description: Binary sensor types to create.
required: false
default: mobile_connected
type: list
keys:
mobile_connected:
description: The LTE connection state.
wire_connected:
description: The wired uplink connection state.
roaming:
description: The current roaming state.
{% endconfiguration %}
## {% linkable_title Notifications %}
## {% linkable_title Events %}
The `netgear_lte` integration allows you to use a Netgear LTE modem for notifications from Home Assistant. The message will be sent as an SMS text message.
### {% linkable_title Event `netgear_lte_sms` %}
If you do not supply `notify` configuration, a default notification service with no default recipient is created.
Messages arriving in the modem inbox are sent as events of type `netgear_lte_sms` with the following content.
## {% linkable_title Sensor %}
| Event data attribute | Description |
| -------------------- | ---------------------------------------- |
| `host` | The modem that received the message.
| `sms_id` | The inbox ID of the received message.
| `from` | The sender of the message.
| `message` | The SMS message content.
The `netgear_lte` integration allows you to monitor your Netgear LTE modem.
## {% linkable_title Services %}
If you do not supply `sensor` configuration, a default set of sensors is created.
### {% linkable_title Service `netgear_lte.delete_sms` %}
The integration makes a service call available to delete messages from the modem inbox. This can be used to clean up after incoming SMS events.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |
| `host` | no | The modem that should have a message deleted.
| `sms_id` | no | Integer or list of integers with inbox IDs of messages to delete.
## {% linkable_title Examples %}
The following automation example processes incoming SMS messages with the [Conversation](/components/conversation/) integration and then deletes the message from the inbox.
```yaml
automation:
- alias: SMS conversation
trigger:
- platform: event
event_type: netgear_lte_sms
action:
- service: conversation.process
data_template:
text: '{{ trigger.event.data.message }}'
- service: netgear_lte.delete_sms
data_template:
host: '{{ trigger.event.data.host }}'
sms_id: '{{ trigger.event.data.sms_id }}'
```

View File

@ -0,0 +1,72 @@
---
layout: page
title: "OASA Telematics"
description: "Instructions on how to integrate bus and trolley arrival data for Greek OASA Telematics within Home Assistant."
date: 2019-03-05 21:52
sidebar: true
comments: false
sharing: true
footer: true
logo: oasa.png
ha_category:
- Transport
- Sensor
ha_iot_class: Cloud Polling
ha_release: 0.92
---
The `oasa_telematics` sensor will provide you with bus and trolley arrival times for Greek public transport for Athens, using real-time data from [OASA Telematics](http://telematics.oasa.gr/en/).
## {% linkable_title Configuration %}
Add a sensor to your `configuration.yaml` file as shown in the example:
```yaml
# Example configuration.yaml entry
sensor:
- platform: oasa_telematics
route_id: YOUR_ROUTE_ID
stop_id: 'YOUR_STOP_ID'
```
The `route_id` can be obtained by looking up the "LineCode" of the route you want at this link:
<http://telematics.oasa.gr/api/?act=webGetLines>
Then getting the "RouteCode" from this link:
<http://telematics.oasa.gr/api/?act=webGetRoutes&p1=LINE_CODE>
(Replace "LINE_CODE" with the "LineCode" you copied from the first link) find the route you need and copy the `RouteCode` field.
Next, get the `stop_id` from this link:
<http://telematics.oasa.gr/api/?act=webGetStops&p1=ROUTE_CODE>
(Replace "ROUTE_CODE" with the "RouteCode" you got from the previous link) find the stop you need and copy the `StopID` field. The route must pass from this stop in order for the sensor to work.
{% configuration %}
route_id:
description: The id of the public transport route.
required: true
type: int
stop_id:
description: The id of the public transport stop.
required: true
type: string
name:
description: A friendly name for this sensor.
required: false
default: OASA Telematics
type: string
{% endconfiguration %}
## {% linkable_title Examples %}
A more extensive example on how to use this sensor:
```yaml
# Example configuration.yaml entry
sensor:
- platform: oasa_telematics
route_id: 1965
stop_id: '090006'
```

View File

@ -14,13 +14,13 @@ redirect_from:
- /components/light.osramlightify/
---
The `osramlightify` platform allows you to integrate your [Osram Lightify](http://www.osram.com/osram_com/products/led-technology/lightify/index.jsp) into Home Assistant.
The `osramlightify` platform allows you to integrate your [Osram Lightify](https://www.osram.com/cb/lightify/index.jsp) into Home Assistant.
```yaml
# Example configuration.yaml entry
light:
- platform: osramlightify
host: 192.168.0.50
host: IP_ADDRESS
```
{% configuration %}
@ -29,13 +29,57 @@ host:
required: true
type: string
allow_lightify_nodes:
description: (true/false) Edit this to stop homeassistant from importing the lightify lights.
description: (true/false) If `true` then import individual lights, if `false` then skip them.
required: false
default: true
type: boolean
allow_lightify_sensors:
description: (true/false) If `true` then import contact and motion sensors, if `false` then skip them. Takes effect only if `allow_lightify_nodes` is `true`.
required: false
default: true
type: boolean
allow_lightify_switches:
description: (true/false) If `true` then import switches, if `false` then skip them. Takes effect only if `allow_lightify_nodes` is `true`.
required: false
default: true
type: boolean
allow_lightify_groups:
description: (true/false) Edit this to stop homeassistant from importing the lightify groups.
description: (true/false) If `true` then import groups, if `false` then skip them.
required: false
default: true
type: boolean
interval_lightify_status:
description: Minimum interval in seconds between querying light status (for both individual lights and groups).
required: false
default: 5
type: integer
interval_lightify_conf:
description: Minimum interval in seconds between querying groups and scenes configuration.
required: false
default: 3600
type: integer
{% endconfiguration %}
At the moment there is not much functionality for Osram Lightify switches and sensors.
The only thing that you can do out of the box is to track whether they are available or not.
Also for sensors a list of raw values is exposed as `sensor_values` attribute, and you can use them
in automations, if you know what particular values mean for your sensor.
It is suggested to make [scan_interval](https://www.home-assistant.io/docs/configuration/platform_options/#scan-interval)
(30 seconds by default) less or equal to `interval_lightify_status`, oherwise the latter won't work
as expected. Shorter `scan_interval` may improve synchronization speed between individual lights and
groups. For example, if you turn on a group, all its lights may be updated to `on` immediately,
without querying the bridge.
Please note that to update all light statuses, only one query to the bridge is actually needed.
If a group has associated scenes, they will be imported as light effects and visible in `Effect`
dropdown on UI. You can apply a scene by clicking an item from the dropdown or by calling
`light.turn_on` service:
```yaml
- service: light.turn_on
entity_id: light.bedroom
data:
effect: Romance
```

View File

@ -12,6 +12,7 @@ ha_category:
- Hub
- Alarm
- Binary Sensor
- Switch
ha_release: 0.54
ha_iot_class: Local Push
redirect_from:
@ -19,12 +20,13 @@ redirect_from:
- /components/binary_sensor.satel_integra/
---
The `satel_integra` component will allow Home Assistant users who own a Satel Integra alarm panel to leverage their alarm system and its sensors to provide Home Assistant with information about their homes. Connectivity between Home Assistant and the alarm is accomplished through a ETHM extension module that must be installed in the alarm. Compatible with ETHM-1 Plus module with firmware version > 2.00 (version 2.04 confirmed).
The `satel_integra` component will allow Home Assistant users who own a Satel Integra alarm panel to leverage their alarm system and its sensors to provide Home Assistant with information about their homes. Connectivity between Home Assistant and the alarm is accomplished through a ETHM extension module that must be installed in the alarm. Compatible with ETHM-1 Plus module with firmware version > 2.00 (version 2.04 confirmed).
There is currently support for the following device types within Home Assistant:
- Binary Sensor: Reports on zone or output statuses
- Alarm Control Panel: Reports on alarm status, and can be used to arm/disarm the system
- Switch: allows for setting states of selected outputs
- Alarm Control Panel: represents the partition (in Polish: "strefa"). Reports its status, and can be used to arm/disarm the the partition
The module communicates via Satel's open TCP protocol published on their website. It subscribes for new events coming from alarm system and reacts to them immediately.
@ -34,7 +36,7 @@ Please note that **ETHM-1 module is currently not supported**: it does not provi
The library currently doesn't support encrypted connection to your alarm, so you need **to turn off encryption for integration protocol**. In Polish: "koduj integracje" must be unchecked. You will find this setting in your DloadX program.
A list of all zone and output IDs can be acquired by running DloadX program and connecting to your alarm.
A list of all partition, zone and output IDs can be acquired by running DloadX program and connecting to your alarm.
For the Binary Sensor check the [type/class](/components/binary_sensor/) list for a possible visualization of your zones. Note: If no zones or outputs are specified, Home Assistant will not load any binary_sensor components."
@ -59,16 +61,20 @@ port:
required: false
default: 7094
type: integer
partition:
description: The partition to operate on. Integra can support multiple partitions, this platform only supports one.
partitions:
description: List of the partitions to operate on.
required: false
default: 1
type: integer
arm_home_mode:
description: The mode in which arm Satel Integra when 'arm home' is used. Possible options are `1`,`2` or `3`. For more information on what are the differences between them, please refer to Satel Integra manual.
required: false
default: 1
type: integer
type: [integer, list]
keys:
name:
description: Name of the partition.
required: true
type: string
arm_home_mode:
description: The mode in which the partition is armed when 'arm home' is used. Possible options are `1`,`2` or `3`. For more information on what the differences are between them, please refer to Satel Integra manual.
required: false
default: 1
type: integer
zones:
description: "This parameter lists the zones (or inputs) that will be visible by Home Assistant. For each zone, a proper ID must be given as well as its name. The name is arbitrary and does not need to match the one specified in Satel Integra alarm configuration."
required: false
@ -89,14 +95,23 @@ outputs:
type: [integer, list]
keys:
name:
description: Name of the zone.
description: Name of the output.
required: true
type: string
type:
description: The zone type.
description: The type of the device - just for presentation.
required: false
default: motion
type: string
switchable_outputs:
description: "Switchable outputs. These will show up as switches within Home Assistant."
required: false
type: [integer, list]
keys:
name:
description: Name of the output.
required: true
type: string
{% endconfiguration %}
## {% linkable_title Full examples %}
@ -106,8 +121,12 @@ outputs:
satel_integra:
host: 192.168.1.100
port: 7094
partition: 1
arm_home_mode: 1
partitions:
01:
name: 'House'
arm_home_mode: 2
02:
name: 'Garage'
zones:
01:
name: 'Bedroom'
@ -134,6 +153,14 @@ satel_integra:
32:
name: 'Alarm power problem'
type: 'safety'
switchable_outputs:
05:
name: 'Gate open'
06:
name: 'Gate close'
14:
name: 'Garden light'
```
Having configured the zones and the outputs, you can use them for automation, such as to react on the movement in your bedroom.

View File

@ -1,54 +0,0 @@
---
layout: page
title: "Logi Circle Sensor"
description: "Instructions on how to integrate your Logi Circle cameras within Home Assistant."
date: 2018-09-08 11:00
sidebar: true
comments: false
sharing: true
footer: true
logo: logi_circle.png
ha_category: Camera
ha_release: 0.79
ha_iot_class: Cloud Polling
---
The `logi_circle` sensor platform lets you monitor sensors connected to your [Logi Circle](https://circle.logi.com) cameras in Home Assistant.
<p class='note'>
You must have the [Logi Circle component](/components/logi_circle/) configured to use this sensor platform.
</p>
## {% linkable_title Configuration %}
Once you have enabled the [Logi Circle component](/components/logi_circle), add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: logi_circle
```
{% configuration %}
monitored_conditions:
description: Conditions to display in the frontend. The following conditions can be monitored. If not specified, all conditions supported by your camera will be enabled.
required: false
type: list
keys:
battery_level:
description: Return the battery level percentage from the camera.
last_activity_time:
description: Return the timestamp from the last time the Logi Circle camera detected any activity.
privacy_mode:
description: Return the privacy mode status from the camera.
signal_strength_category:
description: Return the WiFi signal level from the camera.
signal_strength_percentage:
description: Return the WiFi signal percentage from the camera.
speaker_volume:
description: Return the relative speaker volume from the camera (0-100%).
streaming_mode:
description: Return the streaming mode status from the camera.
{% endconfiguration %}
Currently it supports all 1st and 2nd generation cameras. Cameras without an internal battery will not expose a `battery_level` sensor.

View File

@ -22,7 +22,9 @@ The way these sensors are displayed in the frontend can be modified in the [cust
- **battery**: Percentage of battery that is left.
- **humidity**: Percentage of humidity in the air.
- **illuminance**: The current light level in lx or lm.
- **signal_strength**: Signal strength in dB or dBm.
- **temperature**: Temperature in °C or °F.
- **power**: Power in W or kW.
- **pressure**: Pressure in hPa or mbar.
- **timestamp**: Datetime object or timestamp string.

View File

@ -0,0 +1,69 @@
---
layout: page
title: "Somfy MyLink"
description: "Instructions on how to integrate Somfy MyLink devices with Home Assistant."
date: 2019-03-29 12:00
sidebar: true
comments: false
sharing: true
footer: true
logo: tahoma.png
ha_category:
- Hub
- Cover
ha_release: 0.92
ha_iot_class: "Assumed State"
---
The `Somfy MyLink` integration is used as an interface to a compatible Somfy MyLink hub utilizing the `Synergy` API. It allows the addition of covers from the Somfy MyLink platform to Home Assistant.
To use your compatible `Somfy MyLink` devices in your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
somfy_mylink:
host: IP_ADDRESS
system_id: SYSTEM_ID
```
{% configuration %}
host:
description: The IP address of the Somfy MyLink hub device.
required: true
type: string
system_id:
description: The `System ID` of the Somfy MyLink hub. This can be found in the `Integration` menu in the mobile app.
required: true
type: string
default_reverse:
description: Sets the default reversal status of the cover. Possible values are `true` or `false`. This value can be applied on a per-cover basis (see `entity_config` below)
required: false
type: boolean
default: false
entity_config:
description: Configuration for specific cover entities. All subordinate keys are the corresponding entity ids to the domains, e.g., `cover.bedroom_blinds`.
required: false
type: map
keys:
'`<ENTITY_ID>`':
description: Additional options for specific entities.
required: false
type: map
keys:
reverse:
description: Reverses the direction of the cover. Possible values are `true` or `false`.
required: false
type: boolean
default: false
{% endconfiguration %}
```yaml
# Advanced configuration.yaml entry setting specific options on a per-cover basis
somfy_mylink:
host: IP_ADDRESS
system_id: SYSTEM_ID
default_reverse: true
entity_config:
cover.outdoor_awning:
reverse: false
```

View File

@ -0,0 +1,83 @@
---
layout: page
title: "STIEBEL ELTRON"
description: "Instructions on how to integrate STIEBEL ELTRON integral ventilation and heat pump units into Home Assistant."
date: 2019-04-14 21:00 +0200
sidebar: true
comments: false
sharing: true
footer: true
logo: stiebel_eltron.png
ha_category:
- Climate
ha_release: 0.92
ha_iot_class: Local Polling
---
The `stiebel_eltron` component lets you control integral ventilation or heat pump units of [STIEBEL ELTRON](https://www.stiebel-eltron.com).
It requires the following components:
- Compatible STIEBEL ELTRON unit (see "Compatibility overview" in [Software Documentation Modbus TCP/IP](https://www.stiebel-eltron.ch/content/dam/ste/ch/de/downloads/kundenservice/smart-home/Modbus/Modbus%20Bedienungsanleitung.pdf))
- [ISG web](https://www.stiebel-eltron.com/en/home/products-solutions/renewables/controller_energymanagement/internet_servicegateway/isg_web.html), with the [Modbus module](https://www.stiebel-eltron.ch/de/home/service/smart-home/modbus.html) enabled
- IP network connection to the ISG web
## {% linkable_title Supported units %}
By now, the following units are tested:
- LWZ504e
- LWZ304
## {% linkable_title Operation modes %}
Only the standard HA operation modes are supported. The STIEBEL ELTRON modes are mapped and configurable as follows:
- Auto (STATE_AUTO): Automatic mode
- Eco (STATE_ECO): Standby mode
- Manual (STATE_MANUAL): Manual mode
- Off (STATE_OFF): DHW mode (domestic hot water mode, heating is switched off)
The HA operation mode 'On' is displayed, if the following STIEBEL ELTRON modes are configured directly on the unit:
- On (STATE_ON): Day mode, Setback mode or Emergency operation
## {% linkable_title Configuration %}
To enable this component, add the following lines to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
stiebel_eltron:
name: LWZ504e
```
{% configuration %}
name:
description: Displayed name of the unit.
required: false
default: Unnamed Device
type: string
hub:
description: The name of the hub where this slave is located.
required: false
default: default
type: string
{% endconfiguration %}
<p class='note'>
This component requires the [Modbus](/components/modbus/) component to be set up to work
</p>
Full configuration example including modbus setup shown below:
```yaml
# Full example configuration.yaml entry
modbus:
type: tcp
host: YOUR_ISGWEB_IP
port: 502
stiebel_eltron:
name: LWZ504e
```

View File

@ -0,0 +1,53 @@
---
layout: page
title: "Supla"
description: "Instructions for integration with Supla Cloud's Web API"
date: 2019-03-14 20:05
sidebar: true
comments: true
sharing: true
footer: true
logo: supla.png
ha_release: 0.92
ha_category:
- Hub
- Cover
ha_iot_class: Cloud Polling
redirect_from:
- /components/cover.supla/
---
The [Supla](http://supla.org) is an Open Source home automation system for ESP8266 based devices. It has its own set of protocols, it's own firmware and commercially available devices (produced for example by [Zamel](https://supla.zamel.pl/))
Currently only covers (shutters in Supla's lingo) are supported, but, thanks to comprehensive and universal REST API, it's pretty easy to add more.
Right now it's impossible to add single devices -- all of them are discovered from
Supla Cloud's servers.
## {% linkable_title Configuration %}
To use Supla devices in your installation, add the following to your `configuration.yaml`:
```yaml
supla:
servers:
- server: svr1.supla.org
access_token: your_really_long_access_token
```
{% configuration %}
servers:
description: List of server configurations.
requires: true
type: list
server:
description: Address of your Supla Cloud server (either IP or DNS name)
required: true
type: string
access_token:
description:
An access token for REST API configuration. Can be acquired from
http[s]://your.server.org/integrations/tokens (please add at least Channel's Read and Action Execution permissions).
required: true
type: string
{% endconfiguration %}

View File

@ -21,7 +21,7 @@ If you don't need to receive messages, you can use the [broadcast](/components/t
## {% linkable_title Notification services %}
Available services: `send_message`, `send_photo`, `send_document`, `send_location`, `send_sticker`, `edit_message`, `edit_replymarkup`, `edit_caption` and `answer_callback_query`.
Available services: `send_message`, `send_photo`, `send_document`, `send_location`, `send_sticker`, `edit_message`, `edit_replymarkup`, `edit_caption`, `answer_callback_query`, `delete_message` and `leave_chat`.
### {% linkable_title Service `telegram_bot.send_message` %}
@ -161,6 +161,14 @@ Delete a previously sent message in a conversation.
| `message_id` | no | Id of the message to delete. When answering a callback from a pressed button, the id of the origin message is in: {% raw %}`{{ trigger.event.data.message.message_id }}`{% endraw %}. You can use `"last"` to refer to the last message sent to `chat_id`. |
| `chat_id` | no | The chat_id where to delete the message. |
### {% linkable_title Service `telegram_bot.leave_chat` %}
Remove the bot from the chat group where it was added.
| Service data attribute | Optional | Description |
|---------------------------|----------|--------------------------------------------------|
| `chat_id` | no | The chat_id from where to remove the bot. |
## {% linkable_title `telegram` notification platform %}
The [`telegram` notification platform](/components/notify.telegram/) requires the `telegram_bot` component to work with, and it's designed to generate a customized shortcut (`notify.USERNAME`) to send notifications (messages, photos, documents and locations) to a particular `chat_id` with the old syntax, allowing backward compatibility.

View File

@ -28,8 +28,13 @@ device_tracker:
```
{% configuration %}
model:
description: Ubee Router model, e.g. `EVW32C-0N`. If omitted, model will be detected automatically.
required: false
default: detect
type: string
host:
description: The IP address of your router, e.g., `192.168.1.1`.
description: The IP address of your router, e.g. `192.168.1.1`.
required: true
type: string
username:
@ -42,5 +47,14 @@ password:
type: string
{% endconfiguration %}
Supported models:
- EVW3200-Wifi
- EVW320B
- EVW32C-0N
<p class='note info'>
This component uses <a href='https://github.com/mzdrale/pyubee'>pyUbee library</a>, which was tested with models listed above. If you have different model of <a href='http://www.ubeeinteractive.com/products'>Ubee Router</a> and it doesn't work with this component, please <a href='https://github.com/mzdrale/pyubee/issues/new'>create pyUbee issue</a> to request for support for your model.
</p>
By default, Home Assistant pulls information about connected devices from Ubee router every 5 seconds.
See the [device tracker component page](/components/device_tracker/) for instructions on how to configure the people to be tracked.

View File

@ -50,12 +50,12 @@ retain:
type: boolean
default: false
payload_turn_on:
description: "The payload to send to the `command_topic` to begin the cleaning cycle."
description: The payload to send to the `command_topic` to begin the cleaning cycle.
required: false
type: string
default: turn_on
payload_turn_off:
description: "The payload to send to the `command_topic` to turn the vacuum off."
description: The payload to send to the `command_topic` to turn the vacuum off.
required: false
type: string
default: turn_off
@ -89,7 +89,7 @@ battery_level_topic:
required: false
type: string
battery_level_template:
description: "Defines a [template](/topics/templating/) to define the battery level of the vacuum."
description: Defines a [template](/topics/templating/) to define the battery level of the vacuum.
required: false
type: string
charging_topic:
@ -97,7 +97,7 @@ charging_topic:
required: false
type: string
charging_template:
description: "Defines a [template](/topics/templating/) to define the charging state of the vacuum."
description: Defines a [template](/topics/templating/) to define the charging state of the vacuum.
required: false
type: string
cleaning_topic:
@ -105,7 +105,7 @@ cleaning_topic:
required: false
type: string
cleaning_template:
description: "Defines a [template](/topics/templating/) to define the cleaning state of the vacuum."
description: Defines a [template](/topics/templating/) to define the cleaning state of the vacuum.
required: false
type: string
docked_topic:
@ -113,7 +113,7 @@ docked_topic:
required: false
type: string
docked_template:
description: "Defines a [template](/topics/templating/) to define the docked state of the vacuum."
description: Defines a [template](/topics/templating/) to define the docked state of the vacuum.
required: false
type: string
error_topic:
@ -121,7 +121,7 @@ error_topic:
required: false
type: string
error_template:
description: "Defines a [template](/topics/templating/) to define potential error messages emitted by the vacuum."
description: Defines a [template](/topics/templating/) to define potential error messages emitted by the vacuum.
required: false
type: string
fan_speed_topic:
@ -129,7 +129,7 @@ fan_speed_topic:
required: false
type: string
fan_speed_template:
description: "Defines a [template](/topics/templating/) to define the fan speed of the vacuum."
description: Defines a [template](/topics/templating/) to define the fan speed of the vacuum.
required: false
type: string
set_fan_speed_topic:
@ -211,7 +211,7 @@ vacuum:
The above configuration for this component expects an MQTT protocol like the following.
#### Basic Commands
#### {% linkable_title Basic Commands %}
MQTT topic: `vacuum/command`
@ -225,7 +225,7 @@ Possible MQTT payloads:
- `locate` - Locate the vacuum (typically by playing a song)
- `start_pause` - Toggle the vacuum between cleaning and stopping
#### Set Fan Speed
#### {% linkable_title Set Fan Speed %}
MQTT topic: `vacuum/set_fan_speed`
@ -236,13 +236,41 @@ Possible MQTT payloads:
- `high` - High fan speed
- `max` - Max fan speed
#### Send Custom Command
#### {% linkable_title Send Custom Command %}
Vacuum send_command allows three parameters:
- entity_id
- command
- params - optional
If params are not provided it sends command as payload to MQTT send_command topic.
If params are provided service sends json as payload with such structure:
```
{
'command': 'command',
'param1-key': 'param1-value'
}
```
Service trigger example:
```
- alias: Push command based on sensor
trigger:
- platform: state
entity_id: sensor.sensor
action:
service: vacuum.send_command
data:
entity_id: 'vacuum.vacuum_entity'
command: 'custom_command'
params:
- key: value
```
MQTT topic: `vacuum/send_command`
MQTT payload for `send_command` can be an arbitrary value handled by the vacuum's MQTT-enabled firmware.
#### Status/Sensor Updates
#### {% linkable_title Status/Sensor Updates %}
MQTT topic: `vacuum/state`

View File

@ -40,7 +40,7 @@ beta:
type: boolean
default: false
image:
description: The image you want to check against, this is only supported for `hassio`, see full list under.
description: The image you want to check against, this is only supported for `hassio` and `docker`, see full list under.
required: false
type: string
default: default
@ -51,7 +51,7 @@ source:
default: local
{% endconfiguration %}
### {% linkable_title Supported images for Hassio %}
### {% linkable_title Supported images for Hassio and Docker %}
`default`, `qemux86`, `qemux86-64`, `qemuarm`, `qemuarm-64`, `intel-nuc`, `raspberrypi`, `raspberrypi2`, `raspberrypi3`, `raspberrypi3-64`, `tinker`, `odroid-c2`, `odroid-xu`

View File

@ -373,6 +373,11 @@ camera_image:
required: false
description: A camera entity.
type: string
camera_view:
required: false
description: '"live" will show the live view if `stream` is enabled.'
default: auto
type: string
state_image:
required: false
description: '[State-based images](#how-to-use-state_image)'

View File

@ -30,6 +30,11 @@ camera_image:
required: false
description: "Camera `entity_id` to use. (not required if `entity` is already a camera-entity)."
type: string
camera_view:
required: false
description: '"live" will show the live view if `stream` is enabled.'
default: auto
type: string
image:
required: false
description: URL of an image.

View File

@ -38,6 +38,11 @@ camera_image:
required: false
description: Camera entity as Background image.
type: string
camera_view:
required: false
description: '"live" will show the live view if `stream` is enabled.'
default: auto
type: string
state_image:
required: false
description: Background image based on entity state.

View File

@ -0,0 +1,995 @@
---
layout: post
title: "0.92: HEOS, Somfy MyLink, Genius Hub"
description: "Get your whole home audio "
date: 2019-04-24 00:11:03
date_formatted: "April 24, 2019"
author: Paulus Schoutsen
author_twitter: balloob
comments: true
categories: Release-Notes
og_image: /images/blog/2019-04-release-92/components.png
---
<a href='/components/#version/0.92'><img src='/images/blog/2019-04-release-92/components.png' style='border: 0;box-shadow: none;'></a>
It's time for the 0.92 release. We took a week extra for this release, because we have been very busy in changing how we load everything under the hood. Our new standard for integrations will help us in the future to streamline development, release notes, documentation and updates. If you want to know what we're up to, or if you maintain custom components, check out our developer blog: [Introducing integrations](https://developers.home-assistant.io/blog/2019/04/12/new-integration-structure.html).
## {% linkable_title Lovelace streams cameras! %}
This release continues to improve on our new camera streaming feature released with Home Assistant 0.90. This release adds support to Lovelace to show camera streams as part of your cards. Support has been aded to picture glance, picture entity and picture element cards. Just add `camera_view: live` to the configuration. Be careful showing live streams on mobile, camera streams can use a lot of data. We are exploring being able to add a mode to only show the streams on desktop.
## {% linkable_title HEOS integration %}
The HEOS integration adds support for HEOS capable products, such as speakers, amps, and receivers (Denon and Marantz) into Home Assistant. The features include controlling players, viewing playing media info, selecting the source from physical inputs and HEOS favorites, and more. We have established a relationship with the lead architect for the HEOS API and look forward to adding more features through this collaboration. Thanks to [@easink] for the initial contribution.
Finally, if you are still receiving a message that your configuration contains extra keys, this is the last release that this will be a warning. In the next release this will treated as invalid config for that integration.
## {% linkable_title New Integrations %}
- Add HEOS media player component ([@easink], [@andrewsayre] - [#21721], [#23222], [#22517], [#22554], [#22592], [#22652], [#22903], [#22913], [#23063], [#23222])
- Add N26 component ([@markusressel] - [#22684]) ([n26 docs]) (new-integration) (new-platform)
- Add Somfy MyLink support for Covers ([@bendews] - [#22514]) ([somfy_mylink docs]) (new-integration) (new-platform)
- Instituto Geográfico Nacional Sismología (Earthquakes) Feed platform ([@exxamalte] - [#22696]) ([ign_sismologia docs]) (new-integration) (new-platform)
- Genius hub ([@GeoffAtHome] - [#21598]) ([geniushub docs]) (new-platform)
- Add support for Stiebel Eltron heat pumps ([@fucm] - [#21199]) ([stiebel_eltron docs]) (new-platform)
## {% linkable_title New Platforms %}
- Add LCN binary_sensor component ([@alengwenus] - [#22341]) ([lcn docs]) (new-platform)
- Ampio Smog Air Quality Sensor ([@kstaniek] - [#21152]) ([air_quality docs]) (new-platform)
- Rebrand Cisco Spark notify to be Cisco Webex Teams ([@fbradyirl] - [#21938]) ([cisco_webex_teams docs]) (new-platform)
- Add N26 component ([@markusressel] - [#22684]) ([n26 docs]) (new-integration) (new-platform)
- Add OASA Telematics greek public transport sensor component ([@panosmz] - [#22196]) ([oasa_telematics docs]) (new-platform)
- Initial Fibaro HC Climate support ([@pbalogh77] - [#20256]) ([fibaro docs]) (new-platform)
- Camera component for BOM integration ([@maddenp] - [#22816]) ([bom docs]) (new-platform)
- Add amcrest binary_sensors ([@pnbruckner] - [#22703]) ([amcrest docs]) (new-platform)
- Binary sensors for netgear_lte ([@amelchio] - [#22902]) ([netgear_lte docs]) (new-platform)
- Add ESPHome climate support ([@OttoWinter] - [#22859]) ([esphome docs]) (new-platform)
- Add Satel_integra switchable outputs and multiple partitions ([@c-soft] - [#21992]) ([satel_integra docs]) (breaking change) (new-platform)
- Add basic Supla cover support ([@mwegrzynek] - [#22133]) ([supla docs]) (new-platform)
- Added epson workforce component ([@ThaStealth] - [#23144]) ([epsonworkforce docs]) (new-platform)
- Add basic support for native Hue sensors ([@mitchellrj] - [#22598]) ([hue docs]) (beta fix) (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.
<!--more-->
## {% linkable_title Breaking Changes %}
- __Google Assistant__ - You will now have to say a pin code before being able to control locks, doors and garage doors. You can set this pin in configuration -> cloud or, for manual installs, add `secure_devices_pin` to your config. ([@balloob] - [#23223]) ([cloud docs]) ([google_assistant docs]) (breaking change) (beta fix)
- __Google Assistant__ - Migrate light setting trait to use HSV color spectrum. If you have lights with colors, please run a Google Assistant SYNC after you update to this version. It will result in improved color representation. ([@balloob] - [#22980]) ([google_assistant docs])
- __Lightwave__ - Lightwave configuration was not properly validated before but it is now. This can cause invalid configurations to finally be flagged as such. ([@amelchio] - [#22576]) ([lightwave docs])
- __Amcrest__ - Remove Build Date, Version and Serial Number attributes from sensors. These values do not change during the life of the device and are not appropriate for state attributes. ([@pnbruckner] - [#22418]) ([amcrest docs])
- __Insteon__ - Placeholders that forwarded users from insteon_plm and insteon_local to insteon component have been removed. ([@balloob] - [#22710])
- __Logi Circle__ - This is a breaking change to the Logi Circle integration which migrates from Logitech's private API to their public API.
* Authentication with Logi Circle's API is now performed using an authorization code grant, and is managed by the Integrations page. It's no longer possible to authenticate with a username and password directly. Please remove any existing configuration for the logi_circle integration and follow the directions here to configure the logi_circle integration with at least a client_id, client_secret, api_key and redirect_uri.
* Logi Circle camera and sensor entities are now auto-discovered once the integration is authenticated. Users should remove the logi_circle integration from camera and sensor platforms as this is no longer supported.
* Logi Circle services have been moved from the camera domain to the logi_circle domain
Please check the documentation for further details. ([@evanjd] - [#20624]) ([logi_circle docs])
- __Introduction__ - The introduction integration has been removed. It used to be part of the initially created configuration but no longer served a purpose. ([@balloob] - [#22944]) ([introduction docs])
- __media_player__ - The `media_player` component will now guard against calling services that are not supported by the entity. This means that if you attempt to invoke `media_player.turn_on`, but the entity does not indicate it can be turned on through `supported_features`, the service will not be called and will not log any message. This is a breaking change as in the past it would have called the `turn_on` implementation. There may be platforms that do not properly set `supported_features` which may result in service calls not being invoked where they would have previously.([@andrewsayre] - [#22878]) ([media_player docs])
- __Load requirements and dependencies from manifests__ - Developers - Setup entity platform will set up its component now despite DEPENDENCIES. ([@rohankapoorcom] - [#22717])
- __Satel Integra__ - The component now supports multiple partitions and this required a configuration change. Instead of a single parameters partition and `single_home_mode` there are now section partitions. Please see the documentation for further details. ([@c-soft] - [#21992]) ([satel_integra docs]) (new-platform)
- __MQTT__ - MQTT discovery will not longer implicitly set `state_topic` except for `mqtt.alarm_control_panel`, `mqtt.binary_sensor` and `mqtt.sensor`. ([@emontnemery] - [#22998]) ([mqtt docs])
- __Android TV__ - This will change the `unique_id` used to identify Android TV devices. As a result, users may find that the entity ID's of their `androidtv` media players have changed. This can be resolved by going to Configuration > Entity Registry and deleting those entries, then restarting HA. (Note: Fire TV devices are not affected.)([@JeffLIrion] - [#22996]) ([androidtv docs])
- __Google TTS__ - The `google tts` platform has changed to `google_translate`. Default configs will be migrated to the new platform during 0.92 startup. A manual update will be required if the user has changed default tts or is loading the tts configuration from another location. ([@awarecan] - [#23090]) ([google docs]) ([google_translate docs]) ([tts docs]) (new-integration)
- __Fibaro__ - There was a potential unique ID collision which caused problems for some users, as scenes and devices were enumerated separately, so the same ID could be assigned if they were unnamed. The unique ID generation has been changed to avoid this, which is a breaking change with regard to scenes. ([@pbalogh77] - [#22987]) ([fibaro docs])
## {% linkable_title Beta Fixes %}
- Kill bluetooth LE scanning gracefully when asked to shut down. ([@mitchellrj] - [#22586]) ([bluetooth_le_tracker docs]) (beta fix)
- Add basic support for native Hue sensors ([@mitchellrj] - [#22598]) ([hue docs]) (beta fix) (new-platform)
- Google assistant skip missing type ([@elupus] - [#23174]) ([google_assistant docs]) (beta fix)
- Fix empty components ([@balloob] - [#23177]) (beta fix)
- Don't warn for missing services ([@balloob] - [#23182]) (beta fix)
- Improve configuration schema for Geniushub integration ([@zxdavb] - [#23155]) ([geniushub docs]) (beta fix)
- Fix niko home control dependency installation ([@NoUseFreak] - [#23176]) ([niko_home_control docs]) (beta fix)
- Hass.io Add-on panel support for Ingress ([@pvizeli] - [#23185]) ([hassio docs]) (beta fix)
- Hue motion senors are motion sensors, not presence sensors. ([@mitchellrj] - [#23193]) ([hue docs]) (beta fix)
- Don't load component when fetching translations ([@balloob] - [#23196]) (beta fix)
- Create empty services.yaml for esphome ([@OttoWinter] - [#23200]) (beta fix)
- Create services.yaml for python_script and script ([@arsaboo] - [#23201]) ([python_script docs]) ([script docs]) (beta fix)
- Set encoding before connecting ([@robbiet480] - [#23204]) ([mikrotik docs]) (beta fix)
- Add services.yaml validator ([@balloob] - [#23205]) (beta fix)
- Fix clearing error message for MQTT vacuum ([@emontnemery] - [#23206]) ([mqtt docs]) (beta fix)
- Name sensors correctly ([@mitchellrj] - [#23208]) ([hue docs]) (beta fix)
- Create services.yaml for Tuya ([@arsaboo] - [#23209]) (beta fix)
- create services.yaml for shell_command ([@arsaboo] - [#23210]) (beta fix)
- Add stub services.yaml and make validation mandatory ([@balloob] - [#23213]) (beta fix)
- update zha-quirks ([@dmulcahey] - [#23215]) ([zha docs]) (beta fix)
- fix bindable devices ([@dmulcahey] - [#23216]) ([zha docs]) (beta fix)
- Add missing services.yaml file for hue ([@cgtobi] - [#23217]) (beta fix)
- Ask users for a pin when interacting with locks/garage doors ([@balloob] - [#23223]) ([cloud docs]) ([google_assistant docs]) (breaking change) (beta fix)
- Async fix for bluetooth stopping ([@balloob] - [#23225]) ([bluetooth_le_tracker docs]) (beta fix)
- Return 0 instead of None ([@andrewsayre] - [#23261]) ([plex docs]) (beta fix)
- Update pyheos and log service errors in HEOS integration ([@andrewsayre] - [#23222]) ([heos docs]) (beta fix)
- Fix ESPHome setup errors in beta ([@OttoWinter] - [#23242]) ([esphome docs]) (beta fix)
- Bump zigpy-deconz ([@damarco] - [#23270]) ([zha docs]) (beta fix)
- Bump zigpy and zigpy-xbee ([@damarco] - [#23275]) ([zha docs]) (beta fix)
- Show correct version for stable ([@ludeeus] - [#23291]) ([version docs]) (beta fix)
- Bump skybellpy to 0.4.0 ([@austinmroczek] - [#23294]) ([skybell docs]) (beta fix)
- Create services.yaml for input_datetime ([@VDRainer] - [#23303]) (beta fix)
- Correct calculation and units of light level values. ([@mitchellrj] - [#23309]) ([hue docs]) (beta fix)
- Fix hass.io panel_custom/frontend ([@pvizeli] - [#23313]) ([hassio docs]) (beta fix)
- Dont cache integrations that are not found ([@balloob] - [#23316]) (beta fix)
- Expose door cover/binary_sensor as door type ([@elupus] - [#23307]) ([google_assistant docs]) (beta fix)
- Zestimate - Added check for the existence of data in response ([@dreed47] - [#23310]) ([zestimate docs]) (beta fix)
- Always set latest pin ([@balloob] - [#23328]) ([cloud docs]) (beta fix)
- Add sensor and binary senseor to default expose ([@balloob] - [#23332]) ([google_assistant docs]) (beta fix)
- Support unicode in configuration migration ([@awarecan] - [#23335]) (beta fix)
- Remove ghost folder ([@awarecan] - [#23350]) ([aws_lambda docs]) ([aws_sns docs]) ([aws_sqs docs]) (beta fix)
## {% linkable_title All changes %}
- Add LCN binary_sensor component ([@alengwenus] - [#22341]) ([lcn docs]) (new-platform)
- Add HEOS media player component ([@easink] - [#21721])
- Add google calendar max_results config option ([@yosilevy] - [#21874]) ([google docs])
- Fix .coveragerc from merge/rebase ([@andrewsayre] - [#22516])
- Speed up status updating in SimpliSafe ([@bachya] - [#22506]) ([simplisafe docs])
- Axis component reflect device availability ([@Kane610] - [#22401]) ([axis docs])
- throw `PlatformNotReady` if unable to connect ([@aav7fl] - [#22515]) ([androidtv docs])
- Ring camera improvements ([@Yarikx] - [#22526]) ([ring docs])
- upgrade pylinky to 0.3.3 ([@royto] - [#22544]) ([linky docs])
- Move core services.yaml file to Home Assistant integration ([@balloob] - [#22489])
- Change HEOS component library and add basic config flow ([@andrewsayre] - [#22517]) ([heos docs])
- Add command_template and value_template for MQTT alarm ([@JumpMaster] - [#21438]) ([mqtt docs])
- Add table with netgear_lte sensor units ([@amelchio] - [#22508]) ([netgear_lte docs])
- Add more HomeKit device enumeration tests ([@Jc2k] - [#22194])
- Added support for transitions for nanoleaf light ([@Oro] - [#22192]) ([nanoleaf docs])
- Add Heos config flow ([@andrewsayre] - [#22554]) ([heos docs])
- Improve handling of audio groups ([@emontnemery] - [#22396]) ([cast docs])
- Prevent toogle to false at restart of ADS platforms ([@carstenschroeder] - [#22522]) ([ads docs])
- Ampio Smog Air Quality Sensor ([@kstaniek] - [#21152]) ([air_quality docs]) (new-platform)
- Bump pyloopenergy library to 0.1.2 ([@pavoni] - [#22561]) ([loopenergy docs])
- Forward media control to playing group ([@emontnemery] - [#22566]) ([cast docs])
- Turn light off if brightness is 0 ([@emontnemery] - [#22400]) ([light docs])
- Ignore flaky test ([@awarecan] - [#22563])
- Fix typo in light/__init__.py ([@OleksandrBerchenko] - [#22581]) ([light docs])
- Fix lightwave config validation ([@amelchio] - [#22576]) ([lightwave docs]) (breaking change)
- Rewrite Osram Lightify component ([@OleksandrBerchenko] - [#22184]) ([osramlightify docs])
- Clean up homematicip cloud ([@SukramJ] - [#22589]) ([homematicip_cloud docs])
- Retrying connecting Influxdb at setup ([@scornelissen85] - [#22567]) ([influxdb docs])
- Fix gtfs typing and logger issues ([@renemarc] - [#22572]) ([gtfs docs])
- Add permission checking to all RainMachine services ([@bachya] - [#22399]) ([rainmachine docs])
- Refactor of ADS integration and introduce ADSEntity ([@carstenschroeder] - [#22583]) ([ads docs])
- Fixed brightness reducing after each light change ([@N1nja98] - [#22606]) ([zengge docs])
- Add netgear_lte connection sensors ([@amelchio] - [#22558]) ([netgear_lte docs])
- Only allow admins to enable remote connection ([@balloob] - [#22609]) ([cloud docs])
- Cloudhooks for webhook config flows ([@balloob] - [#22611]) ([dialogflow docs]) ([geofency docs]) ([gpslogger docs]) ([ifttt docs]) ([locative docs]) ([mailgun docs]) ([twilio docs])
- Add source selection to Heos component ([@andrewsayre] - [#22592]) ([heos docs])
- Make platform setup a coroutine ([@fredrike] - [#22620]) ([daikin docs]) ([tellduslive docs])
- Trend binary sensor check for state unavailable ([@VDRainer] - [#22621]) ([trend docs])
- Fix xiaomi vacuum resume functionality ([@aprosvetova] - [#22626]) ([xiaomi_miio docs])
- Fix GTFS variable type mismatch ([@renemarc] - [#22624]) ([gtfs docs])
- Add support for Dyson Purecool 2018 Air Purifiers models TP04 and DP04 ([@etheralm] - [#22215]) ([dyson docs])
- Amcrest: Add on/off support & attributes. Bump amcrest to 1.3.0 ([@pnbruckner] - [#22418]) ([amcrest docs]) (breaking change)
- change library to georss_generic_client ([@exxamalte] - [#22615]) ([geo_rss_events docs])
- Add codecov ([@awarecan] - [#22649])
- Qwikswitch fix listen loop ([@kellerza] - [#22600]) ([qwikswitch docs])
- Improve evohome exception handling and fix bugs ([@zxdavb] - [#22140]) ([evohome docs]) ([honeywell docs])
- Don't force updates on ZHA Electrical Measurement sensor. ([@Adminiuga] - [#22647]) ([zha docs])
- Fix pytest durations parameter ([@cgtobi] - [#22658])
- Admin service to automatically add empty schema ([@balloob] - [#22637]) ([cloud docs])
- Ignore code coverages for component without test ([@awarecan] - [#22653])
- Add battery sensor to Homematic IP ([@SukramJ] - [#22630]) ([homematicip_cloud docs])
- Axis discovery updates host address ([@Kane610] - [#22632]) ([axis docs])
- Add missing properties and scenes support to Osram Lightify ([@OleksandrBerchenko] - [#22597]) ([osramlightify docs])
- Add color support to emulated hue ([@techfreek] - [#19590]) ([emulated_hue docs])
- Add discovery support to HEOS component ([@andrewsayre] - [#22652]) ([discovery docs]) ([heos docs])
- Person schema for merge_packages #21307 ([@kellerza] - [#21703]) ([person docs])
- Cast: Fix next/previous track ([@emontnemery] - [#22634]) ([cast docs])
- Fix regression from PR #22396 ([@emontnemery] - [#22661]) ([cast docs])
- Person tests - split from #21703 ([@kellerza] - [#22663])
- Rebrand Cisco Spark notify to be Cisco Webex Teams ([@fbradyirl] - [#21938]) ([cisco_webex_teams docs]) (new-platform)
- Update uvloop to 0.12.2 ([@pvizeli] - [#22681])
- Shutdown ZHAGateway on hass closing. ([@Adminiuga] - [#22646]) ([zha docs])
- Clean up docstrings ([@cgtobi] - [#22679])
- Fix trend binary sensor and tests ([@awarecan] - [#22686]) ([trend docs])
- Fix citybikes ([@MartinHjelmare] - [#22683]) ([citybikes docs])
- Google Assistant: Add support for open/close binary sensors ([@balloob] - [#22674]) ([binary_sensor docs]) ([google_assistant docs])
- Update light/services.yaml ([@emontnemery] - [#22662])
- Fix connection loss issues for Harmony ([@ehendrix23] - [#22687]) ([harmony docs])
- Remove aws_* notify platforms ([@awarecan] - [#22698]) ([aws_lambda docs]) ([aws_sns docs]) ([aws_sqs docs])
- Add manifests ([@balloob] - [#22699])
- Add a .codecov.yml to control coverage statuses and enable notifications ([@robbiet480] - [#22707])
- Raise ConfigEntryNotReady for MQTT connection exception ([@aav7fl] - [#22540])
- Add device_class_power to sensor ([@SukramJ] - [#22691]) ([homematicip_cloud docs]) ([sensor docs])
- Remove all config deprecations invalidated in 0.91 ([@rohankapoorcom] - [#22704])
- Validate manifests in CI ([@balloob] - [#22708])
- Generate codeowners based on manifests ([@balloob] - [#22705])
- Remove deprecated Insteon components ([@balloob] - [#22710]) (breaking change)
- Allow users to set encoding of mikrotik connection ([@robbiet480] - [#22715]) ([mikrotik docs])
- Only post coverage comment if coverage changes ([@MartinHjelmare] - [#22721])
- Add 10 additional language options to DarkSky ([@VirtualL] - [#22719]) ([darksky docs])
- Add N26 component ([@markusressel] - [#22684]) ([n26 docs]) (new-integration) (new-platform)
- Bump pywebpush to latest 1.9.2 ([@perosb] - [#22737]) ([html5 docs])
- Support multiple deCONZ gateways ([@Kane610] - [#22449]) ([deconz docs])
- add device class signal strength ([@SukramJ] - [#22738]) ([sensor docs])
- Update PR template requirements to point to the manifest ([@rohankapoorcom] - [#22751])
- Generate requirements_* from manifests ([@rohankapoorcom] - [#22718])
- Add deprecation warning to embedded broker ([@emontnemery] - [#22753]) ([mqtt docs])
- fix flaky test ([@hunterjm] - [#22748])
- Improve exception handling in ADS integration ([@carstenschroeder] - [#22627]) ([ads docs])
- Add google hangouts manual authentication option ([@teliov] - [#22158]) ([hangouts docs])
- Axis - support stream ([@Kane610] - [#22593]) ([axis docs])
- update core dependencies due to pywebpush update ([@perosb] - [#22767])
- deCONZ multiple gateways fixup ([@Kane610] - [#22774]) ([deconz docs])
- Update homeassistant-pyozw 0.1.4 ([@pvizeli] - [#22794]) ([zwave docs])
- Add OASA Telematics greek public transport sensor component ([@panosmz] - [#22196]) ([oasa_telematics docs]) (new-platform)
- Remove pycryptodome requirement for Android TV ([@JeffLIrion] - [#22552]) ([androidtv docs])
- Update version of python_awair to 0.0.4 ([@ahayworth] - [#22809]) ([awair docs])
- Remove unused group status ([@emontnemery] - [#22791]) ([cast docs])
- Raise severity of MQTT callback deprecation warning ([@emontnemery] - [#22792]) ([mqtt docs])
- Bump raincloud dependency to fix broken integration: Fixes #22422 ([@vanstinator] - [#22805]) ([raincloud docs])
- Add HmIP-SMO to Homematic IP ([@SukramJ] - [#22802]) ([homematicip_cloud docs])
- Sort configuration schema. ([@emontnemery] - [#22835]) ([mqtt docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22831]) ([mqtt docs])
- Optimize yeelight signal handling ([@zewelor] - [#22806]) ([yeelight docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22828]) ([mqtt docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22833]) ([mqtt docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22836]) ([mqtt docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22837]) ([mqtt docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22838]) ([mqtt docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22829]) ([mqtt docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22830]) ([mqtt docs])
- Fix glances docker container errors ([@roblandry] - [#22846]) ([glances docs])
- Fix flaky test ([@awarecan] - [#22850])
- Bump aioambient to 0.3.0 ([@bachya] - [#22855]) ([ambient_station docs])
- get temp and color for light during init and poll ([@dmulcahey] - [#22847]) ([zha docs])
- Fix manifest codeowners ([@cdce8p] - [#22871]) ([cover docs]) ([demo docs])
- Added REQUIREMENTS back to Ambient ([@bachya] - [#22875]) ([ambient_station docs])
- Minor sensor fixes ([@robbiet480] - [#22884]) ([mobile_app docs])
- add myself as codeowner ([@fbradyirl] - [#22885]) ([cisco_ios docs]) ([cisco_mobility_express docs]) ([cisco_webex_teams docs]) ([ciscospark docs]) ([enigma2 docs]) ([hikvisioncam docs]) ([luci docs])
- Bump pypi module version for enigma2 ([@fbradyirl] - [#22886])
- Add zwave network key validator ([@cgtobi] - [#22785]) ([zwave docs])
- force_update=False (not None) ([@akasma74] - [#22867]) ([rflink docs])
- Stream support for Doorbird component ([@oblogic7] - [#22876]) ([doorbird docs])
- Add MQTT climate two-point target temperature support ([@OttoWinter] - [#22860]) ([mqtt docs])
- Update harmony manifest to match REQUIREMENTS in module ([@rohankapoorcom] - [#22826]) ([harmony docs])
- Add ESPHome Cover position/tilt support ([@OttoWinter] - [#22858]) ([esphome docs])
- Use dict[key] for required config keys and keys with default values. ([@emontnemery] - [#22832]) ([mqtt docs])
- fix aiohttp ServerDisconnectedError in Daikin ([@fredrike] - [#22880]) ([daikin docs])
- Fix Sonos handling of unsupported favorites ([@amelchio] - [#22906]) ([sonos docs])
- Fix HEOS discovery could result in multiple config entries ([@andrewsayre] - [#22903]) ([heos docs])
- Initial Fibaro HC Climate support ([@pbalogh77] - [#20256]) ([fibaro docs]) (new-platform)
- Test fixes ([@balloob] - [#22911])
- Stream Timestamp Fixes ([@hunterjm] - [#22912]) ([stream docs])
- Add Somfy MyLink support for Covers ([@bendews] - [#22514]) ([somfy_mylink docs]) (new-integration) (new-platform)
- Fix ZHA Light color conversion. ([@Adminiuga] - [#22909]) ([zha docs])
- Added features to Concord232 Alarm Panel ([@AZDane] - [#22892]) ([concord232 docs])
- Camera component for BOM integration ([@maddenp] - [#22816]) ([bom docs]) (new-platform)
- Add 'Assumed State' property to Somfy MyLink covers ([@bendews] - [#22922]) ([somfy_mylink docs])
- Logi Circle public API refactor and config flow ([@evanjd] - [#20624]) ([logi_circle docs]) (breaking change)
- Add amcrest binary_sensors ([@pnbruckner] - [#22703]) ([amcrest docs]) (new-platform)
- Add support for when device is not logged in to HEOS ([@andrewsayre] - [#22913]) ([heos docs])
- Test for circular dependencies using manifests ([@balloob] - [#22908])
- bump raincloudy to 0.0.7 ([@vanstinator] - [#22935]) ([raincloud docs])
- Binary sensors for netgear_lte ([@amelchio] - [#22902]) ([netgear_lte docs]) (new-platform)
- Cherry pick test fix ([@awarecan] - [#22939])
- Hide unsupported Sonos favorites ([@amelchio] - [#22940]) ([sonos docs])
- Add linked battery sensor to HomeKit ([@adrum] - [#22788]) ([homekit docs])
- Remove introduction component ([@balloob] - [#22944]) ([introduction docs]) (breaking change)
- Fix broken platform components ([@balloob] - [#22943]) ([automation docs]) ([mqtt docs]) ([telegram_bot docs])
- Add color setting trait ([@balloob] - [#22894]) ([google_assistant docs])
- Fix HomeKit fan speed conversion ([@cdce8p] - [#22951]) ([homekit docs])
- Add sms_total sensor to netgear_lte ([@amelchio] - [#22954]) ([netgear_lte docs])
- Use ConfigEntryNotReady when setting up Daikin ([@fredrike] - [#22901]) ([daikin docs])
- Add functionality to the version sensor ([@mgiako] - [#22896]) ([version docs])
- Use dict[key] for required config keys and keys with default values of MQTT light ([@emontnemery] - [#22834]) ([mqtt docs])
- Upgrade pytest to 4.4.0 ([@scop] - [#22822])
- Uprade asynctest to 0.12.3 ([@scop] - [#22824])
- Upgrade Sphinx to 2.0.1 ([@fabaff] - [#22960])
- Upgrade youtube_dl to 2019.04.07 ([@fabaff] - [#22961]) ([media_extractor docs])
- Update ordering ([@fabaff] - [#22963]) ([luci docs])
- Add missing attribution ([@fabaff] - [#22964]) ([london_underground docs])
- Upgrade ruamel.yaml to 0.15.91 ([@fabaff] - [#22965])
- Set pytz>=2019.01 ([@fabaff] - [#22966])
- Check for supported features in media_player services ([@andrewsayre] - [#22878]) ([media_player docs]) (breaking change)
- Add ESPHome climate support ([@OttoWinter] - [#22859]) ([esphome docs]) (new-platform)
- Fix deCONZ change entity_id bug ([@Kane610] - [#22974]) ([deconz docs])
- Fix optimistic mode and add tests ([@emontnemery] - [#22899]) ([mqtt docs])
- Fix myq increasing number of network connections ([@ehendrix23] - [#22432]) ([myq docs])
- Add watchdog reset to on_connect in Ambient ([@bachya] - [#22956]) ([ambient_station docs])
- Catch connection reset ([@balloob] - [#22982]) ([websocket_api docs])
- Stream support for Netatmo cameras ([@cgtobi] - [#22952]) ([netatmo docs])
- Google Assistant: Migrate light setting trait to use HSV color spectrum ([@balloob] - [#22980]) ([google_assistant docs]) (breaking change)
- Bump pyubee version to support more models and detect model automatically ([@mzdrale] - [#22450]) ([ubee docs])
- Load requirements and dependencies from manifests. Fallback to current `REQUIREMENTS` and `DEPENDENCIES` ([@rohankapoorcom] - [#22717]) (breaking change)
- Add device HmIP-MIOB to Homematic IP Cloud ([@SukramJ] - [#22975]) ([homematicip_cloud docs])
- Prevent the projector to toogle on/off ([@stbkde] - [#22985]) ([epson docs])
- Fix test failed in py35 ([@awarecan] - [#23002])
- Add aftership package details and add/remove services ([@iantrich] - [#22275]) ([aftership docs])
- Mobile App: Remove component loading support ([@robbiet480] - [#23025]) ([mobile_app docs])
- Specify configurator as dependency ([@balloob] - [#23030])
- Fix unnecessary hass.components interaction ([@balloob] - [#23029]) ([bloomsky docs]) ([netatmo docs]) ([wemo docs])
- Instituto Geográfico Nacional Sismología (Earthquakes) Feed platform ([@exxamalte] - [#22696]) ([ign_sismologia docs]) (new-integration) (new-platform)
- Update HAP-python to 2.5.0 ([@adrum] - [#23031]) ([homekit docs])
- Remove expired 17track.net packages from entity registry ([@bachya] - [#23001]) ([seventeentrack docs])
- Replace get_platform ([@cgarwood] - [#23014]) ([zwave docs])
- Convert service helper to use async_get_integration ([@balloob] - [#23023])
- Remove dependencies and requirements ([@cgtobi] - [#23024])
- Migrate check-config to use get_integration ([@balloob] - [#23026])
- Move Broadlink services to component ([@elupus] - [#21465]) ([broadlink docs])
- Bandage telegram bot ([@dgomes] - [#23022]) ([telegram_bot docs])
- Update RainMachine sensors in parallel ([@bachya] - [#23057]) ([rainmachine docs])
- Only load stream when av package available ([@balloob] - [#23058]) ([default_config docs])
- Convert translation helper to use async_get_integration ([@balloob] - [#23054])
- Allow aws credential skip validation ([@awarecan] - [#22991]) ([aws docs])
- Upgrade python-slugify to 3.0.2 ([@BKPepe] - [#22997])
- Add Satel_integra switchable outputs and multiple partitions ([@c-soft] - [#21992]) ([satel_integra docs]) (breaking change) (new-platform)
- Bugfix ZHA device_removed() handler. ([@Adminiuga] - [#23074]) ([zha docs])
- Fix websocket connection sensor ([@Swamp-Ig] - [#22923]) ([websocket_api docs])
- Validate data packet format on config validation ([@elupus] - [#23062]) ([broadlink docs])
- Create decorator to check service permissions ([@bachya] - [#22667]) ([rainmachine docs])
- Validate component usage ([@balloob] - [#23037])
- Fix test ([@bachya] - [#23081])
- HEOS confirm discovered devices before adding ([@andrewsayre] - [#23063]) ([heos docs])
- Add missing async for tplink's async_setup_platform methods ([@rytilahti] - [#23066]) ([tplink docs])
- Add support for Stiebel Eltron heat pumps ([@fucm] - [#21199]) ([stiebel_eltron docs]) (new-platform)
- Ensure OpenUV service checks permissions ([@bachya] - [#22668]) ([openuv docs])
- Deprecate implicit state_topic for MQTT discovery ([@emontnemery] - [#22998]) ([mqtt docs]) (breaking change)
- Fix bugs in MQTT vacuum ([@emontnemery] - [#23048]) ([mqtt docs])
- Refactor MQTT climate to deduplicate code ([@emontnemery] - [#23044]) ([mqtt docs])
- Ignore secrets.yaml when using include_dir_named ([@choss] - [#22929])
- Remove validate from aws_config ([@awarecan] - [#23084]) ([aws docs])
- Migrate packages and check config ([@balloob] - [#23082])
- Increase timeout ([@awarecan] - [#23098])
- Add URL query parameters to webhook trigger result data ([@ActuallyRuben] - [#23043]) ([automation docs])
- Add support for params in send_command ([@pszafer] - [#23071]) ([mqtt docs])
- Fix demo ([@balloob] - [#23087]) ([demo docs])
- Await merge_packages_config(). ([@Adminiuga] - [#23109])
- Further integration load cleanups ([@balloob] - [#23104])
- Fix for stateless covers ([@giefca] - [#22962]) ([google_assistant docs])
- Upgraded python-velbus package, this fixes a lot of problems with the… ([@Cereal2nd] - [#23100])
- Support updating deCONZ host address ([@Kane610] - [#22784]) ([deconz docs])
- Remove loader.get_component ([@balloob] - [#23111])
- Load component which contains data entry flow handler ([@awarecan] - [#23107])
- Fix homekit_controller climate supported operation_list being blank ([@Jc2k] - [#23095]) ([homekit_controller docs])
- Axis - start stream when system is ready ([@Kane610] - [#23119]) ([axis docs])
- Handle missing 'serialno' of Android TV ([@JeffLIrion] - [#22996]) ([androidtv docs]) (breaking change)
- Lower verbosity of command line sensor ([@tsvi] - [#23120]) ([command_line docs])
- Bump pyatmo version ([@cgtobi] - [#23116]) ([netatmo docs])
- Clean coveragerc of removed integrations ([@cgtobi] - [#23118])
- Add Google Assistant garage type ([@giefca] - [#23115]) ([google_assistant docs])
- Add pvizeli/danielperna84 to code owner of homematic ([@pvizeli] - [#22989]) ([homematic docs])
- Add basic Supla cover support ([@mwegrzynek] - [#22133]) ([supla docs]) (new-platform)
- Ensure Boolean configuration values are handled correctly. ([@loe] - [#22810]) ([zwave docs])
- Axis component support unloading entries ([@Kane610] - [#22692]) ([axis docs])
- Update yeelight lib ([@zewelor] - [#23123]) ([yeelight docs])
- Update Leviton Decora WiFi library version. ([@tlyakhov] - [#23125]) ([decora_wifi docs])
- skip non existing zones ([@fredrike] - [#23113]) ([daikin docs])
- load cleanups ([@balloob] - [#23112])
- Fix flux_led only-white controllers (and remove explicit declaration as RGBW in automatic add) ([@autinerd] - [#22210]) ([flux_led docs])
- Bump pyhs100 requirement for tplink integration ([@rytilahti] - [#23065]) ([tplink docs])
- Load integrations only once ([@balloob] - [#23132])
- only preload when stream is setup ([@hunterjm] - [#23134]) ([camera docs])
- Axis - improved internal parameter handling ([@Kane610] - [#23122]) ([axis docs])
- Added state workaround exception for Kwikset 99100-078 ([@Villhellm] - [#23130]) ([zwave docs])
- Fix niko_home_control integration ([@NoUseFreak] - [#23093]) ([niko_home_control docs])
- Fix verify_ssl configuration ([@Anonym-tsk] - [#23146]) ([telegram_bot docs])
- Add support for after_dependencies ([@balloob] - [#23148]) ([camera docs]) ([mysensors docs]) ([owntracks docs])
- Simplify esphome ([@OttoWinter] - [#22868]) ([esphome docs]) (new-platform)
- Update components that can be used without being set up ([@balloob] - [#23133])
- Rename google/tts.py to google_translate/tts.py ([@awarecan] - [#23090]) ([google docs]) ([google_translate docs]) ([tts docs]) (breaking change) (new-integration)
- update caldav to fix calendar issues with synology clients ([@cmsimike] - [#23145]) ([caldav docs])
- Add target_temp_high/low and current_temperature ([@elupus] - [#21393]) ([water_heater docs])
- Genius hub ([@GeoffAtHome] - [#21598]) ([geniushub docs]) (new-platform)
- Allow switches to be represented as outlets on google assistant ([@elupus] - [#23149]) ([demo docs]) ([google_assistant docs]) ([switch docs])
- Fix check config script ([@balloob] - [#23151])
- Homematic Lock: state_uncertain attribute, Homematic dimmer: Light service transition attribute ([@trilu2000] - [#22928]) ([homematic docs])
- catch asyncio.TimeoutError ([@molobrakos] - [#23156]) ([eliqonline docs])
- Axis change how new event is signalled ([@Kane610] - [#23152]) ([axis docs])
- Bump Home Assistant Cloud 0.12 ([@pvizeli] - [#23159]) ([cloud docs])
- Added epson workforce component ([@ThaStealth] - [#23144]) ([epsonworkforce docs]) (new-platform)
- Install deps and reqs early for config flows ([@balloob] - [#23169])
- I think this is a potential bug ([@Swamp-Ig] - [#23157])
- Changed scene unique IDs ([@pbalogh77] - [#22987]) ([fibaro docs]) (breaking change)
- homekit_controller: Support cover stop ([@Jc2k] - [#23046]) ([homekit_controller docs])
- Fix handling of homekit_controler zeroconf c# changes ([@Jc2k] - [#22995]) ([homekit_controller docs])
- Support fetching/setting humidity of HomeKit controller thermostats ([@Jc2k] - [#23040]) ([homekit_controller docs])
- Adding Telegram bot leave_chat() service ([@Limych] - [#22259]) ([telegram_bot docs])
- Only create sensors if the station actually has values for them. ([@jvanderneutstulen] - [#20643]) ([luftdaten docs])
- Kill bluetooth LE scanning gracefully when asked to shut down. ([@mitchellrj] - [#22586]) ([bluetooth_le_tracker docs]) (beta fix)
- Add basic support for native Hue sensors ([@mitchellrj] - [#22598]) ([hue docs]) (beta fix) (new-platform)
- Google assistant skip missing type ([@elupus] - [#23174]) ([google_assistant docs]) (beta fix)
- Fix empty components ([@balloob] - [#23177]) (beta fix)
- Don't warn for missing services ([@balloob] - [#23182]) (beta fix)
- Improve configuration schema for Geniushub integration ([@zxdavb] - [#23155]) ([geniushub docs]) (beta fix)
- Fix niko home control dependency installation ([@NoUseFreak] - [#23176]) ([niko_home_control docs]) (beta fix)
- Hass.io Add-on panel support for Ingress ([@pvizeli] - [#23185]) ([hassio docs]) (beta fix)
- Hue motion senors are motion sensors, not presence sensors. ([@mitchellrj] - [#23193]) ([hue docs]) (beta fix)
- Don't load component when fetching translations ([@balloob] - [#23196]) (beta fix)
- Create empty services.yaml for esphome ([@OttoWinter] - [#23200]) (beta fix)
- Create services.yaml for python_script and script ([@arsaboo] - [#23201]) ([python_script docs]) ([script docs]) (beta fix)
- Set encoding before connecting ([@robbiet480] - [#23204]) ([mikrotik docs]) (beta fix)
- Add services.yaml validator ([@balloob] - [#23205]) (beta fix)
- Fix clearing error message for MQTT vacuum ([@emontnemery] - [#23206]) ([mqtt docs]) (beta fix)
- Name sensors correctly ([@mitchellrj] - [#23208]) ([hue docs]) (beta fix)
- Create services.yaml for Tuya ([@arsaboo] - [#23209]) (beta fix)
- create services.yaml for shell_command ([@arsaboo] - [#23210]) (beta fix)
- Add stub services.yaml and make validation mandatory ([@balloob] - [#23213]) (beta fix)
- update zha-quirks ([@dmulcahey] - [#23215]) ([zha docs]) (beta fix)
- fix bindable devices ([@dmulcahey] - [#23216]) ([zha docs]) (beta fix)
- Add missing services.yaml file for hue ([@cgtobi] - [#23217]) (beta fix)
- Ask users for a pin when interacting with locks/garage doors ([@balloob] - [#23223]) ([cloud docs]) ([google_assistant docs]) (breaking change) (beta fix)
- Async fix for bluetooth stopping ([@balloob] - [#23225]) ([bluetooth_le_tracker docs]) (beta fix)
- Return 0 instead of None ([@andrewsayre] - [#23261]) ([plex docs]) (beta fix)
- Backport missing folder fix from #23191 ([@Jc2k] - [#23297]) ([homekit_controller docs])
- Update pyheos and log service errors in HEOS integration ([@andrewsayre] - [#23222]) ([heos docs]) (beta fix)
- Fix ESPHome setup errors in beta ([@OttoWinter] - [#23242]) ([esphome docs]) (beta fix)
- Bump zigpy-deconz ([@damarco] - [#23270]) ([zha docs]) (beta fix)
- Bump zigpy and zigpy-xbee ([@damarco] - [#23275]) ([zha docs]) (beta fix)
- Show correct version for stable ([@ludeeus] - [#23291]) ([version docs]) (beta fix)
- Bump skybellpy to 0.4.0 ([@austinmroczek] - [#23294]) ([skybell docs]) (beta fix)
- Create services.yaml for input_datetime ([@VDRainer] - [#23303]) (beta fix)
- Correct calculation and units of light level values. ([@mitchellrj] - [#23309]) ([hue docs]) (beta fix)
- Fix hass.io panel_custom/frontend ([@pvizeli] - [#23313]) ([hassio docs]) (beta fix)
- Dont cache integrations that are not found ([@balloob] - [#23316]) (beta fix)
- Expose door cover/binary_sensor as door type ([@elupus] - [#23307]) ([google_assistant docs]) (beta fix)
- Zestimate - Added check for the existence of data in response ([@dreed47] - [#23310]) ([zestimate docs]) (beta fix)
- Always set latest pin ([@balloob] - [#23328]) ([cloud docs]) (beta fix)
- Add sensor and binary senseor to default expose ([@balloob] - [#23332]) ([google_assistant docs]) (beta fix)
- Support unicode in configuration migration ([@awarecan] - [#23335]) (beta fix)
- Remove ghost folder ([@awarecan] - [#23350]) ([aws_lambda docs]) ([aws_sns docs]) ([aws_sqs docs]) (beta fix)
[#19590]: https://github.com/home-assistant/home-assistant/pull/19590
[#20256]: https://github.com/home-assistant/home-assistant/pull/20256
[#20624]: https://github.com/home-assistant/home-assistant/pull/20624
[#20643]: https://github.com/home-assistant/home-assistant/pull/20643
[#21152]: https://github.com/home-assistant/home-assistant/pull/21152
[#21199]: https://github.com/home-assistant/home-assistant/pull/21199
[#21393]: https://github.com/home-assistant/home-assistant/pull/21393
[#21438]: https://github.com/home-assistant/home-assistant/pull/21438
[#21465]: https://github.com/home-assistant/home-assistant/pull/21465
[#21598]: https://github.com/home-assistant/home-assistant/pull/21598
[#21703]: https://github.com/home-assistant/home-assistant/pull/21703
[#21721]: https://github.com/home-assistant/home-assistant/pull/21721
[#21874]: https://github.com/home-assistant/home-assistant/pull/21874
[#21938]: https://github.com/home-assistant/home-assistant/pull/21938
[#21992]: https://github.com/home-assistant/home-assistant/pull/21992
[#22133]: https://github.com/home-assistant/home-assistant/pull/22133
[#22140]: https://github.com/home-assistant/home-assistant/pull/22140
[#22158]: https://github.com/home-assistant/home-assistant/pull/22158
[#22184]: https://github.com/home-assistant/home-assistant/pull/22184
[#22192]: https://github.com/home-assistant/home-assistant/pull/22192
[#22194]: https://github.com/home-assistant/home-assistant/pull/22194
[#22196]: https://github.com/home-assistant/home-assistant/pull/22196
[#22210]: https://github.com/home-assistant/home-assistant/pull/22210
[#22215]: https://github.com/home-assistant/home-assistant/pull/22215
[#22259]: https://github.com/home-assistant/home-assistant/pull/22259
[#22275]: https://github.com/home-assistant/home-assistant/pull/22275
[#22341]: https://github.com/home-assistant/home-assistant/pull/22341
[#22396]: https://github.com/home-assistant/home-assistant/pull/22396
[#22399]: https://github.com/home-assistant/home-assistant/pull/22399
[#22400]: https://github.com/home-assistant/home-assistant/pull/22400
[#22401]: https://github.com/home-assistant/home-assistant/pull/22401
[#22418]: https://github.com/home-assistant/home-assistant/pull/22418
[#22432]: https://github.com/home-assistant/home-assistant/pull/22432
[#22449]: https://github.com/home-assistant/home-assistant/pull/22449
[#22450]: https://github.com/home-assistant/home-assistant/pull/22450
[#22489]: https://github.com/home-assistant/home-assistant/pull/22489
[#22506]: https://github.com/home-assistant/home-assistant/pull/22506
[#22508]: https://github.com/home-assistant/home-assistant/pull/22508
[#22514]: https://github.com/home-assistant/home-assistant/pull/22514
[#22515]: https://github.com/home-assistant/home-assistant/pull/22515
[#22516]: https://github.com/home-assistant/home-assistant/pull/22516
[#22517]: https://github.com/home-assistant/home-assistant/pull/22517
[#22522]: https://github.com/home-assistant/home-assistant/pull/22522
[#22526]: https://github.com/home-assistant/home-assistant/pull/22526
[#22540]: https://github.com/home-assistant/home-assistant/pull/22540
[#22544]: https://github.com/home-assistant/home-assistant/pull/22544
[#22552]: https://github.com/home-assistant/home-assistant/pull/22552
[#22554]: https://github.com/home-assistant/home-assistant/pull/22554
[#22558]: https://github.com/home-assistant/home-assistant/pull/22558
[#22561]: https://github.com/home-assistant/home-assistant/pull/22561
[#22563]: https://github.com/home-assistant/home-assistant/pull/22563
[#22566]: https://github.com/home-assistant/home-assistant/pull/22566
[#22567]: https://github.com/home-assistant/home-assistant/pull/22567
[#22572]: https://github.com/home-assistant/home-assistant/pull/22572
[#22576]: https://github.com/home-assistant/home-assistant/pull/22576
[#22581]: https://github.com/home-assistant/home-assistant/pull/22581
[#22583]: https://github.com/home-assistant/home-assistant/pull/22583
[#22586]: https://github.com/home-assistant/home-assistant/pull/22586
[#22589]: https://github.com/home-assistant/home-assistant/pull/22589
[#22592]: https://github.com/home-assistant/home-assistant/pull/22592
[#22593]: https://github.com/home-assistant/home-assistant/pull/22593
[#22597]: https://github.com/home-assistant/home-assistant/pull/22597
[#22598]: https://github.com/home-assistant/home-assistant/pull/22598
[#22600]: https://github.com/home-assistant/home-assistant/pull/22600
[#22606]: https://github.com/home-assistant/home-assistant/pull/22606
[#22609]: https://github.com/home-assistant/home-assistant/pull/22609
[#22611]: https://github.com/home-assistant/home-assistant/pull/22611
[#22615]: https://github.com/home-assistant/home-assistant/pull/22615
[#22620]: https://github.com/home-assistant/home-assistant/pull/22620
[#22621]: https://github.com/home-assistant/home-assistant/pull/22621
[#22624]: https://github.com/home-assistant/home-assistant/pull/22624
[#22626]: https://github.com/home-assistant/home-assistant/pull/22626
[#22627]: https://github.com/home-assistant/home-assistant/pull/22627
[#22630]: https://github.com/home-assistant/home-assistant/pull/22630
[#22632]: https://github.com/home-assistant/home-assistant/pull/22632
[#22634]: https://github.com/home-assistant/home-assistant/pull/22634
[#22637]: https://github.com/home-assistant/home-assistant/pull/22637
[#22646]: https://github.com/home-assistant/home-assistant/pull/22646
[#22647]: https://github.com/home-assistant/home-assistant/pull/22647
[#22649]: https://github.com/home-assistant/home-assistant/pull/22649
[#22652]: https://github.com/home-assistant/home-assistant/pull/22652
[#22653]: https://github.com/home-assistant/home-assistant/pull/22653
[#22658]: https://github.com/home-assistant/home-assistant/pull/22658
[#22661]: https://github.com/home-assistant/home-assistant/pull/22661
[#22662]: https://github.com/home-assistant/home-assistant/pull/22662
[#22663]: https://github.com/home-assistant/home-assistant/pull/22663
[#22667]: https://github.com/home-assistant/home-assistant/pull/22667
[#22668]: https://github.com/home-assistant/home-assistant/pull/22668
[#22674]: https://github.com/home-assistant/home-assistant/pull/22674
[#22679]: https://github.com/home-assistant/home-assistant/pull/22679
[#22681]: https://github.com/home-assistant/home-assistant/pull/22681
[#22683]: https://github.com/home-assistant/home-assistant/pull/22683
[#22684]: https://github.com/home-assistant/home-assistant/pull/22684
[#22686]: https://github.com/home-assistant/home-assistant/pull/22686
[#22687]: https://github.com/home-assistant/home-assistant/pull/22687
[#22691]: https://github.com/home-assistant/home-assistant/pull/22691
[#22692]: https://github.com/home-assistant/home-assistant/pull/22692
[#22696]: https://github.com/home-assistant/home-assistant/pull/22696
[#22698]: https://github.com/home-assistant/home-assistant/pull/22698
[#22699]: https://github.com/home-assistant/home-assistant/pull/22699
[#22703]: https://github.com/home-assistant/home-assistant/pull/22703
[#22704]: https://github.com/home-assistant/home-assistant/pull/22704
[#22705]: https://github.com/home-assistant/home-assistant/pull/22705
[#22707]: https://github.com/home-assistant/home-assistant/pull/22707
[#22708]: https://github.com/home-assistant/home-assistant/pull/22708
[#22710]: https://github.com/home-assistant/home-assistant/pull/22710
[#22715]: https://github.com/home-assistant/home-assistant/pull/22715
[#22717]: https://github.com/home-assistant/home-assistant/pull/22717
[#22718]: https://github.com/home-assistant/home-assistant/pull/22718
[#22719]: https://github.com/home-assistant/home-assistant/pull/22719
[#22721]: https://github.com/home-assistant/home-assistant/pull/22721
[#22737]: https://github.com/home-assistant/home-assistant/pull/22737
[#22738]: https://github.com/home-assistant/home-assistant/pull/22738
[#22748]: https://github.com/home-assistant/home-assistant/pull/22748
[#22751]: https://github.com/home-assistant/home-assistant/pull/22751
[#22753]: https://github.com/home-assistant/home-assistant/pull/22753
[#22767]: https://github.com/home-assistant/home-assistant/pull/22767
[#22774]: https://github.com/home-assistant/home-assistant/pull/22774
[#22784]: https://github.com/home-assistant/home-assistant/pull/22784
[#22785]: https://github.com/home-assistant/home-assistant/pull/22785
[#22788]: https://github.com/home-assistant/home-assistant/pull/22788
[#22791]: https://github.com/home-assistant/home-assistant/pull/22791
[#22792]: https://github.com/home-assistant/home-assistant/pull/22792
[#22794]: https://github.com/home-assistant/home-assistant/pull/22794
[#22802]: https://github.com/home-assistant/home-assistant/pull/22802
[#22805]: https://github.com/home-assistant/home-assistant/pull/22805
[#22806]: https://github.com/home-assistant/home-assistant/pull/22806
[#22809]: https://github.com/home-assistant/home-assistant/pull/22809
[#22810]: https://github.com/home-assistant/home-assistant/pull/22810
[#22816]: https://github.com/home-assistant/home-assistant/pull/22816
[#22822]: https://github.com/home-assistant/home-assistant/pull/22822
[#22824]: https://github.com/home-assistant/home-assistant/pull/22824
[#22826]: https://github.com/home-assistant/home-assistant/pull/22826
[#22828]: https://github.com/home-assistant/home-assistant/pull/22828
[#22829]: https://github.com/home-assistant/home-assistant/pull/22829
[#22830]: https://github.com/home-assistant/home-assistant/pull/22830
[#22831]: https://github.com/home-assistant/home-assistant/pull/22831
[#22832]: https://github.com/home-assistant/home-assistant/pull/22832
[#22833]: https://github.com/home-assistant/home-assistant/pull/22833
[#22834]: https://github.com/home-assistant/home-assistant/pull/22834
[#22835]: https://github.com/home-assistant/home-assistant/pull/22835
[#22836]: https://github.com/home-assistant/home-assistant/pull/22836
[#22837]: https://github.com/home-assistant/home-assistant/pull/22837
[#22838]: https://github.com/home-assistant/home-assistant/pull/22838
[#22846]: https://github.com/home-assistant/home-assistant/pull/22846
[#22847]: https://github.com/home-assistant/home-assistant/pull/22847
[#22850]: https://github.com/home-assistant/home-assistant/pull/22850
[#22855]: https://github.com/home-assistant/home-assistant/pull/22855
[#22858]: https://github.com/home-assistant/home-assistant/pull/22858
[#22859]: https://github.com/home-assistant/home-assistant/pull/22859
[#22860]: https://github.com/home-assistant/home-assistant/pull/22860
[#22867]: https://github.com/home-assistant/home-assistant/pull/22867
[#22868]: https://github.com/home-assistant/home-assistant/pull/22868
[#22871]: https://github.com/home-assistant/home-assistant/pull/22871
[#22875]: https://github.com/home-assistant/home-assistant/pull/22875
[#22876]: https://github.com/home-assistant/home-assistant/pull/22876
[#22878]: https://github.com/home-assistant/home-assistant/pull/22878
[#22880]: https://github.com/home-assistant/home-assistant/pull/22880
[#22884]: https://github.com/home-assistant/home-assistant/pull/22884
[#22885]: https://github.com/home-assistant/home-assistant/pull/22885
[#22886]: https://github.com/home-assistant/home-assistant/pull/22886
[#22892]: https://github.com/home-assistant/home-assistant/pull/22892
[#22894]: https://github.com/home-assistant/home-assistant/pull/22894
[#22896]: https://github.com/home-assistant/home-assistant/pull/22896
[#22899]: https://github.com/home-assistant/home-assistant/pull/22899
[#22901]: https://github.com/home-assistant/home-assistant/pull/22901
[#22902]: https://github.com/home-assistant/home-assistant/pull/22902
[#22903]: https://github.com/home-assistant/home-assistant/pull/22903
[#22906]: https://github.com/home-assistant/home-assistant/pull/22906
[#22908]: https://github.com/home-assistant/home-assistant/pull/22908
[#22909]: https://github.com/home-assistant/home-assistant/pull/22909
[#22911]: https://github.com/home-assistant/home-assistant/pull/22911
[#22912]: https://github.com/home-assistant/home-assistant/pull/22912
[#22913]: https://github.com/home-assistant/home-assistant/pull/22913
[#22922]: https://github.com/home-assistant/home-assistant/pull/22922
[#22923]: https://github.com/home-assistant/home-assistant/pull/22923
[#22928]: https://github.com/home-assistant/home-assistant/pull/22928
[#22929]: https://github.com/home-assistant/home-assistant/pull/22929
[#22935]: https://github.com/home-assistant/home-assistant/pull/22935
[#22939]: https://github.com/home-assistant/home-assistant/pull/22939
[#22940]: https://github.com/home-assistant/home-assistant/pull/22940
[#22943]: https://github.com/home-assistant/home-assistant/pull/22943
[#22944]: https://github.com/home-assistant/home-assistant/pull/22944
[#22951]: https://github.com/home-assistant/home-assistant/pull/22951
[#22952]: https://github.com/home-assistant/home-assistant/pull/22952
[#22954]: https://github.com/home-assistant/home-assistant/pull/22954
[#22956]: https://github.com/home-assistant/home-assistant/pull/22956
[#22960]: https://github.com/home-assistant/home-assistant/pull/22960
[#22961]: https://github.com/home-assistant/home-assistant/pull/22961
[#22962]: https://github.com/home-assistant/home-assistant/pull/22962
[#22963]: https://github.com/home-assistant/home-assistant/pull/22963
[#22964]: https://github.com/home-assistant/home-assistant/pull/22964
[#22965]: https://github.com/home-assistant/home-assistant/pull/22965
[#22966]: https://github.com/home-assistant/home-assistant/pull/22966
[#22974]: https://github.com/home-assistant/home-assistant/pull/22974
[#22975]: https://github.com/home-assistant/home-assistant/pull/22975
[#22980]: https://github.com/home-assistant/home-assistant/pull/22980
[#22982]: https://github.com/home-assistant/home-assistant/pull/22982
[#22985]: https://github.com/home-assistant/home-assistant/pull/22985
[#22987]: https://github.com/home-assistant/home-assistant/pull/22987
[#22989]: https://github.com/home-assistant/home-assistant/pull/22989
[#22991]: https://github.com/home-assistant/home-assistant/pull/22991
[#22995]: https://github.com/home-assistant/home-assistant/pull/22995
[#22996]: https://github.com/home-assistant/home-assistant/pull/22996
[#22997]: https://github.com/home-assistant/home-assistant/pull/22997
[#22998]: https://github.com/home-assistant/home-assistant/pull/22998
[#23001]: https://github.com/home-assistant/home-assistant/pull/23001
[#23002]: https://github.com/home-assistant/home-assistant/pull/23002
[#23014]: https://github.com/home-assistant/home-assistant/pull/23014
[#23022]: https://github.com/home-assistant/home-assistant/pull/23022
[#23023]: https://github.com/home-assistant/home-assistant/pull/23023
[#23024]: https://github.com/home-assistant/home-assistant/pull/23024
[#23025]: https://github.com/home-assistant/home-assistant/pull/23025
[#23026]: https://github.com/home-assistant/home-assistant/pull/23026
[#23029]: https://github.com/home-assistant/home-assistant/pull/23029
[#23030]: https://github.com/home-assistant/home-assistant/pull/23030
[#23031]: https://github.com/home-assistant/home-assistant/pull/23031
[#23037]: https://github.com/home-assistant/home-assistant/pull/23037
[#23040]: https://github.com/home-assistant/home-assistant/pull/23040
[#23043]: https://github.com/home-assistant/home-assistant/pull/23043
[#23044]: https://github.com/home-assistant/home-assistant/pull/23044
[#23046]: https://github.com/home-assistant/home-assistant/pull/23046
[#23048]: https://github.com/home-assistant/home-assistant/pull/23048
[#23054]: https://github.com/home-assistant/home-assistant/pull/23054
[#23057]: https://github.com/home-assistant/home-assistant/pull/23057
[#23058]: https://github.com/home-assistant/home-assistant/pull/23058
[#23062]: https://github.com/home-assistant/home-assistant/pull/23062
[#23063]: https://github.com/home-assistant/home-assistant/pull/23063
[#23065]: https://github.com/home-assistant/home-assistant/pull/23065
[#23066]: https://github.com/home-assistant/home-assistant/pull/23066
[#23071]: https://github.com/home-assistant/home-assistant/pull/23071
[#23074]: https://github.com/home-assistant/home-assistant/pull/23074
[#23081]: https://github.com/home-assistant/home-assistant/pull/23081
[#23082]: https://github.com/home-assistant/home-assistant/pull/23082
[#23084]: https://github.com/home-assistant/home-assistant/pull/23084
[#23087]: https://github.com/home-assistant/home-assistant/pull/23087
[#23090]: https://github.com/home-assistant/home-assistant/pull/23090
[#23093]: https://github.com/home-assistant/home-assistant/pull/23093
[#23095]: https://github.com/home-assistant/home-assistant/pull/23095
[#23098]: https://github.com/home-assistant/home-assistant/pull/23098
[#23100]: https://github.com/home-assistant/home-assistant/pull/23100
[#23104]: https://github.com/home-assistant/home-assistant/pull/23104
[#23107]: https://github.com/home-assistant/home-assistant/pull/23107
[#23109]: https://github.com/home-assistant/home-assistant/pull/23109
[#23111]: https://github.com/home-assistant/home-assistant/pull/23111
[#23112]: https://github.com/home-assistant/home-assistant/pull/23112
[#23113]: https://github.com/home-assistant/home-assistant/pull/23113
[#23115]: https://github.com/home-assistant/home-assistant/pull/23115
[#23116]: https://github.com/home-assistant/home-assistant/pull/23116
[#23118]: https://github.com/home-assistant/home-assistant/pull/23118
[#23119]: https://github.com/home-assistant/home-assistant/pull/23119
[#23120]: https://github.com/home-assistant/home-assistant/pull/23120
[#23122]: https://github.com/home-assistant/home-assistant/pull/23122
[#23123]: https://github.com/home-assistant/home-assistant/pull/23123
[#23125]: https://github.com/home-assistant/home-assistant/pull/23125
[#23130]: https://github.com/home-assistant/home-assistant/pull/23130
[#23132]: https://github.com/home-assistant/home-assistant/pull/23132
[#23133]: https://github.com/home-assistant/home-assistant/pull/23133
[#23134]: https://github.com/home-assistant/home-assistant/pull/23134
[#23144]: https://github.com/home-assistant/home-assistant/pull/23144
[#23145]: https://github.com/home-assistant/home-assistant/pull/23145
[#23146]: https://github.com/home-assistant/home-assistant/pull/23146
[#23148]: https://github.com/home-assistant/home-assistant/pull/23148
[#23149]: https://github.com/home-assistant/home-assistant/pull/23149
[#23151]: https://github.com/home-assistant/home-assistant/pull/23151
[#23152]: https://github.com/home-assistant/home-assistant/pull/23152
[#23155]: https://github.com/home-assistant/home-assistant/pull/23155
[#23156]: https://github.com/home-assistant/home-assistant/pull/23156
[#23157]: https://github.com/home-assistant/home-assistant/pull/23157
[#23159]: https://github.com/home-assistant/home-assistant/pull/23159
[#23169]: https://github.com/home-assistant/home-assistant/pull/23169
[#23174]: https://github.com/home-assistant/home-assistant/pull/23174
[#23176]: https://github.com/home-assistant/home-assistant/pull/23176
[#23177]: https://github.com/home-assistant/home-assistant/pull/23177
[#23182]: https://github.com/home-assistant/home-assistant/pull/23182
[#23185]: https://github.com/home-assistant/home-assistant/pull/23185
[#23193]: https://github.com/home-assistant/home-assistant/pull/23193
[#23196]: https://github.com/home-assistant/home-assistant/pull/23196
[#23200]: https://github.com/home-assistant/home-assistant/pull/23200
[#23201]: https://github.com/home-assistant/home-assistant/pull/23201
[#23204]: https://github.com/home-assistant/home-assistant/pull/23204
[#23205]: https://github.com/home-assistant/home-assistant/pull/23205
[#23206]: https://github.com/home-assistant/home-assistant/pull/23206
[#23208]: https://github.com/home-assistant/home-assistant/pull/23208
[#23209]: https://github.com/home-assistant/home-assistant/pull/23209
[#23210]: https://github.com/home-assistant/home-assistant/pull/23210
[#23213]: https://github.com/home-assistant/home-assistant/pull/23213
[#23215]: https://github.com/home-assistant/home-assistant/pull/23215
[#23216]: https://github.com/home-assistant/home-assistant/pull/23216
[#23217]: https://github.com/home-assistant/home-assistant/pull/23217
[#23222]: https://github.com/home-assistant/home-assistant/pull/23222
[#23223]: https://github.com/home-assistant/home-assistant/pull/23223
[#23225]: https://github.com/home-assistant/home-assistant/pull/23225
[#23242]: https://github.com/home-assistant/home-assistant/pull/23242
[#23261]: https://github.com/home-assistant/home-assistant/pull/23261
[#23270]: https://github.com/home-assistant/home-assistant/pull/23270
[#23275]: https://github.com/home-assistant/home-assistant/pull/23275
[#23291]: https://github.com/home-assistant/home-assistant/pull/23291
[#23294]: https://github.com/home-assistant/home-assistant/pull/23294
[#23297]: https://github.com/home-assistant/home-assistant/pull/23297
[#23303]: https://github.com/home-assistant/home-assistant/pull/23303
[#23307]: https://github.com/home-assistant/home-assistant/pull/23307
[#23309]: https://github.com/home-assistant/home-assistant/pull/23309
[#23310]: https://github.com/home-assistant/home-assistant/pull/23310
[#23313]: https://github.com/home-assistant/home-assistant/pull/23313
[#23316]: https://github.com/home-assistant/home-assistant/pull/23316
[#23328]: https://github.com/home-assistant/home-assistant/pull/23328
[#23332]: https://github.com/home-assistant/home-assistant/pull/23332
[#23335]: https://github.com/home-assistant/home-assistant/pull/23335
[#23350]: https://github.com/home-assistant/home-assistant/pull/23350
[@AZDane]: https://github.com/AZDane
[@ActuallyRuben]: https://github.com/ActuallyRuben
[@Adminiuga]: https://github.com/Adminiuga
[@Anonym-tsk]: https://github.com/Anonym-tsk
[@BKPepe]: https://github.com/BKPepe
[@Cereal2nd]: https://github.com/Cereal2nd
[@GeoffAtHome]: https://github.com/GeoffAtHome
[@Jc2k]: https://github.com/Jc2k
[@JeffLIrion]: https://github.com/JeffLIrion
[@JumpMaster]: https://github.com/JumpMaster
[@Kane610]: https://github.com/Kane610
[@Limych]: https://github.com/Limych
[@MartinHjelmare]: https://github.com/MartinHjelmare
[@N1nja98]: https://github.com/N1nja98
[@NoUseFreak]: https://github.com/NoUseFreak
[@OleksandrBerchenko]: https://github.com/OleksandrBerchenko
[@Oro]: https://github.com/Oro
[@OttoWinter]: https://github.com/OttoWinter
[@SukramJ]: https://github.com/SukramJ
[@Swamp-Ig]: https://github.com/Swamp-Ig
[@ThaStealth]: https://github.com/ThaStealth
[@VDRainer]: https://github.com/VDRainer
[@Villhellm]: https://github.com/Villhellm
[@VirtualL]: https://github.com/VirtualL
[@Yarikx]: https://github.com/Yarikx
[@aav7fl]: https://github.com/aav7fl
[@adrum]: https://github.com/adrum
[@ahayworth]: https://github.com/ahayworth
[@akasma74]: https://github.com/akasma74
[@alengwenus]: https://github.com/alengwenus
[@amelchio]: https://github.com/amelchio
[@andrewsayre]: https://github.com/andrewsayre
[@aprosvetova]: https://github.com/aprosvetova
[@arsaboo]: https://github.com/arsaboo
[@austinmroczek]: https://github.com/austinmroczek
[@autinerd]: https://github.com/autinerd
[@awarecan]: https://github.com/awarecan
[@bachya]: https://github.com/bachya
[@balloob]: https://github.com/balloob
[@bendews]: https://github.com/bendews
[@c-soft]: https://github.com/c-soft
[@carstenschroeder]: https://github.com/carstenschroeder
[@cdce8p]: https://github.com/cdce8p
[@cgarwood]: https://github.com/cgarwood
[@cgtobi]: https://github.com/cgtobi
[@choss]: https://github.com/choss
[@cmsimike]: https://github.com/cmsimike
[@damarco]: https://github.com/damarco
[@dgomes]: https://github.com/dgomes
[@dmulcahey]: https://github.com/dmulcahey
[@dreed47]: https://github.com/dreed47
[@easink]: https://github.com/easink
[@ehendrix23]: https://github.com/ehendrix23
[@elupus]: https://github.com/elupus
[@emontnemery]: https://github.com/emontnemery
[@etheralm]: https://github.com/etheralm
[@evanjd]: https://github.com/evanjd
[@exxamalte]: https://github.com/exxamalte
[@fabaff]: https://github.com/fabaff
[@fbradyirl]: https://github.com/fbradyirl
[@fredrike]: https://github.com/fredrike
[@fucm]: https://github.com/fucm
[@giefca]: https://github.com/giefca
[@hunterjm]: https://github.com/hunterjm
[@iantrich]: https://github.com/iantrich
[@jvanderneutstulen]: https://github.com/jvanderneutstulen
[@kellerza]: https://github.com/kellerza
[@kstaniek]: https://github.com/kstaniek
[@loe]: https://github.com/loe
[@ludeeus]: https://github.com/ludeeus
[@maddenp]: https://github.com/maddenp
[@markusressel]: https://github.com/markusressel
[@mgiako]: https://github.com/mgiako
[@mitchellrj]: https://github.com/mitchellrj
[@molobrakos]: https://github.com/molobrakos
[@mwegrzynek]: https://github.com/mwegrzynek
[@mzdrale]: https://github.com/mzdrale
[@oblogic7]: https://github.com/oblogic7
[@panosmz]: https://github.com/panosmz
[@pavoni]: https://github.com/pavoni
[@pbalogh77]: https://github.com/pbalogh77
[@perosb]: https://github.com/perosb
[@pnbruckner]: https://github.com/pnbruckner
[@pszafer]: https://github.com/pszafer
[@pvizeli]: https://github.com/pvizeli
[@renemarc]: https://github.com/renemarc
[@robbiet480]: https://github.com/robbiet480
[@roblandry]: https://github.com/roblandry
[@rohankapoorcom]: https://github.com/rohankapoorcom
[@royto]: https://github.com/royto
[@rytilahti]: https://github.com/rytilahti
[@scop]: https://github.com/scop
[@scornelissen85]: https://github.com/scornelissen85
[@stbkde]: https://github.com/stbkde
[@techfreek]: https://github.com/techfreek
[@teliov]: https://github.com/teliov
[@tlyakhov]: https://github.com/tlyakhov
[@trilu2000]: https://github.com/trilu2000
[@tsvi]: https://github.com/tsvi
[@vanstinator]: https://github.com/vanstinator
[@yosilevy]: https://github.com/yosilevy
[@zewelor]: https://github.com/zewelor
[@zxdavb]: https://github.com/zxdavb
[ads docs]: /components/ads/
[aftership docs]: /components/aftership/
[air_quality docs]: /components/air_quality/
[ambient_station docs]: /components/ambient_station/
[amcrest docs]: /components/amcrest/
[androidtv docs]: /components/androidtv/
[automation docs]: /components/automation/
[awair docs]: /components/awair/
[aws docs]: /components/aws/
[aws_lambda docs]: /components/aws_lambda/
[aws_sns docs]: /components/aws_sns/
[aws_sqs docs]: /components/aws_sqs/
[axis docs]: /components/axis/
[binary_sensor docs]: /components/binary_sensor/
[bloomsky docs]: /components/bloomsky/
[bluetooth_le_tracker docs]: /components/bluetooth_le_tracker/
[bom docs]: /components/bom/
[broadlink docs]: /components/broadlink/
[caldav docs]: /components/caldav/
[camera docs]: /components/camera/
[cast docs]: /components/cast/
[cisco_ios docs]: /components/cisco_ios/
[cisco_mobility_express docs]: /components/cisco_mobility_express/
[cisco_webex_teams docs]: /components/cisco_webex_teams/
[ciscospark docs]: /components/ciscospark/
[citybikes docs]: /components/citybikes/
[cloud docs]: /components/cloud/
[command_line docs]: /components/command_line/
[concord232 docs]: /components/concord232/
[cover docs]: /components/cover/
[daikin docs]: /components/daikin/
[darksky docs]: /components/darksky/
[deconz docs]: /components/deconz/
[decora_wifi docs]: /components/decora_wifi/
[default_config docs]: /components/default_config/
[demo docs]: /components/demo/
[dialogflow docs]: /components/dialogflow/
[discovery docs]: /components/discovery/
[doorbird docs]: /components/doorbird/
[dyson docs]: /components/dyson/
[eliqonline docs]: /components/eliqonline/
[emulated_hue docs]: /components/emulated_hue/
[enigma2 docs]: /components/enigma2/
[epson docs]: /components/epson/
[epsonworkforce docs]: /components/epsonworkforce/
[esphome docs]: /components/esphome/
[evohome docs]: /components/evohome/
[fibaro docs]: /components/fibaro/
[flux_led docs]: /components/flux_led/
[geniushub docs]: /components/geniushub/
[geo_rss_events docs]: /components/geo_rss_events/
[geofency docs]: /components/geofency/
[glances docs]: /components/glances/
[google docs]: /components/google/
[google_assistant docs]: /components/google_assistant/
[google_translate docs]: /components/google_translate/
[gpslogger docs]: /components/gpslogger/
[gtfs docs]: /components/gtfs/
[hangouts docs]: /components/hangouts/
[harmony docs]: /components/harmony/
[hassio docs]: /components/hassio/
[heos docs]: /components/heos/
[hikvisioncam docs]: /components/hikvisioncam/
[homekit docs]: /components/homekit/
[homekit_controller docs]: /components/homekit_controller/
[homematic docs]: /components/homematic/
[homematicip_cloud docs]: /components/homematicip_cloud/
[honeywell docs]: /components/honeywell/
[html5 docs]: /components/html5/
[hue docs]: /components/hue/
[ifttt docs]: /components/ifttt/
[ign_sismologia docs]: /components/ign_sismologia/
[influxdb docs]: /components/influxdb/
[insteon_local docs]: /components/insteon_local/
[insteon_plm docs]: /components/insteon_plm/
[introduction docs]: /components/introduction/
[lcn docs]: /components/lcn/
[light docs]: /components/light/
[lightwave docs]: /components/lightwave/
[linky docs]: /components/linky/
[locative docs]: /components/locative/
[logi_circle docs]: /components/logi_circle/
[london_underground docs]: /components/london_underground/
[loopenergy docs]: /components/loopenergy/
[luci docs]: /components/luci/
[luftdaten docs]: /components/luftdaten/
[mailgun docs]: /components/mailgun/
[media_extractor docs]: /components/media_extractor/
[media_player docs]: /components/media_player/
[mikrotik docs]: /components/mikrotik/
[mobile_app docs]: /components/mobile_app/
[mqtt docs]: /components/mqtt/
[myq docs]: /components/myq/
[mysensors docs]: /components/mysensors/
[n26 docs]: /components/n26/
[nanoleaf docs]: /components/nanoleaf/
[netatmo docs]: /components/netatmo/
[netgear_lte docs]: /components/netgear_lte/
[niko_home_control docs]: /components/niko_home_control/
[oasa_telematics docs]: /components/oasa_telematics/
[openuv docs]: /components/openuv/
[osramlightify docs]: /components/osramlightify/
[owntracks docs]: /components/owntracks/
[person docs]: /components/person/
[plex docs]: /components/plex/
[python_script docs]: /components/python_script/
[qwikswitch docs]: /components/qwikswitch/
[raincloud docs]: /components/raincloud/
[rainmachine docs]: /components/rainmachine/
[rflink docs]: /components/rflink/
[ring docs]: /components/ring/
[satel_integra docs]: /components/satel_integra/
[script docs]: /components/script/
[sensor docs]: /components/sensor/
[seventeentrack docs]: /components/seventeentrack/
[simplisafe docs]: /components/simplisafe/
[skybell docs]: /components/skybell/
[somfy_mylink docs]: /components/somfy_mylink/
[sonos docs]: /components/sonos/
[stiebel_eltron docs]: /components/stiebel_eltron/
[stream docs]: /components/stream/
[supla docs]: /components/supla/
[switch docs]: /components/switch/
[telegram_bot docs]: /components/telegram_bot/
[tellduslive docs]: /components/tellduslive/
[tplink docs]: /components/tplink/
[trend docs]: /components/trend/
[tts docs]: /components/tts/
[twilio docs]: /components/twilio/
[ubee docs]: /components/ubee/
[version docs]: /components/version/
[water_heater docs]: /components/water_heater/
[websocket_api docs]: /components/websocket_api/
[wemo docs]: /components/wemo/
[xiaomi_miio docs]: /components/xiaomi_miio/
[yeelight docs]: /components/yeelight/
[zengge docs]: /components/zengge/
[zestimate docs]: /components/zestimate/
[zha docs]: /components/zha/
[zwave docs]: /components/zwave/

View File

@ -0,0 +1,13 @@
---
layout: page
title: "Epson Workforce"
description: "Instructions on how to setup Epson Workforce with Home Assistant."
date: 2019-04-24 07:00
sidebar: true
comments: false
sharing: true
footer: true
ha_release: 0.92
---
The Epson workforce integration.

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 218 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB