সমস্ত Google Nest Thermostat মডেল স্মার্ট ডিভাইস ম্যানেজমেন্ট (SDM) API-এ সমর্থিত। এই ডিভাইসগুলি থার্মোস্ট্যাট ডিভাইসের ধরন প্রদান করে:
sdm.devices.types.THERMOSTAT
বৈশিষ্ট্য
রেফারেন্স
নিম্নলিখিত বৈশিষ্ট্য, আদেশ বা ঘটনা এই গ্রুপের সাথে সম্পর্কিত:
বৈশিষ্ট্য | বর্ণনা | কমান্ড |
---|---|---|
সংযোগ | এই বৈশিষ্ট্যটি যেকোন ডিভাইসের অন্তর্গত যা সংযোগের তথ্য রয়েছে৷ | |
পাখা | এই বৈশিষ্ট্যটি যে কোনও ডিভাইসের অন্তর্গত যার ফ্যান নিয়ন্ত্রণ করার সিস্টেম ক্ষমতা রয়েছে। | সেটটাইমার |
আর্দ্রতা | এই বৈশিষ্ট্যটি আর্দ্রতা পরিমাপ করার জন্য একটি সেন্সর আছে এমন যেকোনো ডিভাইসের অন্তর্গত। | |
তথ্য | ডিভাইস-সম্পর্কিত তথ্যের জন্য এই বৈশিষ্ট্যটি যেকোনো ডিভাইসের অন্তর্গত। | |
সেটিংস | ডিভাইস-সম্পর্কিত সেটিংস তথ্যের জন্য এই বৈশিষ্ট্যটি যেকোনো ডিভাইসের অন্তর্গত। | |
তাপমাত্রা | এই বৈশিষ্ট্যটি যে কোনও ডিভাইসের অন্তর্গত যার তাপমাত্রা পরিমাপ করার জন্য একটি সেন্সর রয়েছে। | |
থার্মোস্টেট ইকো | এই বৈশিষ্ট্যটি ইকো মোড সমর্থন করে এমন থার্মোস্ট্যাট ধরনের ডিভাইসের অন্তর্গত। | সেটমোড |
থার্মোস্ট্যাট | এই বৈশিষ্ট্যটি থার্মোস্ট্যাটের ধরনের ডিভাইসের অন্তর্গত যা HVAC বিবরণ রিপোর্ট করতে পারে। | |
থার্মোস্ট্যাট মোড | এই বৈশিষ্ট্যটি বিভিন্ন থার্মোস্ট্যাট মোড সমর্থন করে এমন থার্মোস্ট্যাটের ডিভাইসের অন্তর্গত। | সেটমোড |
থার্মোস্ট্যাট তাপমাত্রা সেটপয়েন্ট | এই বৈশিষ্ট্যটি থার্মোস্ট্যাটের ডিভাইসের অন্তর্গত যা লক্ষ্য তাপমাত্রা এবং তাপমাত্রা পরিসীমা নির্ধারণ করতে সহায়তা করে। | সেট হিট সেটকুল সেট রেঞ্জ |
JSON
একটি GET প্রতিক্রিয়াতে একটি বৈশিষ্ট্যের অনুপস্থিতি নির্দেশ করে যে বৈশিষ্ট্য বা বৈশিষ্ট্যটি বর্তমানে ডিভাইসের জন্য উপলব্ধ নয়৷ আরও তথ্যের জন্য ডিভাইসের ধরন দেখুন।
{ "type" : "sdm.devices.types.THERMOSTAT", "traits" : { "sdm.devices.traits.Connectivity" : { "status" : "ONLINE" }, "sdm.devices.traits.Fan" : { "timerMode" : "ON", "timerTimeout" : "2019-05-10T03:22:54Z" }, "sdm.devices.traits.Humidity" : { "ambientHumidityPercent" : 35.0 }, "sdm.devices.traits.Info" : { "customName" : "My device" }, "sdm.devices.traits.Settings" : { "temperatureScale" : "CELSIUS" }, "sdm.devices.traits.Temperature" : { "ambientTemperatureCelsius" : 23.0 }, "sdm.devices.traits.ThermostatEco" : { "availableModes" : ["MANUAL_ECO", "OFF"], "mode" : "MANUAL_ECO", "heatCelsius" : 20.0, "coolCelsius" : 22.0 }, "sdm.devices.traits.ThermostatHvac" : { "status" : "HEATING" }, "sdm.devices.traits.ThermostatMode" : { "availableModes" : ["HEAT", "COOL", "HEATCOOL", "OFF"], "mode" : "COOL" }, "sdm.devices.traits.ThermostatTemperatureSetpoint" : { "heatCelsius" : 20.0, "coolCelsius" : 22.0 } } }
তাপমাত্রা এবং আর্দ্রতা
থার্মোস্ট্যাটের পরিবেষ্টিত তাপমাত্রা পড়তে, ব্যবহার করুনতাপমাত্রা বৈশিষ্ট্য পরিবেষ্টিত তাপমাত্রা ডিভাইসে পরিমাপ করা হয়।
থার্মোস্ট্যাটের পরিবেষ্টিত আর্দ্রতা পড়তে, ব্যবহার করুনআর্দ্রতা বৈশিষ্ট্য পরিবেষ্টিত আর্দ্রতা ডিভাইসে পরিমাপ করা হয়।
তাপমাত্রা স্কেল
Google নেস্ট থার্মোস্ট্যাট ডিগ্রী সেলসিয়াস বা ফারেনহাইটে তাপমাত্রা প্রদর্শন করতে পারে, কিন্তু SDM API দ্বারা স্কেল সেট করা যায় না। বর্তমানে ব্যবহারকারী দ্বারা সেট করা তাপমাত্রার স্কেল নির্ধারণ করতে, ব্যবহার করুনসেটিংস বৈশিষ্ট্য
মোড পরিবর্তন করুন
থার্মোস্ট্যাটের মোড দুটি ভিন্ন বৈশিষ্ট্য দ্বারা পরিচালিত হয়:থার্মোস্ট্যাট মোড এবংথার্মোস্টেট ইকো.
স্ট্যান্ডার্ড মোড
থার্মোস্ট্যাট মোডকে HEAT, COOL বা HEATCOOL-এ পরিবর্তন করতে, থার্মোস্ট্যাটমোড বৈশিষ্ট্যের সেটমোড কমান্ড ব্যবহার করুন।
এই কমান্ডটি থার্মোস্ট্যাটের মোড বন্ধ করতেও ব্যবহার করা যেতে পারে। এটি ইকো মোড চালু করতে ব্যবহার করা যাবে না।উদাহরণস্বরূপ, স্ট্যান্ডার্ড থার্মোস্ট্যাট মোডগুলির একটি পরিবর্তন করতে:
অনুরোধ
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatMode.SetMode
",
"params" : {
"mode" : "HEAT"
}
}
প্রতিক্রিয়া
{}
ইকো মোড
ইকো মোড চালু করতে, ThermostatEco বৈশিষ্ট্যের SetMode কমান্ডের সাথে মোড হিসাবে MANUAL_ECO ব্যবহার করুন:
অনুরোধ
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatEco.SetMode
",
"params" : {
"mode" : "MANUAL_ECO"
}
}
প্রতিক্রিয়া
{}
এই কমান্ডটি ইকো মোডের বর্তমান অবস্থা বা পরিবর্তনের উপর ভিত্তি করে অন্যান্য বৈশিষ্ট্যকে প্রভাবিত করে:
- ইকো মোড বন্ধ থাকলে, থার্মোস্ট্যাট মোডটি শেষ স্ট্যান্ডার্ড মোডে (হিট, কুল, হিটকুল, বা অফ) ডিফল্ট হবে যা সক্রিয় ছিল।
- যদি ইকো মোড MANUAL_ECO হয়:
- জন্য কমান্ড থার্মোস্ট্যাট তাপমাত্রা সেটপয়েন্ট বৈশিষ্ট্য প্রত্যাখ্যাত হয়।
- তাপমাত্রা সেটপয়েন্ট দ্বারা ফেরত দেওয়া হয় না থার্মোস্ট্যাট তাপমাত্রা সেটপয়েন্ট বৈশিষ্ট্য
তাপমাত্রা সেটপয়েন্ট পরিবর্তন করুন
তাপমাত্রা সেটপয়েন্ট শুধুমাত্র তখনই পরিবর্তন করা যেতে পারে যখন থার্মোস্ট্যাট HEAT, COOL, বা HEATCOOL মোডে থাকে এবং অনুমোদিত সেটপয়েন্টগুলি থার্মোস্ট্যাটের বর্তমান মোডের সাথে মিলে যায়। যখন মোড বন্ধ থাকে বা ইকো মোড MANUAL_ECO তে সেট করা থাকে তখন তাপমাত্রা সেটপয়েন্ট পরিবর্তন করা যায় না৷
থার্মোস্ট্যাটটি অবশ্যই এমন মোডে থাকতে হবে যা তাপমাত্রা সেটপয়েন্ট পরিবর্তন করার আগে বলা কমান্ডের সাথে মিলে যায়। সেটপয়েন্ট(গুলি) পরিবর্তন করার জন্য কমান্ড এবং ক্ষেত্র(গুলি) তাপস্থাপক মোড দ্বারা পরিবর্তিত হয়৷
উদাহরণস্বরূপ, SetHeat কমান্ড ইস্যু করতে, থার্মোস্ট্যাটটি প্রথমে HEAT মোডে থাকতে হবে:
মোড | আদেশ | ক্ষেত্র(গুলি) |
---|---|---|
তাপ | সেট হিট | heatCelsius |
শীতল | সেটকুল | coolCelsius |
হিটকুল | সেট রেঞ্জ | heatCelsius , coolCelsius |
নোট করুন যে সেটপয়েন্ট কমান্ডগুলি শুধুমাত্র প্যারামিটার হিসাবে সেলসিয়াসে ডিগ্রি নেয়, যদিও Google নেস্ট থার্মোস্ট্যাট ডিগ্রি সেলসিয়াস বা ফারেনহাইটে তাপমাত্রা প্রদর্শন করতে পারে।
উদাহরণস্বরূপ, থার্মোস্ট্যাট হিট মোডে থাকাকালীন তাপমাত্রা সেটপয়েন্ট পরিবর্তন করতে, থার্মোস্ট্যাট টেম্পারচারসেটপয়েন্ট বৈশিষ্ট্যের সেটহিট কমান্ডটি ব্যবহার করুন:
অনুরোধ
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat
",
"params" : {
"heatCelsius" : 22.0
}
}
প্রতিক্রিয়া
{}
ইকো মোড সেটপয়েন্ট
ThermostatEco বৈশিষ্ট্য দ্বারা প্রত্যাবর্তিত heatCelsius
এবং coolCelsius
সেটপয়েন্টগুলি ব্যবহারকারী দ্বারা সেট করা হয় এবং SDM API এর মাধ্যমে পরিবর্তন করা যায় না৷
ফ্যান চালু বা বন্ধ করুন
যদি থার্মোস্ট্যাট একটি ফ্যানকে সমর্থন করে, তাহলে এটি চালু বা বন্ধ করতে ফ্যান বৈশিষ্ট্যের সেটটাইমার কমান্ডটি ব্যবহার করুন। চালু করার সময়, আপনি কতক্ষণ ফ্যান চালাতে চান তা সেকেন্ডে নির্দিষ্ট করতে পারেন।
উদাহরণস্বরূপ, এক ঘন্টার জন্য ফ্যান চালানোর জন্য:
অনুরোধ
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.Fan.SetTimer
",
"params" : {
"timerMode" : "ON",
"duration" : "3600s"
}
}
প্রতিক্রিয়া
{}
যদি duration
ক্ষেত্রটি বাদ দেওয়া হয়, তবে ফ্যানটি 15 মিনিটের ডিফল্ট সময়ের জন্য চলবে।
ডিভাইস সংযোগ পরীক্ষা করুন
যদি ডিভাইসটি আদেশে সাড়া না দেয় বা ইভেন্ট পাঠায়, বা আপনি ডিভাইস সম্পর্কিত API থেকে ত্রুটি পান, তাহলে ব্যবহার করুনসংযোগ একটি অফলাইন অবস্থার জন্য ডিভাইসের সংযোগ পরীক্ষা করার বৈশিষ্ট্য। ডিভাইসের ইন্টারনেট সংযোগ পরীক্ষা করুন এবং নিশ্চিত করুন যে Nest পরিষেবা চালু আছে।
আপনি যদি ইভেন্টগুলি সক্ষম করে থাকেন, তাহলে ডিভাইসটি অফলাইনে চলে গেছে তা নির্দেশ করে আপনি একটি সংস্থান ইভেন্টও পেয়েছেন:
পেলোড
{
"eventId" : "366dcbfb-2b0d-4c8c-9ad9-2ff7434f1dc7",
"timestamp" : "2019-01-01T00:00:01Z",
"resourceUpdate" : {
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.Connectivity
" : {
"status" : "OFFLINE"
}
}
},
"userId": "AVPHwEuBfnPOnTqzVFT4IONX2Qqhu9EJ4ubO-bNnQ-yi",
"resourceGroup" : [
"enterprises/project-id/devices/device-id"
]
}
ডিভাইস ইভেন্টে প্রতিক্রিয়া
একটি বৈশিষ্ট্য ক্ষেত্রের যেকোনো পরিবর্তন একটি ইভেন্ট তৈরি করে। যেমন, থার্মোস্ট্যাটের HVAC স্ট্যাটাস হিটিং-এ পরিবর্তিত হলে আপনি নিম্নলিখিত resourceUpdate
ইভেন্ট পাবেন:
পেলোড
{
"eventId" : "1e9d0340-7543-4a6f-b498-7c12a77f0b27",
"timestamp" : "2019-01-01T00:00:01Z",
"resourceUpdate" : {
"name" : "enterprises/project-id/devices/device-id",
"traits" : {
"sdm.devices.traits.ThermostatHvac
" : {
"status" : "HEATING"
}
}
},
"userId": "AVPHwEuBfnPOnTqzVFT4IONX2Qqhu9EJ4ubO-bNnQ-yi",
"resourceGroup" : [
"enterprises/project-id/devices/device-id"
]
}
এই ডিভাইসের প্রকারের সাথে যুক্ত সমস্ত বৈশিষ্ট্যের জন্য ইভেন্টগুলি ট্রিগার করা হয়৷ একটি ইন্টিগ্রেশনের অংশ হিসাবে আপনার যদি কোনো উপায়ে ইভেন্টগুলিতে প্রতিক্রিয়া জানাতে হয় তবে ইভেন্টগুলি সক্ষম করুন ৷
ইভেন্টের সময়
মনে রাখবেন যে HVAC স্থিতি পরিবর্তনের জন্য একটি ইভেন্ট থার্মোস্ট্যাট মোড পরিবর্তনের ইভেন্টের সাথে একই সময়ে বিতরণ করা নাও হতে পারে।
উদাহরণস্বরূপ, কখনও কখনও HVAC সিস্টেমকে সুরক্ষিত করার জন্য থার্মোস্ট্যাটের হিটিং বা কুলিং মোড শুরু করতে বিলম্ব হয়। এই পরিস্থিতিতে, থার্মোস্ট্যাট মোড পরিবর্তন করলে শুধুমাত্র প্রাথমিকভাবে ইভেন্ট পাঠানো হতে পারে থার্মোস্ট্যাট মোড এবং থার্মোস্ট্যাট তাপমাত্রা সেটপয়েন্ট বৈশিষ্ট্য পরিবর্তন, সঙ্গে থার্মোস্ট্যাট সিস্টেম আসলে চালু হয়ে গেলে বৈশিষ্ট্য পরিবর্তন একটি পৃথক ইভেন্ট হিসাবে পরে পাঠানো হয়। HVAC সিস্টেম চালু করতে কোনো বিলম্ব না হলে, তিনটি ইভেন্ট একই সময়ে পাঠানো হবে।
ত্রুটি
এই ডিভাইসের ক্ষেত্রে নিম্নলিখিত ত্রুটি কোড(গুলি) ফেরত দেওয়া হতে পারে:
ত্রুটি বার্তা | আরপিসি | সমস্যা সমাধান |
---|---|---|
শীতল মান তাপ মান থেকে বেশি হতে হবে। | INVALID_ARGUMENT | নিশ্চিত করুন যে heatCelsius ক্ষেত্রটি আপনার কমান্ডের coolCelsius ক্ষেত্রের চেয়ে কম। |
বর্তমান থার্মোস্ট্যাট মোডে কমান্ড অনুমোদিত নয়৷ | FAILED_PRECONDITION | কিছু থার্মোস্ট্যাট মডেল ইকো মোড পরিবর্তন করা সমর্থন করে না যখন থার্মোস্ট্যাট মোড বন্ধ থাকে, থার্মোস্ট্যাট মোড বৈশিষ্ট্য ইকো মোড পরিবর্তন করার আগে তাপস্থাপক মোড অবশ্যই HEAT, COOL, বা HEATCOOL-এ পরিবর্তন করতে হবে৷ |
থার্মোস্ট্যাট ফ্যান অনুপলব্ধ৷ | FAILED_PRECONDITION | থার্মোস্ট্যাটে ফ্যানের ক্ষমতা নেই। এই ডিভাইসের জন্য ফ্যান-সম্পর্কিত বৈশিষ্ট্য এবং কমান্ড ব্যবহার করা যাবে না। |
MANUAL_ECO মোডে থার্মোস্ট্যাট থাকলে কমান্ড অনুমোদিত নয়৷ | FAILED_PRECONDITION | থার্মোস্ট্যাট ম্যানুয়াল ইকো মোডে থাকলে তাপমাত্রা সেটপয়েন্ট সেট করা যায় না। |
API ত্রুটি কোডের সম্পূর্ণ তালিকার জন্য API ত্রুটি কোড রেফারেন্স দেখুন।