2024.12:场景先看,2025 再见!🎄

Home Assistant 2024.12!🎄

假期将至,也到了今年最后一次发布的时候了!🎉

2024 对 Home Assistant 来说是疯狂的一年。不仅有像[拖放式仪表盘]和标签这类[组织能力]这样的功能更新,还有我们在语音方面数不清的改进。同时,这一年也见证了[开放家庭基金会]的成立,以及我们可爱社区的持续成长,因为我们已经成为 [GitHub 上排名第一的开源项目]!❤️

不过,这一年还没有结束!这个月,我们想听听你所有 “What the heck?!” 的 Home Assistant 时刻。欢迎告诉我们那些小烦恼、Bug、想法,或者建议。你可以先阅读 [WTH 公告博客],也可以直接[在 WTH 论坛中加入讨论]!

说实话,今年最大的公告其实还没到来……🤫 我很确定这和语音硬件有关。😉 所以请务必不要错过[12 月 19 日的直播]!📺 你一定不会失望!🎁

在你开始浏览本次发布的全部内容之前,我只想在这一年结束前,向我们社区中的每一个人说一声大大的感谢,其中当然也包括你!

感谢你使用 Home Assistant! ❤️

节日快乐!也是 2024 年最后一次:祝你享受这次发布!

../Frenck

改进场景编辑体验

场景 是在家中营造氛围的好方法。它可以捕捉设备在某个时刻的状态,并在之后通过仪表盘按钮、自动化,甚至语音命令把它恢复回来。

在 Home Assistant 中编辑场景时,一个常见痛点是:只要你打开场景编辑器,场景就会立刻被激活并应用。如果你深夜正在折腾配置,却不小心触发了一个会点亮全屋灯光的场景,那体验显然不算太好。😅

@karwosts@marcinbauer85 出手相救!🦸‍♂️ 从这个版本开始,场景编辑器拥有两种模式:查看模式编辑模式

改进后的场景编辑器现已支持预览模式,图中为该模式截图。

“查看模式”将成为场景默认打开的方式,它会展示当前场景的配置,但不会真正应用场景。随后你可以切换到“编辑模式”;只有在那时场景才会被激活,这样你就可以调整实际状态,并在满意后重新拍摄快照。

此外,如果你更喜欢 YAML,也可以在场景编辑器右上角的三点溢出菜单 中选择 "Edit in YAML",直接编辑场景。

语音

距离[我们开启这段旅程]、打造属于自己的开源语音助手,已经快两年了。我们的目标一直很明确:让每个人都能用自己的语言来控制 Home Assistant。

今天,我们离终点线又更近了一步。不只是因为这次发布中包含的新功能,你可能也已经听说,我们的语音硬件马上就要来了……

在圣诞老人 🎅 和他的小精灵帮助下,我们准备了一场产品发布 YouTube 直播,将于 2024 年 12 月 19 日 20:00 GMT / 12:00 PT / 21:00 CET 举行!

是不是很好奇?一定记得[加入直播],点个赞 👍,订阅我们的频道,再打开小铃铛 🔔,这样我们上线时你就能收到提醒!这场你真的不想错过。

不过在那之前,我们先来看看这次发布中的语音功能!

让你的语音助手回退到基于 LLM 的代理

[就在 6 个月前],我们打通了默认对话代理与 [LLM] 这个精彩(也有点可怕)的世界之间的桥梁。我们允许你进行实验,让基于 LLM 的对话代理来控制你的家,而不是完全依赖内置句子。

这是一个很有意思的第一步。LLM 通常更擅长理解自然语言,也比我们的默认代理更“懂世界”。不过,它们往往更慢,也可能更贵。现实一点说:即便那些演示很酷,我们在家里说出的 90% 命令其实都很简单:“把这个打开”“把那个关掉”

而现在,我们终于允许用户把这两个世界混合起来。从这个版本开始,你可以先把语音助手指向我们快速、由社区驱动的对话代理,只有在没有匹配结果时,才回退到基于 LLM 的代理。

Assist 管线配置对话框,展示了优先在本地处理命令的新选项。

这让你几乎不用承担缺点,就能结合两个世界的优点。已知命令会在本地以极快速度处理,而 LLM 的能力只会用于 Home Assistant 本身无法原生理解的复杂查询。

语言负责人正在加快脚步

这已经不是什么秘密了:我们的语音硬件会在 2024 年 12 月 19 日正式揭晓。各语言负责人已经提前拿到了这台设备,并且正全力以赴地打磨各自语言的支持体验。

