สคีมาลักษณะการหมุนของสมาร์ทโฮม
action.devices.traits.Rotation - ลักษณะนี้ใช้กับอุปกรณ์ที่รองรับการหมุน
คุณสามารถระบุการหมุนเป็นเปอร์เซ็นต์หรือองศาก็ได้ และหากอุปกรณ์รองรับการหมุนเป็นองศา ทิศทางการหมุนเริ่มต้นจะเป็นตามเข็มนาฬิกา
แอตทริบิวต์อุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจรายงานแอตทริบิวต์ต่อไปนี้เป็นส่วนหนึ่งของการดำเนินการ SYNC ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent SYNC ได้ที่การดำเนินการตาม Intent
| Attributes | ประเภท | คำอธิบาย | 
|---|---|---|
| supportsDegrees | บูลีน | ต้องระบุ ตั้งค่าเป็น "จริง" หากอุปกรณ์อนุญาตให้หมุนตามองศา | 
| supportsPercent | บูลีน | ต้องระบุ ตั้งค่าเป็น "จริง" หากอุปกรณ์อนุญาตให้หมุนตามเปอร์เซ็นต์ | 
| rotationDegreesRange | ออบเจ็กต์ | แสดงช่วงเป็นองศาที่อุปกรณ์หมุนได้ | 
| rotationDegreesMin | Number | ต้องระบุ การหมุนขั้นต่ำเป็นองศา | 
| rotationDegreesMax | Number | ต้องระบุ การหมุนสูงสุดเป็นองศา | 
| supportsContinuousRotation | บูลีน | (ค่าเริ่มต้น:  ตั้งค่าเป็น "จริง" หากอุปกรณ์อนุญาตให้หมุนต่อเนื่อง เมื่อได้รับคําค้นหาแบบสัมพัทธ์ คำสั่ง  | 
| commandOnlyRotation | บูลีน | (ค่าเริ่มต้น:  ระบุว่าอุปกรณ์รองรับการสื่อสารแบบทางเดียว (จริง) หรือแบบ 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 | ระดับปัจจุบันภายใน  | 
| 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 | ต้องระบุ ค่าสัมบูรณ์เป็นองศาที่ระบุการหมุนตามเข็มนาฬิกาครั้งสุดท้ายของอุปกรณ์ ค่าต้องอยู่ภายในแอตทริบิวต์  | 
ตั้งค่าการหมุนสัมบูรณ์เป็นเปอร์เซ็นต์
| พารามิเตอร์ | ประเภท | คำอธิบาย | 
|---|---|---|
| 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