CameraEventImage – Schema

Nest Cam (alte Version) Nest Hub Max Nest Doorbell (alte Version) 

sdm.devices.traits.CameraEventImage

Dieser Trait gehört zu jedem Gerät, das das Generieren von Bildern aus Ereignissen unterstützt.

Felder

Für diese Eigenschaft 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
Veranstaltung Ereignis Motion des Attributs „CameraMotion“ Die Kamera hat Bewegung erkannt.
Veranstaltung Person-Ereignis der Eigenschaft KameraPerson Die Kamera hat eine Person erkannt.
Veranstaltung Ereignis Geräusch des Kameraton-Tritts Die Kamera hat Geräusche erkannt.
Veranstaltung Glocken-Ereignis der Eigenschaft „Türklingel“ Die Türklingel wurde gedrückt.
Verwenden Sie die eventId aus einem unterstützten Ereignis in der Befehlsanfrage, um eine Download-URL für das Kamerabild zu erhalten, das zu diesem Ereignis gehört.

GenerateImage-Anfrage und -Antwort

Anfragen

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

Antwort

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

GenerateImage-Anfragefelder

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

GenerateImage-Antwortfelder

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

Kamerabild herunterladen

Führen Sie einen GET-Aufruf an url aus einer Antwort des Befehls GenerateImage aus und verwenden Sie dabei den token im HTTP-Autorisierungsheader mit 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 an das Seitenverhältnis der Kamera angepasst.

Beträgt die Kamera beispielsweise ein Seitenverhältnis von 4:3, geben Sie zum Herunterladen des Kamerabilds mit einer Auflösung von 480 x 360 entweder die Breite oder die Höhe an:

Breite

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

Größe

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

Für die Download-URL gelten außerdem folgende Einschränkungen:

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

Informationen zu den Bildeigenschaften findest du unter dem Trait CameraImage .

Fehler

Die folgenden Fehlercodes können in Bezug auf dieses Merkmal zurückgegeben werden:

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

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