跳到主要内容

自动化动作(action)

自动化规则的动作是指规则触发时执行的动作。动作部分遵循脚本语法,可通过其他操作或事件与任何内容进行交互。

对于动作,您可以指定它应该应用的 entity_id(实体ID)以及可选参数(例如指定亮度)。

您还可以执行激活场景的操作,这将允许您定义设备的预期状态,然后由Home Assistant执行相应的动作。

automation:
# 将厨房和客厅的灯光亮度更改为150,颜色设置为红色。
triggers:
- trigger: sun
event: sunset
actions:
- action: light.turn_on
target:
entity_id:
- light.kitchen
- light.living_room
data:
brightness: 150
rgb_color: [255, 0, 0]

automation 2:
# 在手机上通知我某个事件
triggers:
- trigger: sun
event: sunset
offset: -00:30
variables:
notification_action: notify.paulus_iphone
actions:
# 动作是脚本,所以也可以是一个动作列表
- action: "{{ notification_action }}"
data:
message: "美丽的日落!"
- delay: 0:35
- action: notify.notify
data:
message: "哇,你真的错过了一些精彩的东西。"

条件也可以作为动作的一部分。您可以在单个动作中组合多个动作和条件,它们将按照您放置的顺序进行处理。如果条件的结果为 false,动作将在那里停止,因此该条件之后的任何动作都不会被执行。

automation:
- alias: "傍晚办公室"
triggers:
- trigger: state
entity_id: sensor.office_occupancy
to: "on"
actions:
- action: notify.notify
data:
message: "测试条件动作"
- condition: or
conditions:
- condition: numeric_state
entity_id: sun.sun
attribute: elevation
below: 4
- condition: state
entity_id: sensor.office_illuminance
below: 10
- action: scene.turn_on
target:
entity_id: scene.office_at_evening