过去一个月里,对我们的[意图仓库](也就是保存受支持句子的地方)的贡献数量大幅增长,我们真的非常感谢。越来越多的语言已经变得可用,甚至趋于完整!你可以在这里 关注进度。

我们就不一一列举了,但请放心,很可能已经有人正在努力,让你的母语也能顺畅可用,让你在家里自然地使用它。

更快的语音体验

我们的默认对话代理从零开始构建,就是为了能在廉价硬件上也以极快速度把一句话匹配到底层意图。

但随着一次又一次发布,我们不断为 Home Assistant 增加更多用例和句子,句子匹配逻辑也越来越慢。在某些语言中,一句不匹配的输入甚至可能要处理超过 15 秒!这次发布在这个匹配逻辑上投入了很多精力;我们彻底重新设计了句子匹配方式。除此之外,各语言负责人也花时间降低了句子的复杂度。有些语言的可能组合数量减少了 99%!

结果不言而喻:

修订后的集成质量量表

集成质量量表(IQS)是我们对项目的“质量”进行分类的一种方式。 集成。它让用户了解对集成的期望。 您可能已经注意到我们列出的 IQS 指标 [每个集成文档页面]。

该量表最早于 2018 年推出,当时更偏向集成的技术实现和代码层面。多年来,它并没有真正随着 Home Assistant 的发展以及社区整体期望一起演进。现在是时候改变了!

在过去的几个月里,我们与社区合作进行了修订和 提高规模。不仅涉及我们的社区开发人员,还涉及 文档作者、用户体验设计师以及任何感兴趣的人 在社区中。

因此,新的集成质量量表不再只关注代码,而是更多地关注整体用户体验。它现在能更全面地反映一个集成的状态,我们也希望这能帮助大家在家中做出更好的选择。

集成质量量表现已在 Home Assistant UI 中显示。图中展示了 HomeWizard Energy 集成在新量表中达到白金等级。

现在我们总共有 4 个评级层级:

  • 🥉 青铜: 我们为新集成设定的全新最低要求集。
  • 🥈 : 确保集成的可靠性和鲁棒性。
  • 🥇 黄金: 确保黄金标准的用户体验,包括文档。
  • 🏆 白金: 质量的缩影,最高的代码质量和最佳性能。

我们还有四个额外的(未缩放的)特殊级别:

  • ❓ 无分数: 对于尚未根据新等级评分的集成。
  • 🏠 内部: 用于 Home Assistant 自身会使用的集成,比如自动化引擎。
  • 💾 旧版: 用于无法通过 UI 设置的旧集成。
  • 📦 自定义: 用于自定义集成,因为我们无法对这些集成进行评分。

您可以阅读有关这些层的所有信息、它们的设计目的以及 我们专门总结了他们的特点 [集成质量量表页面]。

我们真诚地希望这个新秤不仅能帮助我们的用户,也能帮助我们 社区开发人员通过提供清晰的路径来了解预期内容 提高他们的集成度。为了帮助解决这个问题,我们现在有 [广泛记录了我们的每个级别的每条规则和要求 开发者文档]。

集成

感谢我们的社区持续跟进新集成以及现有集成的改进!你们都太棒了。🥰

新集成

我们欢迎本版本中的以下新集成:

对现有集成的值得注意的改进

不只是新增了集成,现有集成也在持续改进。下面是一些值得注意的变化:

  • [UniFi Protect 集成] 现在支持指纹和 NFC 事件。你甚至可以针对特定指纹或 NFC 标签编写自动化!太棒了,@RaHehl
  • TP-Link 集成 现在支持 H200 集线器,并为 Tapo 设备增加了更多能耗监测传感器。它还新增了像运动传感器开关、恒温器童锁开关,以及最近一次漏水告警时间戳等实体。感谢 @sdb9696@rytilahti@ryenitcher
  • @starKillerOGReolink 集成 添加了码率、帧率和车辆提示音的选择器实体;此外,还为 PTZ 摄像头加入了倾斜位置传感器。谢谢!
  • @fwestenberg 更新了 Stookwijzer 集成,加入了一些新传感器,正好赶上冬季。很赞!
  • Habitica 集成 现在提供任务处理、习惯评分和奖励相关动作,还增加了待办事项和每日提醒日历。很棒,@tr4nt0r
  • [eQ-3 Bluetooth Smart 集成] 现在提供多个实用开关和传感器,比如离家模式、增压和电池状态。感谢 @EuleMitKeule
  • @YogevBokobzaSwitcher 集成 添加了对 Switcher Lights 的支持。谢谢!

