สคีมาลักษณะการหมุนของสมาร์ทโฮม
action.devices.traits.Rotation
- ลักษณะนี้เป็นของอุปกรณ์ที่รองรับการหมุน
สามารถระบุการหมุนเป็นเปอร์เซ็นต์หรือองศาได้ และหากอุปกรณ์รองรับการหมุนทีละองศา ทิศทางเริ่มต้นของการหมุนจะเป็นตามเข็มนาฬิกา
แอตทริบิวต์ของอุปกรณ์
อุปกรณ์ที่มีลักษณะนี้อาจรายงานแอตทริบิวต์ต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ SYNC
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent SYNC
ได้ที่Fulfillment ความตั้งใจ
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 }
อุปกรณ์ STATES
เอนทิตีที่มีคุณสมบัตินี้อาจรายงานสถานะต่อไปนี้ซึ่งเป็นส่วนหนึ่งของการดำเนินการ QUERY
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent QUERY
ได้ที่Fulfillment ความตั้งใจ
รัฐ | ประเภท | คำอธิบาย |
---|---|---|
rotationDegrees |
Number |
ระดับปัจจุบันภายใน |
rotationPercent |
Number |
ระดับปัจจุบันซึ่งระบุเปอร์เซ็นต์ที่อุปกรณ์หมุนอยู่ 0.0 แสดงถึงการปิดและ 100.0 เพื่อเปิด |
targetRotationPercent |
Number |
ระดับที่แสดงเปอร์เซ็นต์การหมุนซึ่งเป็นตำแหน่งที่จะอุปกรณ์หรือเคลื่อนที่ไป ซึ่งเป็นผลจากการเปลี่ยนแปลงการหมุนที่ดำเนินอยู่ |
ตัวอย่าง
อุปกรณ์หมุนมากเท่าใด (เปอร์เซ็นต์และองศา)
{ "rotationDegrees": 45, "rotationPercent": 25 }
อุปกรณ์หมุนมากเท่าใด (เฉพาะองศา)
{ "rotationDegrees": 45 }
อุปกรณ์หมุนมากเท่าใด (ต่อเนื่อง)
{ "rotationDegrees": 270, "rotationPercent": 75 }
อุปกรณ์ที่กำลังหมุนไปยังตำแหน่งใหม่ (เปอร์เซ็นต์)
{ "rotationPercent": 75, "targetRotationPercent": 100 }
COMMANDS ของอุปกรณ์
อุปกรณ์ที่มีคุณสมบัตินี้อาจตอบสนองต่อคำสั่งต่อไปนี้โดยเป็นส่วนหนึ่งของการดำเนินการ EXECUTE
ดูข้อมูลเพิ่มเติมเกี่ยวกับการจัดการ Intent EXECUTE
ได้ที่Fulfillment ความตั้งใจ
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