स्मार्ट होम मोड की खासियत का स्कीमा

action.devices.traits.Modes - इस ट्रेट में, किसी डिवाइस के लिए उपलब्ध सभी मोड और मोड के हिसाब से सेटिंग शामिल होती हैं.

यह ट्रेट उन डिवाइसों के लिए है जिनमें "n-way" मोड की संख्या तय नहीं होती. इनमें हर मोड के लिए अलग-अलग सेटिंग होती हैं. ये सेटिंग, हर डिवाइस या डिवाइस टाइप के लिए अलग-अलग होती हैं. हर मोड के लिए कई सेटिंग उपलब्ध होती हैं, लेकिन एक बार में सिर्फ़ एक सेटिंग चुनी जा सकती है. ड्रायर को एक साथ "नाजुक," "सामान्य," और "ज़्यादा देर तक चलने वाला" मोड में नहीं रखा जा सकता. ऐसी सेटिंग जिसे सिर्फ़ चालू या बंद किया जा सकता है, उसे Toggles ट्रेट में शामिल किया जाता है.

उदाहरण के लिए, वॉशिंग मशीन में लोड साइज़ और तापमान की सेटिंग हो सकती हैं. ये दोनों मोड होंगे, क्योंकि ये एक-दूसरे से अलग हैं. हालांकि, हर मोड एक समय में सिर्फ़ एक स्थिति में हो सकता है. उपयोगकर्ता, तापमान जैसे मोड को साफ़ तौर पर सेट कर सकता है. इसके लिए, उसे वॉशर का तापमान ठंडा पर सेट करो जैसे कमांड का इस्तेमाल करना होगा.

कुछ मोड "क्रम से" होते हैं. इन्हें ऊपर/नीचे, बढ़ाएं/घटाएं शब्दों का इस्तेमाल करके भी अडजस्ट किया जा सकता है. उदाहरण के लिए, लोड का साइज़ (छोटा, मीडियम, बड़ा) और तापमान साफ़ तौर पर क्रम में होता है. ध्यान दें कि तापमान, अन्य डिवाइसों की तरह संख्यात्मक टारगेट वाला थर्मास्टैट नहीं होता. हालांकि, लोड का टाइप (नाजुक, सामान्य, ऊनी वगैरह) क्रम में नहीं हो सकता.

इस ट्रेट में एक या उससे ज़्यादा ऐसे मोड शामिल होते हैं जिन्हें उपयोगकर्ता सेट कर सकते हैं. आम तौर पर, इन मोड का इस्तेमाल उन फ़ंक्शन के लिए किया जाना चाहिए जो डिवाइस के अन्य व्यवहार से लिंक नहीं होते हैं. लिंक किए गए डिवाइस के व्यवहार, जैसे कि डिवाइस को चालू या बंद करने के लिए, ज़्यादा खास ट्रेट का इस्तेमाल किया जाना चाहिए. उदाहरण के लिए, ट्रेट TemperatureSetting में thermostatMode.

डिवाइस की ATTRIBUTES

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

विशेषताएं टाइप ब्यौरा
availableModes ऐरे

ज़रूरी है.

उपलब्ध मोड की सूची.

[item, ...] ऑब्जेक्ट

उपलब्ध मोड.

name String

ज़रूरी है.

मोड का इंटरनल नाम. इसका इस्तेमाल कमांड और स्थितियों में किया जाएगा. यह उपयोगकर्ता के लिए मददगार नहीं हो सकता. साथ ही, इसे सभी भाषाओं में शेयर किया जाएगा.

name_values ऐरे

ज़रूरी है.

इस मोड के समानार्थी शब्द, हर उस भाषा में उपलब्ध हैं जिसमें यह मोड काम करता है.

[item, ...] ऑब्जेक्ट

किसी भाषा में मोड के समानार्थी शब्द. भाषा फ़ॉलबैक की सुविधा देने के लिए, कम से कम एक ऐसा आइटम होना चाहिए जिसकी lang वैल्यू en हो.

name_synonym ऐरे

ज़रूरी है.

मोड के समानार्थी शब्द. इस सूची में मौजूद पहली स्ट्रिंग का इस्तेमाल, उस भाषा में लेवल के कैननिकल नाम के तौर पर किया जाता है.

[item, ...] String

समानार्थी शब्द का नाम. भाषा फ़ॉलबैक की सुविधा देने के लिए, कम से कम एक ऐसा आइटम होना चाहिए जिसकी lang वैल्यू en हो.

lang String

ज़रूरी है.

भाषा कोड (ISO 639-1). यह सुविधा देने वाली भाषाएं देखें.

settings ऐरे

ज़रूरी है.

इस मोड के लिए उपलब्ध सेटिंग.

[item, ...] ऑब्जेक्ट

यह सेटिंग काम करती है.

इसमें कम से कम दो आइटम होने चाहिए.

setting_name String

ज़रूरी है.

मोड सेटिंग का इंटरनल नाम. इसका इस्तेमाल कमांड और स्टेटस में किया जाएगा. यह उपयोगकर्ता के लिए मददगार नहीं हो सकता. साथ ही, इसे सभी भाषाओं में शेयर किया जाएगा.

setting_values ऐरे

ज़रूरी है.

