สคีมา CameraEventImage

Nest Cam (รุ่นเดิม) Nest Hub Max Nest Doorbell (รุ่นเดิม) 

sdm.devices.traits.CameraEventImage

ลักษณะนี้เป็นของอุปกรณ์ที่รองรับการสร้างรูปภาพจากเหตุการณ์

ช่อง

ไม่มีช่องที่ใช้ได้สำหรับลักษณะนี้

คำสั่ง

GenerateImage

ระบุ URL เพื่อดาวน์โหลดรูปภาพจากกล้อง

คำสั่งนี้รองรับเหตุการณ์ต่อไปนี้

ประเภท องค์ประกอบ คำอธิบาย
กิจกรรม เหตุการณ์การเคลื่อนไหวของลักษณะ CameraMotion กล้องตรวจพบการเคลื่อนไหว
กิจกรรม เหตุการณ์บุคคลของลักษณะ CameraPerson กล้องตรวจพบบุคคล
กิจกรรม เหตุการณ์เสียงของลักษณะ CameraSound กล้องตรวจพบเสียง
กิจกรรม เหตุการณ์ Chime ของลักษณะ DoorbellChime มีคนกดกริ่งประตู
ใช้ eventId จากเหตุการณ์ที่รองรับในคำขอคำสั่งเพื่อรับ URL การดาวน์โหลดสำหรับรูปภาพกล้องที่เกี่ยวข้องกับเหตุการณ์นั้น

คำขอและการตอบกลับ GenerateImage

ส่งคำขอ

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

การตอบกลับ

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

ฟิลด์คำขอ GenerateImage

ช่อง คำอธิบาย ประเภทข้อมูล
eventId รหัสของเหตุการณ์ที่ต้องการขอรูปภาพกล้องที่เกี่ยวข้อง string
ตัวอย่าง: "578AqRkZDt_Rn1v8UeNO0XosdW..."

ฟิลด์การตอบกลับ GenerateImage

ช่อง คำอธิบาย ประเภทข้อมูล
url URL ที่ใช้ดาวน์โหลดรูปภาพจากกล้อง string
ตัวอย่าง: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..."
token โทเค็นที่จะใช้ในส่วนหัวการให้สิทธิ์ HTTP เมื่อดาวน์โหลดรูปภาพ string
ตัวอย่าง: "g.0.eventToken"

ดาวน์โหลดรูปภาพจากกล้อง

เรียกใช้ GET ไปยัง url จากการตอบกลับคำสั่ง GenerateImage โดยใช้ token ในส่วนหัวการให้สิทธิ์ HTTP ด้วยการให้สิทธิ์พื้นฐานเพื่อดาวน์โหลด รูปภาพจากกล้อง

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 การดาวน์โหลดมีดังนี้

  • หากระบุพารามิเตอร์ทั้ง 2 รายการใน URL ระบบจะใช้ width และไม่สนใจ height
  • หากไม่ได้ระบุพารามิเตอร์ทั้ง 2 รายการใน URL ระบบจะเลือกค่าเริ่มต้นเป็น 480 สำหรับ width

ดูข้อมูลเกี่ยวกับพร็อพเพอร์ตี้ของรูปภาพได้ที่ลักษณะ CameraImage

ข้อผิดพลาด

ระบบอาจแสดงรหัสข้อผิดพลาดต่อไปนี้ที่เกี่ยวข้องกับลักษณะนี้

ข้อความแสดงข้อผิดพลาด RPC การแก้ปัญหา
รูปภาพจากกล้องไม่พร้อมให้ดาวน์โหลดอีกต่อไป DEADLINE_EXCEEDED รูปภาพกิจกรรมจะหมดอายุ 30 วินาทีหลังจากเผยแพร่กิจกรรม โปรดดาวน์โหลดรูปภาพก่อนที่รูปภาพจะหมดอายุ
รหัสเหตุการณ์ไม่ได้เป็นของกล้อง FAILED_PRECONDITION ใช้ eventID ที่ถูกต้องซึ่งเหตุการณ์ของกล้องส่งคืน

ดูรายการรหัสข้อผิดพลาดของ API ทั้งหมดได้ที่เอกสารอ้างอิงรหัสข้อผิดพลาดของ API