Chế độ tự động hoá

Cấu trúc automations là thành phần cốt lõi của một tập lệnh tự động hoá. Đây là nơi hành vi tự động hoá được chỉ định, bao gồm điều kiện khởi động, điều kiện và hành động. Những quy tắc này còn được gọi chung là một quy tắc tự động hoá.

Cấu trúc automations chứa một hoặc nhiều quy tắc tự động hoá và mỗi quy tắc luôn chứa một tập hợp các điều kiện khởi động và hành động. Một quy tắc có thể tuỳ ý chứa các điều kiện là các bộ hạn định bổ sung phải có để thực thi tập lệnh.

Khóa Loại Mô tả

name

String

Không bắt buộc

Tên của quy trình tự động hoá.

Người dùng không thấy tên này mà chỉ để nhà phát triển tham khảo.

starters

[Khởi đầu]

Bắt buộc

Danh sách điều bắt đầu.

condition

Tình trạng

Không bắt buộc

Điều kiện

actions

[Hành động]

Bắt buộc

Danh sách hành động

Ví dụ

Sau đây là hai ví dụ giới thiệu về Cấu trúc automations.

Trong ví dụ đầu tiên, quá trình tự động hoá được bắt đầu khi TV có tên là "TV của tôi" được bật.

Sau khi được kích hoạt, các thao tác sau sẽ được thực hiện:

Hai thiết bị LIGHT có tên là "Light A" và "Light B" được bật và đặt ở mức độ sáng 50.

automations:
- name: Dim the lights
  starters:
  - type: device.state.OnOff
    device: My TV - Living Room
    state: on
    is: true
  actions:
  - type: device.command.OnOff
    devices:
    - Light A - Living Room
    - Light B - Living Room
    on: true
  - type: device.command.BrightnessAbsolute
    devices:
    - Light A - Living Room
    - Light B - Living Room
    brightness: 50

Trong ví dụ thứ hai, quá trình tự động hoá tương tự sẽ bắt đầu lúc hoàng hôn vào mỗi thứ Hai và thứ Năm:

automations:
- name: Dim the lights
  starters:
  - type: time.schedule
    at: SUNSET
    weekday:
    - MONDAY
    - THURSDAY
    state: on
    is: true
  actions:
  - type: device.command.OnOff
    devices:
    - Light A - Living Room
    - Light B - Living Room
    on: true
  - type: device.command.BrightnessAbsolute
    devices:
    - Light A - Living Room
    - Light B - Living Room
    brightness: 50

Món khai vị

Cấu trúc Starter (Bắt đầu) là nơi bạn chỉ định các điều kiện khởi động khiến tập lệnh Tự động hoá được thực thi. Mỗi automation có thể chứa một hoặc nhiều điều kiện khởi động và ít nhất một điều kiện khởi động phải đánh giá là true để các điều kiện tiếp theo được đánh giá.

Ví dụ về điều kiện khởi động time.schedule:

type: time.schedule
at: sunrise+30min
weekdays:
- MON
- TUE

Ví dụ về một điều kiện khởi động trên trạng thái thay đổi của thiết bị:

type: device.state.Volume
device: My TV - Living Room
state: currentVolume
greaterThan: 1
lessThan: 10

Ví dụ về điều kiện khởi động trong một sự kiện trên thiết bị:

type: device.event.DoorbellPress
device: My doorbell - Frontdoor

Ví dụ về điều kiện khởi động khi chế độ có mặt ở nhà thay đổi:

type: home.state.HomePresence
state: homePresenceMode
is: HOME

Xem danh sách đầy đủ các điều kiện khởi động.

Điều kiện

Bạn có thể kết hợp các điều kiện với các toán tử logic and, ornot để biểu thị logic phức tạp hơn.

Trong ví dụ sau, có một Cấu trúc condition với một điều kiện time và một điều kiện device.state. Struct này cho phép tập lệnh chạy nếu vào thời gian từ lúc mặt trời lặn đến lúc mặt trời mọc vào thứ Hai hoặc thứ Ba, hoặc nếu âm lượng TV nằm trong khoảng từ 1 đến 10:

type: or
conditions:
- type: time.between
  before: sunrise
  after: sunset
  weekdays:
  - MON
  - TUE
- type: device.state
  device: My TV - Living Room
  trait: Volume
  state: currentVolume
  greaterThanOrEqualTo: 1
  lessThanOrEqualTo: 10

Ví dụ về điều kiện time cơ bản giới hạn việc thực thi một tập lệnh Tự động hoá trong những ngày cuối tuần trước 10 giờ sáng:

type: time.between
before: 10am
weekdays:
- SAT
- SUN

Điều kiện nhiệt độ của cảm biến thiết bị điều nhiệt:

type: device.state.TemperatureSetting
device: My Thermostat - Living Room
state: thermostatTemperatureAmbient
greaterThan: 65F

Ví dụ về điều kiện home.state.HomePresence:

type: home.state.HomePresence
state: homePresenceMode
is: AWAY

Xem danh sách đầy đủ các điều kiện.

Thao tác

Giống như điều kiện khởi động và điều kiện, mỗi hành động đều có một type cho biết loại hành động đang được chỉ định.

Tuỳ chọn quan trọng nhất và hữu ích nhất là các loại lệnh device.command. Ví dụ về hành động tắt đèn.

type: device.command.OnOff
devices:
- Light A - Living Room
on: false

Một thao tác thêm độ trễ giữa nhiều thao tác khác.

type: time.delay
for: 5min

Xem danh sách đầy đủ các hành động.