Esquema CameraEventImage
Nest Cam (heredada)
sdm.devices.traits.CameraEventImage
Este rasgo pertenece a cualquier dispositivo que sea compatible con la generación de imágenes a partir de eventos.
Campos
No hay campos disponibles para esta característica.
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 trait CameraMotion | La cámara detectó movimiento. |
| Evento | Evento Person del trait CameraPerson | La cámara detectó a una persona. |
| Evento | Evento Sound del trait CameraSound | La cámara detectó un sonido. |
| Evento | Evento Chime del trait DoorbellChime | Se detectó que alguien tocó 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" : "t_AHFvs66cemDElItOAD-ZBH51..."
}
}
Respuesta
{
"results" : {
"url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
"token" : "g.0.eventToken"
}
}
Campos de solicitud de 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: "t_AHFvs66cemDElItOAD-ZBH51..." |
Campos de respuesta de GenerateImage
| Campo | Descripción | Tipo de datos |
|---|---|---|
url |
Es la URL desde la cual se puede 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 la url desde una
GenerateImage
command response, usando el
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 de 4:3, para descargar la imagen de la cámara con una resolución de 480 x 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,
widthse usa yheightse ignora. - Si no se proporciona ningún parámetro en la URL, se elige un valor predeterminado de 480 para el
width.
Consulta el CameraImage trait 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 trait:
| Mensaje de error | RPC | Solución de problemas |
|---|---|---|
| La imagen de la cámara ya no está disponible para descargarla. | 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.