Soracom

Users

ドキュメント

SORACOM Funnel を有効化する

グループ の SORACOM Funnel 設定を有効化する手順を説明します。

IoT SIM、LoRaWAN デバイス、Sigfox デバイスに対して Funnel を有効化するには、グループを作成し、グループの SORACOM Funnel 設定を有効化して、そのグループに IoT SIM、LoRaWAN デバイス、Sigfox デバイスを所属させます。

Funnel の設定はグループに対して行います

ここでは、グループの設定を変更する操作のみを説明します。グループの仕組みやグループを作成する操作について詳しくは、グループ設定 を参照してください。

  1. SIM グループ画面、LoRa グループ画面、Sigfox グループ画面、またはデバイスグループ画面で [SORACOM Funnel 設定] をクリックします。

    各画面を表示する操作について詳しくは、グループの設定を変更する を参照してください。

    SORACOM Funnel 設定画面が表示されます。

  2. スイッチをクリックして「ON」にします。

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

    項目説明
    [転送先サービス]データ送信先のクラウドサービスの種類を選択します。
    [転送先 URL]データ送信先のクラウドサービスの URL
    [認証情報]クラウドサービスへのアクセスに必要な認証情報
    [送信データ形式]デバイスから Funnel へ送信するデータの形式。Funnel から送信されるデータフォーマット を参照してください。
    [SIM ID を追加][転送先 URL]#{simId} のプレースホルダーを指定した場合や、Funnel から送信されるデータに SIM ID を含める場合は、ON にします。
    [ペイロードのみ転送する]IMSI やタイムスタンプなどのメタデータを含めずに、デバイスから Funnel に送信したデータのみを転送する場合は、ON にします。詳しくは、Funnel から送信されるデータフォーマット を参照してください。
    [バイナリ形式で転送する] (*1)Funnel から送信されるデータフォーマット を参照してください。
    [エントリポイント]デバイスから Funnel にデータを送信する際の URL など。詳しくは、エントリポイント一覧 を参照してください。
    • (*1) [転送先サービス] で「AWS IoT」を選択し、[送信データ形式] で「バイナリ」を選択して、[ペイロードのみ転送する] を ON に設定した場合のみ表示されます。
    [転送先 URL] にはプレースホルダーを指定できます

    プレースホルダーは、データ送信時にデバイスごとの値に置き換わります。

    • IoT SIM で通信を行う場合:
      • #{imsi}: IMSI
      • #{simId}: SIM ID。[SIM ID を追加] を ON にした場合のみ、値に置き換わります。
      • #{imei}: IMEI
    • LoRaWAN で通信を行う場合:
      • #{deviceId}: LoRaWAN デバイス ID
    • Sigfox で通信を行う場合:
      • #{deviceId}: Sigfox デバイス ID
    • Inventory で管理するデバイスで通信を行う場合:
      • #{deviceId}: デバイス ID
  4. [保存] をクリックします。

  5. IoT SIM、LoRaWAN デバイス、Sigfox デバイスが所属するグループを切り替えます。

    IoT SIM、LoRaWAN デバイス、Sigfox デバイスから送信したデータが Funnel に転送されるようになります。

SORACOM CLI / SORACOM API の場合

SORACOM CLI または SORACOM API を利用しても、Funnel の設定を変更できます。

  • SORACOM CLI を利用するには、あらかじめ SORACOM CLI をインストールし、認証情報を保存してください。詳しくは、SORACOM CLI をインストールする を参照してください。
  • {group_id} は、soracom groups list (Group:listGroups API) で取得できます。
  • {namespace} は、SoracomFunnel です。
  • ボディで指定するプロパティについては、ボディで指定するプロパティについて を参照してください。
  • ここでは、グループの設定を変更する操作のみを説明します。グループの仕組みやグループを作成する操作について詳しくは、グループ設定 を参照してください。

Funnel を有効化する

soracom groups put-config (Group:putConfigurationParameters API) を使用します。

$ soracom groups put-config --group-id {group_id} --namespace SoracomFunnel \
--body '[
  {
    "key": "enabled",
    "value": true
  },
  {
    "key": "destination",
    "value": {
      "provider": "aws",
      "service": "kinesis",
      "resourceUrl": "https://kinesis.ap-northeast-1.amazonaws.com/my-kinesis-stream"
    }
  },
  {
    "key": "credentialsId",
    "value": "my-credentials"
  },
  {
    "key": "contentType",
    "value": "json"
  }
]'

Funnel を有効化する

Group:putConfigurationParameters API を使用します。

$ curl -v -X PUT https://api.soracom.io/v1/groups/{group_id}/configuration/SoracomFunnel \
-H "X-Soracom-API-Key: $X_SORACOM_API_KEY" \
-H "X-Soracom-Token: $X_SORACOM_TOKEN" \
-H "Content-Type: application/json" \
-d '[
  {
    "key": "enabled",
    "value": true
  },
  {
    "key": "destination",
    "value": {
      "provider": "aws",
      "service": "kinesis",
      "resourceUrl": "https://kinesis.ap-northeast-1.amazonaws.com/my-kinesis-stream"
    }
  },
  {
    "key": "credentialsId",
    "value": "my-credentials"
  },
  {
    "key": "contentType",
    "value": "json"
  }
]'

ボディで指定するプロパティについて

以下の keyvalue のペアを配列で指定します。

keyvalue の型value
enabledBoolean

Funnel の ON/OFF を設定します。

  • true: ON。Funnel を利用できます。
  • false: OFF
destinationObject

以下のプロパティを含む JSON オブジェクトを設定します。

プロパティ説明
providerString

データ送信先のクラウドサービスのプロバイダーを設定します。

  • aws
  • azure
  • google
serviceString

データ送信先のクラウドサービスの種類を設定します。

  • aws-iot: AWS IoT
  • kinesis: Kinesis Streams
  • firehose: Kinesis Firehose
  • eventhubs: Event Hubs
  • pubsub: Google Cloud Pub/Sub
resourceUrlString

データ送信先のクラウドサービスの URL を指定します。

resourceUrl にはプレースホルダーを指定できます

プレースホルダーは、データ送信時にデバイスごとの値に置き換わります。

  • IoT SIM で通信を行う場合:
    • #{imsi}: IMSI
    • #{imei}: IMEI
  • LoRaWAN で通信を行う場合:
    • #{deviceId}: LoRaWAN デバイス ID
  • Sigfox で通信を行う場合:
    • #{deviceId}: Sigfox デバイス ID
  • Inventory で管理するデバイスで通信を行う場合:
    • #{deviceId}: デバイス ID
credentialsIdString認証情報ストアに登録した認証情報の名前を設定します。
contentTypeString

payloads内のユーザデータに対する処理を指定します。

  • (空文字): 特別な処理を行いません。
  • json: JSON としてパースします。

想定していない値を指定した場合の動作は、定義されていません。SORACOM CLI / SORACOM API で設定を変更したあとで、SORACOM ユーザーコンソールで意図通りに設定されていることを確認してください。