প্রদর্শন

স্থানধারক118 l10n- l10n-
নেস্ট হাব ম্যাক্স

Google Nest Hub Max ডিসপ্লে স্মার্ট ডিভাইস ম্যানেজমেন্ট (SDM) API-এ সমর্থিত। এই ডিভাইসটি একটি ডিভাইস প্রকারের DISPLAY প্রদান করে:

sdm.devices.types.DISPLAY

Google Nest Hub Max-এ একটি ক্যামেরা রয়েছে, যেটি CAMERA-এর ডিভাইসের মতোই কাজ করে।

বৈশিষ্ট্য

রেফারেন্স

নিম্নলিখিত বৈশিষ্ট্য, আদেশ বা ইভেন্টগুলি এই ডিভাইসের সাথে সম্পর্কিত:

বৈশিষ্ট্য বর্ণনা কমান্ড ঘটনা
CameraEventImage এই বৈশিষ্ট্যটি যে কোনও ডিভাইসের অন্তর্গত যা ইভেন্ট থেকে ছবি তৈরি করতে সহায়তা করে। ইমেজ তৈরি করুন
ক্যামেরা ইমেজ এই বৈশিষ্ট্যটি যে কোনও ডিভাইসের অন্তর্গত যা ছবি তোলা সমর্থন করে।
CameraLiveStream এই বৈশিষ্ট্যটি লাইভ স্ট্রিমিং সমর্থন করে এমন যেকোনো ডিভাইসের অন্তর্গত। জেনারেটআরটিএসপিস্ট্রিম
এক্সটেনডআরটিএসপিস্ট্রিম
স্টপআরটিএসপিস্ট্রিম
CameraMotion এই বৈশিষ্ট্যটি যে কোনও ডিভাইসের অন্তর্গত যা গতি সনাক্তকরণ ইভেন্টগুলিকে সমর্থন করে৷ গতি
CameraPerson এই বৈশিষ্ট্যটি যে কোনও ডিভাইসের অন্তর্গত যা ব্যক্তি সনাক্তকরণ ইভেন্টগুলিকে সমর্থন করে৷ ব্যক্তি
ক্যামেরাসাউন্ড এই বৈশিষ্ট্যটি যে কোনও ডিভাইসের অন্তর্গত যা শব্দ সনাক্তকরণ ইভেন্টগুলিকে সমর্থন করে৷ শব্দ
তথ্য ডিভাইস-সম্পর্কিত তথ্যের জন্য এই বৈশিষ্ট্যটি যেকোনো ডিভাইসের অন্তর্গত।

JSON

একটি GET প্রতিক্রিয়াতে একটি বৈশিষ্ট্যের অনুপস্থিতি নির্দেশ করে যে বৈশিষ্ট্য বা বৈশিষ্ট্যটি বর্তমানে ডিভাইসের জন্য উপলব্ধ নয়৷ আরও তথ্যের জন্য ডিভাইসের ধরন দেখুন।

{
  "type" : "sdm.devices.types.DISPLAY",
  "traits" : {
    "sdm.devices.traits.CameraEventImage" : {},
    "sdm.devices.traits.CameraImage" : {
      "maxImageResolution" : {
        "width" : 1280,
        "height" : 960
      }
    },
    "sdm.devices.traits.CameraLiveStream" : {
      "maxVideoResolution" : {
        "width" : 640,
        "height" : 480
      },
      "videoCodecs" : ["H264"],
      "audioCodecs" : ["AAC"],
      "supportedProtocols" : ["WEB_RTC"]
    },
    "sdm.devices.traits.CameraMotion" : {},
    "sdm.devices.traits.CameraPerson" : {},
    "sdm.devices.traits.CameraSound" : {},
    "sdm.devices.traits.Info" : {
      "customName" : "My device"
    }
  }
}

ক্যামেরা ইভেন্টগুলি পরিচালনা করুন

নিম্নলিখিত ইভেন্টগুলি একটি DISPLAY ডিভাইস প্রকার থেকে ট্রিগার হতে পারে:

টাইপ উপাদান বর্ণনা
ঘটনা ক্যামেরামোশন বৈশিষ্ট্যের মোশন ইভেন্ট গতি ক্যামেরা দ্বারা সনাক্ত করা হয়েছে.
ঘটনা ক্যামেরাপারসন বৈশিষ্ট্যের ব্যক্তি ঘটনা ক্যামেরায় একজনকে শনাক্ত করা হয়েছে।
ঘটনা ক্যামেরাসাউন্ড বৈশিষ্ট্যের শব্দ ইভেন্ট ক্যামেরায় শব্দ শনাক্ত করা হয়েছে।
উদাহরণস্বরূপ, এখানে ক্যামেরা গতি শনাক্ত করেছে:

পেলোড

{
  "eventId" : "65b2de58-a2f7-4059-942c-1339dbf51dd4",
"timestamp" : "2019-01-01T00:00:01Z",
"resourceUpdate" : { "name" : "enterprises/project-id/devices/device-id", "events" : { "sdm.devices.events.CameraMotion.Motion" : { "eventSessionId" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF...", "eventId" : "pEchIau3CWXpkF9qjpLybmgT04...", } } } "userId" : "AVPHwEuBfnPOnTqzVFT4IONX2Qqhu9EJ4ubO-bNnQ-yi",
"resourceGroup" : [ "enterprises/project-id/devices/device-id" ] }
এই ইভেন্টের পেলোডে একটি eventId রয়েছে যা GenerateImage কমান্ডের সাথে ব্যবহার করা যেতে পারে। এই কমান্ডটি ইভেন্টের সাথে সম্পর্কিত ক্যামেরা চিত্রের জন্য একটি ডাউনলোড URL প্রদান করে:

অনুরোধ

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
  "params" : {
    "eventId" : "KlrRESnrqWmFC0gBy1-Ufo6-YR..."
  }
}

প্রতিক্রিয়া

{
  "results" : {
    "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
    "token" : "g.0.eventToken"
  }
}

একটি ক্যামেরা ছবি ডাউনলোড করুন

ক্যামেরা ইমেজ ডাউনলোড করতে, বেসিক অনুমোদন সহ HTTP অনুমোদন হেডারে token ব্যবহার করে GenerateImage কমান্ডের প্রতিক্রিয়া থেকে url এ একটি GET কল করুন:

curl -H "Authorization: Basic g.0.eventToken" \
      https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...

ডাউনলোড করা ছবির রেজোলিউশন কাস্টমাইজ করতে width বা height ক্যোয়ারী প্যারামিটার ব্যবহার করুন। এই পরামিতিগুলির মধ্যে শুধুমাত্র একটি নির্দিষ্ট করতে হবে। অন্য প্যারামিটারটি ক্যামেরার আকৃতির অনুপাত অনুযায়ী স্বয়ংক্রিয়ভাবে স্কেল করা হয়।

উদাহরণস্বরূপ, ক্যামেরার আকৃতির অনুপাত 4:3 হলে, 480 x 360 রেজোলিউশনের ক্যামেরা ছবি ডাউনলোড করতে প্রস্থ বা উচ্চতা নির্দিষ্ট করুন:

প্রস্থ

curl -H "Authorization: Basic g.0.eventToken" \
      https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480

উচ্চতা

curl -H "Authorization: Basic g.0.eventToken" \
      https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360

ডাউনলোড URL-এ অন্যান্য বিধিনিষেধ প্রযোজ্য:

  • যদি উভয় প্যারামিটার URL-এ প্রদান করা হয়, width ব্যবহার করা হয় এবং height উপেক্ষা করা হয়।
  • যদি URL-এ কোনো প্যারামিটার দেওয়া না থাকে, তাহলে width জন্য 480-এর একটি ডিফল্ট মান বেছে নেওয়া হয়।

ছবির বৈশিষ্ট্য সম্পর্কে তথ্যের জন্য CameraImage বৈশিষ্ট্য দেখুন।

একটি লাইভ স্ট্রিম অ্যাক্সেস করুন

একটি ক্যামেরা থেকে লাইভ স্ট্রিম অ্যাক্সেস করা যেতে পারে. এই ডিভাইসের জন্য নিম্নলিখিত স্ট্রিম ফর্ম্যাটগুলি সমর্থিত:

  • আরটিএসপি

ক্যামেরা এবং সমর্থিত স্ট্রিম ফর্ম্যাটের সম্পূর্ণ তালিকার জন্য, সমর্থিত ডিভাইসগুলি দেখুন।

লাইভ স্ট্রিম অ্যাক্সেস করতে,CameraLiveStreamবৈশিষ্ট্যের উপযুক্ত জেনারেট Format স্ট্রিম কমান্ড ব্যবহার করুন।

আরটিএসপি

একটি RTSP স্ট্রীমের জন্য, CameraLiveStream বৈশিষ্ট্য কমান্ডের GenerateRtspStream কমান্ড স্ট্রীম URL এবং সম্পর্কিত streamToken প্রদান করে:

অনুরোধ

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraLiveStream.GenerateRtspStream",
  "params" : {}
}

প্রতিক্রিয়া

{
  "results" : {
    "streamUrls" : {
      "rtspUrl" : "rtsps://someurl.com/CjY5Y3VKaTZwR3o4Y19YbTVfMF...?auth=g.0.streamingToken"
    },
    "streamExtensionToken" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF...",
    "streamToken" : "g.0.streamingToken",
    "expiresAt" : "2018-01-04T18:30:00.000Z"
  }
}

তারপর ক্যামেরা লাইভ স্ট্রিম অ্যাক্সেস করতে স্ট্রিম URL ব্যবহার করুন:

rtsps://someurl.com/CjY5Y3VKaTZwR3o4Y19YbTVfMF...?auth=g.0.streamingToken

RTSP লাইভ স্ট্রিম ইউআরএল ক্লায়েন্টদের মধ্যে শেয়ার করা যাবে না। একটি স্ট্রিম URL একবারে শুধুমাত্র একটি ক্লায়েন্ট ব্যবহার করতে পারে৷ যদি একাধিক ক্লায়েন্ট একই ক্যামেরা থেকে একই সময়ে স্ট্রিম করতে চায়, তাহলে প্রতিটি স্বতন্ত্র ক্লায়েন্টের জন্য RTSP কমান্ড পাঠাতে হবে এবং প্রতিটি ক্লায়েন্টকে অবশ্যই নিজস্ব স্ট্রিম URL ব্যবহার করতে হবে।

একটি লাইভ স্ট্রিম প্রসারিত করুন

ক্যামেরা লাইভ স্ট্রিম সেশন শুধুমাত্র 5 মিনিটের জন্য বৈধ। আপনার যদি লাইভ স্ট্রিমের জীবনকাল বাড়ানোর প্রয়োজন হয়, তাহলে CameraLiveStream এর জন্য উপযুক্ত Extend Format Stream কমান্ড ব্যবহার করুন।

আরটিএসপি

একটি RTSP স্ট্রিম প্রসারিত করতে, CameraLiveStream বৈশিষ্ট্য কমান্ডের ExtendRtspStream কমান্ডটি ব্যবহার করুন নতুন streamExtensionToken এবং streamToken মান পেতে:

অনুরোধ

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraLiveStream.ExtendRtspStream",
  "params" : {
    "streamExtensionToken" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF..."
  }
}

