CameraEventImage-Schema

Nest Cam (älteres Modell) Nest Hub Max Nest Doorbell (älteres Modell) 

sdm.devices.traits.CameraEventImage

Dieses Attribut gehört zu allen Geräten, die Bilder aus Ereignissen generieren können.

Felder

Für dieses Attribut sind keine Felder verfügbar.

Befehle

GenerateImage

Stellt eine URL zum Herunterladen eines Kamerabilds bereit.

Dieser Befehl unterstützt die folgenden Ereignisse:

Typ Element Beschreibung
Ereignis Bewegungsereignis des Attributs CameraMotion Die Kamera hat eine Bewegung erkannt.
Ereignis Personenereignis des Attributs CameraPerson Die Kamera hat eine Person erkannt.
Ereignis Geräuschereignis des Attributs CameraSound Die Kamera hat ein Geräusch erkannt.
Ereignis Klingelereignis des Attributs DoorbellChime Die Türklingel wurde betätigt.
Verwenden Sie die eventId aus einem unterstützten Ereignis in der Befehlsanfrage, um eine Download-URL für das Kamerabild zu erhalten, das mit diesem Ereignis verknüpft ist.

GenerateImage-Anfrage und -Antwort

Anfrage

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

Antwort

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

GenerateImage-Anfragefelder

Feld Beschreibung Datentyp
eventId ID des Ereignisses, für das ein zugehöriges Kamerabild angefordert werden soll. string
Beispiel: „-SN9UDcIBMGCQhoGXLhXU6lbpA...“

GenerateImage-Antwortfelder

Feld Beschreibung Datentyp
url Die URL, von der das Kamerabild heruntergeladen werden kann. string
Beispiel: „https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...“
token Token, das beim Herunterladen des Bilds im HTTP-Autorisierungsheader verwendet werden soll. string
Beispiel: „g.0.eventToken“

Kamerabild herunterladen

Führen Sie einen GET-Aufruf an die url aus einer GenerateImage Befehlsantwort aus und verwenden Sie dabei das token im HTTP-Autorisierungsheader mit der Basisautorisierung, um das Kamerabild herunterzuladen:

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

Verwenden Sie die Abfrageparameter width oder height, um die Auflösung des heruntergeladenen Bilds anzupassen. Nur einer dieser Parameter muss angegeben werden. Der andere Parameter wird automatisch entsprechend dem Seitenverhältnis der Kamera skaliert.

Wenn das Seitenverhältnis der Kamera beispielsweise 4:3 ist, geben Sie entweder die Breite oder die Höhe an, um das Kamerabild mit einer Auflösung von 480 × 360 herunterzuladen:

Breite

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

Höhe

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

Für die Download-URL gelten weitere Einschränkungen:

  • Wenn beide Parameter in der URL angegeben sind, wird width verwendet und height wird ignoriert.
  • Wenn keiner der Parameter in der URL angegeben ist, wird für den Standardwert 480 gewählt width.

Informationen zu den Bildeigenschaften finden Sie unter CameraImage Attribut.

Fehler

Die folgenden Fehlercodes können im Zusammenhang mit diesem Attribut zurückgegeben werden:

Fehlermeldung RPC Fehlerbehebung
Das Kamerabild kann nicht mehr heruntergeladen werden. DEADLINE_EXCEEDED Ereignisbilder laufen 30 Sekunden nach der Veröffentlichung des Ereignisses ab. Laden Sie das Bild vor Ablauf herunter.
Die Ereignis-ID gehört nicht zur Kamera. FAILED_PRECONDITION Verwenden Sie die korrekte eventID, die vom Kameraereignis zurückgegeben wurde.

Eine vollständige Liste der API-Fehlercodes finden Sie in der API-Fehlercode-Referenz.