স্মার্ট ডিভাইস ম্যানেজমেন্ট API

SDM API হল একটি REST API যেটি বৈশিষ্ট্যগুলি দেখার জন্য এবং Google Nest ডিভাইসগুলির পরিচালনার জন্য বিশেষ নির্দেশগুলি কার্যকর করার বিভিন্ন পদ্ধতি প্রদান করে৷ প্রতিটি API কলের সাথে অনুমোদন প্রক্রিয়া চলাকালীন প্রদত্ত অ্যাক্সেস টোকেন ব্যবহার করুন।

বৈশিষ্ট্য

SDM API ডিভাইসের তথ্য এবং কার্যকারিতার জন্য একটি বৈশিষ্ট্য-ভিত্তিক মডেল ব্যবহার করে। একটি ডিভাইসের জন্য কোন বৈশিষ্ট্যগুলি উপলব্ধ তা দেখতে পৃথক ডিভাইস নির্দেশিকাগুলি দেখুন:

পদ্ধতি

SDM API-এর জন্য উপলব্ধ সমস্ত পদ্ধতির সম্পূর্ণ বিবরণের জন্য API রেফারেন্স দেখুন।

executeCommand

একটি অনুমোদিত ডিভাইসে একটি কমান্ড কার্যকর করে।

একটি কমান্ড চালানোর জন্য একটি POST কল ব্যবহার করুন। উদাহরণস্বরূপ, থার্মোস্ট্যাট মোড পরিবর্তন করতে:

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.ThermostatMode.SetMode",
  "params" : {
    "mode" : "HEAT"
  }
}

কমান্ডের আরও উদাহরণ প্রতিটি পৃথক বৈশিষ্ট্য রেফারেন্স পৃষ্ঠায় পাওয়া যাবে। আরও তথ্যের জন্য সম্পূর্ণ বৈশিষ্ট্য তালিকা দেখুন।

পেতে

একটি অনুমোদিত কাঠামো বা ডিভাইস সম্পর্কে তথ্য পায়।

একটি GET কল একটি কাঠামো বা ডিভাইসের জন্য উপলব্ধ সমস্ত বৈশিষ্ট্যের জন্য বর্তমান ক্ষেত্র এবং মান সহ একটি একক প্রতিক্রিয়া প্রদান করে যা user অনুমোদিত এবং একটি 'parentRelations' অবজেক্ট আছে, যা বর্তমান সম্পদের মূল সম্পদকে প্রতিনিধিত্ব করে, হয় একটি কাঠামো বা ঘর।

উদাহরণস্বরূপ, একটি নেস্ট থার্মোস্ট্যাট নিম্নলিখিতগুলি ফেরত দিতে পারে:

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"
    }
  ]
}

তালিকা

অনুমোদিত স্ট্রাকচার, রুম বা ডিভাইসের তালিকা করে।

একটি একক অ্যাক্সেস টোকেনের অধীনে অনুমোদিত সমস্ত কাঠামো, ঘর বা ডিভাইস তালিকাভুক্ত করতে, উপযুক্ত সংস্থান শেষ পয়েন্টের বিরুদ্ধে একটি GET কল করুন:

GET /enterprises/project-id/structures
GET /enterprises/project-id/structures/structure-id/rooms
GET /enterprises/project-id/devices

গুগল অ্যাসিস্ট্যান্ট ইন্টিগ্রেশন

একবার একটি ডিভাইস এসডিএম-এর জন্য অনুমোদিত হলে, Google হোম গ্রাফে ডিভাইসটি সম্পর্কে সচেতন হয় এবং সরাসরি তার অবস্থা পরিচালনা করে। আপনার বাণিজ্যিক অফারের অংশ হিসেবে Google অ্যাসিস্ট্যান্ট ইন্টিগ্রেশন থাকলে:

ত্রুটি

API ত্রুটি কোডের সম্পূর্ণ তালিকার জন্য API ত্রুটি কোড রেফারেন্স দেখুন।