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