Schemat CameraEventImage
Nest Cam (starsza wersja)
sdm.devices.traits.CameraEventImage
Ta cecha należy do każdego urządzenia, które obsługuje generowanie obrazów z zdarzeń.
Pola
W przypadku tej cechy nie ma żadnych pól.
Polecenia
GenerateImage
Udostępnia URL, z którego można pobrać zdjęcie z aparatu.
To polecenie obsługuje następujące zdarzenia:
Typ | Element | Opis |
---|---|---|
Zdarzenie | Zdarzenie ruchu właściwości CameraMotion | Kamera wykryła ruch. |
Zdarzenie | Zdarzenie Person o cechach CameraPerson | Kamera wykryła jakąś osobę. |
Zdarzenie | Zdarzenie dźwięk związane z cechą CameraSound | Kamera wykryła dźwięk. |
Zdarzenie | Zdarzenie typu chime związane z dzwonkiem DoorbellChime | Naciśnięto dzwonek. |
eventId
z obsługiwanego zdarzenia w żądaniu polecenia, aby otrzymać adres URL do pobrania obrazu kamery powiązanego z tym zdarzeniem.
Żądanie i odpowiedź GenerateImage
Żądanie
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage
",
"params" : {
"eventId" : "4ydmwYgVf-F6f3bPO1dVBVnfKV..."
}
}
Odpowiedź
{ "results" : { "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...", "token" : "g.0.eventToken" } }
Pola żądania GenerateImage
Pole | Opis | Typ danych |
---|---|---|
eventId |
Identyfikator zdarzenia, z którym chcesz przesłać żądanie powiązanego zdjęcia z kamery. | string Przykład: „4ydmwYgVf-F6f3bPO1dVBVnfKV...”. |
Pola odpowiedzi GenerateImage
Pole | Opis | Typ danych |
---|---|---|
url |
Adres URL, z którego można pobrać zdjęcie z aparatu. | string Przykład: „https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...” |
token |
Token, który ma być używany w nagłówku autoryzacji HTTP podczas pobierania obrazu. | string Przykład: „g.0.eventToken” |
Pobierz obraz z kamery
Wykonaj wywołanie GET dla funkcji url
z
GenerateImage
Odpowiedź polecenia z użyciem
token
w nagłówku autoryzacji HTTP z autoryzacją podstawową, aby pobrać
obraz z aparatu:
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...
Za pomocą parametrów zapytania width
lub height
możesz dostosować rozdzielczość
pobranego obrazu. Wystarczy podać tylko 1 z tych parametrów. Drugi parametr jest skalowany
automatycznie, zgodnie z formatem obrazu.
Jeśli na przykład współczynnik proporcji aparatu wynosi 4:3, aby pobrać obraz aparatu o rozdzielczości 480 x 360, określ szerokość lub wysokość:
Szerokość
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480
Wysokość
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360
Obowiązują też inne ograniczenia dotyczące adresu URL pobierania:
- Jeśli w adresie URL podano oba parametry, używany jest parametr
width
, a parametrheight
jest ignorowany. - Jeśli w adresie URL nie podano żadnego parametru, dla parametru
width
zostanie wybrana wartość domyślna 480.
Zobacz CameraImage – cecha informacji o obrazie usług.
Błędy
W związku z tą cechą mogą zostać zwrócone te kody błędów:
Komunikat o błędzie | RPC | Rozwiązywanie problemów |
---|---|---|
Obraz z aparatu nie jest już dostępny do pobrania. | DEADLINE_EXCEEDED |
Obrazy zdarzeń wygasają po 30 sekundach od opublikowania zdarzenia. Pamiętaj, aby pobrać obraz przed wygaśnięciem ważności. |
Identyfikator zdarzenia nie należy do kamery. | FAILED_PRECONDITION |
Użyj prawidłowej wartości eventID zwróconej przez zdarzenie związane z kamerą. |
Zapoznaj się z informacjami na temat kodu błędu interfejsu API w przypadku: pełną listę kodów błędów interfejsu API.