実現できる機能

SORACOM Funnel との連携機能を使用すると、SORACOM にアップロードされた JSON データを Thing Interaction Framework のステートとして保存できます。

これにより、以下のような機能を利用できます。

  • Thing Interaction Framework の ステート および ステート履歴 の機能を利用できます。
  • ステートに関連する トリガー などの機能を利用できます。
  • モバイルアプリ から最新のステートを参照したり、REST API でステート履歴を検索、取得したりできます。
  • Thing Interaction Framework の 初期登録 でのセキュリティ機能により、オーナーユーザーだけがステートを参照できるようにアクセス権が設定されます。

なお、SORACOM Funnel を通して Thing Interaction Framework の コマンド を Thing に送信することはできません。

仕組み

SORACOM 経由でのアップロードを行うため、SORACOM Funnel の設定で、特定の SIM グループ と Kii Cloud を紐付けます。

Kii Cloud では、ステートの登録用の URL を用意しています。SIM グループの設定画面で以下の URL を指定すると、その SIM グループに所属している SIM からのデータが、URL で指定した Kii Cloud 内の Thing 用の Bucket に転送されます。

https://api-jp.kii.com/thing-if/apps/{APP_ID}/targets/VENDOR_THING_ID:#{IMSI}/states

URL のうち、{APP_ID} 部分は Kii Cloud の AppID を埋め込んで指定しますが、#{IMSI} はそのままの文字列で指定します。

この URL を指定することで、1 つの SIM グループの設定で、複数の SIM を束ねて SORACOM Funnel を利用することができます。

URL では、#{IMSI} の指定によって SORACOM の IMSI(SIM の識別番号)を設定します。これは、SORACOM Funnel が提供している プレースホルダ機能 を使っています。SORACOM Funnel が Kii Cloud を呼び出す際に、URL の #{IMSI} が実際の IMSI の値に置き換わります。

#{IMSI} を指定している VENDOR_THING_ID: のパラメーターは、Kii Cloud では vendorThingID として扱います。vendorThingID は Kii Cloud 上に Thing を登録する際に、サービス側で割り当てることができる ID です(Kii Cloud 側で割り当てられる thingID もあります)。これにより、ステートをアップロードした SIM と、Kii Cloud 上の Thing が一意に紐付いてステートを保存することができます。

なお、LoRa グループや Sigfox グループも、SIM と同様にプレースホルダ機能を使って設定できるはずです。使用する環境に応じて、#{IMSI}#{IMEI}#{deviceId} などを使い分けてください。