स्मार्ट होम रोटेशन Trait स्कीमा

action.devices.traits.Rotation - यह trait उन डिवाइसों से जुड़ा है जिनमें रोटेशन की सुविधा काम करती है.

रोटेशन को प्रतिशत या डिग्री में तय किया जा सकता है. अगर डिवाइस पर डिग्री के हिसाब से घुमाव तय किया जा सकता है, तो रोटेशन की डिफ़ॉल्ट दिशा घड़ी की सुई की दिशा में होती है.

डिवाइस ATTRIBUTES

SYNC का इस्तेमाल करते समय, इस सुविधा वाले डिवाइस में ये एट्रिब्यूट रिपोर्ट किए जा सकते हैं. SYNC इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट का फ़ुलफ़िलमेंट देखें.

विशेषताएं टाइप ब्यौरा
supportsDegrees बूलियन

ज़रूरी है.

अगर डिवाइस डिग्री के हिसाब से घूमने की अनुमति देता है, तो 'सही है' पर सेट करें.

supportsPercent बूलियन

ज़रूरी है.

अगर डिवाइस, प्रतिशत के हिसाब से रोटेशन की अनुमति देता है, तो 'सही है' पर सेट करें

rotationDegreesRange ऑब्जेक्ट

उस रेंज को डिग्री में दिखाएं जिस पर डिवाइस घूम सकता है.

rotationDegreesMin Number

ज़रूरी है.

डिग्री में कम से कम रोटेशन.

rotationDegreesMax Number

ज़रूरी है.

डिग्री में ज़्यादा से ज़्यादा घुमाव.

supportsContinuousRotation बूलियन

(डिफ़ॉल्ट: false)

अगर डिवाइस लगातार रोटेशन की अनुमति देता है, तो 'सही' पर सेट करें. जब मिलती-जुलती कोई क्वेरी दी जाती है, तब RotateAbsolute कमांड, उसके साथ काम करने वाली रोटेशन रेंज को रैप करेगा.

commandOnlyRotation बूलियन

(डिफ़ॉल्ट: false)

इससे पता चलता है कि डिवाइस पर एकतरफ़ा (सही) या दो-तरफ़ा (गलत) कम्यूनिकेशन की सुविधा काम करती है या नहीं. अगर डिवाइस, इस Trait के लिए, 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 ऑपरेशन के तहत, इन स्थितियों की रिपोर्ट कर सकती हैं. QUERY इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट का फ़ुलफ़िलमेंट देखें.

राज्य टाइप ब्यौरा
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
}

डिवाइस के COMMANDS

EXECUTE का इस्तेमाल करते समय, इस सुविधा वाले डिवाइस नीचे दिए गए निर्देशों का जवाब दे सकते हैं. EXECUTE इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट का फ़ुलफ़िलमेंट देखें.

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

डिवाइस ERRORS

गड़बड़ियों और अपवादों की पूरी सूची देखें.