Esquema CameraEventImage

Nest Cam (legada) Nest Hub Max Nest Doorbell (legada) 

sdm.devices.traits.CameraEventImage

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

Campos

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

Comandos

GenerateImage

Fornece um URL a partir do qual a imagem da câmera será baixada.

Esse comando é compatível com os seguintes eventos:

Tipo Elemento Descrição
Evento Evento Motion do traço CameraMotion A câmera detectou movimento.
Evento Evento Person 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 da característica DoorbellChime A campainha foi pressionada.
Use o eventId de um evento compatível 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" : "oxyAe4z3_5a-1L6BH5FmxDyMeG..."
  }
}

Resposta

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

Campos de solicitação GenerateImage

Field Descrição Tipo de dados
eventId ID do evento para o qual solicitar uma imagem de câmera relacionada. string
Exemplo: "oxyAe4z3_5a-1L6BH5FmxDyMeG..."

Campos de resposta GenerateImage

Field Descrição Tipo de dados
url É o URL de onde a imagem da câmera será baixada. 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, especifique a largura ou a altura para fazer o download da imagem com uma resolução de 480 x 360:

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, o valor padrão 480 será escolhido para width.

Consulte a característica CameraImage para informações sobre as propriedades da imagem.

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 do evento expiram 30 segundos após a publicação do evento. Faça o download da imagem antes que ela expire.
O ID do evento não pertence à câmera. FAILED_PRECONDITION Use a eventID correta retornada pelo evento da câmera.

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