สคีมาลักษณะเฉพาะของโหมดสมาร์ทโฮม

action.devices.traits.Modes - คุณสมบัตินี้ครอบคลุมโหมดและการตั้งค่าเฉพาะโหมดที่ใช้ได้ทั้งหมดสำหรับอุปกรณ์

ลักษณะนี้เป็นของอุปกรณ์ใดๆ ที่มี "n-way" เป็นจำนวนที่กำหนดเอง โหมดที่ โหมดและการตั้งค่าสำหรับแต่ละโหมดสามารถกำหนดเองและไม่ซ้ำกันสำหรับแต่ละอุปกรณ์หรืออุปกรณ์แต่ละประเภท แต่ละโหมดมีการตั้งค่าที่เป็นไปได้หลายรายการ แต่จะเลือกได้ครั้งละ 1 รายการเท่านั้น เครื่องอบผ้าทำไม่ได้ อยู่ใน "ละเอียดอ่อน" "ปกติ" และ "ทำงานหนัก" พร้อมกัน การตั้งค่าที่ จะเปิดหรือปิดเป็นของลักษณะ Toggles ก็ได้

เช่น เครื่องซักผ้ามีการตั้งค่าสำหรับน้ำหนักและอุณหภูมิของเครื่องซักผ้าได้ ทั้งสองรูปแบบจะเป็นโหมด เพราะทั้งสองโหมดเป็นอิสระจากกัน สามารถมีสถานะได้ทีละหนึ่งสถานะเท่านั้น ผู้ใช้สามารถตั้งค่าโหมด เช่น อุณหภูมิอย่างชัดแจ้งด้วยคำสั่งเช่น ตั้งอุณหภูมิของเครื่องซักผ้าเป็น เย็นชา

บางโหมดเป็นแบบ "เรียงลำดับ" และยังปรับได้ด้วยไอคอนขึ้น/ลง เพิ่ม/ลดการใช้ภาษา เช่น ขนาดการโหลด (เล็ก กลาง ใหญ่) และ เรียงลำดับอุณหภูมิไว้อย่างชัดเจน (โปรดทราบว่าอุณหภูมิไม่ใช่ค่าตามจริง) ตัวควบคุมอุณหภูมิที่มีเป้าหมายเป็นตัวเลขเช่นเดียวกับในอุปกรณ์อื่นๆ) แต่ประเภทโหลด (ที่ละเอียดอ่อน ปกติ ขนสัตว์ ฯลฯ) ไม่สามารถใช้ได้

ซึ่งคุณสมบัตินี้ครอบคลุมโหมดต่างๆ ที่ผู้ใช้ตั้งค่าได้อย่างน้อย 1 โหมด โดยทั่วไปแล้ว โหมดเหล่านี้ควรใช้สำหรับฟังก์ชันที่ยกเลิกการลิงก์กับอุปกรณ์เครื่องอื่น พฤติกรรมของคุณ ลักษณะการทำงานที่ลิงก์ เช่น การเปิดหรือปิดอุปกรณ์ ใช้ลักษณะที่เจาะจงมากขึ้น (ตัวอย่างเช่น thermostatMode ใน ลักษณะ TemperatureSetting)

แอตทริบิวต์ของอุปกรณ์

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

Attributes ประเภท คำอธิบาย
availableModes อาร์เรย์

ต้องระบุ

รายการโหมดที่ใช้ได้

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

โหมดที่พร้อมใช้งาน

name String

ต้องระบุ

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

name_values อาร์เรย์

ต้องระบุ

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

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

คำพ้องความหมายของโหมดในภาษาหนึ่งๆ

name_synonym อาร์เรย์

ต้องระบุ

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

[item, ...] String

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

lang String

ต้องระบุ

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

settings อาร์เรย์

ต้องระบุ

การตั้งค่าที่รองรับสําหรับโหมดนี้

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

การตั้งค่าที่รองรับ

ต้องมีอย่างน้อย 2 รายการ

setting_name String

ต้องระบุ

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

setting_values อาร์เรย์

ต้องระบุ

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

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

