CameraEventImage – Schema
Nest Cam (alt)
sdm.devices.traits.CameraEventImage
Dieses Attribut gehört zu allen Geräten, die die Generierung von Bildern aus Ereignissen unterstützen.
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 |
---|---|---|
Ereignis | Bewegung-Ereignis des Attributs „CameraMotion“ | Die Kamera hat Bewegung erkannt. |
Ereignis | Person-Ereignis der Eigenschaft „CameraPerson“ | Die Kamera hat eine Person erkannt. |
Ereignis | Ereignis vom Typ Ton des Attributs „Kamera-Ton“ | Die Kamera hat Geräusche erkannt. |
Ereignis | Ereignis Glocke des Attributs „DoorbellChime“ | Die Türklingel wurde gedrückt. |
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
Anfrage
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage
",
"params" : {
"eventId" : "plh0enulqA1vcalHIQdNX3AQoI..."
}
}
Antwort
{ "results" : { "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...", "token" : "g.0.eventToken" } }
Felder für GenerateImage-Anfragen
Feld | Beschreibung | Datentyp |
---|---|---|
eventId |
ID des Ereignisses, für das ein zugehöriges Kamerabild angefordert werden soll. | string Beispiel: „plh0enulqA1vcalHIQdNX3AQoI…“ |
Antwortfelder für „GenerateImage“
Feld | 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 Bilds im HTTP-Autorisierungsheader verwendet werden soll. | string Beispiel: „g.0.eventToken“ |
Kamerabild herunterladen
Führe einen GET-Aufruf an die url
aus einer GenerateImage- -Befehlsantwort aus, indem du die token
im HTTP-Autorisierungsheader mit Basic-Autorisierung verwendest, 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. Es muss nur einer dieser Parameter angegeben werden. Der andere Parameter wird automatisch entsprechend dem Seitenverhältnis der Kamera skaliert.
Beträgt das Seitenverhältnis der Kamera beispielsweise 4:3, wird das Kamerabild mit einer Auflösung heruntergeladen 480 x 360 geben entweder die Breite oder die Höhe an:
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 undheight
ignoriert. - Wenn keiner der Parameter in der URL angegeben ist, wird für
width
der Standardwert 480 verwendet.
Weitere Informationen finden Sie in der Kamera-Bild für Informationen zum Bild Eigenschaften.
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 vor Ablauf herunter. |
Die Ereignis-ID gehört nicht zur Kamera. | FAILED_PRECONDITION |
Verwenden Sie die richtige eventID , die vom Kameraereignis zurückgegeben wird. |
Siehe API-Fehlercode-Referenz für die vollständige Liste der API-Fehlercodes.