Soracom

Users

ドキュメント
Home ドキュメント SORACOM Flux Getting Started

複数のソラカメ対応カメラから静止画を定期的に取得する

複数のソラカメ対応カメラから静止画を定期的に取得して、SORACOM Harvest Files に保存する SORACOM Flux アプリ (以下、Flux アプリ) を作成します。

利用料金が発生する場合があります
  • 以下の条件でイベントが発生します。なお、プランに応じて、イベント数のバンドルが異なります。また、イベント数がバンドル分を超えると課金が発生します。料金について詳しくは、SORACOM Flux の料金プラン を参照してください。

    その結果、インターバルタイマーイベントソースで指定した時間間隔で 1 回のイベントが発生し、さらに、ソラカメ対応カメラの台数分 (3 台の場合は 3 回) のイベントが発生します。

  • SORACOM Harvest Files に

操作を始める前に準備が必要です (クリックして確認してください)

(1) SORACOM アカウント (オペレーター) を作成する

SORACOM アカウント (オペレーター) を作成します。また、支払い方法の登録も必要です。詳しくは、STEP 1: SORACOM アカウント (オペレーター) を作成する を参照してください。

(2) ソラカメ対応カメラを購入してクラウド常時録画ライセンスを割り当てる

ソラカメ対応カメラ、および Soracom Cloud Camera Services (ソラコムクラウドカメラサービス。略称: ソラカメ) については Soracom Cloud Camera Services を参照してください。

日本カバレッジで利用できます

ソラカメは、日本カバレッジのみで利用できます。カバレッジタイプについては、カバレッジタイプ (Coverage Type) の概要 を参照してください。

準備完了

ステップ 1: Flux アプリを作成する

  1. ユーザーコンソールにログイン し、日本カバレッジタイプを選択します。

    カバレッジタイプについては、SORACOM ユーザーコンソールで表示するカバレッジタイプを変更する を参照してください。

  2. [メニュー][SORACOM Flux][Flux アプリ] の順にクリックします。

  3. [+新しい Flux アプリを作成する] をクリックします。

  4. 以下の項目を設定します。

    項目説明
    [名前]Flux アプリの名前を入力します。
    [概要]Flux アプリの概要を入力します。

  5. [作成] をクリックします。

    Flux アプリが作成され、SORACOM Flux Studio の [Studio] タブが表示されます。

ステップ 2: インターバルタイマーイベントソースと連結するチャネルを作成する

  1. SORACOM Flux Studio の [Studio] タブで、[+チャネルを作成する] をクリックします。

    「新しいチャネルを作成」画面が表示されます。

  2. [インターバルタイマー][次へ] の順にクリックします。

    この Flux アプリでは、1 時間に 1 回の頻度で、メッセージをチャネルに送信するように設定します。

    インターバルタイマーイベントソースから、チャネルに送信されるメッセージについて詳しくは、インターバルタイマーイベントソース を参照してください。

  3. 以下の項目を設定します。

    項目説明
    [名前]チャネルの名前を入力します。
    [概要]チャネルの概要を入力します。
    [イベントソース設定]

    インターバルタイマーを設定します。

    項目説明
    [有効]「有効」にします。
    [スケジュール定義]実行間隔を設定します。ここでは 1 時間と設定します。
    [イベントペイロード]

    次のチャネルに送信するデータを指定します。ここでは画像を取得するソラカメのデバイス ID を、以下のように配列データ ([]) で指定します。

    {
    "soracam_device_ids": [
    "7CDDE90AAAAA",
    "7CDDE90BBBBB",
    "7CDDE90CCCC"
    ]
    }
    [説明]インターバルタイマー設定の説明を入力します。

  4. [チャネルを作成する] をクリックします。

    イベントソースに連結したチャネルが作成され、チャネルの詳細画面が表示されます。

  5. Esc キーを押すか、[×] (閉じる) をクリックします。

    SORACOM Flux Studio の [Studio] タブに戻ります。

ステップ 3: Republish アクションとアウトプットを送信するチャネルを作成する

インターバルタイマーイベントにあわせて、[イベントペイロード] に指定した配列データを分割して、新しいイベントを作成するように設定します。具体的には、Republish アクションと、Republish アクションのアウトプットを送信するチャネル (例: Output Channel チャネル) を作成します。

Republish アクションについて詳しくは、アクションリファレンスの Republish アクション を参照してください。

  1. ステップ 2: インターバルタイマーイベントソースと連結するチャネルを作成する で作成したチャネルをクリックします。

  2. [アクション][+アクションを追加] の順にクリックします。

    「新しいアクションを作成」画面が表示されます。

  3. [Republish][OK] の順にクリックします。

    「新しいアクションを作成: Republish」画面が表示されます。

  4. 以下の項目を設定します。

    項目説明
    [名前]Republish アクションの名前を入力します。
    [概要]Republish アクションの概要を入力します。
    [有効]「有効」にします。

  5. 続けて、以下の項目を設定します。

    項目説明
    [OUTPUT]

    Republish アクションのレスポンスを、別のチャネルに送信するかどうかを設定します。

    • [アクションのアウトプットを別のチャネルに送信する]: 「有効」にします。
    • [送信先チャネル]: [新しくチャネルを作成する] を選択して、[チャネル名] に「Output Channel」を入力します。

  6. [OUTPUT][高度な設定] をクリックして、以下の項目を設定します。

    項目説明
    [データを変換する]

    チェックを入れて、次のチャネルに送信するデータを設定します。

    項目説明
    [Content Type]Content Type を指定します。ここでは、application/json を選択してください。
    [Content]次のチャネルに送信するデータを指定します。ここでは、payload 内の配列 soracam_device_ids を次のチャネルに送信するために ${payload.soracam_device_ids} を入力します。
    [配列データを分割して、新規イベントとして送信する]

    チェックを入れて、次のチャネルに送信するデータを配列の要素ごとに新規イベントとして送信します。

    項目説明
    [間隔]配列の各アイテムの送信間隔を指定します。ここでは 2 秒を指定します。

  7. [作成する] をクリックします。

    Republish アクションが作成され、チャネルの詳細画面の [アクション] タブに戻ります。

  8. Esc キーを押すか、[×] (閉じる) をクリックします。

    SORACOM Flux Studio の [Studio] タブに戻ります。

