グループ の SORACOM Funk 設定を有効化する手順を説明します。
IoT SIM、LoRaWAN デバイス、Sigfox デバイスに対して Funk を有効化するには、グループを作成し、グループの SORACOM Funk 設定を有効化して、そのグループに IoT SIM、LoRaWAN デバイス、Sigfox デバイスを所属させます。
Funk の設定はグループに対して行います
ここでは、グループの設定を変更する操作のみを説明します。グループの仕組みやグループを作成する操作について詳しくは、グループ設定 を参照してください。
SIM グループ画面、LoRaWAN グループ画面、Sigfox グループ画面、またはデバイスグループ画面で
をクリックします。各画面を表示する操作について詳しくは、グループの設定を変更する を参照してください。
SORACOM Funk 設定画面が表示されます。
スイッチをクリックして「ON」にします。
以下の項目を設定します。
項目 説明 関数が定義されているパブリッククラウドを選択します。
- AWS Lambda: 詳しくは、AWS Lambda を実行し Slack へ通知する を参照してください。
- Azure Functions: 詳しくは、Azure Functions を呼び出し Microsoft Teams へ通知する を参照してください。
- Google Cloud Functions: 詳しくは、SORACOM LTE-M Button と Google Cloud と組み合わせる を参照してください。
(*1) AWS Lambda の関数の ARN を入力します。例:
arn:aws:lambda:ap-northeast-1:XXXXXXXXXXXX:function:funk-sample-button
送信先の関数では、任意のランタイムと任意のコードを利用できます。
(*2) Azure Function または Google Cloud Functions の関数の URL を入力します。 認証情報ストア に登録した認証情報を選択します。例: AWS-IAM-role-credentials-invokeFunction
Funk のエントリポイントに送信されたデータを、転送先にどのように転送するかを指定します。詳しくは、[送信データ形式] の設定について を参照してください。 - (*1) で「AWS Lambda」を選択した場合のみ表示されます。
- (*2) で「Azure Function」または「Google Cloud Function」を選択した場合のみ表示されます。
をクリックします。
IoT SIM の Funk の設定が完了しました。
multi credentials per group 機能
Beam と同じく、Funk の認証情報にも multi credentials per group 機能を使用できます。
認証情報 ID の任意の場所に #{imsi}
もしくは #{imei}
のプレースホルダーを入れることで、接続デバイスに応じた 認証情報を使い分けることが可能となります。
機能詳細については Getting Started: multi credentials per group 機能を利用して AWS IoT に接続する | SORACOM Beam を参照してください。
SORACOM CLI / SORACOM API の場合
SORACOM CLI または SORACOM API を利用しても、Funk を有効化できます。
- SORACOM CLI を利用するには、あらかじめ SORACOM CLI をインストールし、認証情報を保存してください。詳しくは、SORACOM CLI をインストールする を参照してください。
{group_id}
は、soracom groups list
(Group:listGroups API
) で取得できます。{namespace}
は、SoracomFunk
です。- ボディで指定するプロパティについては、ボディで指定するプロパティについて を参照してください。
- ここでは、グループの設定を変更する操作のみを説明します。グループの仕組みやグループを作成する操作について詳しくは、グループ設定 を参照してください。
Funk を有効化する
soracom groups put-config
(Group:putConfigurationParameters API
) を使用します。
$ soracom groups put-config --group-id {group_id} --namespace SoracomFunk \
--body '[
{
"key": "enabled",
"value": true
},
{
"key": "destination",
"value": {
"provider": "aws",
"service": "lambda",
"resourceUrl": "arn:aws:lambda:ap-northeast-1:XXXXXXXXXXXX:function:funk-sample-button"
}
},
{
"key": "contentType",
"value": "json"
},
{
"key": "credentialsId",
"value": {
"$credentialsId": "AWS-IAM-role-credentials-invokeFunction"
}
}
]'
- SORACOM API を利用するには、API キーと API トークンが必要です。詳しくは、API キーと API トークンの取り扱いについて を参照してください。
{group_id}
は、Group:listGroups API
で取得できます。{namespace}
は、SoracomFunk
です。- ボディで指定するプロパティについては、ボディで指定するプロパティについて を参照してください。
- ここでは、グループの設定を変更する操作のみを説明します。グループの仕組みやグループを作成する操作について詳しくは、グループ設定 を参照してください。
Funk を有効化する
Group:putConfigurationParameters API
を使用します。
$ curl -v -X PUT https://api.soracom.io/v1/groups/{group_id}/configuration/SoracomFunk \
-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": "lambda",
"resourceUrl": "arn:aws:lambda:ap-northeast-1:XXXXXXXXXXXX:function:funk-sample-button"
}
},
{
"key": "contentType",
"value": "json"
},
{
"key": "credentialsId",
"value": {
"$credentialsId": "AWS-IAM-role-credentials-invokeFunction"
}
}
]'
ボディで指定するプロパティについて
以下の key
と value
のペアを配列で指定します。
key | value の型 | value | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
enabled | Boolean | Funk の ON/OFF を設定します。
| ||||||||||||
destination | Object | 以下のプロパティを含む JSON オブジェクトを設定します。
provider と service は正しく組み合わせてくださいたとえば、 AWS Lambda の ARN を指定する際に、末尾に | ||||||||||||
credentialsId | Object | 認証情報ストアに登録した認証情報の名前を設定します。 | ||||||||||||
contentType | String | ユーザーデータに対する処理を指定します。
|
想定していない値を指定した場合の動作は、定義されていません。SORACOM CLI / SORACOM API で設定を変更したあとで、SORACOM ユーザーコンソールで意図通りに設定されていることを確認してください。