0.98: Improved 实体 management, options and Home Assistant Alerts

It's time for the 0.98 发布. As Home Assistant grows, some features will sometimes be left partially implemented, leaving things to be desired. In this 发布 we've been focusing on tieing up these loose ends, sometimes with new features. Getting better all the time!

实体管理

One of the things that we've been improving in this 发布 is 实体 management. Historically we've let this up to 集成, but that caused 用户 to learn multiple ways and more work for 集成 开发者.

Generally 实体 management is not that important, you want all the 实体 创建 by your 集成! However this was less the case when we started migrating over 设备 trackers. This became clear when we migrated over Unifi.

So in this 发布 we're introducing a couple of new features that are available for all 实体 in the 实体 registry and 集成 that are set up via config entries.

The first feature is that it's now possible to disable 实体. If an 实体 is disabled, it will not be added to Home Assistant when an 集成 adds it. So now it will be easy to manage which 实体 will show up. This option is accessible from the 实体 registry

The second feature is a new option to automatically disable any new 实体 that an 集成 discovers. In the case of a 设备 tracker, newly connected 设备 to the network won't be added anymore. This option is accessible from the 集成 details page via a 按钮 on the toolbar at the top.

With these two features we are now at feature parity with the filtering features that are available in the 设备 tracker 集成. Next step will be polishing of the person 集成 to get all those shiny new 设备 tracker 实体 under one roof.

Screenshot of 集成 system options. Screenshot of 集成 system options

配置条目选项

We introduced config entries last year as our way as a generic way for 集成 to store 认证 and 配置. By allowing 集成 to define the storage format, there are no more backward-incompatible changes for anything stored inside config entries!

Config entries also work great with people who prefer 配置.yaml. At startup a config entry is 创建/updated with the 配置.

With this 发布 @kane610 added a new possibility for 集成 to offer options in the UI. Options that previously required you to edit 配置.yaml can now be offered via the interface.

This 发布 adds config entry options to Deconz and Unifi 集成 with many more to come.

Screenshot of Unifi config options. Screenshot of Unifi config options

Home Assistant Alerts

设备 and 服务 can receive updates that can cause 集成 to break. This is frustrating and sometimes the cause can be hard to track down. Usually the 用户 on forums/chat are aware and can help redirect people in the right direction, but that's not a scalable solution!

So to combat this, we're launching Home Assistant Alerts. Home Assistant Alerts is a website that will track 已知问题 and explains in 用户 friendly language what is going on. Alerts can be tagged with applicable Home Assistant versions, 集成 and Python packages.

In the future we're planning on integrating this directly in Home Assistant, so that 用户 can be pro-actively notified of issue related to their 配置.

Docker 基础镜像变更

If you run Home Assistant via Docker (not Hass.io) and are using the homeassistant/home-assistant 容器, the 图像 are now using the same 图像 as hass.io, which are using Alpine Linux instead of Debian.

The hass.io 图像 are a third of the size of the old 图像 and are heavily optimized thanks to the hard work by @pvizeli.

This change will only impact you if you were extending or customizing the 图像 with Debian packages. If you want to continue to use the Debian based 图像, you can find the Dockerfile for the old 图像 here.

For more background on this decision, see ADR-006.

网页抓取

With this 发布 we have deprecated 集成 that rely on webscraping. These will be removed from Home Assistant in a future 发布. Our scrape 集成 will remain part of Home Assistant.

Webscraping is fragile, breaks often requires frequent updates and there have been occasions where websites have banned our 用户.

用户 that rely on these 集成 can continue using them as custom components.

For more background on this decision, see ADR-004.

其他消息

Mason Made 创建 a great video walking through her Lovelace UI with a fancy custom 侧边栏. Check it out:

Reddit 用户 Skyfox2k has built a batcave for his robo 吸尘器. Once the 吸尘器 starts, Home Assistant will open the door and the 吸尘器 can come out to clean!

Photo of a robovacuum driving out of a tiny hole in the wall. Screencap of the batcave video.

New 集成

New Platforms

发布 0.98.1 - August 29

发布 0.98.2 - September 2

发布 0.98.3 - September 4

发布 0.98.4 - September 4

发布 0.98.5 - September 6

We have been notified by Gregor Godbersen that our markdown renderer was vulnerable for an XSS attack if exposed to specially crafted markdown. This was introduced in the Home Assistant 0.98 发布. We have verified that Home Assistant 0.98.0 does not render unsafe markdown, yet still wanted to make sure to issue an 更新 as soon as possible.

More information in this 前端 pull request.

如果你需要帮助……

