สคีมาลักษณะการทำงาน FanSpeed ของสมาร์ทโฮม

action.devices.traits.FanSpeed - ลักษณะการทำงานนี้เป็นของอุปกรณ์ที่รองรับการตั้งค่าความเร็วของพัดลม

ความเร็วพัดลม (เช่น การเป่าลมจากอุปกรณ์ในระดับต่างๆ ซึ่งอาจเป็นส่วนหนึ่งของเครื่องปรับอากาศหรือการทำความร้อน หรือในรถยนต์) อาจมีการตั้งค่าต่างๆ เช่น ต่ำ ปานกลาง และสูง หรือเป็นเปอร์เซ็นต์

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

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

Attributes ประเภท คำอธิบาย
reversible บูลีน

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

หากตั้งค่าเป็น "จริง" อุปกรณ์นี้จะรองรับการเป่าลมของพัดลมทั้ง 2 ทิศทางและยอมรับคำสั่งให้กลับทิศทางลมของพัดลมได้

commandOnlyFanSpeed บูลีน

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

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

มีรายการใดรายการหนึ่งต่อไปนี้
0 ออบเจ็กต์

การรองรับการตั้งค่าความเร็ว

availableFanSpeeds ออบเจ็กต์

ต้องระบุ

การตั้งค่าความเร็วที่อุปกรณ์รองรับ

speeds อาร์เรย์

ต้องระบุ

รายการการตั้งค่าความเร็ว

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

การตั้งค่าความเร็ว

speed_name String

ต้องระบุ

ชื่อภายในของการตั้งค่าความเร็ว ชื่อนี้อาจไม่เป็นมิตรกับผู้ใช้และจะแชร์ในทุกภาษา

speed_values อาร์เรย์

ต้องระบุ

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

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

คำพ้องความหมายสำหรับการตั้งค่าความเร็วในภาษาที่กำหนด ต้องมีรายการที่มีค่า lang เป็น en อย่างน้อย 1 รายการเพื่อให้มีการสำรองภาษา

speed_synonym อาร์เรย์

ต้องระบุ

คำพ้องความหมายสำหรับการตั้งค่าความเร็ว ซึ่งควรมีทั้งรูปเอกพจน์และพหูพจน์ หากมี ระบบจะถือว่าคำพ้องความหมายแรกในรายการเป็นชื่อมาตรฐานของการตั้งค่าความเร็ว

[item, ...] String

คำพ้องความหมาย ต้องมีรายการที่มีค่า lang เป็น en อย่างน้อย 1 รายการเพื่อให้มีการสำรองภาษา

lang String

ต้องระบุ

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

ordered บูลีน

ต้องระบุ

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

1 ออบเจ็กต์

การรองรับเปอร์เซ็นต์ความเร็ว

supportsFanSpeedPercent บูลีน

ต้องระบุ

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

หากตั้งค่าเป็น "จริง" อุปกรณ์นี้จะยอมรับคำสั่งสำหรับการปรับความเร็วโดยใช้เปอร์เซ็นต์ตั้งแต่ 0.0 ถึง 100.0

ตัวอย่าง

อุปกรณ์ที่มีการตั้งค่าความเร็ว 2 ระดับ รองรับการกลับทิศทางและการปรับเปอร์เซ็นต์

{
  "availableFanSpeeds": {
    "speeds": [
      {
        "speed_name": "speed_low",
        "speed_values": [
          {
            "speed_synonym": [
              "Low",
              "Slow"
            ],
            "lang": "en"
          }
        ]
      },
      {
        "speed_name": "speed_high",
        "speed_values": [
          {
            "speed_synonym": [
              "High",
              "Fast"
            ],
            "lang": "en"
          }
        ]
      }
    ],
    "ordered": true
  },
  "reversible": true,
  "supportsFanSpeedPercent": true
}

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

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

States ประเภท คำอธิบาย
currentFanSpeedSetting String

แสดงชื่อภายในของการตั้งค่าความเร็วปัจจุบันจากแอตทริบิวต์ availableFanSpeeds

currentFanSpeedPercent Number

ระบุความเร็วพัดลมปัจจุบันเป็นเปอร์เซ็นต์ ต้องระบุหากตั้งค่าแอตทริบิวต์ supportsFanSpeedPercent เป็น true

ค่าต้องอยู่ระหว่าง 0 ถึง 100

