CameraEventImage Şeması
Nest Cam (eski)
sdm.devices.traits.CameraEventImage
Bu özellik, etkinliklerden resim oluşturmayı destekleyen tüm cihazlara aittir.
Alanlar
Bu özellik için kullanılabilir alan yok.
Komutlar
GenerateImage
Kamera görüntüsünün indirileceği bir URL sağlar.
Bu komut aşağıdaki etkinlikleri destekler:
Tür | Öğe | Açıklama |
---|---|---|
Etkinlik | CameraMotion özelliğinin Hareket etkinliği | Kamera hareket algıladı. |
Etkinlik | CameraPerson özelliğinin Person etkinliği | Kamera bir kişi algıladı. |
Etkinlik | CameraSound özelliğinin Ses etkinliği | Kamera ses algıladı. |
Etkinlik | DoorbellChime özelliğinin Chime etkinliği | Kapı ziline basıldı. |
eventId
kullanın.
Resim isteği ve yanıtı oluşturma
İstek
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage
",
"params" : {
"eventId" : "gf9BpkkXEf4P0XetWPVPuKSydk..."
}
}
Yanıt
{ "results" : { "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...", "token" : "g.0.eventToken" } }
Resim oluşturma istek alanları
Alan | Açıklama | Veri Türü |
---|---|---|
eventId |
İlgili kamera resmi istenilecek etkinliğin kimliği. | string Örnek: "gf9BpkkXEf4P0XetWPVPuKSydk..." |
GenerateImage yanıt alanları
Alan | Açıklama | Veri Türü |
---|---|---|
url |
Kamera görüntüsünün indirileceği URL. | string Örnek: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..." |
token |
Görüntü indirilirken HTTP Yetkilendirmesi başlığında kullanılacak jeton. | string Örnek: "g.0.eventToken" |
Kamera görüntüsünü indir
Kamera görüntüsünü indirmek için GenerateImage
komut yanıtından url
öğesine bir GET çağrısı yapın. Bunun için temel yetkilendirme ile HTTP Yetkilendirme üst bilgisindeki token
öğesini kullanın:
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...
İndirilen resmin çözünürlüğünü özelleştirmek için width
veya height
sorgu parametrelerini kullanın. Bu parametrelerden yalnızca birinin belirtilmesi gerekir. Diğer parametre, kameranın en boy oranına göre otomatik olarak ölçeklendirilir.
Örneğin, kameranın en boy oranı 4:3 ise 480 x 360 çözünürlüklü kamera resmini indirmek için genişliği veya yüksekliği belirtin:
Genişlik
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480
Boy
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360
İndirme URL'siyle ilgili başka kısıtlamalar da vardır:
- URL'de her iki parametre de sağlanırsa
width
kullanılır veheight
yoksayılır. - URL'de iki parametre de sağlanmamışsa
width
için varsayılan değer olarak 480 seçilir.
Görüntü özellikleri hakkında bilgi için KameraImage özelliğine bakın.
Hatalar
Bu özellikle ilgili olarak aşağıdaki hata kodları döndürülebilir:
Hata Mesajı | RPC | Sorun giderme |
---|---|---|
Kamera görseli artık indirilemiyor. | DEADLINE_EXCEEDED |
Etkinlik resimlerinin süresi, etkinlik yayınlandıktan 30 saniye sonra dolar. Resmi, süresi dolmadan önce indirmeyi unutmayın. |
Etkinlik kimliği kameraya ait değil. | FAILED_PRECONDITION |
Kamera etkinliğinin döndürdüğü doğru eventID değerini kullanın. |
API hata kodlarının tam listesi için API Hata Kodu Referansı'na bakın.