Skema CameraEventImage

Nest Cam (legacy) Nest Hub Max Nest Doorbell (legacy) 

sdm.devices.traits.CameraEventImage

Trait ini digunakan untuk perangkat apa pun yang mendukung pembuatan gambar dari peristiwa.

Kolom

Tidak ada kolom yang tersedia untuk trait ini.

Perintah

GenerateImage

Menyediakan URL untuk mendownload gambar kamera.

Perintah ini mendukung peristiwa berikut:

Jenis Elemen Deskripsi
Acara Peristiwa gerakan dari trait CameraMotion Gerakan telah terdeteksi oleh kamera.
Acara Peristiwa orang dari trait CameraPerson Seseorang telah terdeteksi oleh kamera.
Acara Peristiwa suara dari trait CameraSound Suara telah terdeteksi oleh kamera.
Acara Peristiwa bel dari trait DoorbellChime Bel pintu telah ditekan.
Gunakan eventId dari peristiwa yang didukung dalam permintaan perintah untuk menerima URL download gambar kamera yang terkait dengan peristiwa tersebut.

Permintaan dan respons GenerateImage

Permintaan

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

Respons

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

Kolom permintaan GenerateImage

Kolom Deskripsi Jenis Data
eventId ID peristiwa untuk meminta gambar kamera terkait. string
Contoh: "t_AHFvs66cemDElItOAD-ZBH51..."

Kolom respons GenerateImage

Kolom Deskripsi Jenis Data
url URL untuk mendownload gambar kamera. string
Contoh: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..."
token Token yang akan digunakan di header Otorisasi HTTP saat mendownload gambar. string
Contoh: "g.0.eventToken"

Mendownload gambar kamera

Lakukan panggilan GET ke url dari respons perintah GenerateImage , menggunakan token di header Otorisasi HTTP dengan otorisasi Dasar, untuk mendownload gambar kamera:

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

Gunakan parameter kueri width atau height untuk menyesuaikan resolusi gambar yang didownload. Hanya salah satu parameter ini yang perlu ditentukan. Parameter lainnya akan diskalakan secara otomatis sesuai dengan rasio aspek kamera.

Misalnya, jika rasio aspek kamera adalah 4:3, untuk mendownload gambar kamera dengan resolusi 480 x 360, tentukan lebar atau tinggi:

Lebar

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

Tinggi

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

Batasan lain untuk URL download berlaku:

  • Jika kedua parameter diberikan di URL, width akan digunakan dan height akan diabaikan.
  • Jika tidak ada parameter yang diberikan di URL, nilai default 480 akan dipilih untuk the width.

Lihat CameraImage trait untuk mengetahui informasi tentang properti gambar.

Error

Kode error berikut dapat ditampilkan terkait dengan trait ini:

Pesan Error RPC Pemecahan masalah
Gambar kamera tidak lagi tersedia untuk didownload. DEADLINE_EXCEEDED Gambar peristiwa akan berakhir masa berlakunya 30 detik setelah peristiwa dipublikasikan. Pastikan untuk mendownload gambar sebelum masa berlakunya berakhir.
ID peristiwa bukan milik kamera. FAILED_PRECONDITION Gunakan eventID yang benar yang ditampilkan oleh peristiwa kamera.

Lihat API Error Code Reference untuk mengetahui daftar lengkap kode error API.