คำพ้องความหมายของการตั้งค่าในภาษาหนึ่งๆ

setting_synonym อาร์เรย์

ต้องระบุ

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

[item, ...] String

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

lang String

ต้องระบุ

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

ordered บูลีน

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

หากตั้งค่านโยบายนี้เป็น "จริง" จะมีการใช้ไวยากรณ์เพิ่มเติมสำหรับตรรกะการเพิ่ม/ลด ตามลำดับ (เพิ่มขึ้น) ของอาร์เรย์การตั้งค่า

commandOnlyModes บูลีน

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

ระบุว่าอุปกรณ์รองรับการสื่อสารแบบทางเดียว (จริง) หรือ 2 ทาง (เท็จ) ตั้งค่าแอตทริบิวต์นี้เป็น "จริง" หากอุปกรณ์ตอบสนองต่อ Intent ของ QUERY หรือสถานะรายงานสำหรับลักษณะนี้ไม่ได้

queryOnlyModes บูลีน

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

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

ตัวอย่าง

อุปกรณ์ที่มีโหมดและการตั้งค่าหลายรายการ

{
  "availableModes": [
    {
      "name": "load_mode",
      "name_values": [
        {
          "name_synonym": [
            "Load",
            "Size",
            "Load size"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "small_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Small",
                "Half"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "medium_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Medium",
                "Normal"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "large_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Large",
                "Full"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": true
    },
    {
      "name": "temp_mode",
      "name_values": [
        {
          "name_synonym": [
            "Temperature",
            "Temp"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "hot_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Hot",
                "White"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "warm_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Warm",
                "Color"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "cold_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Cold",
                "Delicate"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ]
}

อุปกรณ์ที่มีโหมดเฉพาะคำสั่งเท่านั้น

{
  "availableModes": [
    {
      "name": "light_mode",
      "name_values": [
        {
          "name_synonym": [
            "Light",
            "Lighting"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "day_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Day",
                "Bright"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "night_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Night",
                "Dark"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "reading_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Reading",
                "Ambiant"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ],
  "commandOnlyModes": true,
  "queryOnlyModes": false
}

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

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

รัฐ ประเภท คำอธิบาย
currentModeSettings ออบเจ็กต์

ต้องระบุ

คู่คีย์/ค่าที่มีโหมด name ของอุปกรณ์เป็นคีย์ และ setting_name ปัจจุบันเป็นค่า

<string> String

ปัจจุบัน setting_name

ตัวอย่าง

อุปกรณ์อยู่ในโหมดใด

{
  "currentModeSettings": {
    "load_mode": "small_load",
    "temp_mode": "cold_temp"
  }
}

คำสั่งอุปกรณ์

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

action.devices.commands.SetModes

อัปเดตการตั้งค่าโหมด

พารามิเตอร์

พารามิเตอร์ ประเภท คำอธิบาย
updateModeSettings ออบเจ็กต์

ต้องระบุ

คู่คีย์/ค่าที่มีโหมด name ของอุปกรณ์เป็นคีย์ และ setting_name ใหม่เป็นค่า

<string> String

setting_nameใหม่

ตัวอย่าง

ตั้งค่าเป็นโหลดขนาดใหญ่

{
  "command": "action.devices.commands.SetModes",
  "params": {
    "updateModeSettings": {
      "load_mode": "large_load"
    }
  }
}

ตัวอย่างการเปล่งเสียง

de-DE

  • Stelle den Staubsauger auf Ruhemodus

en-US

  • set the vacuum to energy saver mode

es-ES

  • pon la lavadora en modo frío

fr-FR

  • mets l'aspirateur en silencieux

hi-IN

  • वैक्यूम पर कार्पेट मोड लगाएं

it-IT

  • imposta l'aspirapolvere su silenzioso

ja-JP

  • 掃除機 静音 モードに設定して

ko-KR

  • 세탁기 세탁량 많음 으로 설정해

pt-BR

  • acionar a função autolimpeza do aspirador
  • ligar o modo de aquecimento

ข้อผิดพลาดของอุปกรณ์

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