كل أجهزة Google Nest Thermostat النماذج في واجهة برمجة التطبيقات لإدارة الأجهزة الذكية (SDM). تعرض هذه الأجهزة جهاز الترموستات نوع الجهاز:
sdm.devices.types.THERMOSTAT
الصفات
مَراجع
السمات أو الأوامر أو الأحداث التالية مرتبطة بهذه المجموعة:
سمة | الوصف | الطلبات الصوتية |
---|---|---|
إمكانية الاتصال | تنتمي هذه السمة إلى أي جهاز يحتوي على معلومات عن الاتصال. | |
معجب | تعود هذه السمة إلى أي جهاز لديه إمكانية التحكّم في المروحة. | SetTimer |
الرطوبة | تنتمي هذه السمة إلى أي جهاز يحتوي على أداة استشعار لقياس مستوى الرطوبة. | |
المعلومات | هذه السمة تنتمي إلى أي جهاز للحصول على معلومات متعلقة بالجهاز. | |
الإعدادات | هذه السمة تنتمي إلى أي جهاز للحصول على معلومات الإعدادات المتعلقة بالجهاز. | |
درجة الحرارة | تعود هذه السمة إلى أي جهاز يحتوي على جهاز استشعار لقياس درجة الحرارة. | |
ThermostatEco | هذه السمة تنتمي إلى أنواع أجهزة الترموستات التي تتوافق مع أوضاع ECO. | SetMode |
ThermostatHvac | تنتمي هذه السمة إلى أنواع أجهزة الترموستات التي يمكنها الإبلاغ عن تفاصيل التدفئة والتهوية وتكييف الهواء. | |
ThermostatMode | هذه السمة تنتمي إلى أنواع أجهزة الترموستات التي تتوافق مع أوضاع الترموستات المختلفة. | SetMode |
ThermostatTemperatureSetpoint | تنتمي هذه السمة إلى أنواع أجهزة "الترموستات" التي تتيح ضبط درجة الحرارة المستهدفة ونطاق درجة الحرارة. | SetHeat SetCool SetRange |
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 Nest Thermostat درجة الحرارة إما بالدرجة المئوية. درجة فهرنهايت، إلا أنّه لا يمكن ضبط المقياس بواسطة واجهة برمجة تطبيقات SDM. لتحديد مقياس درجة الحرارة الذي يحدده المستخدم حاليًا، فيمكنك استخدام الإعدادات
تغيير الوضع
تتم إدارة وضع الترموستات من خلال سمتَين مختلفتَين: ThermostatMode and ThermostatEco.
أوضاع عادية
لتغيير وضع الترموستات إلى "التدفئة" أو "تبريد" أو "التدفئة"، استخدِم الأمر SetMode في سمة ThermostatMode.
يمكن أيضًا استخدام هذا الأمر لإيقاف وضع الترموستات. ولا يمكن استخدامه لتحويل في وضع "درجات حرارة اقتصادية".على سبيل المثال، لتغيير أحد أوضاع الترموستات العادية:
الطلب
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatMode.SetMode
",
"params" : {
"mode" : "HEAT"
}
}
الرد
{}
وضع "درجات حرارة اقتصادية"
لتفعيل وضع "درجات حرارة اقتصادية"، استخدِم MANUAL_ECO كالوضع مع الأمر SetMode في سمة ThermostatEco:
الطلب
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatEco.SetMode
",
"params" : {
"mode" : "MANUAL_ECO"
}
}
الرد
{}
يؤثر هذا الأمر في سمات أخرى استنادًا إلى الحالة الحالية لوضع "درجات حرارة اقتصادية" أو التغييرات التي تطرأ عليه:
- في حال إيقاف وضع "درجات حرارة اقتصادية"، سيتم ضبط وضع الترموستات تلقائيًا على آخر وضع عادي (التدفئة أو التبريد أو التدفئة أو الإيقاف) كان نشطًا.
- إذا تم ضبط وضع "درجات حرارة اقتصادية" على MANUAL_ECO:
- تم رفض أوامر السمة ThermostatFilterSetpoint .
- لا يتم عرض درجات الحرارة المضبوطة من خلال السمة Thermostat أموالSetpoint .
تغيير درجة الحرارة المضبوطة
لا يمكن تغيير النقاط المضبوطة لدرجة الحرارة إلا أثناء تشغيل الترموستات. أوضاع التدفئة أو التبريد أو التدفئة والنقاط المضبوطة المسموح بها تتجاوب مع الوضع الحالي للترموستات. درجة الحرارة لا يمكن تغيير نقاط الضبط عندما يكون الوضع "إيقاف" أو عندما تم ضبط وضع "درجات حرارة اقتصادية" على MANUAL_ECO.
يجب أن يكون الترموستات في الوضع الذي يتوافق مع الأمر الذي يتم طلبه قبل التغيير. لدرجات الحرارة المثلى المضبوطة. تختلف الأوامر والحقول المطلوبة لتغيير النقاط الثابتة حسب الترموستات. الحالي.
على سبيل المثال، لإصدار SetHeat الأمر، يجب أن يكون الترموستات في وضع التدفئة أولاً:
الوضع | Command | الحقول |
---|---|---|
تدفئة | SetHeat | heatCelsius |
رائع | SetCool | coolCelsius |
تدفئة | SetRange | heatCelsius ، coolCelsius |
لاحظ أن أوامر نقطة الضبط تأخذ درجات بالدرجة المئوية فقط كمعلمة، إلا أن يمكن أن يعرض جهاز Google Nest Thermostat درجة الحرارة إما بالدرجة المئوية أو فهرنهايت.
على سبيل المثال، لتغيير درجة الحرارة المضبوطة عند ضبط الترموستات على وضع التدفئة، استخدم الأمر SetHeat للسمة Thermostat ThermostatSetpoint:
الطلب
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.ThermostatTemperatureSetpoint.SetHeat
",
"params" : {
"heatCelsius" : 22.0
}
}
الرد
{}
النقاط المحدّدة في وضع "درجات حرارة اقتصادية"
نقطتا الضبط heatCelsius
وcoolCelsius
اللتان تم إرجاعهما من خلال
يحدد المستخدم سمة ThermostatEco
من خلال واجهة برمجة تطبيقات SDM.
تشغيل المروحة أو إيقافها
إذا كان الترموستات متوافقًا مع مروحة، يمكنك استخدام الأمر SetTimer الخاص بسمة المروحة لتشغيله أو إيقافه. عند التشغيل، يمكنك تحديد مدة تشغيل المروحة، ثوانٍ.
على سبيل المثال، لتشغيل المروحة لمدة ساعة:
الطلب
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.Fan.SetTimer
",
"params" : {
"timerMode" : "ON",
"duration" : "3600s"
}
}
الرد
{}
إذا تم حذف حقل duration
، سيتم تشغيل المروحة لمدة تلقائية تبلغ 15.
دقيقة.
التحقّق من إمكانية اتصال الجهاز
إذا كان الجهاز لا يستجيب للأوامر أو يرسل أحداثًا، أو إذا تلقّيت من واجهة برمجة التطبيقات المتعلقة بالجهاز، فاستخدم سمةإمكانية الاتصال للتحقّق من اتصال الجهاز بالحالة "بلا اتصال". يُرجى التحقّق من اتصال الجهاز بالإنترنت والتأكد من أن ميزات Nest انتهت الخدمة.
إذا فعّلت الأحداث، من المفترض أن تكون قد تلقّيت أيضًا حدث موارد. الإشارة إلى أن الجهاز أصبح غير متصل بالإنترنت:
الحمولة
{
"eventId" : "0425a61d-a026-4608-8d8d-d76351d444a4",
"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"
]
}
التفاعل مع أحداث الجهاز
يؤدي أي تغيير في حقل السمة إلى إنشاء حدث.
على سبيل المثال، ستتلقى
حدث resourceUpdate
التالي إذا كان نظام التدفئة والتهوية وتكييف الهواء في الترموستات
تم تغيير الحالة إلى "تدفئة":
الحمولة
{
"eventId" : "24b17b95-a286-4471-901f-5bdd4a05be28",
"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"
]
}
يتم تشغيل الأحداث لجميع السمات المرتبطة بنوع الجهاز هذا. تفعيل الأحداث إذا كنت بحاجة إلى التفاعل لهم بطريقة ما كجزء من عملية الدمج.
توقيت الأحداث
يُرجى العلم أنّ الحدث المرتبط بتغيير حالة التدفئة والتهوية وتكييف الهواء قد لا يتم إرساله في الوقت نفسه الذي يتم فيه عرض الأحداث. لتغيير وضع الترموستات.
على سبيل المثال، في بعض الأحيان يكون هناك (أ) تأخير بدء وضع التدفئة أو التبريد في الترموستات لحماية نظام التدفئة والتهوية وتكييف الهواء . في هذا السيناريو، قد يؤدي تغيير وضع الترموستات إلى إرسال أحداث في البداية فقط ThermostatMode and تغييرات Thermostat أموالSetpoint في السمة تم إرسال تغيير في السمة ThermostatHvac في وقت لاحق كعنصر منفصل الحدث بمجرد تشغيل النظام فعليًا. إذا لم يكن هناك أي تأخير في تشغيل نظام التدفئة والتهوية وتكييف الهواء، إرسال ثلاثة أحداث في نفس الوقت.
الأخطاء
قد يتم عرض رموز الخطأ التالية فيما يتعلق بهذا الجهاز:
رسالة الخطأ | متوسط عائد النقرة | تحديد المشاكل وحلّها |
---|---|---|
يجب أن تكون قيمة التبريد أكبر من قيمة التدفئة. | INVALID_ARGUMENT |
تأكَّد من أنّ الحقل heatCelsius أقل من الحقل coolCelsius في الأمر. |
لا يُسمح بالطلب في وضع الترموستات الحالي. | FAILED_PRECONDITION |
وفقًا لسمة ThermostatMode لا يمكن تغيير وضع "درجات حرارة اقتصادية" في بعض طُرز الترموستات. يجب تغيير وضع الترموستات إلى "التدفئة" أو "التبريد" أو "التدفئة" قبل تغيير وضع "درجات حرارة اقتصادية". |
مروحة الترموستات غير متاحة. | FAILED_PRECONDITION |
لا يتضمّن الترموستات وظيفة مروحة. لا يمكن استخدام السمات والأوامر المتعلّقة بالمعجبين على هذا الجهاز. |
لا يُسمح بالطلب عند تفعيل الترموستات في وضع MANUAL_ECO. | FAILED_PRECONDITION |
لا يمكن ضبط درجة الحرارة المضبوطة عندما يكون الترموستات في وضع "درجات حرارة اقتصادية" اليدوي. |
يمكنك الاطّلاع على مرجع رمز خطأ واجهة برمجة التطبيقات للحصول على القائمة الكاملة لرموز أخطاء واجهة برمجة التطبيقات.