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 indirilebileceği bir URL sağlar.
Bu komut aşağıdaki etkinlikleri destekler:
| Tür | Öğe | Açıklama |
|---|---|---|
| Etkinlik | CameraMotion özelliğinin hareket olayı | Kamera tarafından hareket algılandı. |
| Etkinlik | CameraPerson özelliğinin Person etkinliği | Kamera bir kişi algıladı. |
| Etkinlik | CameraSound özelliğinin ses etkinliği | Kamera tarafından ses algılandı. |
| Etkinlik | DoorbellChime özelliğinin Chime etkinliği | Kapı ziline basıldı. |
eventId özelliğini kullanarak bu etkinlikle ilgili kamera görüntüsünün indirme URL'sini alın.
GenerateImage isteği ve yanıtı
İstek
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
"params" : {
"eventId" : "0MnccQe29Zoa3yPSl2eXx6SsNX..."
}
}
Yanıt
{
"results" : {
"url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
"token" : "g.0.eventToken"
}
}
GenerateImage isteği alanları
| Alan | Açıklama | Veri Türü |
|---|---|---|
eventId |
İlgili kamera görüntüsünün istendiği etkinliğin kimliği. | stringÖrnek: "0MnccQe29Zoa3yPSl2eXx6SsNX..." |
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 |
Resmi indirirken HTTP yetkilendirme üstbilgisinde kullanılacak jeton. | stringÖrnek: "g.0.eventToken" |
Kamera görüntüsü indirme
Kamera görüntüsünü indirmek için HTTP yetkilendirme üstbilgisinde token ile temel yetkilendirmeyi kullanarak GenerateImage
komut yanıtından url için bir 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 kamera görüntüsünü 480 x 360 çözünürlükte 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=480Yükseklik
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360İndirme URL'siyle ilgili diğer kısıtlamalar:
- URL'de her iki parametre de sağlanırsa
widthkullanılır veheightyoksayılır. - URL'de her iki parametre de sağlanmazsa
widthiçin varsayılan olarak 480 değeri seçilir.
Resim özellikleri hakkında bilgi edinmek için CameraImage özelliğine bakın.
Hatalar
Bu özellik ile ilgili olarak aşağıdaki hata kodları döndürülebilir:
| Hata Mesajı | RPC | Sorun giderme |
|---|---|---|
| Kamera görüntüsü artık indirilemiyor. | DEADLINE_EXCEEDED |
Etkinlik resimlerinin süresi, etkinlik yayınlandıktan 30 saniye sonra dolar. Süresi dolmadan önce resmi indirdiğinizden emin olun. |
| 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ı bölümüne bakın.