[UniFi Protect 集成]: /integrations/unifiprotect## 其他值得注意的变化

本次发布还有更多改进;这是其他一些 此发布的值得注意的更改:

  • @jpbede在摄像头实体信息中添加了下载快照按钮 对话框。超级好!谢谢!
  • UI 现在使用计时器格式(如 03:26:00)以自然方式显示持续时间 语言(3小时26分钟)。谢谢@piitaya
  • 添加了对新测量单位的支持:
    • 面积大小的单位(以及公制和美制之间的转换)。 谢谢@mikey0000
    • @jschlyter 添加了对 MW、GW、TW、GWh 和 TWh 的支持。好的!
    • 添加了 µV 作为电势单位。谢谢@tr4nt0r
    • 最后,添加了 mL/s 作为体积流量单位。谢谢@zweckj
  • 如果您通过我们的 UI 使用 YAML 编辑自动化,并且犯了一个错误…… 您现在将在 UI 中实际看到解析错误消息。这真是 有帮助!谢谢,@karwosts

测量单位的翻译

几年来,我们一直在努力,让每一个小细节 通过提供翻译,每个人都可以使用 Home Assistant 对于系统的每个部分。 🌐

然而,我们仍然有一些边缘情况,我们无法提供 一切的翻译。这些边缘情况之一是单位 测量。 📏尽管在大多数情况下单位不需要翻译(例如 °CkWh),但许多单位 家庭中的传感器可能使用特定的非标准化单位。例如, 一种测量家中“人数”或告诉您人数的传感器 您的收藏中有多少部“电影”。

因此,假设您现在有一个带有自定义测量单位的传感器,例如 您收藏的“电影”数量。在这种情况下,集成现在可以 为这些单位提供翻译。 🎉

一些集成已经为其单元添加了翻译,包括 Jellyfin、[Lyrion 音乐服务器]、[传输]、Pi-holeQBitTorrentNextDNSMastodonMealie

我们已升级到 Python 3.13

Python 标志;Home Assistant 现已运行在最新的 Python 3.13 上。

此版本附带 Python 3.13 打包! 🐍

想知道这意味着什么? Python 是为 Home 提供支持的编程语言 场景背后的助手。

为什么这很重要?每个新的 Python 版本都会带来我们可以做到的改进 利用——更好的性能、更少的错误和更流畅的开发人员体验 对于我们的贡献者。另外,Python 3.13 还提高了 Home Assistant 的速度 总的来说——还有什么理由不爱呢? 🚀

运行 Home Assistant 操作系统还是使用 Home Assistant 容器?别担心,我们都帮你处理好了。 升级到 Python 3.13 会自动完成。像往常一样更新 Home Assistant,然后就可以开始了。

容易,对吧? 😎

补丁发布我们还将在 12 月发布 Home Assistant 2024.12 的补丁版本。

这些补丁版本仅包含错误修复。我们的目标是发布补丁 每周五发布。

2024年12月1日 - 12月6日

