صفات

یک ویژگی (trait) در رابط برنامه‌نویسی کاربردی SDM شامل فیلدها ، دستورات و رویدادها می‌شود.

فیلدها

فیلدها مقادیری با انواع داده رایج مانند عدد یا رشته هستند. برای مثال، یک فیلد ممکن است شامل حالت فعلی یا رطوبت محیط یک ترموستات Google Nest باشد.

ویژگی‌ها و فیلدها را می‌توان با یک فراخوانی GET به نقطه پایانی API مورد نظر مشاهده کرد:

GET /enterprises/project-id/devices/device-id
{
  "name" : "enterprises/project-id/devices/device-id",
  "type" : "sdm.devices.types.device-type",
  "traits" : { ... },
  "parentRelations" : [
    {
      "parent" : "enterprises/project-id/structures/structure-id/rooms/room-id",
      "displayName" : "Lobby"
    }
  ]
}

انواع دستگاه

sdm.devices.types. device-type که توسط SDM API برگردانده می‌شود، نباید برای استنباط یا استنتاج عملکرد دستگاه واقعی که به آن اختصاص داده شده است، استفاده شود. هیچ تضمینی وجود ندارد که با اضافه شدن ویژگی‌های بیشتر به SDM API، نوع دستگاه برای یک دستگاه خاص ثابت بماند. در عوض، از ویژگی‌های برگردانده شده برای دستگاه استفاده کنید.

روابط والدین

شیء parentRelations نشان دهنده منبع والد منبع فعلی، چه یک ساختار و چه یک اتاق، است. نام نمایشی (Display name) با فیلد customName ازویژگی اطلاعات برای دستگاه‌هایی با والد structure یاویژگی RoomInfo برای دستگاه‌هایی که دارای والد اتاق هستند.

دستورات

دستورات، درخواست‌هایی هستند که با یک ویژگی مرتبط هستند. برای مثال، تغییر حالت فعلی یا نقطه تنظیم دما در ترموستات گوگل نست.

یک دستور توسط فراخوانی API executeCommand ارسال می‌شود:

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "command-name",
  "params" : {
    "field" : "value"
  }
}

بیشتر پاسخ‌ها به یک دستور، یک موفقیت یا شکست ساده هستند. برای مثال‌های استفاده از دستورات خاص، به راهنماهای ویژگی‌های هر دستور مراجعه کنید.

رویدادها

رویدادها ناهمزمان هستند و توسط Google Cloud Pub/Sub در یک موضوع واحد به ازای هر نفر مدیریت می‌شوند. Project شناسنامه.

رویدادها به طور پیش‌فرض برای هرگونه تغییر در مقدار یک فیلد ویژگی ارسال می‌شوند. همچنین می‌توانند در پاسخ به اقدامات خاص دستگاه یا تغییرات در تخصیص منابع ارسال شوند. برای اطلاعات بیشتر به بخش رویدادها مراجعه کنید.

دسته بندی صفات

ساختار

صفات
اطلاعات
sdm.structures.traits.Info
این ویژگی به هر ساختاری برای اطلاعات مرتبط با ساختار تعلق دارد.
اطلاعات اتاق
sdm.structures.traits.RoomInfo
این ویژگی متعلق به هر اتاقی برای اطلاعات مربوط به اتاق است.

دستگاه

صفات
اتصال
sdm.devices.traits.Connectivity
این ویژگی متعلق به هر دستگاهی است که اطلاعات اتصال دارد.
فن
sdm.devices.traits.Fan
این ویژگی متعلق به هر دستگاهی است که توانایی سیستمی کنترل فن را داشته باشد.
رطوبت
sdm.devices.traits.Humidity
این ویژگی متعلق به هر دستگاهی است که حسگری برای اندازه‌گیری رطوبت دارد.
اطلاعات
sdm.devices.traits.Info
این ویژگی به هر دستگاهی برای اطلاعات مربوط به دستگاه تعلق دارد.
تنظیمات
sdm.devices.traits.Settings
این ویژگی برای اطلاعات تنظیمات مربوط به هر دستگاهی در نظر گرفته شده است.
دما
sdm.devices.traits.Temperature
این ویژگی متعلق به هر دستگاهی است که دارای حسگر برای اندازه‌گیری دما باشد.

ترموستات

صفات
ترموستات اکو
sdm.devices.traits.ThermostatEco
این ویژگی متعلق به انواع ترموستات‌هایی است که از حالت‌های اقتصادی (ECO) پشتیبانی می‌کنند.
ترموستات HVAC
sdm.devices.traits.ThermostatHvac
این ویژگی متعلق به انواع دستگاه‌های ترموستات است که می‌توانند جزئیات سیستم تهویه مطبوع (HVAC) را گزارش دهند.
حالت ترموستات
sdm.devices.traits.ThermostatMode
این ویژگی متعلق به انواع دستگاه‌های ترموستات است که از حالت‌های مختلف ترموستات پشتیبانی می‌کنند.
ترموستاتدمای تنظیم‌شده
sdm.devices.traits.ThermostatTemperatureSetpoint
این ویژگی متعلق به انواع دستگاه‌های ترموستات است که از تنظیم دمای هدف و محدوده دما پشتیبانی می‌کنند.

دوربین

صفات
پیش‌نمایش دوربین
sdm.devices.traits.CameraClipPreview
این ویژگی متعلق به هر دستگاهی است که از دانلود پیش‌نمایش کلیپ پشتیبانی می‌کند.
تصویر رویداد دوربین
sdm.devices.traits.CameraEventImage
این ویژگی متعلق به هر دستگاهی است که از تولید تصاویر از رویدادها پشتیبانی می‌کند.
دوربین ایمیج
sdm.devices.traits.CameraImage
این ویژگی متعلق به هر دستگاهی است که از گرفتن عکس پشتیبانی می‌کند.
پخش زنده دوربین
sdm.devices.traits.CameraLiveStream
این ویژگی متعلق به هر دستگاهی است که از پخش زنده پشتیبانی می‌کند.
دوربین موشن
sdm.devices.traits.CameraMotion
این ویژگی متعلق به هر دستگاهی است که از رویدادهای تشخیص حرکت پشتیبانی می‌کند.
دوربین
sdm.devices.traits.CameraPerson
این ویژگی متعلق به هر دستگاهی است که از رویدادهای تشخیص شخص پشتیبانی می‌کند.
دوربینصدا
sdm.devices.traits.CameraSound
این ویژگی متعلق به هر دستگاهی است که از رویدادهای تشخیص صدا پشتیبانی می‌کند.

زنگ در

صفات
زنگ در
sdm.devices.traits.DoorbellChime
این ویژگی متعلق به هر دستگاهی است که از زنگ در و رویدادهای مطبوعاتی مرتبط پشتیبانی می‌کند.