こんにちは!クラウド型カメラサービス「ソラカメ」と、SORACOM Fluxの事業責任者を担当しております高見(ニックネーム:yuu)です。
2025年6月25日にソラカメ撮影画像を活用したIoTアプリケーションの作成がより簡単に作れる「ソラカメ画像取得アクション」がSORACOM Fluxに実装されましたので皆さんにご紹介させてください!
SORACOM Fluxとは?
皆さんの現場業務をIoTアプリケーションを用いて自動化したいとなった場合、「デバイスからの情報収集」、「クラウド側での論理判定」、「デバイスやユーザーへの通知、制御」の大きく3つの機能を実装する必要があります。

これら3つの要素を一気通貫で、ユーザーインターフェース上ですべてを設定し、IoTアプリケーションをローコードで作れてしまうのが「SORACOM Flux」です。

SORACOM Flux 「ソラカメ画像取得アクション」とは?
SORACOM Fluxでは、App Studioというユーザーインターフェースで、以下のようなワークフローを設定するだけでIoTアプリケーションが手軽に作れます。

連携するデバイスはソラカメ以外にも弊社SIM(Soracom Air)やリファレンスデバイス(GPSマルチユニット等)との連携も手軽にできるのですが、今回ご紹介する「ソラカメ画像取得アクション」は、ソラカメを使ってSORACOM Flux App StudioでIoTアプリケーションを作るときに便利な機能です。

何が楽になったの?
今までは、ソラカメで撮影した画像をFluxに連携するためには、SORACOM APIアクションを用いて設定していました。詳細は下図のとおりです。
大きく2点が非エンジニアのユーザーの皆様にとっては課題であったと考えております。
- JSON形式で入力する部分(SORACOM Harvest Filesへの一時保存パスをHTTPリクエストのボディ部に設定)があり、非エンジニアのユーザーの皆様には少々難解であった。
- ソラカメ録画映像から静止画を抜き出し、Harvest Filesに保存した上で生成 AI に解析リクエストを投げているため、Harvest Filesの費用が発生していた。Lagoonなどで解析前画像を表示する必要がないユーザーにとっては不要であった。

しかし、今回ソラカメ画像アクションがリリースされたことで以下が改善されました。詳細は下図をご参照ください。
- JSONでの記述が不要になり、ソラカメのデバイスID(MACアドレス)をフィールドに入力するだけでOKになりました。
- 解析前画像が不要なユーザーは、SORACOM Harvest Filesを利用しない(SORACOM Fluxが解析後に画像は自動消去)ため、Harvest Filesの料金が発生しなくなりました。なお、Harvest Filesに保存したいユーザーは「SORACOM Harvest Filesにエクスポートする」チェックボックスにチェックをつけるだけで引き続き保存することも選択可能です。(Harvest Filesの保存先Pathは指定が可能です)

具体的な使い方
ソラコムユーザーガイドには、既にソラカメ画像取得アクションについて記載されておりますが、Flux Appを作成する流れをstep by stepで知りたいというご希望が多いため、Fluxアプリの作成方法をご紹介いたします。
今回は、定期的(10分間隔等)にソラカメ録画映像からソラカメ画像取得アクションを用いて静止画を取得し、生成 AI で「画像内に何人いるか数える」解析し、1名以上が検知されたらメール通知をする滞在人数カウントアプリの作り方を例にとってご紹介させて頂きます。
※ここから実際に Flux でのアプリ設定をお試しされる方、SORACOMアカウントのSAMユーザー (SORACOM Access Management によって作成できる権限を制御されたユーザー) ではなく、必ずルートユーザー (管理ユーザー) としてログインの上、操作してください。Email アクションでメールアドレスを指定するために、ルートユーザーによる Flux アプリの設定が必要です。

SORACOMユーザーコンソール左側のメニューから「SORACOM Flux」>「Fluxアプリ」>「新規Fluxアプリを作成する」をクリックすると以下画面が表示されます。
「チャネルを作成する」をクリックします。

すると、次のウィンドウが表示されるので「インターバルタイマー」を選択し、「次へ」を押してください。

インターバルタイマーをアプリを作成している最中に起動しないように「無効」にした上で、スケジュール定義で「10分に1度」に設定し、「チャネルを作成」を押します。
※実際には時間間隔は皆様のご希望の間隔で設定していただいて問題ありません。ただし、イベント数やクレジット数に応じた料金体系になっていますので、SORACOM Fluxの料金をご確認頂いた上で設定頂きますようお願い致します。

次に「アクション」タブをクリックして、「アクションを追加」ボタンを押します。

「ソラカメ画像取得」アクションを選択して、「OK」をクリックします。

次に、以下画面でデバイスIDの欄に、画像を取得したいソラカメのデバイスID(MACアドレス)を入力します。ソラカメのデバイスID確認方法はこちらのリンクをご参照ください。

下にスクロールするとまだ画面の続きがあります。アクションのアウトプットを別のチャネルに送信するを「有効」にして、「作成する」ボタンを押します。
※取得した結果を次の AI アクションに渡して解析したいので、次のチャネルに渡すので「有効」にします。

完了すると、次のようなワークフローがFlux App Studioに表示されていれば正しいです。
次に一番右側のOutputチャネルをクリックします。

すると次のウィンドウがでますので、アクションタブを押して、「アクションを追加」をクリックします。

そして、「AI」アクションを選択して、「OK」を押してください。

