ภาษาสคริปต์การทำงานอัตโนมัติจะอิงตาม YAML และมีสคีมาแบบลําดับชั้น โครงสร้างพื้นฐานจะมีลักษณะดังนี้
metadata
|
มีชื่อการทำงานอัตโนมัติและคําอธิบาย |
automations
|
กำหนดตรรกะของระบบอัตโนมัติ |
starters
|
กำหนดเงื่อนไขที่จะทริกเกอร์การทำงานอัตโนมัติ |
condition
|
กําหนดเงื่อนไขเพิ่มเติมที่ประเมินเพื่อเริ่มการทํางานอัตโนมัติ |
actions
|
แสดงสิ่งที่ต้องดำเนินการ |
การประชุม
แต่ละช่องเป็นคู่คีย์-ค่า ดังนี้
<key>: <value> # <comments>
สถานที่:
<key>
คือคีย์เวิร์ดตรงตัว<value>
อาจเป็นประเภทพื้นฐาน: bool, ตัวเลข, สตริง, เวลา ฯลฯ
ประเภทสตรูคเจอร์: ชุดฟิลด์
อาร์เรย์ของประเภทข้อมูล เช่น
- string
คืออาร์เรย์ของสตริงการอ้างอิงค่าข้อมูลที่กําหนดไว้ที่อื่น เช่น ใน
device: $tv
tv
คือตัวแปรซึ่งหมายถึงข้อมูลอุปกรณ์
<comments>
ใช้สำหรับข้อมูลเพิ่มเติมเกี่ยวกับผู้แต่ง เครื่องมือสคริปต์จะไม่สนใจความคิดเห็น เนื่องจากความคิดเห็นไม่มีผลต่อการทำงานของสคริปต์