SDM API הוא API ל-REST שמספק שיטות שונות כדי הצגת תכונות והרצת פקודות trait לניהול של מכשירי Google Nest. להשתמש באסימון הגישה שהוענק במהלך תהליך ההרשאה בכל קריאה ל-API.
תכונות
ב-SDM API נעשה שימוש במודל מבוסס-מאפיינים למידע ולפונקציונליות של המכשיר. כדאי לעיין במדריכים הספציפיים לכל מכשיר כדי לראות מהן התכונות הזמינות למכשיר:
- מצלמה
- מצלמה (סוללה)
- מצלמה עם Floodlight
- מצלמה (עם חיבור קווי)
- רשת המדיה
- פעמון דלת
- פעמון דלת (סוללה)
- פעמון דלת (חוטי)
- תרמוסטט
שיטות
במאמר בנושא הפניית API מפורטות כל השיטות הזמינות ל-SDM API.
executeCommand
הפעלת פקודה במכשיר מורשה.
משתמשים בקריאה ל-POST
כדי להריץ פקודה. לדוגמה, כדי להחליף את התרמוסטט
מצב:
POST /enterprises/project-id/devices/device-id:executeCommand { "command" : "sdm.devices.commands.ThermostatMode.SetMode", "params" : { "mode" : "HEAT" } }
ניתן למצוא דוגמאות נוספות לפקודות בכל הפניה של תכונה הדף הזה. מידע נוסף זמין ברשימת המאפיינים.
get
אחזור מידע על מבנה או מכשיר מורשים.
קריאה ל-GET
מחזירה תגובה יחידה עם השדות והערכים הנוכחיים לכל הפריטים
של המאפיינים הזמינים למבנה או למכשיר user שיש להם
מורשה ו-'ParentRelations' שמייצג את משאב ההורה
של המשאב הנוכחי, מבנה או חדר.
לדוגמה, Nest Thermostat עשוי להחזיר את הבאים:
GET /enterprises/project-id/devices/device-id { "name" : "enterprises/project-id/devices/device-id", "type" : "sdm.devices.types.THERMOSTAT", "assignee" : "enterprises/project-id/structures/structure-id/rooms/room-id", "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 } }, "parentRelations" : [ { "parent" : "enterprises/project-id/structures/structure-id/rooms/room-id", "displayName" : "Lobby" } ] }
list
בתיבת הדו-שיח הזו מפורטים מבנים, חדרים או מכשירים שאושרו.
כדי להציג רשימה של כל המבנים, החדרים או המכשירים שקיבלו אישור גישה יחידה
לאסימון, לבצע קריאה GET
אל נקודת הקצה המתאימה של המשאב:
GET /enterprises/project-id/structures
GET /enterprises/project-id/structures/structure-id/rooms
GET /enterprises/project-id/devices
שילובים עם Google Assistant
ברגע שמכשיר מקבל הרשאה ל-SDM, Google מקבלת מידע על המכשיר ב-Home הציגו בגרף את המצב ומנהלות אותו ישירות. אם יש לכם שילוב של Google Assistant כחלק מהחבילה המסחרית שלכם:
- לא לשלוח בקשת סנכרון בקשות למכשירי SDM
- השמטת מכשירי SDM מתשובות לכוונת SYNC
שגיאות
מידע נוסף זמין בחומר העזר בנושא קוד שגיאה של API את הרשימה המלאה של קודי השגיאה של ה-API.