स्मार्ट होम थर्मोस्टैट गाइड
action.devices.types.THERMOSTAT - थर्मोस्टैट, तापमान को मैनेज करने वाले डिवाइस होते हैं. इनमें सेट पॉइंट और मोड होते हैं. इससे ये हीटर और एसी यूनिट से अलग हो जाते हैं. इनमें सिर्फ़ मोड और सेटिंग (जैसे, ज़्यादा/कम) हो सकती हैं, जबकि तापमान का टारगेट नहीं होता.
इस टाइप से पता चलता है कि डिवाइस को थर्मोस्टैट का आइकॉन और इससे जुड़े कुछ समानार्थी शब्द और अन्य नाम मिलते हैं.
इस तरह के डिवाइस, तापमान को कंट्रोल करते हैं. वहीं, हीटिंग/कूलिंग रूम यूनिट में तापमान कंट्रोल करने की सुविधा नहीं होती. हालांकि, इनमें अलग-अलग कंट्रोल और हाई/लो मोड होते हैं.डिवाइस की क्षमताएं
लागू करने से जुड़ी जानकारी के लिए, संबंधित ट्रेट का दस्तावेज़ देखें. जैसे, आपकी सेवा को किन एट्रिब्यूट और स्थितियों के साथ काम करना चाहिए और EXECUTE और QUERY के जवाब कैसे बनाने चाहिए.
ज़रूरी ट्रेट
अगर ये आपके डिवाइस पर लागू होती हैं, तो इन ट्रेट और कमांड का इस्तेमाल करना ज़रूरी है. अगर आपके डिवाइस पर ये सुविधाएं काम नहीं करती हैं, तो QUERY या EXECUTE रिस्पॉन्स में functionNotSupported का गड़बड़ी कोड डालें. ज़्यादा जानकारी के लिए, गड़बड़ियां और अपवाद देखें.
थर्मोस्टैट के लिए दी जाने वाली कमांड को अक्सर EXECUTE इंटेंट में एक साथ इस्तेमाल किया जाता है. *तापमान को 72 डिग्री पर सेट करो* कहने वाले उपयोगकर्ता के लिए, मोड कमांड जनरेट होगी. इसके बाद, तापमान सेट करने की कमांड जनरेट होगी.
डिवाइस का उदाहरण: सामान्य थर्मोस्टैट
इस सेक्शन में, डिवाइस के टाइप और ऊपर दी गई सुविधाओं के आधार पर, "थर्मोस्टैट" के सामान्य उदाहरण वाले इंटेंट पेलोड दिए गए हैं. अगर आपने अपने इंटिग्रेशन में कोई नई विशेषता जोड़ी है या किसी विशेषता को हटाया है, तो उन बदलावों को दिखाने के लिए, अपनी प्रतिक्रियाओं में बदलाव करें.
सिंक के जवाब का उदाहरण
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.THERMOSTAT", "traits": [ "action.devices.traits.TemperatureSetting" ], "name": { "name": "Simple thermostat" }, "willReportState": true, "attributes": { "availableThermostatModes": [ "off", "heat", "cool", "heatcool", "on" ], "thermostatTemperatureRange": { "minThresholdCelsius": 15, "maxThresholdCelsius": 30 }, "thermostatTemperatureUnit": "F" }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
क्वेरी के जवाब का उदाहरण
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "thermostatMode": "cool", "thermostatTemperatureSetpoint": 23, "thermostatTemperatureAmbient": 25.1, "thermostatHumidityAmbient": 45.3 } } } }
EXECUTE कमांड के उदाहरण
ThermostatTemperatureSetpoint
कमांड पैरामीटर के बारे में ज़्यादा जानने के लिए,
action.devices.traits.TemperatureSetting रेफ़रंस देखें.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatTemperatureSetpoint", "params": { "thermostatTemperatureSetpoint": 22 } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "cool", "thermostatTemperatureSetpoint": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }
ThermostatTemperatureSetRange
कमांड पैरामीटर के बारे में ज़्यादा जानने के लिए,
action.devices.traits.TemperatureSetting रेफ़रंस देखें.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatTemperatureSetRange", "params": { "thermostatTemperatureSetpointHigh": 26, "thermostatTemperatureSetpointLow": 22 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "heatcool", "thermostatTemperatureSetpointHigh": 26, "thermostatTemperatureSetpointLow": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }
ThermostatSetMode
कमांड पैरामीटर के बारे में ज़्यादा जानने के लिए,
action.devices.traits.TemperatureSetting रेफ़रंस देखें.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatSetMode", "params": { "thermostatMode": "heatcool" } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "heatcool", "thermostatTemperatureSetpointHigh": 26, "thermostatTemperatureSetpointLow": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }
डिवाइस से जुड़ी गड़बड़ियां
गड़बड़ियों और अपवादों की पूरी सूची देखें.inHeatOrCool- डिवाइस के बहुत ज़्यादा गर्म या ठंडा होने की वजह से, तापमान घटाने/बढ़ाने/रेंज सेट करने के निर्देश पूरे नहीं किए जा सके.inHeatCool- डिवाइस के गर्म या ठंडा होने की वजह से, उसे गर्म या ठंडा करने के निर्देश पूरे नहीं किए जा सके.lockedToRange- डिवाइस को किसी तापमान सीमा या मोड के लिए लॉक किया गया है. इसलिए, तापमान में बदलाव नहीं किया जा सकता.rangeTooClose- हीटकूल रेंज पर तापमान के पॉइंट एक-दूसरे के बहुत करीब हैं.