---
title: "0.91: More streaming, better Zigbee, cameras with ESPHome"
description: "Big update that brings goodies across the board."
date: 2019-04-03 00:11:03
date_formatted: "April 3, 2019"
author: Paulus Schoutsen
author_twitter: balloob
categories: Release-Notes
og_image: /images/blog/2019-04-release-91/social.png
---

It's time for release 0.91 and this release is all about streaming cameras. Home Assistant 0.90 allowed users to stream cameras in the frontend and play camera streams on Chromecasts. This release adds support to:

- Record camera streams to disk with the new recording service for the camera integration
- Support to ask Google Assistant to show your camera on its display or on a Chromecast
- Preload streams so that bringing up a stream on a device is super fast. This can be configured on a per camera basis via the camera more info dialog.

Thanks to [@hunterjm] for all this work on this! ❤️ Check the latest release of the [Home Assistant podcast](https://hasspodcast.io/home-assistant-podcast-47-0-91-and-streaming-cameras-everywhere-with-jason/) for an interview with [@hunterjm] about streams in Home Assistant.

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">Love the new streaming service in <a href="https://twitter.com/home_assistant?ref_src=twsrc%5Etfw">@home_assistant</a> 0.91!<br>Five vastly different techs in collab! &lt;3 <a href="https://t.co/Qk9rC3Uooi">pic.twitter.com/Qk9rC3Uooi</a></p>&mdash; Torbjörn Söderberg (@tubstr) <a href="https://twitter.com/tubstr/status/1113845749492662274?ref_src=twsrc%5Etfw">April 4, 2019</a>
</blockquote>

We're still in the process of updating more cameras to support the stream component. If you want to try it today, the easiest approach is to configure a [generic camera][generic docs] with a `stream_source` or buy a camera that supports the standard ONVIF protocol.

A BIG shout to [@awarecan], who has migrated our CI infrastructure to [CircleCI](https://www.circleci.com) and [Codecov](https://codecov.io/). CircleCI's advanced caching and code splitting controls has speed up tests significantly. Codecov tracks our code coverage and generates detailed reports for each contribution to see how well it is tested.

And in case you missed the announcement, we will soon start working on [an official Android app](/blog/2019/04/01/android/). And in case it wasn't clear, our other announcement, that we would [occasionally show ads in the UI](https://twitter.com/home_assistant/status/1112752645763223552), was an April fools joke 😁.

## Notable breaking change

We finished the great migration. All built-in platforms are now in their own folder. This means that if you had a custom component or platform that had the same name as a built-in one, you have to rename it. If you still have platforms in your `custom_components/` directory in the old file format, `sensor/my_platform.py`, rename it to `my_platform/sensor.py`. It still works but it will not be supported in a future release.

Thanks to [@Swamp-Ig], [@robbiet480] and [@cgtobi] for their work on this!

## Trusted networks now support trusted users

Trusted networks has been updated by [@awarecan] to allow specifying specific uses that specific IP addresses are allowed to log into. If a user is logging in with trusted networks and there is only a single user, you can now configure it to skip the login form and automatically login. See [the documentation](/docs/authentication/providers/#trusted-networks) for more info.

## ESPHome Cameras

This release adds camera support to the ESPHome integration. If you haven't heard about [ESPHome](https://www.esphome.io) yet, it allows you to create your own sensors and smart devices and configure them using YAML. With Home Assistant 0.91, it is now possible to integrate cameras. This means that you can have a WiFi enabled camera that integrates automatically into Home Assistant for as little as $9 😲.

Check this cool demo, part of [this blog post](https://www.dopebuild.com/i-am-sorry-dave-i-am-unable-to-do-that/):

<div class='videoWrapper'>
<iframe width="560" height="315" src="https://www.youtube.com/embed/-9luy-od6Tw" frameborder="0" allowfullscreen></iframe>
</div>

## Zigbee ZHA pairing experience

Every release our Zigbee integration is getting better thanks to the hard work by [@dmulcahey], [@damarco] and [@Adminiuga]. This release introduces a brand new pairing experience. While pairing mode is enabled, any device that is getting paired will instantly show up, allowing users to configure the name and the area.

<div class='videoWrapper'>
<iframe width="560" height="315" src="https://www.youtube.com/embed/ye-tf2RFfLQ" frameborder="0" allowfullscreen></iframe>
</div>

## VSCode hass.io add-on

If you run hass.io on an Intel NUC and haven't seen it yet, check out the VS Code add-on by Frenck.

<blockquote class="twitter-tweet"><p lang="en" dir="ltr">I&#39;m so excited to release this add-on 😃<br><br>Today I give you the Visual Studio Code!! add-on for <a href="https://twitter.com/home_assistant?ref_src=twsrc%5Etfw">@home_assistant</a>! 🎉<br><br>The full VSCode experience in your HA frontend including the HA VSCode extension preconfigured out of the box!<a href="https://t.co/7bQ6JIF8yQ">https://t.co/7bQ6JIF8yQ</a><a href="https://twitter.com/hashtag/InternetOfThings?src=hash&amp;ref_src=twsrc%5Etfw">#InternetOfThings</a> <a href="https://twitter.com/hashtag/hassio?src=hash&amp;ref_src=twsrc%5Etfw">#hassio</a> <a href="https://t.co/8CwTfKVJvV">pic.twitter.com/8CwTfKVJvV</a></p>&mdash; Franck Nijhof (@Frenck) <a href="https://twitter.com/Frenck/status/1110654397485334533?ref_src=twsrc%5Etfw">March 26, 2019</a>
</blockquote>

## New Platforms

- Add LCN sensor platform ([@alengwenus] - [#21440]) ([lcn docs]) (new-platform)
- Add ESPHome Camera ([@OttoWinter] - [#22107]) ([esphome docs]) (new-platform)
- Add Freebox switch platform ([@SNoof85] - [#21710]) ([freebox docs]) (new-platform)
- Add support for Tfiac Climate component ([@fredrike] - [#21823]) ([tfiac docs]) (new-platform)
- Add switches to control Daikin Airbase zones ([@fredrike] - [#22417]) ([daikin docs]) (new-platform)

## Release 0.91.1 - April 4

- Change URL handling ([@pvizeli] - [#22713]) ([hassio docs])
- fix device class lookup for binary sensors ([@dmulcahey] - [#22724]) ([zha docs])
- Fix ingress routing with / ([@pvizeli] - [#22728]) ([hassio docs])
- Fix chunk streaming ([@pvizeli] - [#22730]) ([hassio docs])
- Fix incorrect "Unavailable" Ambient sensors ([@bachya] - [#22734]) ([ambient_station docs])
- Bump aioambient to 0.2.0 ([@bachya] - [#22736]) ([ambient_station docs])
- Update Foscam stream for newer models ([@cwhits] - [#22744]) ([foscam docs])
- use the input stream codec as the template for the output streams ([@hunterjm] - [#22747]) ([stream docs])
- fixes configuration flow #22706 ([@fredrike] - [#22754]) ([daikin docs])

[#22713]: https://github.com/home-assistant/home-assistant/pull/22713
[#22724]: https://github.com/home-assistant/home-assistant/pull/22724
[#22728]: https://github.com/home-assistant/home-assistant/pull/22728
[#22730]: https://github.com/home-assistant/home-assistant/pull/22730
[#22734]: https://github.com/home-assistant/home-assistant/pull/22734
[#22736]: https://github.com/home-assistant/home-assistant/pull/22736
[#22744]: https://github.com/home-assistant/home-assistant/pull/22744
[#22747]: https://github.com/home-assistant/home-assistant/pull/22747
[#22754]: https://github.com/home-assistant/home-assistant/pull/22754
[@bachya]: https://github.com/bachya
[@cwhits]: https://github.com/cwhits
[@dmulcahey]: https://github.com/dmulcahey
[@fredrike]: https://github.com/fredrike
[@hunterjm]: https://github.com/hunterjm
[@pvizeli]: https://github.com/pvizeli
[ambient_station docs]: /integrations/ambient_station/
[daikin docs]: /integrations/daikin/
[foscam docs]: /integrations/foscam/
[hassio docs]: /integrations/hassio/
[stream docs]: /integrations/stream/
[zha docs]: /integrations/zha/

## Release 0.91.2 - April 8

- Correctly load Mopar's config ([@rohankapoorcom] - [#22771])
- Fix konnected unique_id computation for switches ([@heythisisnate] - [#22777]) ([konnected docs]) (breaking change)
- make the custom polling actually request state ([@dmulcahey] - [#22778]) ([zha docs])
- ZHA Light debug logging. ([@Adminiuga] - [#22776]) ([zha docs])
- Fix tado turn on off ([@wmalgadey] - [#22291]) ([tado docs])
- Add new mobile_app webhook command: get_zones ([@robbiet480] - [#22604]) ([mobile_app docs])
- Add optional rtsp_port for Foscam ([@cwhits] - [#22786]) ([foscam docs])
- Improve yeelight imports ([@zewelor] - [#22804]) ([yeelight docs])
- Add a new mobile_app webhook command to get config ([@robbiet480] - [#22813]) ([mobile_app docs])
- Fix for optional values in the update_location webhook call ([@robbiet480] - [#22817]) ([mobile_app docs])
- coerce duration and lookback to int so they can be used in template automation ([@hunterjm] - [#22819]) ([camera docs])
- Fix for rate limits should be optional ([@robbiet480] - [#22823]) ([mobile_app docs])
- Use relative imports in yeelight ([@zewelor] - [#22839]) ([yeelight docs])
- Fix yeelight possible array change during iteration ([@zewelor] - [#22849]) ([yeelight docs])
- Fix content_type handling ingress ([@pvizeli] - [#22864]) ([hassio docs])
- Improve mobile_app sensor responses and expected values ([@robbiet480] - [#22884]) ([mobile_app docs])

[#22291]: https://github.com/home-assistant/home-assistant/pull/22291
[#22604]: https://github.com/home-assistant/home-assistant/pull/22604
[#22771]: https://github.com/home-assistant/home-assistant/pull/22771
[#22776]: https://github.com/home-assistant/home-assistant/pull/22776
[#22777]: https://github.com/home-assistant/home-assistant/pull/22777
[#22778]: https://github.com/home-assistant/home-assistant/pull/22778
[#22786]: https://github.com/home-assistant/home-assistant/pull/22786
[#22804]: https://github.com/home-assistant/home-assistant/pull/22804
[#22813]: https://github.com/home-assistant/home-assistant/pull/22813
[#22817]: https://github.com/home-assistant/home-assistant/pull/22817
[#22819]: https://github.com/home-assistant/home-assistant/pull/22819
[#22823]: https://github.com/home-assistant/home-assistant/pull/22823
[#22839]: https://github.com/home-assistant/home-assistant/pull/22839
[#22849]: https://github.com/home-assistant/home-assistant/pull/22849
[#22864]: https://github.com/home-assistant/home-assistant/pull/22864
[#22884]: https://github.com/home-assistant/home-assistant/pull/22884
[@Adminiuga]: https://github.com/Adminiuga
[@cwhits]: https://github.com/cwhits
[@dmulcahey]: https://github.com/dmulcahey
[@heythisisnate]: https://github.com/heythisisnate
[@hunterjm]: https://github.com/hunterjm
[@pvizeli]: https://github.com/pvizeli
[@robbiet480]: https://github.com/robbiet480
[@rohankapoorcom]: https://github.com/rohankapoorcom
[@wmalgadey]: https://github.com/wmalgadey
[@zewelor]: https://github.com/zewelor
[camera docs]: /integrations/camera/
[foscam docs]: /integrations/foscam/
[hassio docs]: /integrations/hassio/
[konnected docs]: /integrations/konnected/
[mobile_app docs]: /integrations/mobile_app/
[tado docs]: /integrations/tado/
[yeelight docs]: /integrations/yeelight/
[zha docs]: /integrations/zha/

## Release 0.91.3 - April 10

- Fix position of add_entities of binary sensor ([@AZDane] - [#22866]) ([concord232 docs])
- More Mobile app sensor fixes ([@robbiet480] - [#22914]) ([mobile_app docs])
- Add cloudhook and remote UI vals to get_config ([@robbiet480] - [#22921]) ([mobile_app docs])
- Bugfix: pass protocol out of header to application layer ([@pvizeli] - [#22955]) ([hassio docs])

[#22866]: https://github.com/home-assistant/home-assistant/pull/22866
[#22914]: https://github.com/home-assistant/home-assistant/pull/22914
[#22921]: https://github.com/home-assistant/home-assistant/pull/22921
[#22955]: https://github.com/home-assistant/home-assistant/pull/22955
[@AZDane]: https://github.com/AZDane
[@pvizeli]: https://github.com/pvizeli
[@robbiet480]: https://github.com/robbiet480
[concord232 docs]: /integrations/concord232/
[hassio docs]: /integrations/hassio/
[mobile_app docs]: /integrations/mobile_app/

## Release 0.91.4 - April 16

- Fix ingress bug with Firefox ([@pvizeli] - [#23121]) ([hassio docs]) ([http docs])

[#23121]: https://github.com/home-assistant/home-assistant/pull/23121
[@pvizeli]: https://github.com/pvizeli
[hassio docs]: /integrations/hassio/
[http docs]: /integrations/http/

## 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.

## 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-->

## Breaking Changes

- __Z-Wave__ - The usb_path in configuration.yaml now overrides config entry usb_path. This is potentially a breaking change if people have a stale usb_path setting in configuration.yaml that's no longer accurate. This should help reduce the number of people that need to manually edit the storage/core.config_entries file if their usb_path changes. ([@cgarwood] - [#22038]) ([zwave docs])

- __iOS__ - Improves the text description of ATTR_BATTERY_STATE_UNPLUGGED from Unplugged to Not Charging as many new iOS devices now use Wireless charging and there is no concept of "Plugging In". This is potentially a breaking change if you have automations making use of "unplugged". ([@FattusMannus] - [#22152]) ([ios docs])
- __Iliad Italy__ - __Removed__ - This was removed because it uses webscraping.  ([@eliseomartelli] - [#22175])
- __Netgear lte__ - The previous three components (network, notify, and sensor) now fall under one netgear_lte component. Check the [updated documentation](/integrations/netgear_lte/) for more information. ([@amelchio] - [#22105]) ([netgear_lte docs])
- __API streams sensor__ - __Removed__ -  This sensor component was designed to count connected front-end clients. However, it depended on the implementation details of other components, and has therefore been broken since 0.80, so it has been removed. The replacement sensor is now the [websocket_api sensor](/integrations/websocket_api/), which does basically the same thing apart from the rename. ([@Swamp-Ig] - [#22200]) ([websocket_api docs])
- __Public Transit (GTFS)__
  * The state for this sensor component was a countdown in minutes. If the next departure was in a few hours, this number became quite large and a tad harder to rapidly calculate mentally (463 minutes anyone?). The sensor's state output has been changed from minutes to an ISO 8601 UTC timestamp, which allows the UI to interpret the state as needed. ([@renemarc] - [#21053]) ([gtfs docs])
  * Sensor updates were running many database queries to populate attributes, on top of the bus schedule queries themselves. This is doubled with two sensors. That led to a lot of slowdowns for everything else when using an SD card! Considering that some data never changes (agency, routes...) and that others like departure times are good until invalidated, now we fetch such metadata at first and then only when relevant changes do occur. GTFS sensor attributes are now named using the standard snake_case format. ([@renemarc] - [#20966]) ([gtfs docs])
- __Yeelight__ - This is now its own component and has been broken out from the light platform. More Yeelights are being released with more features and this will make if possible to support them. Examples would be adding sensors for a ceiling light, getting the current power mode (daylight/nightlight), or supporting switches to turn moonlight on or off without having to use a service call. Make sure to visit the updated documentation. ([@zewelor] - [#21593]) ([yeelight docs])
- __Axis__ - Events supplied from component might differ. Events will not be configurable in the beginning but will instead provide a subset set of events supported per device. This will be configurable in a later stage when config entry options are available. Configuration.yaml support for Axis component will be removed in the future so make sure to remove references to Axis component after upgrade. ([@Kane610] - [#18543]) ([axis docs])
- __HTTP__ - Lower severity level of log messages from http.view ([@thomasloven] - [#21091]) ([http docs])
- __Dark Sky__ - Dark Sky provides hourly forecasts for various monitored conditions. This change creates new sensors for each hourly forecasted condition with suffix `_<hour>h` while adding the suffix `_<day>d` to the daily forecasted conditions. For example, now a `sensor.dark_sky_summary_<day>d` and `sensor.dark_sky_summary_<hour>h` will be created if the forecast and hourly_forecast parameters are populated. ([@rtclauss] - [#21820]) ([darksky docs])
- __Konnected__ - This will change the internal unique_id for Konnected switches (i.e., siren, buzzer, generic switch). Users will need to manually remove the orphaned switch entities from the entity registry after updating and re-configure any changes stored in the entity registry (i.e., name and entity_id), as their unique IDs will change. ([@heythisisnate] - [#22389]) ([konnected docs])

- __Mopar__ - The mopar sensor platform has been broken up into a base component with sensor, switch, and lock platforms. The sensor.mopar_remote_command service has been removed since the functionality has been folded into the new platforms and the new mopar.sound_horn service. Please view the documentation to see the new setup instructions. ([@rohankapoorcom] - [#21526])

## Beta Fixes

- Fix regression of the xiaomi_aqara config validation ([@syssi] - [#22435]) ([xiaomi_aqara docs]) (breaking change) (beta fix)
- Fix dev branch ([@awarecan] - [#22493]) ([homekit_controller docs]) (beta fix)
- Update pyotgw to 0.4b3 ([@mvn23] - [#22496]) ([opentherm_gw docs]) (beta fix)
- Fixes for yeelight availbility state ([@zewelor] - [#22502]) ([yeelight docs]) (beta fix)
- Remove botocore dependency from credstash script ([@awarecan] - [#22511]) (beta fix)
- Fix lint on dev ([@awarecan] - [#22512]) (beta fix)
- Do not use zha default light polling ([@dmulcahey] - [#22513]) ([zha docs]) (beta fix)
- PS4 bump to 0.5.2 ([@ktnrg45] - [#22523]) ([ps4 docs]) (beta fix)
- clean up channel configuration ([@dmulcahey] - [#22534]) ([zha docs]) (beta fix)
- Fix tts Great Migration issue ([@awarecan] - [#22539]) ([amazon_polly docs]) ([baidu docs]) ([marytts docs]) ([microsoft docs]) ([picotts docs]) ([voicerss docs]) ([yandextts docs]) (beta fix)
- Upgrade to async_upnp_client==0.14.7 ([@StevenLooman] - [#22543]) ([dlna_dmr docs]) ([upnp docs]) (beta fix)
- Bump zigpy ([@damarco] - [#22545]) ([zha docs]) (beta fix)
- Add support for streaming to ffmpeg ([@balloob] - [#22549]) ([ffmpeg docs]) (beta fix)
- Fix platform warnings ([@balloob] - [#22551]) (beta fix)
- Google assistant: add blinds trait for covers ([@giefca] - [#22336]) ([google_assistant docs]) (breaking change) (beta fix)
- Update Amcrest component to SUPPORT_STREAM ([@drjared88] - [#22553]) ([amcrest docs]) (beta fix)
- Fix name conflict in tests ([@awarecan] - [#22556]) (beta fix)
- Update ONVIF component to SUPPORT_STREAM ([@drjared88] - [#22569]) ([onvif docs]) (beta fix)
- Add stream to the default config ([@balloob] - [#22602]) ([default_config docs]) (beta fix)
- Add trusted networks deprecating warning ([@awarecan] - [#22487]) ([http docs]) (beta fix)
- Hass.io ingress ([@pvizeli] - [#22505]) ([hassio docs]) (beta fix)
- Update Foscam component to support stream source ([@cwhits] - [#22568]) ([foscam docs]) (beta fix)
- Update face_recognition to 1.2.3 ([@pvizeli] - [#22622]) ([dlib_face_detect docs]) ([dlib_face_identify docs]) (beta fix)
- Disable Z-Wave autoheal ([@balloob] - [#22628]) ([zwave docs]) (beta fix)
- Handle disonnect bug in Tibber library ([@Danielhiversen] - [#22629]) ([tibber docs]) (beta fix)
- Support GET params for websocket ingress path ([@pvizeli] - [#22638]) ([hassio docs]) (beta fix)
- Return 0 for failed Foscam streams ([@cwhits] - [#22651]) ([foscam docs]) (beta fix)
- Fix racy homekit_controller platform setup caused by #22368 ([@Jc2k] - [#22655]) ([homekit_controller docs]) (beta fix)

## All changes

- Add sense guard clause ([@kbickar] - [#22014]) ([sense docs])
- Upgrade prefetched tox env to py37 ([@awarecan] - [#22029])
- change logging to debug for nmap ([@Danielhiversen] - [#22036])
- Refactor ZHA gateway into modules and add admin protections to API ([@dmulcahey] - [#22023]) ([zha docs]) (new-platform)
- Ps4 remove throttling ([@ktnrg45] - [#21961]) ([ps4 docs])
- Upgrade youtube_dl to 2019.03.09 ([@fabaff] - [#22041]) ([media_extractor docs])
- Async support for Daikin ([@fredrike] - [#21638]) ([daikin docs])
- Bump amcrest to 1.2.6 & use new exceptions ([@pnbruckner] - [#22040]) ([amcrest docs])
- Z-Wave usb_path in configuration.yaml overrides config entry usb_path ([@cgarwood] - [#22038]) ([zwave docs]) (breaking change)
- Minor ZHA consts fixes ([@Adminiuga] - [#22049]) ([zha docs])
- Cleanup remaining constants stuff in ZHA ([@dmulcahey] - [#22050]) ([zha docs])
- Add HTTP auth and SSL verification to REST notify ([@escoand] - [#22016]) ([rest docs])
- Upgrade ruamel.yaml to 0.15.89 ([@fabaff] - [#22064])
- Update rest.py ([@isabellaalstrom] - [#22077]) ([notify docs])
- Telegram_bot: Allow fetching data from unverified SSL endpoints (#22067) ([@nbarrientos] - [#22069]) ([telegram_bot docs])
- Add LCN sensor platform ([@alengwenus] - [#21440]) ([lcn docs]) (new-platform)
- Upgrade pytest to 4.3.1 ([@scop] - [#22088])
- Bump amcrest to 1.2.7 for correct RTSP port ([@pnbruckner] - [#22099]) ([amcrest docs])
- Add available property to Ambient PWS ([@bachya] - [#22092]) ([ambient_station docs])
- Restricted temperature units for Celsius and Fahrenheit to the standardized units ([@alengwenus] - [#22108]) ([lcn docs])
- Consolidate all platforms that have no tests ([@balloob] - [#22096])
- Add ESPHome Camera ([@OttoWinter] - [#22107]) ([esphome docs]) (new-platform)
- Tibber, Add price level ([@Danielhiversen] - [#22085]) ([tibber docs])
- Fix AttributeError traceback with darksky ([@iamtpage] - [#22101]) ([darksky docs])
- Add service description for services. ([@cgtobi] - [#21897])
- Handle occasional 502 Bad Gateway from SimpliSafe ([@bachya] - [#22131]) ([simplisafe docs])
- Loosen field retrieval from Pollen.com ([@bachya] - [#22132]) ([pollen docs])
- Handle possible exception during Ambient PWS reconnect ([@bachya] - [#22134]) ([ambient_station docs])
- Additional sensors and fixed icons, attributes and device classes. ([@endor-force] - [#22139]) ([trafikverket_weatherstation docs])
- Fix hlk-sw16 inverted switch state ([@jameshilliard] - [#22059]) ([hlk_sw16 docs])
- replace einder lib with horimote ([@benleb] - [#22135]) ([horizon docs])
- Fixx yeelight flow action param for declared effects ([@zewelor] - [#22159]) ([yeelight docs])
- Add dynamic subscription for ZHA add device page ([@dmulcahey] - [#22164]) ([zha docs])
- Consolidate all platforms that have tests ([@Swamp-Ig] - [#22109])
- Change ATTR_BATTERY_STATE_UNPLUGGED for ios component ([@FattusMannus] - [#22152]) ([ios docs]) (breaking change)
- Add some tests for Koogeek LS1 ([@Jc2k] - [#22141]) ([homekit_controller docs])
- Move platforms patch ([@Swamp-Ig] - [#22168]) ([mold_indicator docs]) ([moon docs])
- restore entity for switchbot ([@Danielhiversen] - [#22087]) ([switchbot docs])
- removed iliad ([@eliseomartelli] - [#22175]) (breaking change)
- Upgrade youtube_dl to 2019.03.18 ([@fabaff] - [#22181]) ([media_extractor docs])
- Upgrade Sphinx to 1.8.5 ([@fabaff] - [#22180])
- Better handling of HomeKit accessory-information service ([@Jc2k] - [#22171]) ([homekit_controller docs])
- Fix breaking on HTML email without images ([@dagobert] - [#22143]) ([notify docs])
- Update codeowners ([@oblogic7] - [#22198])
- Upgrade psutil to 5.6.1 ([@fabaff] - [#22183]) ([systemmonitor docs])
- Upgrade holidays to 0.9.10 ([@fabaff] - [#22182])
- Removed overly broad exception handling for nanoleaf light ([@Oro] - [#22189]) ([nanoleaf docs])
- Use relative imports inside integrations ([@balloob] - [#22235])
- Make !include_dir_list use alphanumeric order ([@quentinsf] - [#21902])
- add date_time_iso to time_date sensor ([@uchagani] - [#22199]) ([time_date docs])
- Bump python-miio version ([@syssi] - [#22202]) ([xiaomi_miio docs])
- Upgrade to async_upnp_client==0.14.6 ([@StevenLooman] - [#22223]) ([dlna_dmr docs]) ([upnp docs])
- Fix build issue ([@awarecan] - [#22251]) ([buienradar docs])
- add ZHA channel name property ([@Adminiuga] - [#22218]) ([zha docs])
- Handle on/off through TemperatrureSetting trait. ([@Swamp-Ig] - [#21842]) ([google_assistant docs])
- Change .now() to .utcnow() ([@rdbahm] - [#22233]) ([season docs])
- Upgrade tibber library, support solar production ([@Danielhiversen] - [#22261]) ([tibber docs])
- Upgrade sqlalchemy to 1.3.0 ([@fabaff] - [#22269]) ([recorder docs]) ([sql docs])
- Plex: Avoid refreshing by both device and session methods ([@jjlawren] - [#22266]) ([plex docs])
- Bump androidtv to 0.0.13 ([@JeffLIrion] - [#22279]) ([androidtv docs])
- Improved exception handling and logging ([@JeffLIrion] - [#22268]) ([androidtv docs])
- Consolidate the netgear_lte configuration ([@amelchio] - [#22105]) ([netgear_lte docs]) (breaking change)
- Fixing the api_streams sensor ([@Swamp-Ig] - [#22200]) ([websocket_api docs]) (breaking change)
- Fix progress for Plex media_players ([@jjlawren] - [#22224]) ([plex docs])
- Add sort by config and tests for Reddit integration ([@ljmerza] - [#22081]) ([reddit docs])
- Fix Prometheus casting issues ([@robbiet480] - [#22282]) ([prometheus docs])
- Update trait to support auto without ranges. ([@Swamp-Ig] - [#21847]) ([google_assistant docs])
- Sort code owners alphabetically ([@cgtobi] - [#22304])
- Update srpenergy library ([@robbiet480] - [#22307])
- Switch from using Google Maps API for elevation to Open Elevation API ([@robbiet480] - [#22306])
- Fix for embedded MQTT server configuration ([@robbiet480] - [#22305]) ([mqtt docs])
- Upgrade pylast to 3.1.0 ([@fabaff] - [#22302]) ([lastfm docs])
- Upgrade py-cpuinfo to 5.0.0 ([@fabaff] - [#22287])
- Update abbreviation ([@fabaff] - [#22317]) ([hp_ilo docs])
- Add homematicip cloud connection quality related attributes ([@SukramJ] - [#21990]) ([homematicip_cloud docs])
- Add Freebox switch platform ([@SNoof85] - [#21710]) ([freebox docs]) (new-platform)
- Google Assistant: Add camera stream trait ([@balloob] - [#22278]) ([camera docs]) ([generic docs]) ([google_assistant docs])
- Remove occupancy as it is not available in API ([@thibmaek] - [#22320]) ([nmbs docs])
- Update file header ([@fabaff] - [#22318]) ([hyperion docs])
- Consolidate more platforms ([@balloob] - [#22308]) ([demo docs]) ([generic_thermostat docs]) ([group docs]) ([manual docs]) ([manual_mqtt docs]) ([switch docs])
- fix where PLATFORM_SCHEMA gets pulled from ([@hunterjm] - [#22334]) ([familyhub docs])
- show which component is causing translation errors ([@uchagani] - [#22340])
- Define GTFS sensor as a timestamp device class ([@renemarc] - [#21053]) ([gtfs docs]) (breaking change)
- Move yeelight into component ([@zewelor] - [#21593]) ([discovery docs]) ([yeelight docs]) (breaking change)
- Axis config flow ([@Kane610] - [#18543]) ([axis docs]) ([discovery docs]) (breaking change)
- Fix pressure in dark sky and openweathermap and add pressure utility ([@MatthewFlamm] - [#21210]) ([darksky docs]) ([openweathermap docs])
- Fix xiaomi aqara cube with lumi.acpartner.v3 gateway ([@GuryYu] - [#22130]) ([xiaomi_aqara docs])
- Support deCONZ library with exception handling ([@Kane610] - [#21952]) ([deconz docs])
- Do not warn when creating an empty database ([@amelchio] - [#22343]) ([recorder docs])
- Add color support to Philips Moonlight ([@syssi] - [#22204]) ([xiaomi_miio docs])
- Add support for the power socket of the Xiaomi AC Partner V3 ([@syssi] - [#22205])
- Set Onkyo reset log to debug instead of info ([@robbiet480] - [#22369]) ([onkyo docs])
- Upgrade netatmo smart_home module ([@cgtobi] - [#22365]) ([netatmo docs])
- Fix the crash due to absence of the "default_home" in HomeData from pyatmo (netatmo/climate) ([@shanbs] - [#22363]) ([netatmo docs])
- Add support for 'image' media type ([@StevenLooman] - [#22353]) ([dlna_dmr docs]) ([media_player docs])
- Warn user about HTML5 GCM deprecation ([@hmmbob] - [#22351]) ([notify docs])
- Turn Panasonic Viera TV on without WOL ([@dilruacs] - [#22084]) ([panasonic_viera docs])
- Properly connect sensors to hub ([@StevenLooman] - [#21414]) ([upnp docs])
- Add support for Tfiac Climate component ([@fredrike] - [#21823]) ([tfiac docs]) (new-platform)
- Add aws component and consolidate aws notify platform ([@awarecan] - [#22240]) ([aws docs])
- Check if mac is set when more than 2 gateways ([@karlkar] - [#21834])
- Add 'method' parameter to forgiving_round method ([@Mofeywalker] - [#21708])
- Expose detailed Ecobee equipment status ([@nhorvath] - [#20767]) ([ecobee docs])
- Add ClickSend "caller" option ([@fabtesta] - [#20780]) ([notify docs])
- Give HomeKit locks better names by default ([@Jc2k] - [#22333]) ([homekit_controller docs])
- Improve yeelight component ([@zewelor] - [#22347]) ([yeelight docs])
- Improve PS4 media art fetching and config flow ([@ktnrg45] - [#22167]) ([ps4 docs])
- Allow for custom turn on/off commands ([@JeffLIrion] - [#22354]) ([androidtv docs])
- Remove unused const ([@Jc2k] - [#22383]) ([homekit_controller docs])
- Frontend indicate require admin ([@balloob] - [#22272]) ([config docs]) ([frontend docs]) ([hassio docs]) ([panel_custom docs]) ([panel_iframe docs])
- Fix TpLink Device Tracker initialize error ([@a005] - [#22349]) ([tplink docs])
- Add traccar events ([@lapy] - [#22348]) ([traccar docs])
- Update python yeelight and add nightlight mode sensor ([@zewelor] - [#22345]) ([discovery docs]) ([yeelight docs])
- updated pydaikin ([@fredrike] - [#22382]) ([daikin docs])
- Support for Plex sensor with enforced SSL ([@nmaggioni] - [#21432]) ([plex docs])
- Search GTFS departures across midnight ([@renemarc] - [#20992]) ([gtfs docs])
- remove config sections from hass.config.components ([@uchagani] - [#22370]) ([config docs])
- Update ring_doorbell to 0.2.3 ([@dshokouhi] - [#22395]) ([ring docs])
- Fix unavailable state for homekit locks and covers ([@Jc2k] - [#22390]) ([homekit_controller docs])
- Add infer_arming_state option to ness alarm ([@nickw444] - [#22379]) ([ness_alarm docs])
- deCONZ support Xiaomi vibration sensor ([@Kane610] - [#22366]) ([deconz docs])
- Fix data_key of the xiaomi_aqara cover for LAN protocol v2 ([@syssi] - [#22358]) ([xiaomi_aqara docs])
- Remove get_serial helper that is no longer needed. ([@Jc2k] - [#22368]) ([homekit_controller docs])
- Set default parallel_update value should base on async_update ([@awarecan] - [#22149])
- Camera Preferences + Preload Stream ([@hunterjm] - [#22339]) ([camera docs]) ([local_file docs]) ([logi_circle docs]) ([onvif docs]) ([push docs])
- Move core stuff into Home Assistant integration ([@balloob] - [#22407]) ([config docs]) ([hassio docs]) ([homeassistant docs])
- Tibber add support for Watty ([@Danielhiversen] - [#22397]) ([tibber docs])
- zha fixes ([@dmulcahey] - [#22381]) ([zha docs])
- Fix yeelight state update ([@zewelor] - [#22373]) ([yeelight docs])
- Changed busy error to warning ([@fronzbot] - [#22398])
- Migrate tts ([@cgtobi] - [#22403])
- Add missing append ([@Jc2k] - [#22414]) ([homekit_controller docs])
- Update translate, fix dev build error ([@awarecan] - [#22419]) ([axis docs]) ([ps4 docs]) ([tellduslive docs]) ([upnp docs]) ([zha docs])
- Use dispatcher for netgear_lte state updates ([@amelchio] - [#22328]) ([netgear_lte docs])
- ciscomobilityexpress pypi version update ([@fbradyirl] - [#22431]) ([cisco_mobility_express docs])
- Update homeassistant-pyozw to 0.1.3 ([@pvizeli] - [#22433]) ([zwave docs])
- Adding conf for deep standby, wake and specific source bouquet of Enigma2 ([@fbradyirl] - [#22393]) ([enigma2 docs])
- Fix test name ([@balloob] - [#22421])
- Lower severity level of log messages from http.view ([@thomasloven] - [#21091]) ([http docs]) (breaking change)
- Update ha-ffmpeg 2.0 ([@pvizeli] - [#22427])
- Add myself as codeowner for yeelight component ([@zewelor] - [#22438])
- Update ZHA component CODEOWNERS ([@Adminiuga] - [#22452])
- Add support for yeelight ceiling ambilight ([@zewelor] - [#22346]) ([discovery docs]) ([yeelight docs])
- Bootstrap to start registry loading early ([@Swamp-Ig] - [#22321])
- Axis devices support device registry ([@Kane610] - [#22367]) ([axis docs])
- Use voluptuous error string for websocket validation error ([@ljmerza] - [#21883]) ([websocket_api docs])
- Add hourly forecasts to Dark Sky ([@rtclauss] - [#21820]) ([darksky docs]) (breaking change)
- Add switches to control Daikin Airbase zones ([@fredrike] - [#22417]) ([daikin docs]) (new-platform)
- better algorithm for computing unique_id ([@heythisisnate] - [#22389]) ([konnected docs]) (breaking change)
- Solaredge new sensors ([@GidoHakvoort] - [#21047]) ([solaredge docs])
- Fix aws.notify platform schema ([@awarecan] - [#22374]) ([aws docs])
- Do data extraction in sensors ([@amelchio] - [#22444]) ([netgear_lte docs])
- Remove homekit_controller duplicate legacy pairing loader code ([@Jc2k] - [#22442]) ([homekit_controller docs])
- Cache GTFS metadata and expose utility attributes (breaking change) ([@renemarc] - [#20966]) ([gtfs docs]) (breaking change)
- Modify check for ADB public key ([@dilruacs] - [#22378]) ([androidtv docs])
- Centralize all usages of `host` as a configuration param to the constant CONF_HOST ([@rohankapoorcom] - [#22458])
- Don't return cover position when not supported ([@andrewsayre] - [#22484]) ([smartthings docs])
- Targeted ZHA permit joins. ([@Adminiuga] - [#22482])
- Fix auto discovery of yeelights ([@syssi] - [#22481]) ([yeelight docs])
- fix inverse state changes for binary sensors ([@heythisisnate] - [#22479]) ([konnected docs])
- Fix events so they work with multiple devices ([@Kane610] - [#22477]) ([axis docs])
- Improve Sensibo error handling ([@Danielhiversen] - [#22475]) ([sensibo docs])
- Add new data fields and bump python-join-api ([@bieniu] - [#22472]) ([joaoapps_join docs])
- Bump pypi again for Cisco Mobility Express ([@fbradyirl] - [#22467]) ([cisco_mobility_express docs])
- Return percentage information in Alexa Smart Home response ([@jackwilsdon] - [#22440]) ([alexa docs])
- Move HKDevice into connection ([@Jc2k] - [#22430]) ([homekit_controller docs])
- Incoming SMS handling for netgear_lte ([@amelchio] - [#22402]) ([netgear_lte docs])
- Entur upgrade to v0.2.0: async polling, number of departures, omit non boarding departures ([@hfurubotten] - [#22001]) ([entur_public_transport docs])
- Mopar split ([@rohankapoorcom] - [#21526]) (breaking change)
- Fix too-abrubt SimpliSafe data refresh termination on error ([@bachya] - [#22466]) ([simplisafe docs])
- Great migration notify ([@robbiet480] - [#22406])
- Print error instead of warning for custom platforms in legacy format ([@balloob] - [#22486])
- Add game and app media types ([@cliffordwhansen] - [#22459]) ([media_player docs]) ([ps4 docs])
- Stream Record Service ([@hunterjm] - [#22456]) ([camera docs]) ([stream docs])
- Add trusted_users in trusted networks auth provider ([@awarecan] - [#22478]) ([auth docs])
- Fix regression of the xiaomi_aqara config validation ([@syssi] - [#22435]) ([xiaomi_aqara docs]) (breaking change) (beta fix)
- Fix dev branch ([@awarecan] - [#22493]) ([homekit_controller docs]) (beta fix)
- Update pyotgw to 0.4b3 ([@mvn23] - [#22496]) ([opentherm_gw docs]) (beta fix)
- Fixes for yeelight availbility state ([@zewelor] - [#22502]) ([yeelight docs]) (beta fix)
- Remove botocore dependency from credstash script ([@awarecan] - [#22511]) (beta fix)
- Fix lint on dev ([@awarecan] - [#22512]) (beta fix)
- Do not use zha default light polling ([@dmulcahey] - [#22513]) ([zha docs]) (beta fix)
- PS4 bump to 0.5.2 ([@ktnrg45] - [#22523]) ([ps4 docs]) (beta fix)
- clean up channel configuration ([@dmulcahey] - [#22534]) ([zha docs]) (beta fix)
- Fix tts Great Migration issue ([@awarecan] - [#22539]) ([amazon_polly docs]) ([baidu docs]) ([marytts docs]) ([microsoft docs]) ([picotts docs]) ([voicerss docs]) ([yandextts docs]) (beta fix)
- Upgrade to async_upnp_client==0.14.7 ([@StevenLooman] - [#22543]) ([dlna_dmr docs]) ([upnp docs]) (beta fix)
- Bump zigpy ([@damarco] - [#22545]) ([zha docs]) (beta fix)
- Add support for streaming to ffmpeg ([@balloob] - [#22549]) ([ffmpeg docs]) (beta fix)
- Fix platform warnings ([@balloob] - [#22551]) (beta fix)
- Google assistant: add blinds trait for covers ([@giefca] - [#22336]) ([google_assistant docs]) (breaking change) (beta fix)
- Update Amcrest component to SUPPORT_STREAM ([@drjared88] - [#22553]) ([amcrest docs]) (beta fix)
- Fix name conflict in tests ([@awarecan] - [#22556]) (beta fix)
- Update ONVIF component to SUPPORT_STREAM ([@drjared88] - [#22569]) ([onvif docs]) (beta fix)
- Add stream to the default config ([@balloob] - [#22602]) ([default_config docs]) (beta fix)
- Add trusted networks deprecating warning ([@awarecan] - [#22487]) ([http docs]) (beta fix)
- Hass.io ingress ([@pvizeli] - [#22505]) ([hassio docs]) (beta fix)
- Update Foscam component to support stream source ([@cwhits] - [#22568]) ([foscam docs]) (beta fix)
- Update face_recognition to 1.2.3 ([@pvizeli] - [#22622]) ([dlib_face_detect docs]) ([dlib_face_identify docs]) (beta fix)
- Disable Z-Wave autoheal ([@balloob] - [#22628]) ([zwave docs]) (beta fix)
- Handle disonnect bug in Tibber library ([@Danielhiversen] - [#22629]) ([tibber docs]) (beta fix)
- Support GET params for websocket ingress path ([@pvizeli] - [#22638]) ([hassio docs]) (beta fix)
- Return 0 for failed Foscam streams ([@cwhits] - [#22651]) ([foscam docs]) (beta fix)
- Fix racy homekit_controller platform setup caused by #22368 ([@Jc2k] - [#22655]) ([homekit_controller docs]) (beta fix)

[#18543]: https://github.com/home-assistant/home-assistant/pull/18543
[#20767]: https://github.com/home-assistant/home-assistant/pull/20767
[#20780]: https://github.com/home-assistant/home-assistant/pull/20780
[#20966]: https://github.com/home-assistant/home-assistant/pull/20966
[#20992]: https://github.com/home-assistant/home-assistant/pull/20992
[#21047]: https://github.com/home-assistant/home-assistant/pull/21047
[#21053]: https://github.com/home-assistant/home-assistant/pull/21053
[#21091]: https://github.com/home-assistant/home-assistant/pull/21091
[#21210]: https://github.com/home-assistant/home-assistant/pull/21210
[#21414]: https://github.com/home-assistant/home-assistant/pull/21414
[#21432]: https://github.com/home-assistant/home-assistant/pull/21432
[#21440]: https://github.com/home-assistant/home-assistant/pull/21440
[#21526]: https://github.com/home-assistant/home-assistant/pull/21526
[#21593]: https://github.com/home-assistant/home-assistant/pull/21593
[#21638]: https://github.com/home-assistant/home-assistant/pull/21638
[#21708]: https://github.com/home-assistant/home-assistant/pull/21708
[#21710]: https://github.com/home-assistant/home-assistant/pull/21710
[#21820]: https://github.com/home-assistant/home-assistant/pull/21820
[#21823]: https://github.com/home-assistant/home-assistant/pull/21823
[#21834]: https://github.com/home-assistant/home-assistant/pull/21834
[#21842]: https://github.com/home-assistant/home-assistant/pull/21842
[#21847]: https://github.com/home-assistant/home-assistant/pull/21847
[#21883]: https://github.com/home-assistant/home-assistant/pull/21883
[#21897]: https://github.com/home-assistant/home-assistant/pull/21897
[#21902]: https://github.com/home-assistant/home-assistant/pull/21902
[#21952]: https://github.com/home-assistant/home-assistant/pull/21952
[#21961]: https://github.com/home-assistant/home-assistant/pull/21961
[#21990]: https://github.com/home-assistant/home-assistant/pull/21990
[#22001]: https://github.com/home-assistant/home-assistant/pull/22001
[#22014]: https://github.com/home-assistant/home-assistant/pull/22014
[#22016]: https://github.com/home-assistant/home-assistant/pull/22016
[#22023]: https://github.com/home-assistant/home-assistant/pull/22023
[#22029]: https://github.com/home-assistant/home-assistant/pull/22029
[#22036]: https://github.com/home-assistant/home-assistant/pull/22036
[#22038]: https://github.com/home-assistant/home-assistant/pull/22038
[#22040]: https://github.com/home-assistant/home-assistant/pull/22040
[#22041]: https://github.com/home-assistant/home-assistant/pull/22041
[#22049]: https://github.com/home-assistant/home-assistant/pull/22049
[#22050]: https://github.com/home-assistant/home-assistant/pull/22050
[#22059]: https://github.com/home-assistant/home-assistant/pull/22059
[#22064]: https://github.com/home-assistant/home-assistant/pull/22064
[#22069]: https://github.com/home-assistant/home-assistant/pull/22069
[#22077]: https://github.com/home-assistant/home-assistant/pull/22077
[#22081]: https://github.com/home-assistant/home-assistant/pull/22081
[#22084]: https://github.com/home-assistant/home-assistant/pull/22084
[#22085]: https://github.com/home-assistant/home-assistant/pull/22085
[#22087]: https://github.com/home-assistant/home-assistant/pull/22087
[#22088]: https://github.com/home-assistant/home-assistant/pull/22088
[#22092]: https://github.com/home-assistant/home-assistant/pull/22092
[#22096]: https://github.com/home-assistant/home-assistant/pull/22096
[#22099]: https://github.com/home-assistant/home-assistant/pull/22099
[#22101]: https://github.com/home-assistant/home-assistant/pull/22101
[#22105]: https://github.com/home-assistant/home-assistant/pull/22105
[#22107]: https://github.com/home-assistant/home-assistant/pull/22107
[#22108]: https://github.com/home-assistant/home-assistant/pull/22108
[#22109]: https://github.com/home-assistant/home-assistant/pull/22109
[#22130]: https://github.com/home-assistant/home-assistant/pull/22130
[#22131]: https://github.com/home-assistant/home-assistant/pull/22131
[#22132]: https://github.com/home-assistant/home-assistant/pull/22132
[#22134]: https://github.com/home-assistant/home-assistant/pull/22134
[#22135]: https://github.com/home-assistant/home-assistant/pull/22135
[#22139]: https://github.com/home-assistant/home-assistant/pull/22139
[#22141]: https://github.com/home-assistant/home-assistant/pull/22141
[#22143]: https://github.com/home-assistant/home-assistant/pull/22143
[#22149]: https://github.com/home-assistant/home-assistant/pull/22149
[#22152]: https://github.com/home-assistant/home-assistant/pull/22152
[#22159]: https://github.com/home-assistant/home-assistant/pull/22159
[#22164]: https://github.com/home-assistant/home-assistant/pull/22164
[#22167]: https://github.com/home-assistant/home-assistant/pull/22167
[#22168]: https://github.com/home-assistant/home-assistant/pull/22168
[#22171]: https://github.com/home-assistant/home-assistant/pull/22171
[#22175]: https://github.com/home-assistant/home-assistant/pull/22175
[#22180]: https://github.com/home-assistant/home-assistant/pull/22180
[#22181]: https://github.com/home-assistant/home-assistant/pull/22181
[#22182]: https://github.com/home-assistant/home-assistant/pull/22182
[#22183]: https://github.com/home-assistant/home-assistant/pull/22183
[#22189]: https://github.com/home-assistant/home-assistant/pull/22189
[#22198]: https://github.com/home-assistant/home-assistant/pull/22198
[#22199]: https://github.com/home-assistant/home-assistant/pull/22199
[#22200]: https://github.com/home-assistant/home-assistant/pull/22200
[#22202]: https://github.com/home-assistant/home-assistant/pull/22202
[#22204]: https://github.com/home-assistant/home-assistant/pull/22204
[#22205]: https://github.com/home-assistant/home-assistant/pull/22205
[#22218]: https://github.com/home-assistant/home-assistant/pull/22218
[#22223]: https://github.com/home-assistant/home-assistant/pull/22223
[#22224]: https://github.com/home-assistant/home-assistant/pull/22224
[#22233]: https://github.com/home-assistant/home-assistant/pull/22233
[#22235]: https://github.com/home-assistant/home-assistant/pull/22235
[#22240]: https://github.com/home-assistant/home-assistant/pull/22240
[#22251]: https://github.com/home-assistant/home-assistant/pull/22251
[#22261]: https://github.com/home-assistant/home-assistant/pull/22261
[#22266]: https://github.com/home-assistant/home-assistant/pull/22266
[#22268]: https://github.com/home-assistant/home-assistant/pull/22268
[#22269]: https://github.com/home-assistant/home-assistant/pull/22269
[#22272]: https://github.com/home-assistant/home-assistant/pull/22272
[#22278]: https://github.com/home-assistant/home-assistant/pull/22278
[#22279]: https://github.com/home-assistant/home-assistant/pull/22279
[#22282]: https://github.com/home-assistant/home-assistant/pull/22282
[#22287]: https://github.com/home-assistant/home-assistant/pull/22287
[#22302]: https://github.com/home-assistant/home-assistant/pull/22302
[#22304]: https://github.com/home-assistant/home-assistant/pull/22304
[#22305]: https://github.com/home-assistant/home-assistant/pull/22305
[#22306]: https://github.com/home-assistant/home-assistant/pull/22306
[#22307]: https://github.com/home-assistant/home-assistant/pull/22307
[#22308]: https://github.com/home-assistant/home-assistant/pull/22308
[#22317]: https://github.com/home-assistant/home-assistant/pull/22317
[#22318]: https://github.com/home-assistant/home-assistant/pull/22318
[#22320]: https://github.com/home-assistant/home-assistant/pull/22320
[#22321]: https://github.com/home-assistant/home-assistant/pull/22321
[#22328]: https://github.com/home-assistant/home-assistant/pull/22328
[#22333]: https://github.com/home-assistant/home-assistant/pull/22333
[#22334]: https://github.com/home-assistant/home-assistant/pull/22334
[#22336]: https://github.com/home-assistant/home-assistant/pull/22336
[#22339]: https://github.com/home-assistant/home-assistant/pull/22339
[#22340]: https://github.com/home-assistant/home-assistant/pull/22340
[#22343]: https://github.com/home-assistant/home-assistant/pull/22343
[#22345]: https://github.com/home-assistant/home-assistant/pull/22345
[#22346]: https://github.com/home-assistant/home-assistant/pull/22346
[#22347]: https://github.com/home-assistant/home-assistant/pull/22347
[#22348]: https://github.com/home-assistant/home-assistant/pull/22348
[#22349]: https://github.com/home-assistant/home-assistant/pull/22349
[#22351]: https://github.com/home-assistant/home-assistant/pull/22351
[#22353]: https://github.com/home-assistant/home-assistant/pull/22353
[#22354]: https://github.com/home-assistant/home-assistant/pull/22354
[#22358]: https://github.com/home-assistant/home-assistant/pull/22358
[#22363]: https://github.com/home-assistant/home-assistant/pull/22363
[#22365]: https://github.com/home-assistant/home-assistant/pull/22365
[#22366]: https://github.com/home-assistant/home-assistant/pull/22366
[#22367]: https://github.com/home-assistant/home-assistant/pull/22367
[#22368]: https://github.com/home-assistant/home-assistant/pull/22368
[#22369]: https://github.com/home-assistant/home-assistant/pull/22369
[#22370]: https://github.com/home-assistant/home-assistant/pull/22370
[#22373]: https://github.com/home-assistant/home-assistant/pull/22373
[#22374]: https://github.com/home-assistant/home-assistant/pull/22374
[#22378]: https://github.com/home-assistant/home-assistant/pull/22378
[#22379]: https://github.com/home-assistant/home-assistant/pull/22379
[#22381]: https://github.com/home-assistant/home-assistant/pull/22381
[#22382]: https://github.com/home-assistant/home-assistant/pull/22382
[#22383]: https://github.com/home-assistant/home-assistant/pull/22383
[#22389]: https://github.com/home-assistant/home-assistant/pull/22389
[#22390]: https://github.com/home-assistant/home-assistant/pull/22390
[#22393]: https://github.com/home-assistant/home-assistant/pull/22393
[#22395]: https://github.com/home-assistant/home-assistant/pull/22395
[#22397]: https://github.com/home-assistant/home-assistant/pull/22397
[#22398]: https://github.com/home-assistant/home-assistant/pull/22398
[#22402]: https://github.com/home-assistant/home-assistant/pull/22402
[#22403]: https://github.com/home-assistant/home-assistant/pull/22403
[#22406]: https://github.com/home-assistant/home-assistant/pull/22406
[#22407]: https://github.com/home-assistant/home-assistant/pull/22407
[#22414]: https://github.com/home-assistant/home-assistant/pull/22414
[#22417]: https://github.com/home-assistant/home-assistant/pull/22417
[#22419]: https://github.com/home-assistant/home-assistant/pull/22419
[#22421]: https://github.com/home-assistant/home-assistant/pull/22421
[#22427]: https://github.com/home-assistant/home-assistant/pull/22427
[#22430]: https://github.com/home-assistant/home-assistant/pull/22430
[#22431]: https://github.com/home-assistant/home-assistant/pull/22431
[#22433]: https://github.com/home-assistant/home-assistant/pull/22433
[#22435]: https://github.com/home-assistant/home-assistant/pull/22435
[#22438]: https://github.com/home-assistant/home-assistant/pull/22438
[#22440]: https://github.com/home-assistant/home-assistant/pull/22440
[#22442]: https://github.com/home-assistant/home-assistant/pull/22442
[#22444]: https://github.com/home-assistant/home-assistant/pull/22444
[#22452]: https://github.com/home-assistant/home-assistant/pull/22452
[#22456]: https://github.com/home-assistant/home-assistant/pull/22456
[#22458]: https://github.com/home-assistant/home-assistant/pull/22458
[#22459]: https://github.com/home-assistant/home-assistant/pull/22459
[#22466]: https://github.com/home-assistant/home-assistant/pull/22466
[#22467]: https://github.com/home-assistant/home-assistant/pull/22467
[#22472]: https://github.com/home-assistant/home-assistant/pull/22472
[#22475]: https://github.com/home-assistant/home-assistant/pull/22475
[#22477]: https://github.com/home-assistant/home-assistant/pull/22477
[#22478]: https://github.com/home-assistant/home-assistant/pull/22478
[#22479]: https://github.com/home-assistant/home-assistant/pull/22479
[#22481]: https://github.com/home-assistant/home-assistant/pull/22481
[#22482]: https://github.com/home-assistant/home-assistant/pull/22482
[#22484]: https://github.com/home-assistant/home-assistant/pull/22484
[#22486]: https://github.com/home-assistant/home-assistant/pull/22486
[#22487]: https://github.com/home-assistant/home-assistant/pull/22487
[#22493]: https://github.com/home-assistant/home-assistant/pull/22493
[#22496]: https://github.com/home-assistant/home-assistant/pull/22496
[#22502]: https://github.com/home-assistant/home-assistant/pull/22502
[#22505]: https://github.com/home-assistant/home-assistant/pull/22505
[#22511]: https://github.com/home-assistant/home-assistant/pull/22511
[#22512]: https://github.com/home-assistant/home-assistant/pull/22512
[#22513]: https://github.com/home-assistant/home-assistant/pull/22513
[#22523]: https://github.com/home-assistant/home-assistant/pull/22523
[#22534]: https://github.com/home-assistant/home-assistant/pull/22534
[#22539]: https://github.com/home-assistant/home-assistant/pull/22539
[#22543]: https://github.com/home-assistant/home-assistant/pull/22543
[#22545]: https://github.com/home-assistant/home-assistant/pull/22545
[#22549]: https://github.com/home-assistant/home-assistant/pull/22549
[#22551]: https://github.com/home-assistant/home-assistant/pull/22551
[#22553]: https://github.com/home-assistant/home-assistant/pull/22553
[#22556]: https://github.com/home-assistant/home-assistant/pull/22556
[#22568]: https://github.com/home-assistant/home-assistant/pull/22568
[#22569]: https://github.com/home-assistant/home-assistant/pull/22569
[#22602]: https://github.com/home-assistant/home-assistant/pull/22602
[#22622]: https://github.com/home-assistant/home-assistant/pull/22622
[#22628]: https://github.com/home-assistant/home-assistant/pull/22628
[#22629]: https://github.com/home-assistant/home-assistant/pull/22629
[#22638]: https://github.com/home-assistant/home-assistant/pull/22638
[#22651]: https://github.com/home-assistant/home-assistant/pull/22651
[#22655]: https://github.com/home-assistant/home-assistant/pull/22655
[@Adminiuga]: https://github.com/Adminiuga
[@Danielhiversen]: https://github.com/Danielhiversen
[@FattusMannus]: https://github.com/FattusMannus
[@GidoHakvoort]: https://github.com/GidoHakvoort
[@GuryYu]: https://github.com/GuryYu
[@Jc2k]: https://github.com/Jc2k
[@JeffLIrion]: https://github.com/JeffLIrion
[@Kane610]: https://github.com/Kane610
[@MatthewFlamm]: https://github.com/MatthewFlamm
[@Mofeywalker]: https://github.com/Mofeywalker
[@Oro]: https://github.com/Oro
[@OttoWinter]: https://github.com/OttoWinter
[@SNoof85]: https://github.com/SNoof85
[@StevenLooman]: https://github.com/StevenLooman
[@SukramJ]: https://github.com/SukramJ
[@Swamp-Ig]: https://github.com/Swamp-Ig
[@a005]: https://github.com/a005
[@alengwenus]: https://github.com/alengwenus
[@amelchio]: https://github.com/amelchio
[@andrewsayre]: https://github.com/andrewsayre
[@awarecan]: https://github.com/awarecan
[@bachya]: https://github.com/bachya
[@balloob]: https://github.com/balloob
[@benleb]: https://github.com/benleb
[@bieniu]: https://github.com/bieniu
[@cgarwood]: https://github.com/cgarwood
[@cgtobi]: https://github.com/cgtobi
[@cliffordwhansen]: https://github.com/cliffordwhansen
[@cwhits]: https://github.com/cwhits
[@dagobert]: https://github.com/dagobert
[@damarco]: https://github.com/damarco
[@dilruacs]: https://github.com/dilruacs
[@dmulcahey]: https://github.com/dmulcahey
[@drjared88]: https://github.com/drjared88
[@dshokouhi]: https://github.com/dshokouhi
[@eliseomartelli]: https://github.com/eliseomartelli
[@endor-force]: https://github.com/endor-force
[@escoand]: https://github.com/escoand
[@fabaff]: https://github.com/fabaff
[@fabtesta]: https://github.com/fabtesta
[@fbradyirl]: https://github.com/fbradyirl
[@fredrike]: https://github.com/fredrike
[@fronzbot]: https://github.com/fronzbot
[@giefca]: https://github.com/giefca
[@heythisisnate]: https://github.com/heythisisnate
[@hfurubotten]: https://github.com/hfurubotten
[@hmmbob]: https://github.com/hmmbob
[@hunterjm]: https://github.com/hunterjm
[@iamtpage]: https://github.com/iamtpage
[@isabellaalstrom]: https://github.com/isabellaalstrom
[@jackwilsdon]: https://github.com/jackwilsdon
[@jameshilliard]: https://github.com/jameshilliard
[@jjlawren]: https://github.com/jjlawren
[@karlkar]: https://github.com/karlkar
[@kbickar]: https://github.com/kbickar
[@ktnrg45]: https://github.com/ktnrg45
[@lapy]: https://github.com/lapy
[@ljmerza]: https://github.com/ljmerza
[@mvn23]: https://github.com/mvn23
[@nbarrientos]: https://github.com/nbarrientos
[@nhorvath]: https://github.com/nhorvath
[@nickw444]: https://github.com/nickw444
[@nmaggioni]: https://github.com/nmaggioni
[@oblogic7]: https://github.com/oblogic7
[@pnbruckner]: https://github.com/pnbruckner
[@pvizeli]: https://github.com/pvizeli
[@quentinsf]: https://github.com/quentinsf
[@rdbahm]: https://github.com/rdbahm
[@renemarc]: https://github.com/renemarc
[@robbiet480]: https://github.com/robbiet480
[@rohankapoorcom]: https://github.com/rohankapoorcom
[@rtclauss]: https://github.com/rtclauss
[@scop]: https://github.com/scop
[@shanbs]: https://github.com/shanbs
[@syssi]: https://github.com/syssi
[@thibmaek]: https://github.com/thibmaek
[@thomasloven]: https://github.com/thomasloven
[@uchagani]: https://github.com/uchagani
[@zewelor]: https://github.com/zewelor
[alexa docs]: /integrations/alexa/
[amazon_polly docs]: /integrations/amazon_polly/
[ambient_station docs]: /integrations/ambient_station/
[amcrest docs]: /integrations/amcrest/
[androidtv docs]: /integrations/androidtv/
[api_streams docs]: /integrations/api_streams/
[auth docs]: /integrations/auth/
[aws docs]: /integrations/aws/
[axis docs]: /integrations/axis/
[baidu docs]: /integrations/baidu/
[buienradar docs]: /integrations/buienradar/
[camera docs]: /integrations/camera/
[cisco_mobility_express docs]: /integrations/cisco_mobility_express/
[config docs]: /integrations/config/
[daikin docs]: /integrations/daikin/
[darksky docs]: /integrations/darksky/
[deconz docs]: /integrations/deconz/
[default_config docs]: /integrations/default_config/
[demo docs]: /integrations/demo/
[discovery docs]: /integrations/discovery/
[dlib_face_detect docs]: /integrations/dlib_face_detect/
[dlib_face_identify docs]: /integrations/dlib_face_identify/
[dlna_dmr docs]: /integrations/dlna_dmr/
[ecobee docs]: /integrations/ecobee/
[enigma2 docs]: /integrations/enigma2/
[entur_public_transport docs]: /integrations/entur_public_transport/
[esphome docs]: /integrations/esphome/
[familyhub docs]: /integrations/familyhub/
[ffmpeg docs]: /integrations/ffmpeg/
[foscam docs]: /integrations/foscam/
[freebox docs]: /integrations/freebox/
[frontend docs]: /integrations/frontend/
[generic docs]: /integrations/generic_ip_camera/
[generic_thermostat docs]: /integrations/generic_thermostat/
[google_assistant docs]: /integrations/google_assistant/
[group docs]: /integrations/group/
[gtfs docs]: /integrations/gtfs/
[hassio docs]: /integrations/hassio/
[hlk_sw16 docs]: /integrations/hlk_sw16/
[homeassistant docs]: /integrations/homeassistant/
[homekit_controller docs]: /integrations/homekit_controller/
[homematicip_cloud docs]: /integrations/homematicip_cloud/
[horizon docs]: /integrations/horizon/
[hp_ilo docs]: /integrations/hp_ilo/
[http docs]: /integrations/http/
[hyperion docs]: /integrations/hyperion/
[iliad_italy docs]: /integrations/iliad_italy/
[ios docs]: /integrations/ios/
[joaoapps_join docs]: /integrations/joaoapps_join/
[konnected docs]: /integrations/konnected/
[lastfm docs]: /integrations/lastfm/
[lcn docs]: /integrations/lcn/
[local_file docs]: /integrations/local_file/
[logi_circle docs]: /integrations/logi_circle/
[manual docs]: /integrations/manual/
[manual_mqtt docs]: /integrations/manual_mqtt/
[marytts docs]: /integrations/marytts/
[media_extractor docs]: /integrations/media_extractor/
[media_player docs]: /integrations/media_player/
[microsoft docs]: /integrations/microsoft/
[mold_indicator docs]: /integrations/mold_indicator/
[moon docs]: /integrations/moon/
[mqtt docs]: /integrations/mqtt/
[nanoleaf docs]: /integrations/nanoleaf/
[ness_alarm docs]: /integrations/ness_alarm/
[netatmo docs]: /integrations/netatmo/
[netgear_lte docs]: /integrations/netgear_lte/
[nmbs docs]: /integrations/nmbs/
[notify docs]: /integrations/notify/
[onkyo docs]: /integrations/onkyo/
[onvif docs]: /integrations/onvif/
[opentherm_gw docs]: /integrations/opentherm_gw/
[openweathermap docs]: /integrations/openweathermap/
[panasonic_viera docs]: /integrations/panasonic_viera/
[panel_custom docs]: /integrations/panel_custom/
[panel_iframe docs]: /integrations/panel_iframe/
[picotts docs]: /integrations/picotts/
[plex docs]: /integrations/plex/
[pollen docs]: /integrations/iqvia
[prometheus docs]: /integrations/prometheus/
[ps4 docs]: /integrations/ps4/
[push docs]: /integrations/push/
[recorder docs]: /integrations/recorder/
[reddit docs]: /integrations/reddit/
[rest docs]: /integrations/rest/
[ring docs]: /integrations/ring/
[season docs]: /integrations/season/
[sense docs]: /integrations/sense/
[sensibo docs]: /integrations/sensibo/
[simplisafe docs]: /integrations/simplisafe/
[smartthings docs]: /integrations/smartthings/
[solaredge docs]: /integrations/solaredge/
[sql docs]: /integrations/sql/
[stream docs]: /integrations/stream/
[switch docs]: /integrations/switch/
[switchbot docs]: /integrations/switchbot/
[systemmonitor docs]: /integrations/systemmonitor/
[telegram_bot docs]: /integrations/telegram_bot/
[tellduslive docs]: /integrations/tellduslive/
[tfiac docs]: /integrations/tfiac/
[tibber docs]: /integrations/tibber/
[time_date docs]: /integrations/time_date/
[tplink docs]: /integrations/tplink/
[traccar docs]: /integrations/traccar/
[trafikverket_weatherstation docs]: /integrations/trafikverket_weatherstation/
[upnp docs]: /integrations/upnp/
[voicerss docs]: /integrations/voicerss/
[websocket_api docs]: /integrations/websocket_api/
[xiaomi_aqara docs]: /integrations/xiaomi_aqara/
[xiaomi_miio docs]: /integrations/xiaomi_miio/
[yandextts docs]: /integrations/yandextts/
[yeelight docs]: /integrations/yeelight/
[zha docs]: /integrations/zha/
[zwave docs]: /integrations/zwave/