প্রতিক্রিয়া

{
  "results" : {
    "streamExtensionToken" : "dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
    "streamToken" : "g.0.newStreamingToken",
    "expiresAt" : "2018-01-04T18:30:00.000Z"
  }
}

লাইভ স্ট্রিম দেখা চালিয়ে যেতে এই নতুন মানগুলির সাথে স্ট্রিম URL আপডেট করুন:

rtsps://someurl.com/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?auth=g.0.newStreamingToken

একটি লাইভ স্ট্রিম বন্ধ করুন

যে কোনো সময় আপনি আর একটি ক্যামেরা লাইভ স্ট্রিম ব্যবহার করছেন না, আপনার এটি বন্ধ করা উচিত এবং স্ট্রিমটি অবৈধ করা উচিত। এটি করতে, আপনার তৈরি করা স্ট্রিম ফর্ম্যাটের জন্যCameraLiveStreamবৈশিষ্ট্যের উপযুক্ত স্টপ Format স্ট্রিম কমান্ডটি ব্যবহার করুন।

আরটিএসপি

একটি RTSP স্ট্রিম বন্ধ করতে, CameraLiveStream বৈশিষ্ট্য কমান্ডের StopRtspStream কমান্ডের সাথে অবৈধ করতে টোকেনটি ব্যবহার করুন:

অনুরোধ

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraLiveStream.StopRtspStream",
  "params" : {
    "streamExtensionToken" : "CjY5Y3VKaTZwR3o4Y19YbTVfMF..."
  }
}

প্রতিক্রিয়া

{}

ত্রুটি

এই ডিভাইসের ক্ষেত্রে নিম্নলিখিত ত্রুটি কোড(গুলি) ফেরত দেওয়া হতে পারে:

ভুল বার্তা আরপিসি সমস্যা সমাধান
ক্যামেরা ছবি ডাউনলোডের জন্য আর উপলব্ধ নেই৷ DEADLINE_EXCEEDED ইভেন্ট প্রকাশিত হওয়ার 30 সেকেন্ড পরে ইভেন্ট চিত্রের মেয়াদ শেষ হয়ে যায়। মেয়াদ শেষ হওয়ার আগে ছবিটি ডাউনলোড করতে ভুলবেন না।
ইভেন্ট আইডি ক্যামেরার অন্তর্গত নয়। FAILED_PRECONDITION ক্যামেরা ইভেন্ট দ্বারা ফেরত সঠিক eventID ব্যবহার করুন।

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