Esquema CameraEventImage

Nest Cam (legado) Nest Hub Max Nest Doorbell (legado) 

sdm.devices.traits.CameraEventImage

Essa característica pertence a qualquer dispositivo compatível com a geração de imagens de eventos.

Campos

Não há campos disponíveis para essa característica.

Comandos

GenerateImage

Fornece um URL de onde a imagem da câmera será baixada.

Esse comando é compatível com os seguintes eventos:

Tipo Elemento Descrição
Evento Evento Motion do atributo CameraMotion A câmera detectou movimento.
Evento Evento Pessoa da característica "CameraPerson" Uma pessoa foi detectada pela câmera.
Evento Evento de som da característica CameraSound A câmera detectou som.
Evento Evento Chime do recurso DoorbellChime A campainha foi tocada.
Use o eventId de um evento com suporte na solicitação de comando para receber um URL de download da imagem da câmera relacionada a esse evento.

Solicitação e resposta GenerateImage

Solicitação

POST /enterprises/project-id/devices/device-id:executeCommand
{
  "command" : "sdm.devices.commands.CameraEventImage.GenerateImage",
  "params" : {
    "eventId" : "plh0enulqA1vcalHIQdNX3AQoI..."
  }
}

Resposta

{
  "results" : {
    "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...",
    "token" : "g.0.eventToken"
  }
}

Campos de solicitação de GenerateImage

Campo Descrição Tipo de dados
eventId ID do evento para o qual você quer solicitar uma imagem da câmera. string
Exemplo: "plh0enulqA1vcalHIQdNX3AQoI..."

Campos de resposta GenerateImage

Campo Descrição Tipo de dados
url O URL para fazer o download da imagem da câmera. string
Exemplo: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..."
token Token a ser usado no cabeçalho de autorização HTTP ao fazer o download da imagem. string
Exemplo: "g.0.eventToken"

Fazer o download de uma imagem da câmera

Faça uma chamada GET para o url de uma resposta de comando GenerateImage , usando o token no cabeçalho de autorização HTTP com autorização básica, para fazer o download da imagem da câmera:

curl -H "Authorization: Basic g.0.eventToken" \
      https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...

Use os parâmetros de consulta width ou height para personalizar a resolução da imagem transferida por download. Somente um desses parâmetros precisa ser especificado. O outro parâmetro é dimensionado automaticamente de acordo com a proporção da câmera.

Por exemplo, se a proporção da câmera for 4:3, faça o download da imagem da câmera com resolução de 480 x 360 especifique a largura ou a altura:

Largura

curl -H "Authorization: Basic g.0.eventToken" \
      https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480

Altura

curl -H "Authorization: Basic g.0.eventToken" \
      https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360

Outras restrições ao URL de download se aplicam:

  • Se ambos os parâmetros forem fornecidos no URL, width será usado e height será ignorado.
  • Se nenhum parâmetro for fornecido no URL, um valor padrão de 480 será escolhido para o width.

Consulte a CameraImage para informações sobre a imagem propriedades.

Erros

Os seguintes códigos de erro podem ser retornados em relação a essa característica:

Mensagem de erro RPC Solução de problemas
A imagem da câmera não está mais disponível para download. DEADLINE_EXCEEDED As imagens de eventos expiram 30 segundos após a publicação do evento. Faça o download da imagem antes da expiração.
O ID do evento não pertence à câmera. FAILED_PRECONDITION Use o eventID correto retornado pelo evento da câmera.

Consulte a Referência do código de erro da API para a lista completa de códigos de erro da API.