MENU

Soracom

Users

Harvest Files でデバイスのファイルをクラウドに送信する

このドキュメントでは、Harvest Files を使ってデバイスのファイルをクラウドに保存し、そのファイルをコンソールで確認する手順を紹介します。当ガイドの前提は以下のとおりです。

  • SORACOM のアカウントを作成済みであること
  • SORACOM Air の SIM、および使用できるデバイスが準備されていること

ステップ 1: Harvest Files を有効化する

SIM をグループに所属させる

SORACOM Harvest Files の設定はグループ単位で行います。そのため、Harvest Files を使うには IoT SIM をグループに登録する必要があります。今回は、動作確認として SORACOM Harvest Files のグループを作成し、そのグループに SIM を登録してみましょう。

まず SIM 管理画面を開いて、SORACOM Harvest Files でデータ収集を行いたい SIM にチェックマークを付けます。続いて、[操作] ボタンから [所属グループ変更] を選択します。

IoT SIM の所属グループを選択するためのダイアログが表示されたら、[新しい所属グループ] ドロップダウンから [新しいグループを作成…] を選択します。

以下のようなグループ作成ダイアログが表示されます。グループの名称を入力して [グループ作成] ボタンをクリックします。 今回は"hello harvest"というグループ名で作成してみましょう。

[グループ作成] ボタンを押すと元の [SIM の所属グループ変更] ダイアログに戻ります。 [新しい所属グループ] ドロップボックスが、今作成した hello harvest グループになっていることを確認し [グループ変更] ボタンを押します。

続いて、Harvest Files を有効化します。

Harvest Files を有効化する

Harvest Files は、設定を有効化すればすぐにファイルを送信できます。Harvest Files の設定を有効化した状態で、SORACOM Air の SIM から通信を行っているデバイスから、Harvest Files のエントリポイントへファイルを送信すると SORACOM のプラットフォーム上にファイルが保存されていきます。

コンソール にログインして、SIM グループから「SORACOM Harvest Files 設定」で以下のように設定します。

グループ設定の詳細は リファレンス: グループ設定 をご確認ください。

Harvest Files アップロードが完了したファイルのサイズによって料金が発生します。詳しくは 料金表 を確認してください。

ステップ 2: ファイルを Harvest Files に送信する

Harvest Files は HTTP に対応しています。Harvest Files エントリポイント(セルラー)宛に HTTP POST もしくは PUT リクエストを送信してください。

コマンド例: 以下の場合、送信したファイル「a.png」は、グループ設定で指定したdefaultPathのパス、ファイル名として保存されます。

curl -v -X PUT --data-binary @a.png -H "content-type:image/png" http://harvest-files.soracom.io/

以下の場合、パスを指定しているため、送信したファイル「a.png」は、/logs/a.png として保存されます。

curl -v -X PUT --data-binary @a.png -H "content-type:image/png" http://harvest-files.soracom.io/logs/a.png

Harvest Files では SORACOM API やコンソールからファイルをアップロードすることが可能です。上書きや削除も可能となりますので、ユーザーに割り当てる権限にはご注意ください。権限制御の詳細は SORACOM Access Management をご確認ください。

以下は例となります。API_KEY や API_TOKEN の取得方法は SORACOM API 利用ガイド をご確認ください。

curl -X PUT -H "Content-Type: text/x-sh" -H "X-Soracom-API-Key: ${API_KEY}" -H "X-Soracom-Token: ${API_TOKEN}" --data-binary @test.sh "https://api.soracom.io/v1/files/private/sample/test.sh"

ステップ 3: Harvest Files に収集されたファイルを確認する

ユーザーコンソールでは、Harvest Files で保存されたファイルを確認およびダウンロードできます。

コンソールのメニューから「SORACOM Harvest Files」を選択します。

保存されたファイルは当メニューから確認およびダウンロードできます。

ステップ 4: デバイスから Harvest Files のファイルをダウンロードする

デバイス側からは以下の例のようにファイルのダウンロードが可能です。

curl -O http://harvest-files.soracom.io/sample/test.sh

また、以下の例のようにファイルのメタ情報を確認できます。ETag(エンティティタグ) もあるため、定期的に監視して変更があった時のみにダウンロードするという応用も考えられます。

(例)

$ curl -I http://harvest-files.soracom.io/sample.txt
HTTP/1.1 200 OK
Date: Tue, 13 Aug 2019 08:26:47 GMT
Content-Type: plane/text
Content-Length: 0
Connection: close
ETag: aa79f62afe95f7f550dff6e544bbb69e