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

action.devices.traits.Rotation - ลักษณะนี้ใช้กับอุปกรณ์ที่รองรับการหมุน

คุณสามารถระบุการหมุนเป็นเปอร์เซ็นต์หรือองศาก็ได้ และหากอุปกรณ์รองรับการหมุนเป็นองศา ทิศทางการหมุนเริ่มต้นจะเป็นตามเข็มนาฬิกา

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

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

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

ต้องระบุ

ตั้งค่าเป็น "จริง" หากอุปกรณ์อนุญาตให้หมุนตามองศา

supportsPercent บูลีน

ต้องระบุ

ตั้งค่าเป็น "จริง" หากอุปกรณ์อนุญาตให้หมุนตามเปอร์เซ็นต์

rotationDegreesRange ออบเจ็กต์

แสดงช่วงเป็นองศาที่อุปกรณ์หมุนได้

rotationDegreesMin Number

ต้องระบุ

การหมุนต่ำสุด หน่วยเป็นองศา

rotationDegreesMax Number

ต้องระบุ

การหมุนสูงสุดเป็นองศา

supportsContinuousRotation บูลีน

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

ตั้งค่าเป็น "จริง" หากอุปกรณ์อนุญาตให้หมุนต่อเนื่อง เมื่อได้รับคําค้นหาแบบสัมพัทธ์ คำสั่ง RotateAbsolute จะวนรอบช่วงการหมุนที่รองรับ

commandOnlyRotation บูลีน

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

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

ตัวอย่าง

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

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 180
  }
}

อุปกรณ์ที่รองรับเฉพาะการหมุนเป็นองศา

{
  "supportsDegrees": true,
  "supportsPercent": false,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 90
  }
}

อุปกรณ์ที่รองรับเฉพาะคำสั่งการหมุนต่อเนื่อง

{
  "supportsDegrees": true,
  "supportsPercent": true,
  "rotationDegreesRange": {
    "rotationDegreesMin": 0,
    "rotationDegreesMax": 360
  },
  "supportsContinuousRotation": true,
  "commandOnlyRotation": true
}

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

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

รัฐ ประเภท คำอธิบาย
rotationDegrees Number

ระดับปัจจุบันภายใน rotationDegreesRange ซึ่งระบุจำนวนองศาที่หมุนอุปกรณ์ ค่านี้ควรสัมพันธ์กับการหมุนตามเข็มนาฬิกาเสมอ

rotationPercent Number

ระดับปัจจุบันที่บ่งบอกเปอร์เซ็นต์ที่อุปกรณ์หมุนอยู่ โดย 0.0 หมายถึงปิดอยู่และ 100.0 หมายถึงเปิดอยู่

targetRotationPercent Number

ระดับที่ระบุเปอร์เซ็นต์การหมุนที่อุปกรณ์จะหมุนหรือกำลังหมุนอยู่อันเป็นผลมาจากการเปลี่ยนแปลงการหมุนอย่างต่อเนื่อง

ตัวอย่าง

อุปกรณ์หมุนไปมากน้อยเพียงใด (เปอร์เซ็นต์และองศา)

{
  "rotationDegrees": 45,
  "rotationPercent": 25
}

อุปกรณ์หมุนไปมากน้อยเพียงใด (องศาเท่านั้น)

{
  "rotationDegrees": 45
}

อุปกรณ์หมุนไปมากน้อยเพียงใด (ต่อเนื่อง)

{
  "rotationDegrees": 270,
  "rotationPercent": 75
}

อุปกรณ์กำลังหมุนไปยังตำแหน่งใหม่ (เปอร์เซ็นต์)

{
  "rotationPercent": 75,
  "targetRotationPercent": 100
}

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

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

action.devices.commands.RotateAbsolute

ตั้งค่าการหมุนแบบสัมบูรณ์ของอุปกรณ์

พารามิเตอร์

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

ตั้งค่าการหมุนแบบสัมบูรณ์เป็นองศา

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

ต้องระบุ

ค่าสัมบูรณ์เป็นองศาที่ระบุการหมุนตามเข็มนาฬิกาครั้งสุดท้ายของอุปกรณ์ ค่าต้องอยู่ภายในแอตทริบิวต์ rotationDegreesRange

ตั้งค่าการหมุนสัมบูรณ์เป็นเปอร์เซ็นต์

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

ต้องระบุ

ค่าสัมบูรณ์เป็นเปอร์เซ็นต์ที่ระบุการหมุนสุดท้ายของอุปกรณ์

ตัวอย่าง

เอียงอุปกรณ์เป็น 50 เปอร์เซ็นต์

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationPercent": 50
  }
}

หมุนอุปกรณ์ทวนเข็มนาฬิกา 15 องศา (rotationDegrees: 45)

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 30
  }
}

หมุนอุปกรณ์ตามเข็มนาฬิกา 100 องศา (supportsContinuousRotation: true, rotationDegrees: 270)

{
  "command": "action.devices.commands.RotateAbsolute",
  "params": {
    "rotationDegrees": 10
  }
}

เกิดข้อผิดพลาดขณะตั้งค่าการหมุนของอุปกรณ์

ค่าที่รองรับ

deviceJammingDetected

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

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