طرح‌واره CameraEventImage

Nest Cam (قدیمی) Nest Hub Max Nest Doorbell (قدیمی) 

sdm.devices.traits.CameraEventImage

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

فیلدها

هیچ فیلدی برای این ویژگی دردسترس نیست.

فرمان

GenerateImage

نشانی وبی برای بارگیری تصویر دوربین ارائه می‌دهد.

این فرمان از رویدادهای زیر پشتیبانی می‌کند:

نوع عنصر شرح
رویداد رویداد حرکت از مشخصه CameraMotion دوربین حرکت را تشخیص داده است.
رویداد رویداد Person از مشخصه CameraPerson دوربین فردی را تشخیص داده است.
رویداد رویداد صدا از مشخصه CameraSound دوربین صدایی تشخیص داده است.
رویداد رویداد زنگ اخبار از مشخصه DoorbellChime زنگ در فشار داده شده است.
از eventId رویداد پشتیبانی‌شده در درخواست فرمان استفاده کنید تا نشانی وب بارگیری تصویر دوربین مربوط به آن رویداد را دریافت کنید.

درخواست و پاسخ GenerateImage

درخواست

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

پاسخ

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

فیلدهای درخواست GenerateImage

فیلد شرح نوع داده
eventId شناسه رویداد برای درخواست تصویر دوربین مربوطه. string
مثال: «0MnccQe29Zoa3yPSl2eXx6SsNX...»

فیلدهای پاسخ GenerateImage

فیلد شرح نوع داده
url نشانی وب برای بارگیری تصویر دوربین. string
مثال: «https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...»
token نشان برای استفاده در سرصفحه «مجوز HTTP» هنگام بارگیری تصویر. string
مثال: «g.0.eventToken»

بارگیری تصویر دوربین

بااستفاده از token در سرایند «مجوز HTTP» با مجوز «پایه»، برای بارگیری تصویر دوربین، یک فراخوانی GET به url از GenerateImage پاسخ فرمان برقرار کنید:

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

از پارامترهای پُرسمان width یا height برای سفارشی‌سازی وضوح تصویر بارگیری‌شده استفاده کنید. فقط یکی از این پارامترها باید مشخص شود. پارامتر دیگر به‌طور خودکار براساس نسبت ابعادی دوربین مقیاس‌بندی می‌شود.

برای مثال، اگر نسبت ابعادی دوربین ۴:۳ باشد، برای بارگیری تصویر دوربین با وضوح ۴۸۰ × ۳۶۰، عرض یا ارتفاع را مشخص کنید:

عرض

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

محدودیت‌های دیگری برای نشانی وب بارگیری اعمال می‌شود:

  • اگر هر دو پارامتر در نشانی وب ارائه شده باشد، از width استفاده می‌شود و height نادیده گرفته می‌شود.
  • اگر هیچ‌کدام از پارامترها در نشانی وب ارائه نشده باشد، مقدار پیش‌فرض ۴۸۰ برای width انتخاب می‌شود.

برای کسب اطلاعات درباره ویژگی‌های تصویر، CameraImage ویژگی را ببینید.

خطاها

کد(های) خطای زیر ممکن است در رابطه با این مشخصه برگردانده شود:

پیام خطا RPC عیب‌یابی
تصویر دوربین دیگر برای بارگیری دردسترس نیست. DEADLINE_EXCEEDED تصاویر رویداد ۳۰ ثانیه پس‌از انتشار رویداد منقضی می‌شود. حتماً تصویر را قبل‌از منقضی شدن بارگیری کنید.
شناسه رویداد متعلق به دوربین نیست. FAILED_PRECONDITION از eventID صحیح برگردانده‌شده توسط رویداد دوربین استفاده کنید.

برای مشاهده فهرست کامل کدهای خطای میانای برنامه‌سازی کاربردی، مرجع کدهای خطای میانای برنامه‌سازی کاربردی را ببینید.