0.107:多个 Lovelace 仪表盘、助手,以及新的媒体播放器卡片

George F. Will 曾说过: "未来总会在不经意间到来。"

不过,George,这次我们不同意: 现在正式宣布 Home Assistant Core 0.107 发布!

这次发布为前端带来了海量精彩的新功能和漂亮的改进。

再见,旧版状态 UI

正如我们在 0.105 中宣布的那样,旧版状态 UI 现已从 Home Assistant 中移除。如果你使用 Home Assistant 的时间不超过一年,可能压根不知道它是什么,因为“新的” Lovelace UI 早已成为默认界面。那就是 Lovelace 之前我们一直在使用的 UI。

如果你愿意来一段回忆杀,也许值得读一读 Home Assistant 0.7 的发布说明,当年经过大改版、如今也已被移除的状态 UI,最初就是在那里被宣布的。现在,整整 100 个版本过去了,是时候正式告别这个陪伴我们很久很久的状态 UI 了……

当我们在 0.105 中宣布旧版状态 UI 弃用时,并不是所有人都对此感到高兴。于是我们做了一次调查,想了解大家会怀念状态 UI 的什么,结果发现,大多数人主要是把它当成所有实体的总览页面来使用(当然,它的布局风格也确实可以在 Lovelace 里复现)。

因此,在这个版本中,我们为你带来了一个对应的 Lovelace 解决方案,而且还不止如此……

欢迎多个 Lovelace 仪表盘

你现在可以创建多个 Lovelace 配置了,我们称之为: Lovelace 仪表盘!

你可以拥有一个主仪表盘、一个自动生成的仪表盘(像旧版状态 UI 那样)、一个专门用于实验的仪表盘、一个给管理员使用的仪表盘、一个给墙装平板使用的仪表盘,等等。

而且,没错,你甚至可以同时混用多个由 YAML 管理的 Lovelace 仪表盘、由 UI 管理的 Lovelace 仪表盘,以及自动生成的 Lovelace 仪表盘。

Screenshot of the new Lovelace 配置 面板 新的 Lovelace 配置面板截图。

每个仪表盘都可以加入菜单侧边栏,并支持自定义标题与图标。此外,你还可以把某个仪表盘限制为仅管理员用户可访问。

新的 Lovelace 配置面板允许你直接在 UI 中创建任意数量的仪表盘,而 YAML 仪表盘则可以在 configuration.yaml 中设置,详见文档

不过,如果你使用的是 Lovelace 的手动 YAML 模式,这项很棒的新功能也带来了一项弃用变更:你需要把 resources 段从 ui-lovelace.yaml 移动到 configuration.yaml 中的 lovelace: 段里。 这目前还不算破坏性变更;如果我们在 lovelace: 段中没有找到相关内容,仍然会从旧位置加载,但这种兼容回退会在未来版本中移除。

如果你是通过前端管理 Lovelace,我们会自动迁移这些 resources。请注意,resources 现在已经不再出现在 Lovelace 原始配置编辑器里,而是移动到了 Lovelace 配置面板中。

全新媒体播放器卡片

@zsarnett 回归前端团队了,而且这次显然不打算低调回归。他为前端做了大量工作,并为 Lovelace 创建了一张漂亮的全新媒体控制卡片。

它的灵感来自 Android 中的媒体控制组件,并会根据当前播放媒体的封面自动变换颜色。我们觉得它真的非常惊艳!

Screenshot of the new Media Control 卡片 全新媒体控制卡片截图。

助手配置面板

当你创建更复杂的自动化时,通常会需要一些助手。比如一个开关,用来保存某种状态,或者其他输入字段。直到现在,这些内容都必须写在 YAML 里,也就是大家熟悉的 input_* 系列字段/集成。

现在,我们已经有了一个 UI 来添加和管理这些助手元素;这让非高级用户,或任何更喜欢通过前端管理系统的人,也都能方便地使用这项功能。

