CameraEventImage スキーマ

Google Nest Cam(旧型) Google Nest Hub Max Google Nest Doorbell(旧型) 

sdm.devices.traits.CameraEventImage

このトレイトは、イベントからの画像生成をサポートするデバイスに使用します。

フィールド

このトレイトで使用できるフィールドはありません。

コマンド

GenerateImage

カメラ画像をダウンロードする URL を提供します。

このコマンドは、次のイベントをサポートしています。

タイプ 要素 説明
イベント CameraMotion トレイトの Motion イベント カメラが動きを検出しました。
イベント CameraPerson トレイトの Person アクティビティ カメラが人物を検出しました。
イベント CameraSound トレイトのサウンド イベント カメラが音を検出しました。
イベント DoorbellChime トレイトの Chime イベント ドアホンが押されました。
コマンド リクエストで、サポートされているイベントの eventId を使用して、そのイベントに関連するカメラ画像のダウンロード URL を受信します。

GenerateImage のリクエストとレスポンス

リクエスト

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

レスポンス

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

GenerateImage リクエスト フィールド

フィールド 説明 データ型
eventId 関連するカメラ画像をリクエストするアクティビティの ID。 string
例: 「LBK6lwPD6Nj0YoNGu6-BoPdcfq...」

GenerateImage レスポンス フィールド

フィールド 説明 データ型
url カメラ画像をダウンロードする URL。 string
例: 「https://domain/sdm_event_snapshot/dGNUlTU2CjY5Y3VKaTZwR3o4Y1...」
token イメージのダウンロード時に HTTP 認証ヘッダーで使用するトークン。 string
例: "g.0.eventToken"

カメラ画像をダウンロードする

GenerateImage コマンド レスポンスから url に GET 呼び出しを行い、HTTP 認証ヘッダーで token を使用して基本認証を行い、カメラ画像をダウンロードします。

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

width または height クエリ パラメータを使用して、ダウンロードした画像の解像度をカスタマイズします。これらのパラメータのうち、指定する必要があるのは 1 つのみです。もう一方のパラメータは、カメラのアスペクト比に応じて自動的にスケーリングされます。

たとえば、カメラのアスペクト比が 4:3 の場合、解像度 480x360 のカメラ画像をダウンロードするには、幅または高さのいずれかを指定します。

幅

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

ダウンロード URL には、次の制限も適用されます。

  • URL に両方のパラメータが指定されている場合は、width が使用され、height は無視されます。
  • URL にどちらのパラメータも指定されていない場合、width のデフォルト値として 480 が選択されます。

画像プロパティの詳細については、 CameraImage トレイトをご覧ください。

エラー

このトレイトに関連して、次のエラーコードが返されることがあります。

エラー メッセージ RPC トラブルシューティング
カメラの画像はダウンロードできなくなりました。 DEADLINE_EXCEEDED イベント画像は、イベントが公開されてから 30 秒後に期限切れになります。有効期限が切れる前に画像をダウンロードしてください。
イベント ID がカメラに属していません。 FAILED_PRECONDITION カメラ イベントから返された正しい eventID を使用します。

API エラーコードの完全なリストについては、API エラーコードのリファレンスをご覧ください。