……欢迎随时使用我们非常活跃的论坛,或者加入我们的 聊天频道

反馈问题

如果这次发布引入了问题,请前往我们的 issue tracker 提交反馈。请务必填写 issue 模板中的所有字段。

Backward-incompatible changes

  • Deprecated

    集成 which make use of web scraping and are pending for removal in Home Assistant 0.100.0 ADR-004:

  • Ruter - Removed - Ruter Labs which hosted the API has shut down the 服务. As an alternative, see the Entur public transport 集成. - (@ludeeus - #26041)

  • Googlehome - Removed - In recent months 此integrations was broken when Google changed the port they serve this information on, in addition to requiring a token header in the request. That method requires the 用户 to have a rooted android 设备, and even then then the "result" was not the best, since you often need to get that token. As an alternative to the 设备 tracker, 用户 can look into https://community.home-assistant.io/t/monitor-reliable-multi-user-distributed-蓝牙-occupancy-presence-detection/68505 - (@ludeeus - #26035)

  • EDP Ready - Removed - The 服务 has moved to a new portal and the previous API does not work anymore. - (@abmantis - #25971)

  • Zwave - zwave.update_config 服务 call has been removed. - (@kpine - #25959) (zwave docs)

  • Nissanleaf - Nissan leaf European API no longer supports location control. The nissan_connect: element from the homeassistant nissan_leaf: 配置 must be removed. - (@filcole - #26139) (nissan_leaf docs)

  • ZHA - This change has the unique_id use the ieee address instead of the nwk address. The ieee address is static and therefore the unique_id will be stable now. - (@dmulcahey - #25707) (zha docs)

    Previous format: unique_id=0x0b64:1:0x0006

    New format: unique_id=00:0d:6f:00:0e:c8:d4:e7:1:0x0006

  • Updater - The updater component is now a 二元sensor that is always available. The 实体 ID is binary_sensor.updater. The 状态 is on/off depending on whether an 更新 is available or not. The latest 版本 as well as the 发布 notes are 属性 of this 二元sensor. 自动化 that are listening for the existence of updater.updater should now 触发器 when binary_sensor.updater changes to on. This makes the component more transparent and understandable for the 用户. Additionally, it is visible if there is an 错误 or the source (https://updater.home-assistant.io/) is outdated. - (@Santobert - #25418) (updater docs)

  • Mikrotik - The Mikrotik 设备 tracker 集成 is now a component (hub) with a 设备 tracker platform. If you have a device_tracker section where mikrotik is a platform in your 配置.yaml you will need to move it to the hub config section for mikrotik and make sure you follow the new config format. - (@slackr31337 - #25664) (mikrotik docs)

    Example 配置 entry:

    mikrotik:
    - host: 192.168.88.1
     username: !secret router_user
     password: !secret router_pass
     ssl: true
    
    - host: 192.168.88.2
     username: !secret capsman_user
     password: !secret capsman_pass
     ssl: true
  • Prometheus - Previously, the 集成 would create too many metrics based on entity_id name which would pollute and fill the database. The naming of metrics has been changed and doesn't use the entity_id anymore. Any consumers of the prometheus data will need to be changed to use the new names. The 用户 can now also use the new component_config_glob to remap the metrics any way the 用户 sees fit. - (@perosb - #24103) (prometheus docs)

    Example 配置 entry:

    prometheus:
      namespace: hass
      component_config_glob:
        # override metric for RFLink devices
        sensor.*_hum:
          override_metric: humidity_percent
        sensor.*_temp:
          override_metric: temperature_c
        sensor.*_bat:
          override_metric: battery_percent
     filter:
       include_domains:
         - sensor
         - lock
  • Kodi - Kodi 服务 are now their own domain and the media_player.kodi_* 服务 are now kodi.* - (@JeffLIrion - #25753) (kodi docs)

    • media_player.kodi_add_to_playlist is now kodi.add_to_playlist
    • media_player.kodi_call_method is now kodi.call_method
  • Sonos - This change rejects previously accepted calls using content_types (图像, tvshow, video, episode or channel) when using media_player.play_media, and changes the behavior of a content_type of "playlist" to play a Sonos playlist, rather than a URL. - (@ahertz - #26054) (sonos docs)

  • Statistics - The names of statistics 传感器 no longer get mean or count appended automatically, respecting the name configured by the 用户. If you use 此integrations, this name change will affect the name of the 实体. - (@frenck - #26119) (statistics docs)

    Example 配置 entry:

    - platform: statistics
      name: "MiAP2 PSI Stat"
      entity_id: sensor.mi_ap2_aqi

Beta Fixes

All changes