自动化模式

一个 automationHome Assistant 中的自动化允许您自动响应在家中和周围发生的事情。 [Learn more] 可以在它已经运行时被触发。

自动化的 mode 配置选项控制当自动化在先前的 trigger触发器是定义的一组平台值或条件,用于触发自动化运行。 [Learn more] 中的 actions动作在 Home Assistant 的多个地方使用。作为脚本或自动化的一部分,动作定义了触发器被激活后将发生的事情。在脚本中,动作被称为序列 [Learn more] 仍在运行时被触发时会发生什么。

模式 描述
single (默认)不启动新的运行。发出警告。
restart 在首先停止之前的运行后启动新的运行。只有在满足条件时,自动化才会重启。
queued 在所有先前的运行完成后启动新的运行。运行按排队的顺序保证执行。注意,后续排队的自动化仅在触发时所有条件满足的情况下加入队列。
parallel 与先前的运行并行启动新的独立运行。

对于 queuedparallel 模式,配置选项 max 控制可以执行和/或排队的最大运行数量。默认值为 10。

当超过 max (对于 single 模式,实际上是 1)时,将发出日志消息以指示这一情况。配置选项 max_exceeded 控制该日志消息的严重级别。将其设置为 silent 以忽略警告,或将其设置为 日志级别。默认值为 warning

示例:节流自动化

有些自动化您只想每 5 分钟运行一次。这可以通过使用 single 模式并在自动化运行时触发时静默警告来实现。

automation:
  - mode: single
    max_exceeded: silent
    triggers:
      - ...
    actions:
      - ...
      - delay: 300  # 秒 (=5分钟)

示例:排队

有时自动化正在对不支持多个同时操作的设备执行操作。在这种情况下,可以使用队列。在这种情况下,自动化将在当前调用和队列完成后执行。

automation:
  - mode: queued
    max: 25
    triggers:
      - ...
    actions:
      - ...