SDM API के Trait में फ़ील्ड, कमांड, और इवेंट शामिल होते हैं.
फ़ील्ड
फ़ील्ड, संख्या या स्ट्रिंग जैसे सामान्य डेटा टाइप वाली वैल्यू होती हैं. उदाहरण के लिए, किसी फ़ील्ड में Google Nest Thermostat का मौजूदा मोड या आस-पास की नमी शामिल हो सकती है.
एपीआई के पसंदीदा एंडपॉइंट पर GET कॉल करके, ट्रैट और फ़ील्ड देखे जा सकते हैं:
SDM API से मिले sdm.devices.types.device-type का इस्तेमाल, उस डिवाइस की मुख्य सुविधाओं का पता लगाने या अनुमान लगाने के लिए नहीं किया जाना चाहिए जिसे यह असाइन किया गया है. इस बात की कोई गारंटी नहीं है कि SDM API में और सुविधाएं जोड़ने के बाद, किसी डिवाइस के लिए डिवाइस टाइप स्थिर रहेगा. इसके बजाय, डिवाइस के लिए मिले ट्रैट का इस्तेमाल करें.
parentRelations
parentRelations ऑब्जेक्ट, मौजूदा संसाधन के पैरंट संसाधन को दिखाता है. यह संसाधन, स्ट्रक्चर या कमरा हो सकता है. डिसप्ले नेम, स्ट्रक्चर पैरंट वाले डिवाइसों के लिएInfo ट्रीट के साथ भी मेल खाता है. यहRoomInfo ट्रीट के साथ भी मेल खाता है.
निर्देश
निर्देश किसी Trait से जुड़े अनुरोध होते हैं. उदाहरण के लिए, Google Nest Thermostat पर मौजूदा मोड या
तापमान सेटपॉइंट बदलना.
executeCommand एपीआई कॉल से कोई निर्देश भेजा जाता है:
किसी निर्देश के लिए, ज़्यादातर जवाब 'पूरा हो गया' या 'पूरा नहीं हो सका' होते हैं. किसी खास कमांड के इस्तेमाल के उदाहरणों के लिए,
अलग-अलग ट्रैट की गाइड देखें.
इवेंट
इवेंट असाइनोक्रोनस होते हैं और Google Cloud Pub/Sub के ज़रिए मैनेज किए जाते हैं. हर Project आईडी के लिए, एक ही विषय में इवेंट मैनेज किए जाते हैं.
Trait फ़ील्ड की वैल्यू में बदलाव होने पर, इवेंट डिफ़ॉल्ट रूप से भेजे जाते हैं. इन्हें डिवाइस की किसी खास कार्रवाई या संसाधन के असाइनमेंट में हुए बदलाव के जवाब में भी भेजा जा सकता है. ज़्यादा जानकारी के लिए,
इवेंट
देखें.