2024年12月4日 - 12月17日- 简化记录器 RecorderRunsManager ([@emontnemery] - [#131785])

2024年12月5日 - 12月20日- 将 nice-go 提升至 1.0.0 ([@IceBotYT] - [#133185])

需要帮助吗?加入社区!

Home Assistant 拥有一个庞大的用户社区,他们都非常愿意 互相帮助。那么,加入我们吧!我们非常活跃的 Discord 聊天服务器 是一个绝佳的地方 ,并且不要忘记加入我们精彩的论坛

发现错误或问题?请在我们的问题跟踪器 中报告它, 把它修好!或者,查看我们的帮助页面 以获取更多指导 你可以去的地方。

您更喜欢电子邮件吗? 订阅我们的“打造开放之家”时事通讯 获取有关功能、社区中发生的事情的最新消息以及 有关建造开放之家的其他新闻;直接进入您的收件箱。

向后不兼容的更改

我们尽力避免对现有功能进行更改,这可能会导致 意外地影响您的 Home Assistant 安装。不幸的是,有时, 这是不可避免的。

我们始终确保记录这些更改,以使过渡变得简单 对你来说是可能的。此版本具有以下向后不兼容的更改:

页面的测量单位从 p 更改为 pages

如果在状态为的模板中使用,这可能会破坏用例 使用单位,例如 states('sensor.pages', with_unit=True)

(@bieniu - #131275) (文档)

库未识别的 Ecovacs 设备将不再使用后备 吸尘器。相反,该设备不会添加到 Home Assistant, 并且将创建一个警告日志。

(@edenhaus - #131525) (文档)

之前已弃用的 Glances v2 API 已被删除。 升级到 v3 或 继续使用集成。(@gjohansson-ST - #131427) (文档)

进行此更改后,timeratio 模式下的 history_stats 将仅计数 明确已知的基于时间的记录数据。

在此更改之前,如果时间窗口的开始时间早于 记录器中最旧的数据点,history_stats 将使用 假设实体处于它从一开始就发现的第一个状态 的时间。当开关打开时,这可能会导致疯狂的过度计算 经过很长一段时间不活动后,history_stats 会认为它已经 _始终_一直在线并据此计算出巨大的价值。

(@karwosts - #126271) (文档)

为了支持 Rosh Chodesh,这创造了一个突破性的变化作为假期传感器 当这两个日子在同一天时,将返回“Chanukah, Rosh Chodesh” 日期。如果您的自动化需要“Chanukah”值,则必须更新 它。

(@tsvi - #130456) (文档)

对于Plugwise Adam来说,所有基于设备的温控实体都将被新的基于区域的温控实体取代,并且很可能有不同的实体名称。 此更改与 Plugwise 应用程序将温控实体表示为区域的方式一致(如问题 #130597 中发现的那样)。

(@bouwew - #131659) (文档)

QNAP 传感器将不再具有以下额外状态属性:-memory_free -memory_percent_used -memory_size

  • memory_used
  • network_err
  • network_link_status
  • network_max_speed
  • network_rx
  • network_tx
  • status
  • system_temp
  • uptime
  • volume_percentage_used
  • volume_size_free
  • volume_size_total
  • volume_size_used

这些额外的状态属性已在 Home Assistant 2024.6 中弃用,并已 现在已被删除。如果您在自动化或脚本中使用它,请使用 可用单独的传感器代替。

(@jbouwh - #130310) (文档)

自 Spotify 以来,Spotify 音频功能传感器已被删除 从 11 月 27 日开始,取消了他们的访问权限。

此外,精选和类别播放列表已从 Spotify 媒体浏览器,因为 Spotify 弃用了 API, 11 月 27 日开始。

(@joostlek - #131754 #131758) (文档)

以前,统计集成的实体状态属性仅在具有非 None 值时提供。 现在情况已发生变化,因此即使使用 None 也始终提供该属性 价值观。您可能需要修改您的自动化或脚本,具体取决于 这些属性是否存在。

(@gjohansson-ST - #129353) (文档)

Stookwijzer 传感器已迁移到 Atlas 提供的新 API 利丰格维文。因此,报告的状态略有不同。

旧与新:- 蓝色 (blauw) -> 黄色 (code_yellow)

  • 橙色 (oranje) -> 橙色 (code_orange)
  • 红色 (rood) -> 红色 (code_red)

如果您在自动化或脚本中使用 Stookwijzer 传感器,您可能会 需要针对此更改进行调整。

(@frenck - #131567) (文档)

在某些模板助手中可用的 this 模板变量是 以前基于新的状态而不是当前的状态。

如果模板使用 this,则更改会影响以下集成 变量。用户可能必须更新其模板以反映上述内容 使用 value 变量进行更改,该变量保存新值。

  • command_line
  • rest
  • scrape
  • snmp
  • sql

@gjohansson-ST - #130135

通过此发布,您将需要更新您的 zwave-js-server 实例。你 必须使用 zwave-js-server 1.39.0 或更高版本(架构 39)。

  • 如果您使用 Z-Wave JS 插件,则至少需要版本 0.9.0
  • 如果您使用 Z-Wave JS UI 插件,则至少需要版本 3.17.0
  • 如果您使用 Z-Wave JS UI Docker 容器,则至少需要版本 9.26.0
  • 如果您运行自己的 Docker 容器或其他安装方法,则需要将 zwave-js-server 实例更新到至少 1.39.0

(@MindFreeze - #129482) (文档)

可用于您的集成的新功能:请务必遵循我们的 [开发者博客][开发博客]。以下是本次发布中最值得注意的内容:

所有更改

当然,这篇文章还有很多内容。您可以找到以下列表 此处所做的所有更改:Home Assistant Core 2024.12 的完整变更日志