สคีมา CameraEventImage

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

sdm.devices.traits.CameraEventImage

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

ช่อง

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

คำสั่ง

GenerateImage

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

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

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

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

ส่งคำขอ

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

การตอบกลับ

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

ฟิลด์คำขอ GenerateImage

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

ฟิลด์การตอบกลับ 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