AI アクションの設定画面が開きますので、AI モデルについては、参考例としてプルダウンから「Google Gemini 2.0 Flash」を選択しています。(生成 AI モデルによってクレジット消費量が異なります。予めSORACOM Fluxの料金を確認の上、ご自身でモデルをご選択ください。)
プロンプトについては、以下のように記述します。
# リクエスト内容 "静止画中の人数カウント" 添付された画像について、画像に映り込んでいるすべての人物(部分的に写っている人も含む)を数えてください。 # 画像の前提 この画像はオフィス室内(執務エリア)を撮影したものです。 # 物体検知の方針 一部が隠れていたり、鮮明でない人物も、推定されるものはすべてカウント対象としてください。 # 出力フォーマット 結果は必ず以下のようなJSONフォーマットで返してください。 {"person":2}
そして、「AI からの返答をJSON形式にする」と「AI に画像を読み込ませる」の2つのチェックボックスに両方ともチェックを入れてください。「AI に画像を読み込ませる」の下のフィールドには、1つ前のアクション「ソラカメ画像取得」アクション出力されてくるチャネルから、静止画保存先のURLを指定するために、以下のように記述してください。
この記載方法についてはユーザーガイド「アクション、コンディションの記法」をご確認ください。
簡単に説明すると${ }は変数を指定するときのルールです。${payload.imageUrl} の “payload” は1つ前のアクション結果が出力されるチャネルを指し、その出力結果の内、”imageUrl” という変数を指します。つまり、”payload.imageUrl” は、1個前の「ソラカメ画像取得」アクションで取得した静止画の格納先の URL を意味してます。
${payload.imageUrl}

少し下にスクロールし、「アクションのアウトプットを別のチャネルに送信する」が有効になっていることを確認し、チャネル名を「AI Output」と入力し、「作成する」ボタンを押します。

続いて、ウィンドウ上部の「アクション」タブを押して、「アクションを追加」を押します。

「Email通知」アクションを選択して、「OK」を押します。

最後に、Email通知の設定をします。
生成 AI による解析の結果、人物が1名以上いた場合だけ、メール通知をしたいので、アクションの実行条件のフィールドに以下のように入力します。
payload.output.person >= 1
メールの送信先については、Toの欄にプルダウンからメールアドレスを選択して入力します。
選択できるメールアドレスのリストはご利用のSORACOMアカウントに予め登録されているメールアドレスの中から選択ができます。SORACOMアカウントには登録していないメールアドレスの場合はこちらのユーザーガイド記載の方法にて、メールアドレスを追加してから、プルダウンで選択してください。
なお、Email通知はSORACOMアカウントのルートユーザーでのみ設定可能です。SAMユーザーでSORACOM Fluxを操作している方はご利用頂けません。予めご了承ください。
件名は任意の名前を設定してください。今回参考例として、「オフィスで人物を検知しました。」と件名を設定しています。
本文は以下の通り、設定します。
現在、オフィスに${payload.output.person} 人います。
本文まで入力したら、「作成する」ボタンを押します。(下図では「更新する」になっていますが、初めて設定する場合は「作成する」と表示されます。)

以上ですべての設定が完了し、以下のようなワークフローがFlux App Studioに表示されていれば完成です。お疲れ様でした。

では、実際に動作するか試してみましょう。
上図で一番左側の緑色のボックス「インターバルタイマー」をクリックしてください。上部の「テスト実行」タブを押して、「実行」ボタンを押します。この操作で、任意のタイミングで1回だけテスト実行することができます。

数秒後には以下のようにメールが予め設定したメールアドレス宛に届くかと思います。
これでオフィスの滞在人数カウントアプリの完成です。

テストしてみて、実際にこのまま定期的に実行してしばらく使ってみたいという方は、「イベントタイマー」の緑色のブロックをおして、「イベントソース」タブから、Timerを「有効」にしてください。
有効にすると設定した時間間隔で実際にFluxアプリが起動しつづけるようになります。(なお、予めSORACOM Fluxの料金をご確認の上、有効設定をするようにしてください。)

まとめ
いかがでしたでしょうか?今回のブログでお伝えしたかったことはこちらです。
- SORACOM Fluxにてソラカメと連携したアプリを作る場合に、より簡単に設定できる「ソラカメ画像取得」アクションがリリースされました。
- 具体的には以下2点がこれまでの設定方法と比較した場合の改善点です。
- ソラカメ録画データから分析用静止画を切り出す部分の設定において、JSON記述が不要になり、カメラのデバイスID(MACアドレス)を入力するだけで良くなった。
- 解析前の静止画保存が不要な方は、SORACOM Harvest Filesの料金を発生させずにソラカメと連携したFluxアプリが作れるようになった。
- 「ソラカメ画像取得」アクションを利用した「滞在人数カウントアプリ」の設定方法をstep by stepでご紹介。
お知らせ
最後に宣伝させてください!!
弊社最大のイベント「SORACOM Discovery2025」が約3週間後に迫ってまいりました。
本日ご紹介したSORACOM Fluxやソラカメの最新アップデート情報の発表に加えて、展示ブースで実物やデモをご覧頂けます。また、現地でしか見られないソラコムの社員や業界の専門家、IoTを活用する企業のゲストスピーカーがIoTのビジネス活用事例、最新動向、未来のビジョンについて語るセッションが約30あります!
さらにソラコムの展示ブースに加えて、30社を超えるパートナー企業の皆様の展示ブースもあり、盛りだくさんの内容となっております。
年に1回の日本最大級のIoTイベントですのでまだ参加申し込み(無償)されていない方がいらっしゃいましたら、以下URLよりぜひお申し込みの上、お越しください。
https://discovery.soracom.jp/2025/index.html
それでは、当日会場で皆様にお会いできること楽しみにしております。
― ソラコム高見 (yuu)