สคีมารูปแบบ Smart Home Fill Trait

action.devices.traits.Fill - ลักษณะนี้ใช้กับอุปกรณ์ที่รองรับการเติมน้ำ เช่น อ่างอาบน้ำ

ATTRIBUTES ของอุปกรณ์

อุปกรณ์ที่มีลักษณะเช่นนี้อาจรายงานแอตทริบิวต์ต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ SYNC ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent SYNC ได้ที่Fulfillment Intent

Attributes ประเภท คำอธิบาย
availableFillLevels ออบเจ็กต์

อธิบายระดับต่างๆ ของการเติมอุปกรณ์

levels อาร์เรย์

ต้องระบุ

รายการชื่อระดับและคำพ้องความหมายเฉพาะภาษา

[item, ...] ออบเจ็กต์

ชื่อระดับและคำพ้องความหมายเฉพาะภาษา

level_name String

ต้องระบุ

ชื่อภายในของระดับ ซึ่งอาจใช้งานได้ยากสำหรับผู้ใช้ และจะมีการแชร์ในทุกภาษา

level_values อาร์เรย์

ต้องระบุ

คำพ้องความหมายของระดับในแต่ละภาษาที่รองรับ

[item, ...] ออบเจ็กต์

คำพ้องความหมายของระดับในภาษาที่ระบุ

level_synonym อาร์เรย์

ต้องระบุ

คำพ้องความหมายของระดับ สตริงแรกในรายการนี้จะใช้เป็นชื่อ Canonical ของระดับในภาษานั้น

[item, ...] String

ชื่อคำพ้องความหมาย

lang String

ต้องระบุ

รหัสภาษา (ISO 639-1) ดูภาษาที่รองรับ

ordered บูลีน

ต้องระบุ

หากเป็น "จริง" อุปกรณ์จะจัดการไวยากรณ์เพิ่มเติมสําหรับตรรกะการเพิ่มหรือลด ซึ่งแสดงด้วยอาร์เรย์ levels (เช่น ครึ่งระดับ)

supportsFillPercent บูลีน

(ค่าเริ่มต้น: false)

หากเป็น "จริง" ให้ยอมรับคำสั่งสำหรับการปรับระดับเป็นเปอร์เซ็นต์

ตัวอย่าง

อุปกรณ์ที่มีความสามารถในการเติมหรือระบายน้ำขั้นพื้นฐานที่ไม่รองรับระดับการเติมสีที่ไม่ต่อเนื่อง

{}

อุปกรณ์ที่รองรับระดับการเติมสีแบบแยกต่างหาก

{
  "availableFillLevels": {
    "levels": [
      {
        "level_name": "half_level",
        "level_values": [
          {
            "level_synonym": [
              "Half",
              "Half way",
              "One half"
            ],
            "lang": "en"
          }
        ]
      },
      {
        "level_name": "full_level",
        "level_values": [
          {
            "level_synonym": [
              "Full",
              "All the way",
              "Complete"
            ],
            "lang": "en"
          }
        ]
      }
    ],
    "ordered": true
  }
}

สถานะอุปกรณ์

เอนทิตีที่มีลักษณะนี้อาจรายงานสถานะต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ QUERY ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY ได้ที่Fulfillment Intent

รัฐ ประเภท คำอธิบาย
isFilled บูลีน

ต้องระบุ

เป็นจริงหากอุปกรณ์มีการเติมสีที่ระดับใดก็ตาม เป็นเท็จหากอุปกรณ์หมด

currentFillLevel String

ต้องระบุหากตั้งค่าแอตทริบิวต์ availableFillLevels ไว้ ระบุ level_name ปัจจุบันจากแอตทริบิวต์ availableFillLevels ที่มีการกรอกอุปกรณ์

currentFillPercent Number

ต้องระบุหากตั้งค่าแอตทริบิวต์ supportsFillPercent ไว้ ระบุเปอร์เซ็นต์ระดับการเติมโฆษณาปัจจุบัน

ตัวอย่าง

อ่างอาบน้ำมีน้ำไหม

{
  "isFilled": true
}

อ่างอาบน้ำมีน้ำไหม (พร้อมระดับ)

{
  "isFilled": true,
  "currentFillLevel": "half_level"
}

COMMANDS ของอุปกรณ์

อุปกรณ์ที่มีลักษณะเช่นนี้อาจตอบสนองต่อคำสั่งต่อไปนี้โดยเป็นส่วนหนึ่งของการดำเนินการ EXECUTE ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent EXECUTE ได้ที่Fulfillment Intent

action.devices.commands.Fill

เติมหรือระบายอุปกรณ์ให้หมด

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
fill บูลีน

ต้องระบุ

ตั้งค่าเป็นจริงสำหรับการเติม เท็จเมื่อระบายน้ำ

fillLevel String

ระบุ level_name จากแอตทริบิวต์ availableFillLevels ที่จะตั้งค่า หากไม่ระบุ ให้กรอกข้อมูลในระดับเริ่มต้น

fillPercent Number

ระบุเปอร์เซ็นต์ระดับที่ขอ

ตัวอย่าง

เติมอ่างอาบน้ำ

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true
  }
}

ระบายน้ำในอ่างอาบน้ำ

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": false
  }
}

เติมอ่างอาบน้ำครึ่งหนึ่ง

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "half_level"
  }
}

เพิ่มระดับการเติมอ่างอาบน้ำ 1 ระดับ (ต้องแอตทริบิวต์ ordered เป็น true)

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}

ข้อผิดพลาดเกี่ยวกับอุปกรณ์

ดูรายการข้อผิดพลาดและข้อยกเว้นทั้งหมด