स्मार्ट होम रोटेशन ट्रेट का स्कीमा
action.devices.traits.Rotation - यह ट्रेट, रोटेशन की सुविधा वाले डिवाइसों के साथ काम करती है.
रोटेशन को प्रतिशत या डिग्री में तय किया जा सकता है. अगर डिवाइस पर डिग्री के हिसाब से रोटेशन की सुविधा काम करती है, तो रोटेशन की डिफ़ॉल्ट दिशा घड़ी की सुई की दिशा में होती है.
डिवाइस की ATTRIBUTES
इस ट्रेट वाले डिवाइस, SYNC ऑपरेशन के तहत इन एट्रिब्यूट की जानकारी दे सकते हैं. SYNC इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट फ़ुलफ़िलमेंट देखें.
| विशेषताएं | टाइप | ब्यौरा |
|---|---|---|
supportsDegrees |
बूलियन |
ज़रूरी है. अगर डिवाइस को डिग्री के हिसाब से घुमाया जा सकता है, तो इसे सही पर सेट करें. |
supportsPercent |
बूलियन |
ज़रूरी है. अगर डिवाइस, प्रतिशत के हिसाब से रोटेशन की अनुमति देता है, तो इसे सही पर सेट करें |
rotationDegreesRange |
ऑब्जेक्ट |
डिवाइस के घूमने की रेंज को डिग्री में दिखाता है. |
rotationDegreesMin |
Number |
ज़रूरी है. डिग्री में कम से कम रोटेशन. मान |
rotationDegreesMax |
Number |
ज़रूरी है. डिग्री में ज़्यादा से ज़्यादा रोटेशन. मान |
supportsContinuousRotation |
बूलियन |
(डिफ़ॉल्ट: अगर डिवाइस में लगातार रोटेशन की सुविधा है, तो इसे सही पर सेट करें. रिलेटिव क्वेरी दिए जाने पर, |
commandOnlyRotation |
बूलियन |
(डिफ़ॉल्ट: इससे पता चलता है कि डिवाइस पर एकतरफ़ा (सही) या दोनों तरफ़ा (गलत) बातचीत की सुविधा काम करती है या नहीं. अगर डिवाइस, इस विशेषता के लिए QUERY इंटेंट या Report State का जवाब नहीं दे सकता, तो इस एट्रिब्यूट को सही पर सेट करें. |
उदाहरण
ऐसा डिवाइस जिसमें घुमाने की सुविधा प्रतिशत और डिग्री, दोनों में उपलब्ध हो.
{
"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 ऑपरेशन के तहत ये स्थितियां रिपोर्ट कर सकती हैं. QUERY इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट फ़ुलफ़िलमेंट देखें.
| राज्य | टाइप | ब्यौरा |
|---|---|---|
rotationDegrees |
Number |
|
rotationPercent |
Number |
यह मौजूदा लेवल है. इससे पता चलता है कि डिवाइस को फ़िलहाल कितने प्रतिशत घुमाया गया है. 0.0 का मतलब है कि डिवाइस बंद है और 100.0 का मतलब है कि डिवाइस खुला है. मान |
targetRotationPercent |
Number |
रोटेशन का प्रतिशत दिखाने वाला लेवल. इससे पता चलता है कि डिवाइस किस लेवल पर जाएगा या रोटेशन में हो रहे बदलाव की वजह से किस लेवल पर जा रहा है. मान |
उदाहरण
डिवाइस को कितना घुमाया गया है? (प्रतिशत और डिग्री).
{
"rotationDegrees": 45,
"rotationPercent": 25
}डिवाइस को कितना घुमाया गया है? (सिर्फ़ डिग्री).
{
"rotationDegrees": 45
}डिवाइस को कितना घुमाया गया है? (continous).
{
"rotationDegrees": 270,
"rotationPercent": 75
}कोई डिवाइस, फ़िलहाल नई जगह पर घूम रहा है (प्रतिशत).
{
"rotationPercent": 75,
"targetRotationPercent": 100
}डिवाइस के लिए उपलब्ध कमांड
इस सुविधा वाले डिवाइस, EXECUTE ऑपरेशन के तहत इन कमांड का जवाब दे सकते हैं. 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