
সমস্ত গুগল নেস্ট থার্মোস্ট্যাট মডেল স্মার্ট ডিভাইস ম্যানেজমেন্ট (এসডিএম) এপিআই-তে সমর্থিত। এই ডিভাইসগুলো থার্মোস্ট্যাট ডিভাইস টাইপটি রিটার্ন করে:
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
}
}
}তাপমাত্রা এবং আর্দ্রতা
থার্মোস্ট্যাটের পারিপার্শ্বিক তাপমাত্রা পড়তে, ব্যবহার করুনতাপমাত্রা বৈশিষ্ট্য। ডিভাইসটিতে পারিপার্শ্বিক তাপমাত্রা পরিমাপ করা হয়।
থার্মোস্ট্যাটের পারিপার্শ্বিক আর্দ্রতা পড়তে, ব্যবহার করুনআর্দ্রতা বৈশিষ্ট্য। ডিভাইসটিতে পারিপার্শ্বিক আর্দ্রতা পরিমাপ করা হয়।
তাপমাত্রা স্কেল
গুগল নেস্ট থার্মোস্ট্যাট সেলসিয়াস বা ফারেনহাইট উভয় এককেই তাপমাত্রা প্রদর্শন করতে পারে, কিন্তু SDM API ব্যবহার করে স্কেলটি সেট করা যায় না। ব্যবহারকারী বর্তমানে কোন তাপমাত্রা স্কেল সেট করেছেন তা জানতে, ব্যবহার করুনসেটিংস বৈশিষ্ট্য।
মোড পরিবর্তন করুন
থার্মোস্ট্যাটের মোড দুটি ভিন্ন বৈশিষ্ট্য দ্বারা নিয়ন্ত্রিত হয়:থার্মোস্ট্যাট মোড এবংথার্মোস্ট্যাটইকো.
স্ট্যান্ডার্ড মোড
থার্মোস্ট্যাট মোডকে HEAT, COOL বা HEATCOOL-এ পরিবর্তন করতে, ThermostatMode ট্রেইটের SetMode কমান্ডটি ব্যবহার করুন।
এই কমান্ডটি থার্মোস্ট্যাটের মোড বন্ধ করতেও ব্যবহার করা যায়। এটি ইকো মোড চালু করতে ব্যবহার করা যায় না।উদাহরণস্বরূপ, স্ট্যান্ডার্ড থার্মোস্ট্যাট মোডগুলির মধ্যে একটি পরিবর্তন করতে:
অনুরোধ
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 মোডে থাকলেই তাপমাত্রার সেটপয়েন্ট পরিবর্তন করা যায় এবং অনুমোদিত সেটপয়েন্টগুলো থার্মোস্ট্যাটের বর্তমান মোডের সাথে সামঞ্জস্যপূর্ণ থাকে। মোডটি OFF থাকলে বা ইকো মোড MANUAL_ECO-তে সেট করা থাকলে তাপমাত্রার সেটপয়েন্ট পরিবর্তন করা যায় না।
তাপমাত্রার সেটপয়েন্ট পরিবর্তন করার আগে থার্মোস্ট্যাটটিকে অবশ্যই ব্যবহৃত কমান্ডের সাথে সঙ্গতিপূর্ণ মোডে থাকতে হবে। সেটপয়েন্ট পরিবর্তন করার জন্য কমান্ড এবং ফিল্ড থার্মোস্ট্যাট মোড অনুযায়ী ভিন্ন হয়।
উদাহরণস্বরূপ, SetHeat কমান্ডটি জারি করতে হলে, থার্মোস্ট্যাটটিকে প্রথমে HEAT মোডে থাকতে হবে:
| মোড | আদেশ | ক্ষেত্র(গুলি) |
|---|---|---|
| তাপ | সেটহিট | heatCelsius |
| শীতল | সেটকুল | coolCelsius |
| হিটকুল | সেটরেঞ্জ | heatCelsius , coolCelsius |
উল্লেখ্য যে, সেটপয়েন্ট কমান্ডগুলো প্যারামিটার হিসেবে শুধুমাত্র সেলসিয়াস ডিগ্রি গ্রহণ করে, যদিও গুগল নেস্ট থার্মোস্ট্যাট সেলসিয়াস বা ফারেনহাইট উভয় ডিগ্রিতেই তাপমাত্রা প্রদর্শন করতে পারে।
উদাহরণস্বরূপ, থার্মোস্ট্যাট HEAT মোডে থাকা অবস্থায় তাপমাত্রার সেটপয়েন্ট পরিবর্তন করতে, ThermostatTemperatureSetpoint ট্রেইটের SetHeat কমান্ডটি ব্যবহার করুন:
অনুরোধ
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat",
"params" : {
"heatCelsius" : 22.0
}
}
প্রতিক্রিয়া
{}
ইকো মোড সেটপয়েন্ট
ThermostatEco ট্রেইট দ্বারা প্রত্যাবর্তিত heatCelsius এবং coolCelsius সেটপয়েন্টগুলি ব্যবহারকারী দ্বারা সেট করা হয় এবং SDM API-এর মাধ্যমে পরিবর্তন করা যায় না।
ফ্যানটি চালু বা বন্ধ করুন
যদি থার্মোস্ট্যাটে ফ্যান ব্যবহারের সুবিধা থাকে, তবে ফ্যানটি চালু বা বন্ধ করতে Fan ট্রেইটের SetTimer কমান্ডটি ব্যবহার করুন। চালু করার সময়, আপনি ফ্যানটি কতক্ষণ চালাতে চান, তা সেকেন্ডে নির্দিষ্ট করে দিতে পারেন।
উদাহরণস্বরূপ, ফ্যানটি এক ঘণ্টা চালানোর জন্য:
অনুরোধ
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.Fan.SetTimer",
"params" : {
"timerMode" : "ON",
"duration" : "3600s"
}
}
প্রতিক্রিয়া
{}
duration ক্ষেত্রটি পূরণ না করা হলে, ফ্যানটি পূর্বনির্ধারিত ১৫ মিনিটের জন্য চলবে।
ডিভাইসের সংযোগ পরীক্ষা করুন
যদি ডিভাইসটি কমান্ডে সাড়া না দেয় বা ইভেন্ট না পাঠায়, অথবা আপনি ডিভাইস-সম্পর্কিত API থেকে কোনো ত্রুটি পান, তাহলে ব্যবহার করুনসংযোগ ডিভাইসটি অফলাইন আছে কিনা তা পরীক্ষা করার জন্য এর কানেক্টিভিটি চেক করুন। ডিভাইসটির ইন্টারনেট সংযোগ পরীক্ষা করুন এবং নিশ্চিত করুন যে নেস্ট সার্ভিসটি চালু আছে।
আপনার ইভেন্ট চালু থাকলে, ডিভাইসটি অফলাইন হয়ে গেছে তা নির্দেশ করে আপনি একটি রিসোর্স ইভেন্টও পেয়ে থাকবেন:
পেলোড
{
"eventId" : "6ac04910-dab8-40c0-8d16-63645e9b801c",
"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 স্ট্যাটাস HITING-এ পরিবর্তিত হলে আপনি নিম্নলিখিত resourceUpdate ইভেন্টটি পাবেন:
পেলোড
{
"eventId" : "1dc5ae6d-7334-4a71-8bb1-3e50d452a322",
"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 | কিছু থার্মোস্ট্যাট মডেল, থার্মোস্ট্যাট মোড বন্ধ (OFF) থাকা অবস্থায় ইকো মোড পরিবর্তন করা সমর্থন করে না। থার্মোস্ট্যাট মোড বৈশিষ্ট্য। ইকো মোড পরিবর্তন করার আগে থার্মোস্ট্যাট মোড অবশ্যই HEAT, COOL, বা HEATCOOL-এ পরিবর্তন করতে হবে। |
| থার্মোস্ট্যাট ফ্যান অনুপলব্ধ। | FAILED_PRECONDITION | থার্মোস্ট্যাটটিতে ফ্যান চালানোর সুবিধা নেই। এই ডিভাইসটির জন্য ফ্যান-সম্পর্কিত বৈশিষ্ট্য এবং কমান্ড ব্যবহার করা যাবে না। |
| থার্মোস্ট্যাট MANUAL_ECO মোডে থাকলে কমান্ডটি অনুমোদিত নয়। | FAILED_PRECONDITION | থার্মোস্ট্যাট ম্যানুয়াল ইকো মোডে থাকলে তাপমাত্রার সেটপয়েন্ট নির্ধারণ করা যায় না। |
এপিআই ত্রুটি কোডগুলির সম্পূর্ণ তালিকার জন্য এপিআই ত্রুটি কোড রেফারেন্স দেখুন।