ตัวอย่าง

พัดลมในห้องนั่งเล่นมีความเร็วเท่าใด

{
  "currentFanSpeedSetting": "speed_low",
  "currentFanSpeedPercent": 10
}

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

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

action.devices.commands.SetFanSpeed

ตั้งค่าความเร็ว

พารามิเตอร์

เพย์โหลดมีรายการใดรายการหนึ่งต่อไปนี้

ตั้งค่าความเร็วตามการตั้งค่า

พารามิเตอร์ ประเภท คำอธิบาย
fanSpeed String

ต้องระบุ

การตั้งค่าความเร็วที่ขอของพัดลม

ตั้งค่าความเร็วตามเปอร์เซ็นต์

พารามิเตอร์ ประเภท คำอธิบาย
fanSpeedPercent Number

ต้องระบุ

เปอร์เซ็นต์การตั้งค่าความเร็วที่ขอ

ค่าต้องอยู่ระหว่าง 0 ถึง 100

ตัวอย่าง

ตั้งค่าพัดลมเป็นระดับสูง

{
  "command": "action.devices.commands.SetFanSpeed",
  "params": {
    "fanSpeed": "speed_high"
  }
}

ตั้งค่าพัดลมเป็น 50%

{
  "command": "action.devices.commands.SetFanSpeed",
  "params": {
    "fanSpeedPercent": 50
  }
}

action.devices.commands.SetFanSpeedRelative

ตั้งค่าความเร็วสัมพัทธ์

คำสั่งนี้ต้องมีแอตทริบิวต์ต่อไปนี้
{
  "commandOnlyFanSpeed": true
}

พารามิเตอร์

เพย์โหลดมีรายการใดรายการหนึ่งต่อไปนี้

ตั้งค่าความเร็วสัมพัทธ์ตามน้ำหนัก

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

ต้องระบุ

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

ค่าต้องอยู่ระหว่าง -5 ถึง 5

ตั้งค่าความเร็วสัมพัทธ์ตามเปอร์เซ็นต์

พารามิเตอร์ ประเภท คำอธิบาย
fanSpeedRelativePercent Number

ต้องระบุ

ค่านี้แสดงถึงเปอร์เซ็นต์ความเร็วที่จะเปลี่ยนแปลง

ค่าต้องอยู่ระหว่าง -100 ถึง 100

ตัวอย่าง

ลดความเร็วพัดลมลงเล็กน้อย

{
  "command": "action.devices.commands.SetFanSpeedRelative",
  "params": {
    "fanSpeedRelativeWeight": -1
  }
}

เพิ่มความเร็วพัดลมขึ้น 10 เปอร์เซ็นต์

{
  "command": "action.devices.commands.SetFanSpeedRelative",
  "params": {
    "fanSpeedRelativePercent": 10
  }
}

action.devices.commands.Reverse

กลับทิศทางลมของพัดลม

คำสั่งนี้ต้องมีแอตทริบิวต์ต่อไปนี้
{
  "reversible": true
}

พารามิเตอร์

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

ไม่มีพร็อพเพอร์ตี้

ตัวอย่าง

กลับทิศทางลมของพัดลม

{
  "command": "action.devices.commands.Reverse",
  "params": {}
}

ตัวอย่างคำพูด

de-DE

  • stell die Geschwindigkeit vom Ventilator auf hoch

en-US

  • drop the AC fan speed to medium

es-ES

  • cambia la velocidad del ventilador a medio

fr-FR

  • mets la ventilation au maximum

hi-IN

  • बेडरूम में पंखे की गति मीडियम करें

it-IT

  • metti il condizionatore in salotto a velocità media

ja-JP

  • エアコン の風量を 高速 にセット

ko-KR

  • 선풍기 강풍 으로 틀어 줘

nl-NL

  • zet de snelheid van de ventilator op medium

pt-BR

  • definir a velocidade do ventilador para baixa
  • põe a ventoinha no máximo

sv-SE

  • Ställ in fläkten medel

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

ดูรายการข้อผิดพลาดและข้อยกเว้นทั้งหมด
  • maxSpeedReached: อุปกรณ์ตั้งค่าความเร็วสูงสุดแล้ว
  • minSpeedReached: อุปกรณ์ตั้งค่าความเร็วต่ำสุดแล้ว