CameraEventImage Şeması
Nest Cam (eski)
sdm.devices.traits.CameraEventImage
Bu özellik, etkinliklerden görüntü oluşturmayı destekleyen tüm cihazlara aittir.
Alanlar
Bu özellik için kullanılabilecek alan yok.
Komutlar
GenerateImage
Kamera resminin indirileceği URL'yi 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
öğesini kullanın.
GenerateImage isteği ve yanıtı
İstek
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage
",
"params" : {
"eventId" : "8NYaH5PZ6kftObq1UK3k6qfOcC..."
}
}
Yanıt
{ "results" : { "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...", "token" : "g.0.eventToken" } }
GenerateImage istek alanları
Alan | Açıklama | Veri Türü |
---|---|---|
eventId |
İlgili kamera görüntüsünün isteneceği etkinliğin kimliği. | string Örnek: "8NYaH5PZ6kftObq1UK3k6qfOcC..." |
GenerateImage yanıt alanları
Alan | Açıklama | Veri Türü |
---|---|---|
url |
Kamera resminin 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" |
Bir kamera görüntüsü indirin
Kamera resmini indirmek için Temel yetkilendirme ile HTTP Yetkilendirmesi başlığında token
öğesini kullanarak
GenerateImage
komut yanıtından url
için GET çağrısı yapı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ğlanmışsa
width
kullanılır veheight
yoksayılır. - URL'de hiçbir parametre sağlanmazsa
width
için varsayılan değer olarak 480 seçilir.
Resim özellikleriyle ilgili bilgi için KameraGörüntü özelliğine bakın.
Hatalar
Bu özellikle ilgili olarak aşağıdaki hata kodları döndürülebilir:
Hata Mesajı | RPC | Sorun giderme |
---|---|---|
Kamera resmi artık indirilemiyor. | DEADLINE_EXCEEDED |
Etkinlik görüntülerinin 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 olayının 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.