Schema CameraEventImage

Nest Cam (legacy) Nest Hub Max Nest Doorbell (legacy) 

sdm.devices.traits.CameraEventImage

Questo tratto appartiene a qualsiasi dispositivo che supporta la generazione di immagini da eventi.

Campi

Non sono disponibili campi per questa caratteristica.

Comandi

GenerateImage

Fornisce un URL da cui scaricare un'immagine della fotocamera.

Questo comando supporta i seguenti eventi:

Tipo Elemento Descrizione
Evento Evento Motion del tratto CameraMotion La videocamera ha rilevato un movimento.
Evento Evento Persona del trait CameraPerson La videocamera ha rilevato una persona.
Evento Evento Suono del trait CameraSound La videocamera ha rilevato un suono.
Evento Evento Chime del tratto DoorbellChime Il campanello è stato premuto.
Utilizza il eventId di un evento supportato nella richiesta di comando per ricevere un URL di download dell'immagine della videocamera relativa a quell'evento.

Richiesta e risposta GenerateImage

Richiesta

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

Risposta

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

Campi della richiesta GenerateImage

Campo Descrizione Tipo di dati
eventId L'ID dell'evento per cui richiedere un'immagine della videocamera correlata. string
Esempio: "Ah97W4rOjQSyarHNmyxQTZk_Q8…"

Campi di risposta di GenerateImage

Campo Descrizione Tipo di dati
url L'URL da cui scaricare l'immagine della videocamera. string
Esempio: "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1..."
token Token da utilizzare nell'intestazione di autorizzazione HTTP durante il download dell'immagine. string
Esempio: "g.0.eventToken"

Scaricare un'immagine della fotocamera

Esegui una chiamata GET a url da una risposta al comando GenerateImage , utilizzando token nell'intestazione di autorizzazione HTTP con autorizzazione di base, per scaricare l'immagine della fotocamera:

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

Utilizza i parametri di query width o height per personalizzare la risoluzione dell'immagine scaricata. È necessario specificare solo uno di questi parametri. L'altro parametro viene ridimensionato automaticamente in base alle proporzioni della videocamera.

Ad esempio, se le proporzioni della fotocamera sono 4:3, per scaricare l'immagine della fotocamera con una risoluzione di 480 x 360 specifica la larghezza o l'altezza:

Larghezza

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

Altezza

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

Si applicano altre limitazioni all'URL di download:

  • Se nell'URL vengono forniti entrambi i parametri, viene utilizzato width e height viene ignorato.
  • Se nessuno dei due parametri è specificato nell'URL, viene scelto un valore predefinito di 480 per width.

Consulta la proprietà CameraImage per informazioni sulle proprietà delle immagini.

Errori

In relazione a questo attributo, potrebbero essere restituiti i seguenti codici di errore:

Messaggio di errore RPC Risoluzione dei problemi
L'immagine della fotocamera non è più disponibile per il download. DEADLINE_EXCEEDED Le immagini degli eventi scadono 30 secondi dopo la pubblicazione dell'evento. Assicurati di scaricare l'immagine prima della scadenza.
L'ID evento non appartiene alla videocamera. FAILED_PRECONDITION Utilizza il valore eventID corretto restituito dall'evento della videocamera.

Consulta il riferimento ai codici di errore dell'API per un elenco completo dei codici di errore dell'API.