💬

エンジニアのためのSORACOM 再入門ハンズオン

2023/07/07に公開

はじめに

SORACOM のSIMまたはバーチャルSIMさえあれば利用可能となる便利なIoTプラットフォーム機能をハンズオンで動かしながら、改めてSORACOMの仕組みを理解していきましょう。

1. SORACOM ArcでSORACOMに接続する

Virtual SIM/Subscriberを作成して、インターネット経由でSORACOMプラットフォームに接続します。

1.1 Virtual SIMの作成・SORACOMへの接続

Virtual SIMの作成方法 SORACOMプラットフォームへの接続方法はいくつかあります。

1.1 パターンA. soratunによる接続(mac/Linux向け)

soratunのインストール

こちらの手順でご自身のPCのOS,アーキテクチャにあったsoratunをインストールします。
https://users.soracom.io/ja-jp/docs/arc/install-soratun/

soratunでvirtualSIM/subscriberをブートストラップする

こちらの手順でブートストラップ(=バーチャルSIMsubscriberの作成と、PCへの配置)を行います
https://users.soracom.io/ja-jp/docs/arc/bootstrap-authkey/

$ sudo soratun up --config /path/to/arc.json
まで実行できたら接続完了です!

ついでに、ユーザーコンソールからバーチャルSIMが追加されていることを確認してみましょう

1.1 パターンB. wireguardによる接続(windows向け)

wireguardをインストール

こちらのサイトからwindows向けのwireguardクライアントをインストールします。
https://www.wireguard.com/install/

ユーザーコンソールでvirtualSIM/subscriberを作成する

こちらの手順でユーザーコンソールからバーチャルlSIM/subscriberを作成します.
(プライマリサブスクリプションのバーチャル SIM/Subscriberを作成)
https://users.soracom.io/ja-jp/docs/arc/create-virtual-sim/

トンネルの編集

トンネルを追加します

接続情報の入力

インターフェースの有効化

1.2 接続の確認

pong.soracom.ioという、SORACOMプラットフォームに接続していないとアクセスできないサーバーに対してpingを打ってみます

ping -n 3 pong.soracom.io

soratunを停止/wireguard無効化して接続できないことも確認してみましょう

2. デバイスリードパターンの双方向通信体験

今回はデバイスリードパターンの双方向通信を体験します。

2.1 メタデータサービスの活用

2.1.1 作成したバーチャルSIMをグループに入れる

SIMを選択して所属グループ変更を実施します。

今回は新しいグループを作成しましょう

2.1.2 メタデータを設定する

こちらの手順でメタデータを設定します。
https://users.soracom.io/ja-jp/docs/air/use-metadata/#メタデータサービスを設定する

このとき、ユーザーデータに好きな文字を入れてみます。

保存ボタンをクリックします。

2.1.3 メタデータを参照する

SORACOMプラットフォームに接続した状態でメタデータを確認してみましょう

curl -s http://metadata.soracom.io/v1/userdata

先ほど記載したデータが返ってくれば成功です。

2.2 SORACOM Harvest Filesの活用

今回はSORACOM Harvest Filesで、デバイスへのファイルの送り込みを体験します。

2.2.1 SORACOM Harvest Filesへのファイルアップロード

以下の手順でSORACOM Harvest Files を有効化します
https://users.soracom.io/ja-jp/docs/harvest/enable-files/

以下の手順でユーザーコンソールから任意のファイルをアップロードします
https://users.soracom.io/ja-jp/docs/harvest/send-files/#ユーザーコンソールでファイルを-harvest-files-にアップロードする

2.2.2 SORACOM Harvest Filesからのファイルダウンロード

SORACOMプラットフォームに接続した状態でSORACOM Harvest Fileからデータをダウンロードしてみましょう

curl -O http://harvest-files.soracom.io/path/to/filename

path/to/filename はデータを保存した保存先です。

3. TCP バイナリを使ったデータ送信

今回はUnified endpoint -> バイナリパーサー -> SORACOM Harvest Dataの経路でのデータ送信を体験します。

3.1 Unified endpointにバイナリデータを送る

以下の手順でSORACOM Harvest Dataを有効化します
https://users.soracom.io/ja-jp/docs/harvest/enable-data/

unified endpointのエントリポイントにTCPでデータを投げてみます。
(10203040をchar[]で送信します。)

nc -v unified.soracom.io 23080
10203040

3.2 SORACOM Harvest Dataを使ったデータの確認

こちらの手順で確認します。
https://users.soracom.io/ja-jp/docs/harvest/visualize/

3.3 バイナリパーサーを設定する

データを10、20、30、40に分解するための呪文を設定します。

param1:0:char:2 param2:2:char:2 param3:4:char:2 param4:6:char:2

呪文の仕様:
https://users.soracom.io/ja-jp/docs/binary-parser/custom-format/

こちらの手順で設定していきます。
https://users.soracom.io/ja-jp/docs/binary-parser/usage/

※必要に応じてbinary parser playgroundを使ってデバッグをすることができます
https://binary-parser-playground.soracom.io/

3.4 SORACOM Harvest Dataを使ったデータの確認

再びこちらの手順で確認します。
https://users.soracom.io/ja-jp/docs/harvest/visualize/

以上
お疲れ様でした!

Discussion