Screenshot of a 助手 配置 dialog 助手配置对话框截图。

感谢 @Adminiuga 实现了让这项前端改动成为可能的后端功能!不仅如此,如果你更喜欢 YAML,[#Adminiuga] 的这些改动也让 input_* 的 YAML 配置能够在不重启 Home Assistant 的情况下直接重载。

Lovelace 编辑体验改进

@zsarnett 改造了我们的卡片选择器。现在不再只是一个简单的“选卡片”按钮,而是会直接显示基于你自己实体的实时预览。 @thomasloven 则为 horizontal stack、vertical stack 以及 conditional 卡片加入了 UI 编辑器。

Screen recording of the new 卡片 picker and stack editor 新版卡片选择器与堆叠编辑器的录屏演示。

其他值得注意的变更

  • @Misiu 加入了一个 UI,可为每位用户单独设置视图可见性。
  • 数据表格现在快得飞起了,例如实体配置面板,哪怕在手机上也是如此 🚀。
  • 日志簿也获得了一些性能提升,感谢 @KapJI
  • @bdraco 这次对 August 集成火力全开,把它打磨成了顶级集成!做得太棒了!
  • @Jc2k 加入了对启用 HomeKit 的电视以及 occupancy 传感器的初步支持。
  • @tulindo 加入了对更新款 SamsungTV 型号的支持。
  • 现在 Alexa 已支持启动和取消计时器,感谢 @Tho85

新集成

新平台

如果你需要帮助……

欢迎前往我们非常活跃的 论坛,或者加入 聊天频道

如果这个版本带来了问题,请到我们的 issue tracker 提交报告,并尽量完整填写 issue 模板中的所有字段。

不向后兼容的变更

  • Xfinity Gateway (Deprecated) - The Xfinity Gateway 集成 relies on web scraping and is deprecated, to be removed in Home Assistant 核心 0.109. (ADR-0004) - (@frenck - #32017)

  • Groups - Groups are NOT being removed, but the 配置 options, 服务, and 服务 options related to the (previously deprecated and now removed) 状态 UI are now removed in this 发布. This includes:

    • The view and control 配置 options for a group.
    • The group.set_visibility 服务 call
    • The control, visible, view options on the group.set 服务 call

    Please ensure your 配置 and 自动化 do not use these anymore. - (@frenck - #32021) (group docs)

  • Input Number - Adds an 实体 ID to input_number 警告. Passing an out of range value to input_number.set_value will now raise a validation 错误. Incrementing/decrementing an input_number will no longer cause 警告. - (@balloob - #32012) (input_number docs)

  • History Graph - The history_graph 集成 has been deprecated in Home Assistant 0.105 and is now removed. 此integrations was used for the old 状态 UI, which is no longer available. A Lovelace an equivalent is available: The Lovelace History Graph. (@frenck - #32028)

  • Weblink - The weblink 集成 is was deprecated in 0.105.0 and now removed. 此integrations only works with the old 状态 UI, which is no longer available. (@frenck - #32024)

    With Lovelace, the same can be achieved using:

  • Environment Canada - 此integrations was previously using web scraping for 天气 alert details. The details 属性 has been removed to make it compliant. (ADR-0004) - (@michaeldavie - #32077) (environment_canada docs)

  • Units of Time - Time units have been standardized throughout all 集成. - (@springstan - #32065)

    If you were using a non standard unit in an 自动化 or 传感器 please change it to the following:

    • μs for microseconds
    • ms for milliseconds
    • s for seconds
    • min for minutes
    • h for hours
    • d for days
    • w for weeks
    • m for months
    • y for years
  • HomematicIP Cloud - Migrates HomematicIP Cloud 服务 to admin 服务. - (@SukramJ - #32107) (homematicip_cloud docs)

    The 用户 needs to be in the administrator role to execute these HomematicIP Cloud 服务:

    • homematicip_cloud.dump_hap_config
    • homematicip_cloud.reset_energy_counter
  • HomeKit Controller - Support for HomeKit controller's legacy pairing data folder .homekit has been deprecated and in Home Assistant 核心 发布 0.109.0 we plan to remove this code. Pairings have not been saved this way since Home Assistant 0.94, so if you are running Home Assistant 0.94 or later this does not affect you - your pairings were already migrated to 配置 entries. If you are running an older 发布 and do not 升级 soon you will not be able to automatically migrate your existing pairings at 升级 time and will have to manually re-pair them. - (@Jc2k - #32158) (homekit_controller docs)

  • 自动化 - The hide_entity 配置 option on an 自动化 was deprecated in Home Assistant 0.105 and is removed in this 发布. It was used for the old 状态 UI, which is no longer available, making this option obsolete. Please ensure your 配置 is not using this option. - (@frenck - #32038) (自动化 docs)

  • IQVIA - When configuring IQVIA via configuration.yaml, the monitored_conditions key has been deprecated and will be removed in 0.114.0. All 传感器 are now 创建 by default. (ADR-0003) - (@bachya - #32223) (iqvia docs)

    Example YAML 配置:

    iqvia:
      zip_code: !secret iqvia_zip_code
  • GitHub - The 实体 状态 has been changed to return the 'short SHA' commit hash, so 自动化 based on latest_commit_sha should be adapted to that. - (@Mariusthvdb - #31581) (github docs)

  • AirVisual - AirVisual is now available to be added through the 集成 UI! If you 配置 it in configuration.yaml you will need to 更新 to the new 配置. Additionally, in order to protect the AirVisual cloud API, scan_interval in no longer configurable for 此integrations. - (@bachya - #32072) (airvisual docs)

    Example YAML 配置:

    airvisual:
      api_key: !secret airvisual_api_key
  • IFTTT - IFTTT now checks that received Webhook data is a dictionary (example { "value": 1 }) to prevent Home Assistant internals from breaking. - (@balloob - #32317) (ifttt docs)

  • AlarmDecoder - AlarmDecoder 集成 now uses Honeywell's Instant mode instead of Night-Stay for alarm_arm_night. Instant mode is generally thought to be more secure for night-time use because it disables the entry delay since visitors aren't expected. - (@ajschmidt8 - #32292) (alarmdecoder docs)

  • Tibber - Upgraded Tibber library to 0.13.0 and some 属性 have names which have changed. - (@Danielhiversen - #32369) (tibber docs)

    • currentPhase1 -> currentL1
    • currentPhase2 -> currentL2
    • currentPhase3 -> currentL3
  • REST - Add application/xml as an XML to JSON auto converted MIME types for rest 传感器 - (@bdraco - #32289) (rest docs)

  • Certificate Expiry - The name 配置 option has been deprecated and is no longer used by the 集成. An improved default 实体 & display naming scheme is provided. Name and entity_id overrides should be handled via the 前端. 配置 using name will marked broken with the 0.109 发布. - (@jjlawren - #32066) (cert_expiry docs)

    Example YAML 配置:

    sensor:
     - platform: cert_expiry
       host: google.com
  • Plex Media Player - The 'show all controls' option for Plex is deprecated and will be removed in the Home Assistant 核心 0.110.0 发布. Also, discovery and legacy config file loading (plex.conf) has been removed. - (@jjlawren - #32391 #32510) (discovery docs) (plex docs)

    Example YAML 配置:

    plex:
     media_player:
       show_all_controls: True  <-- Deprecated
  • Abode - Abode retired its legacy 自动化 and quick 动作 on 28 Feb. This change removes support for legacy 自动化 and quick 动作 while adding support for CUE 自动化 which will show up in Home Assistant as 开关 (same as previous implementation). Abode's replacement for quick 动作 is manually triggered CUE 自动化 which can be called through Home Assistant 服务 abode.trigger_automation (previously labeled abode.trigger_quick_action). - (@shred86 - #32296) (abode docs)

  • deCONZ - The events on the Aqara Magic Cube have changed, so they will match with the 设备 触发器 discriptions. If you made 自动化 for the Magic Cube on the 设备 page, you will want to change your 自动化. If you configured your 自动化 based on events from the 开发者 tools, there is nothing breaking. This also fixes the double tap function on side 2, which didnt work if you configured it in the 设备 page - (@Dorzel107 - #32108) (deconz docs)

  • Emoncms - The way the unit_of_measurement is set has changed to make use of the ability for this to be set in the source feed in Emocms. - (@borpin - #32042) (emoncms docs)

    The unit will now be assigned as follows:

    1. Take the unit from the API if it is available
    2. Otherwise take the unit from config, either specified or the default unit (W)
  • Vizio SmartCast TV - Adds app support. For TVs that support apps, 'SMARTCAST' and 'CAST' sources have been replaced with SmartCast Home. Any 自动化 that rely on those sources will need to be updated. - (@raman325 - #32432)

  • Onvif - Added more onvif PTZ move modes. The onvif 摄像头 服务 camera.onvif_ptz has been moved from the 摄像头 domain to the onvif domain. onvif_ptz 服务 was also renamed to ptz, so 服务 calls need to be updated to onvif.ptz. - (@olijouve - #30152) (onvif docs)

    Example YAML 配置:

    - type: entity-button
        entity: camera.foscam
        icon: mdi:arrow-left-bold-outline
        show_name: false
        tap_action:
          action: call-service
          service: onvif.ptz
          service_data:
            entity_id: camera.foscam
            pan: LEFT
            tilt:
            zoom:
            move_mode: ContinuousMove
            continuous_duration: 0.8
            distance: 1
  • Facebook Messenger - On October 29, 2019 Facebook announced a breaking change that all broadcast API will stop working on March 4th, 2020, so BROADCAST as a target option is now removed. - (@chmielowiec - #32517) (facebook docs)

  • Samsung Smart TV - Adds support for newer SamsungTV models. Specifying the port in configuration.yaml is no longer needed and thus the port config option has been deprecated. - (@tulindo - #31537) (samsungtv docs)

  • Netatmo - The unreliable 二元sensor are removed since they don't provide much value due to their polling nature. To 触发器 自动化 it is recommended to use the event netatmo_event. - (@cgtobi - #32673) (netatmo docs)

    Example 触发器 for 自动化:

    trigger:
      - event_data:
          type: movement
        event_type: netatmo_event
        platform: event
  • DirecTV - DirecTV is now available to be added from the 集成 UI. The concept of 设备 has been removed and now the DirecTV receiver, and all client 设备, are added. There is no longer a port option as the default port should work just fine. The name can be set via 实体 UI rather than name option. - (@ctalkington - #32162) (directv docs) (directv docs)

  • iCloud - iCloud family 设备 are no longer added automatically. Use the with_family 配置 option or re-add the 集成 via the 前端, in case you do want to make use of the iCloud family 设备. - (@Quentame - #32644) (icloud docs)

  • 设备 Tracker - The hide_if_away 配置 parameter has been removed for all 设备 trackers. This option was used to hide 设备 trackers from the UI if the 设备 was not at home. This applied to the old 状态 UI, which now has been removed. - (@frenck - #32705) (device_tracker docs) (breaking change) (beta fix)

  • Sonos - Sonos 设备 will now report idle instead of paused if they do not have any current artist metadata available. This can happen when you were playing Spotify on your Sonos and use the Spotify app to play on another 设备. - (@balloob - #32712) (sonos docs) (breaking change) (beta fix)

Beta Fixes

发布 0.107.1 - March 18

发布 0.107.2 - March 20

发布 0.107.3 - March 20

发布 0.107.4 - March 20

发布 0.107.5 - March 21

发布 0.107.6 - March 24

发布 0.107.7 - March 25

All changes