ステップ 4: ソラカメ画像取得アクションを作成する

ソラカメ対応カメラのデバイス ID を受信したときに、ソラカメ対応カメラで静止画を撮影するように設定します。具体的には、ソラカメ画像取得アクションを作成します。

ステップ 3: Republish アクションとアウトプットを送信するチャネルを作成する で作成された Output Channel チャネルに渡された配列データは、Republish アクションの [OUTPUT][高度な設定] の設定に従って新規イベントとして送信されます。その結果、ソラカメ画像取得アクションが受信する ${payload} は、デバイス ID の配列データではなく、1 つのデバイス ID です。

ソラカメ画像取得アクションについて詳しくは、アクションリファレンスの ソラカメ画像取得アクション を参照してください。

  1. ステップ 3: Republish アクションとアウトプットを送信するチャネルを作成する で作成されたチャネルをクリックします。

  2. [アクション][+アクションを追加] の順にクリックします。

    「新しいアクションを作成」画面が表示されます。

  3. [ソラカメ画像取得][OK] の順にクリックします。

    「新しいアクションを作成: ソラカメ画像取得」画面が表示されます。

  4. 以下の項目を設定します。

    項目説明
    [名前]アクションの名前を入力します。
    [概要]アクションの概要を入力します。
    [有効]「有効」にします。

  5. 続けて、以下の項目を設定します。

    項目説明
    [CONFIG]

    ソラカメ画像取得を設定します。

    項目説明
    [デバイスID]画像を取得するソラカメのデバイスIDを設定します。ここでは、ステップ 3: Republish アクションとアウトプットを送信するチャネルを作成する[OUTPUT][高度な設定] に従って送信されたデバイス ID を使用するため ${payload} を入力します。
    [指定時刻]取得する画像の時刻を指定します。ここでは、ソラカメ画像取得アクションが実行される 5 分前の画像を撮影するために、${addMinutes(now(), -5)} を入力します。
    [SORACOM Harvest Files にエクスポートする]

    取得した画像を SORACOM Harvest Files に保存する場合にチェックを入れます。

    • [保存先のディレクトリを指定する]: 画像を保存するパスを指定します。ここではデバイス ID をパスに含めるため、/flux/soracam/get_images/${payload} を入力します。
    [操作を実行する SAM ユーザー]「新しく SAM User を作成する」をクリックします。
    [SAM User 名]SAM ユーザー名が表示されます。必要に応じて編集してください。

  6. [作成する] をクリックします。

    ソラカメ画像取得アクションが作成され、チャネルの詳細画面の [アクション] タブに戻ります。

  7. Esc キーを押すか、[×] (閉じる) をクリックします。

    SORACOM Flux Studio の [Studio] タブに戻ります。

(動作確認) ソラカメ対応カメラで撮影した静止画が Harvest Files にアップロードされることを確認する

ソラカメ対応カメラで撮影した静止画が、Harvest Files にアップロードされることを確認します。

テスト実行で Flux アプリを起動する

インターバルタイマーの起動を待つことなく、[テスト実行] タブで Flux アプリを実行できます。

  1. ステップ 2: インターバルタイマーイベントソースと連結するチャネルを作成する で作成したインターバルタイマーをクリックします。

  2. [イベントペイロード] の値をコピーします。

  3. [テスト実行] をクリックして、手順 2 でコピーした [イベントペイロード] の値を [Body] に貼り付け、[実行] をクリックします。

    テスト実行が開始され、ソラカメ対応カメラで撮影された静止画が Harvest Files にアップロードされます。

SORACOM Harvest Files のファイルを確認する

[保存先のディレクトリを指定する] で指定したパス (例: /flux/soracam/get_images/${payload}) に、ソラカメ対応カメラで撮影した静止画が保存されていることを確認します。Harvest Files の画像をユーザーコンソールでダウンロードする手順については、Harvest Files に保存したファイルをダウンロードする を参照してください。

Flux アプリの実行履歴を確認する

SORACOM Flux Studio の [実行履歴] タブでも、実行履歴を確認できます。

  1. ユーザーコンソールにログイン し、日本カバレッジタイプを選択します。

    カバレッジタイプについては、SORACOM ユーザーコンソールで表示するカバレッジタイプを変更する を参照してください。

  2. [メニュー][SORACOM Flux][Flux アプリ] の順にクリックします。

  3. ステップ 1: Flux アプリを作成する で作成した Flux アプリをクリックします。

  4. [実行履歴] をクリックします。

    チャネルごとに、[MESSAGE][CONTEXT]、そのチャネルで実行されたアクションの [入力][出力] が表示されます。詳しくは、実行履歴 (ログ) を参照してください。