सेटिंग के लिए, इस्तेमाल की जा सकने वाली हर भाषा में मिलते-जुलते शब्द.

[item, ...] ऑब्जेक्ट

किसी भाषा में सेटिंग के समानार्थी शब्द.

setting_synonym ऐरे

ज़रूरी है.

सेटिंग के समानार्थी शब्द. इस सूची में मौजूद पहली स्ट्रिंग का इस्तेमाल, उस भाषा में लेवल के कैननिकल नाम के तौर पर किया जाता है.

[item, ...] String

समानार्थी शब्द का नाम.

lang String

ज़रूरी है.

भाषा कोड (ISO 639-1). यह सुविधा देने वाली भाषाएं देखें.

ordered बूलियन

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

अगर इस विकल्प को 'सही है' पर सेट किया जाता है, तो सेटिंग के ऐरे के क्रम (बढ़ते हुए) में, बढ़ोतरी/कमी के लॉजिक के लिए अतिरिक्त व्याकरण लागू होगा.

commandOnlyModes बूलियन

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

इससे पता चलता है कि डिवाइस पर एकतरफ़ा (सही) या दोनों तरफ़ा (गलत) बातचीत की सुविधा काम करती है या नहीं. अगर डिवाइस इस विशेषता के लिए, QUERY इंटेंट या Report State का जवाब नहीं दे सकता, तो इस एट्रिब्यूट को सही पर सेट करें.

queryOnlyModes बूलियन

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

अगर डिवाइस पर सिर्फ़ क्वेरी चलाने की सुविधा काम करती है, तो यह ज़रूरी है. इस एट्रिब्यूट से पता चलता है कि डिवाइस को सिर्फ़ उसकी स्थिति के बारे में जानकारी पाने के लिए क्वेरी किया जा सकता है. उसे कंट्रोल नहीं किया जा सकता.

उदाहरण

एक से ज़्यादा मोड और सेटिंग वाला डिवाइस.

{
  "availableModes": [
    {
      "name": "load_mode",
      "name_values": [
        {
          "name_synonym": [
            "Load",
            "Size",
            "Load size"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "small_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Small",
                "Half"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "medium_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Medium",
                "Normal"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "large_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Large",
                "Full"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": true
    },
    {
      "name": "temp_mode",
      "name_values": [
        {
          "name_synonym": [
            "Temperature",
            "Temp"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "hot_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Hot",
                "White"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "warm_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Warm",
                "Color"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "cold_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Cold",
                "Delicate"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ]
}

सिर्फ़ निर्देश देने की सुविधा वाले डिवाइस.

{
  "availableModes": [
    {
      "name": "light_mode",
      "name_values": [
        {
          "name_synonym": [
            "Light",
            "Lighting"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "day_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Day",
                "Bright"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "night_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Night",
                "Dark"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "reading_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Reading",
                "Ambiant"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ],
  "commandOnlyModes": true,
  "queryOnlyModes": false
}

डिवाइस की स्थितियां

इस ट्रेट वाली इकाइयां, QUERY ऑपरेशन के तहत ये स्थितियां रिपोर्ट कर सकती हैं. QUERY इंटेंट को मैनेज करने के बारे में ज़्यादा जानने के लिए, इंटेंट फ़ुलफ़िलमेंट देखें.

राज्य टाइप ब्यौरा
currentModeSettings ऑब्जेक्ट

ज़रूरी है.

की/वैल्यू पेयर में, डिवाइस के मोड name को कुंजी के तौर पर और मौजूदा setting_name को वैल्यू के तौर पर इस्तेमाल किया जाता है.

<string> String

मौजूदा setting_name

उदाहरण

डिवाइस किस मोड में है?

{
  "currentModeSettings": {
    "load_mode": "small_load",
    "temp_mode": "cold_temp"
  }
}

डिवाइस के लिए उपलब्ध COMMANDS

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

action.devices.commands.SetModes

मोड की सेटिंग अपडेट करें.

पैरामीटर

पैरामीटर टाइप ब्यौरा
updateModeSettings ऑब्जेक्ट

ज़रूरी है.

की/वैल्यू पेयर में, डिवाइस के मोड name को कुंजी के तौर पर और नए setting_name को वैल्यू के तौर पर इस्तेमाल किया जाता है.

<string> String

नई setting_name.

उदाहरण

वॉशिंग मशीन के लोड साइज़ को ज़्यादा पर सेट कर रही हूँ.

{
  "command": "action.devices.commands.SetModes",
  "params": {
    "updateModeSettings": {
      "load_mode": "large_load"
    }
  }
}

सैंपल अटरेंस

de-DE

  • Stelle den Staubsauger auf Ruhemodus

en-US

  • set the vacuum to energy saver mode

es-ES

  • pon la lavadora en modo frío

fr-FR

  • mets l'aspirateur en silencieux

hi-IN

  • वैक्यूम पर कार्पेट मोड लगाएं

it-IT

  • imposta l'aspirapolvere su silenzioso

ja-JP

  • 掃除機 静音 モードに設定して

ko-KR

  • 세탁기 세탁량 많음 으로 설정해

pt-BR

  • acionar a função autolimpeza do aspirador
  • ligar o modo de aquecimento

डिवाइस से जुड़ी गड़बड़ियां

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