CameraEventImage 結構定義
Nest Cam (舊版)
sdm.devices.traits.CameraEventImage
這項特性屬於任何支援透過事件產生圖片的裝置。
欄位
此特徵沒有可用的欄位。
指令
GenerateImage
提供相機圖片的下載網址。
這個指令支援下列事件:
類型 | 元素 | 說明 |
---|---|---|
活動 | CameraMotion 特徵的 動態事件 | 攝影機偵測到動作。 |
活動 | CameraPerson 特徵的 Person 事件 | 攝影機偵測到一個人。 |
活動 | 相機音效特性的音效事件 | 攝影機偵測到聲響。 |
活動 | 門鈴核心特性的 Chime 事件 | 已按下門鈴。 |
eventId
,取得該事件相關相機圖片的下載網址。
GenerateImage 要求和回應
要求
POST /enterprises/project-id/devices/device-id:executeCommand
{
"command" : "sdm.devices.commands.CameraEventImage.GenerateImage
",
"params" : {
"eventId" : "8NYaH5PZ6kftObq1UK3k6qfOcC..."
}
}
回應
{ "results" : { "url" : "https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...", "token" : "g.0.eventToken" } }
GenerateImage 要求欄位
欄位 | 說明 | 資料類型 |
---|---|---|
eventId |
要求相關相機圖片的事件 ID。 | string 例如:「8NYaH5PZ6kftObq1UK3k6qfOcC...」 |
GenerateImage 回應欄位
欄位 | 說明 | 資料類型 |
---|---|---|
url |
相機圖片的下載網址。 | string 例如:「https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...」 |
token |
下載圖片時要在 HTTP Authorization 標頭中使用的權杖。 | string 範例:「g.0.eventToken」 |
下載相機圖片
透過 GenerateImage
指令回應,透過 GenerateImage
指令回應,對 url
發出 GET 呼叫,並下載相機圖片,方法是使用 HTTP Authorization 標頭中的 token
,以下載相機圖片:
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...
使用 width
或 height
查詢參數來自訂下載圖片的解析度。只需要指定其中一個參數。另一個參數會根據相機的長寬比自動縮放。
舉例來說,如果相機的顯示比例為 4:3,如要下載解析度為 480 x 360 的相機圖片,請指定寬度或高度:
寬度
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?width=480
身高
curl -H "Authorization: Basic g.0.eventToken" \
https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...?height=360
下載網址須遵守其他限制:
- 如果在網址中提供兩個參數,系統會使用
width
並忽略height
。 - 如未在網址中提供這兩個參數,系統會為
width
選擇預設值 480。
如要瞭解圖片屬性,請參閱 CameraImage 特徵。
錯誤
系統可能會根據這項特徵傳回下列錯誤代碼:
錯誤訊息 | RPC | 疑難排解 |
---|---|---|
系統不再開放下載相機圖片。 | DEADLINE_EXCEEDED |
活動圖片會在活動發布的 30 秒後過期。請務必在到期前下載圖片。 |
事件 ID 不屬於攝影機。 | FAILED_PRECONDITION |
使用攝影機事件傳回的正確 eventID 。 |
如需 API 錯誤代碼的完整清單,請參閱 API 錯誤代碼參考資料。