Esquema de CameraEventImage
Nest Cam (heredada)
sdm.devices.traits.CameraEventImage
Este rasgo pertenece a cualquier dispositivo que admita la generación de imágenes a partir de eventos.
Campos
No hay campos disponibles para este rasgo.
Comandos
GenerateImage
Proporciona una URL para descargar una imagen de la cámara.
Este comando admite los siguientes eventos:
| Tipo | Elemento | Descripción |
|---|---|---|
| Evento | Evento Motion del rasgo CameraMotion | La cámara detectó movimiento. |
| Evento | Evento Person del rasgo CameraPerson | La cámara detectó a una persona. |
| Evento | Evento Sound del rasgo CameraSound | La cámara detectó un sonido. |
| Evento | Evento Chime del rasgo DoorbellChime | Se presionó el timbre. |
eventId de un evento compatible en la solicitud de comando para recibir una URL de descarga de la imagen de la cámara relacionada con ese evento.
Solicitud y respuesta de GenerateImage
Solicitud
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
"params" : {
"eventId" : "wwMlMk7UXSGHKZNS71kYISVejz..."
}
}
Respuesta
{
"results" : {
"url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
"token" : "g.0.eventToken"
}
}
Campos de la solicitud GenerateImage
| Campo | Descripción | Tipo de datos |
|---|---|---|
eventId |
Es el ID del evento para el que se solicita una imagen de cámara relacionada. | stringEjemplo: "wwMlMk7UXSGHKZNS71kYISVejz..." |
Campos de respuesta de GenerateImage
| Campo | Descripción | Tipo de datos |
|---|---|---|
url |
Es la URL desde la que se descargará la imagen de la cámara. | stringEjemplo: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..." |
token |
Es el token que se usará en el encabezado de autorización HTTP cuando se descargue la imagen. | stringEjemplo: "g.0.eventToken" |
Descarga una imagen de la cámara
Realiza una llamada GET a url desde una respuesta del comando GenerateImage
, usando token en el encabezado de autorización HTTP con autorización básica, para descargar la imagen de la cámara:
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...Usa los parámetros de consulta width o height para personalizar la resolución de la imagen descargada. Solo se debe especificar uno de estos parámetros. El otro parámetro se ajusta automáticamente según la relación de aspecto de la cámara.
Por ejemplo, si la relación de aspecto de la cámara es 4:3, para descargar la imagen de la cámara con una resolución de 480 × 360, especifica el ancho o la altura:
Ancho
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480Altura
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360Se aplican otras restricciones a la URL de descarga:
- Si se proporcionan ambos parámetros en la URL, se usa
widthy se ignoraheight. - Si no se proporciona ninguno de los parámetros en la URL, se elige un valor predeterminado de 480 para
width.
Consulta el rasgo CameraImage para obtener información sobre las propiedades de la imagen.
Errores
Es posible que se muestren los siguientes códigos de error relacionados con este rasgo:
| Mensaje de error | RPC | Solución de problemas |
|---|---|---|
| La imagen de la cámara ya no está disponible para su descarga. | DEADLINE_EXCEEDED |
Las imágenes de eventos vencen 30 segundos después de que se publica el evento. Asegúrate de descargar la imagen antes de que venza. |
| El ID del evento no pertenece a la cámara. | FAILED_PRECONDITION |
Usa el eventID correcto que devuelve el evento de la cámara. |
Consulta la Referencia de códigos de error de la API para ver la lista completa de códigos de error.