概要
分析用の画像入力として使用したり、証拠として表示したりまたはライブビデオ画像の自動収集を行う場合など、Arculesのウェブアプリケーションは、APIを通じてライブストリームのサムネイル画像を取得するオプションを提供しています。
前提条件
アーキテクチャに追加されたCametra-to-Cloud ("C2C")は、オンライン且つインターネットに接続されている必要があります
Arculesゲートウェイ に追加されたカメラもオンラインである必要があります(ゲートウェイもインターネットアクセスが必要です)
ユーザーはポータルで、APIのユーザー権限が割り当てられている必要があります
方法
1. /login APIサービスを使用してJWTトークンをリクエストします(このJWTトークンはAPIの後続の呼び出しで使用されます)
2. サムネイル画像をキャプチャしたいカメラの特定のチャンネルの識別子を取得します。チャンネルの識別子(channelIdと呼ばれる)は2つのソースから取得できます:
Arcules APIの/devicesエンドポイントを使用する。
Arculesプラットフォーム:デバイスセクションに移動し、特定のデバイスを選択し、その後URLに移動して"selected="パラメーターの後に表示される識別子をコピーします。
上の画像では、識別子は69eb770a-269d-4dec-9c68-0a55a156723eです。
3. /thumbnail/{channelId}/live サービス(例:/thumbnail/7ae4ad0.../live)を使用して、そのチャンネルのライブ画像をリクエストします。
/thumbnail/69eb770a-269d-4dec-9c68-0a55a156723e/live
4. この応答として、バイナリ形式でサムネイル画像を取得します。形式は常にJPEGです。
注意:画像品質はカメラの録画解像度設定に基づきます。
例
以下の手順では、米ドル記号 $ はターミナルプロンプトを示し、その後にコマンドが続きます。$ で始まらない行は、ターミナルからの出力を示します。出力に省略記号 ... が含まれている場合は、切り捨てを示します。実際の出力はもっと長くなります。
ステップ1
メールアドレスとパスワードを使用してログインします。
予想される出力:エラーメッセージまたはJSON形式のJWTトークン。
$> curl -X POST "https://msapi.arcules.com/v1/login" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"email\":\"EMAIL_GOES_HERE@EMAIL_GOES_HERE.COM\",\"password\":\"PASSWORD_GOES_HERE\"}"
{"jwtToken":"eyJhbGciOi..."}
ステップ2
後で使用するためにJWTトークンを環境変数に保存する(例:スクリプト内での使用)。 このステップは、curlコマンドによって返された値が有効なJWTトークンであることを前提としています。
注:プロダクションコードではここでエラーチェックを行うべきです(詳細省略)。
$> JWT_TOKEN=`curl -X POST "https://msapi.arcules.com/v1/login" -H "accept: application/json" -H "Content-Type: application/json" -d "{\"email\":\"EMAIL_GOES_HERE@EMAIL_GOES_HERE.COM\",\"password\":\"PASSWORD_GOES_HERE\"}" 2>/dev/null`
$> JWT_TOKEN=${JWT_TOKEN:13:-2}
ステップ3
組織のすべてのデバイスを取得する。 このステップは、環境変数 JWT_TOKEN が有効なJWTトークンを含んでいることを前提としています(第二ステップを参照)。
予想される出力:エラーメッセージまたはJSON形式でのデバイスのリストおよびページネーションカーソル。
{"devices":[{"id":"ID_GOES_HERE","name":"NAME_GOES_HERE","type":"TYPE_GOES_HERE","locationId":"LOCATION_ID_GOES_HERE","gatewayId":"GATEWAY_ID_GOES_HERE"}],"page":{"previous":null,"current":"","next":null}}
ステップ4
チャンネルからJPEGサムネイルを保存する。 このステップは、環境変数 JWT_TOKEN が有効なJWTトークンを含んでいることを前提としています(第二ステップを参照)。
さらに、環境変数 CHANNEL_ID がビデオタイプのデバイスのIDを含んでいることを前提としています(第三ステップを参照)。
予想される出力:エラーメッセージまたは有効なJPEG画像。
注:本番コードではここでエラーチェックを行うべきです(詳細省略)。
$> curl -X GET 'https://msapi.arcules.com/v1/thumbnail/'$CHANNEL_ID'/live' -H 'accept: image/jpeg' -H 'Authorization: Bearer '$JWT_TOKEN --output OUTPUT_FILE_NAME.jpg 2>/dev/null
Arcules APIに関する詳細情報はこちらで見つけることができます。