SORACOM LTE-M Button シリーズ は、LTE-M を利用できる Embedded (MFF2) の IoT SIM (plan-KM1) を内蔵しています。電源は交換可能な単 4 電池 2 本で、小型で持ち運びも可能で、ボタンやセンサーの情報をさまざまなクラウドや SaaS (Software as a Service) に送信できます。ここでは、SORACOM LTE-M Button シリーズを利用した IoT システムを「ボタンアプリケーション」と呼び、Amazon Web Services (以下、AWS)、Microsoft Azure (以下、Azure)、Google Cloud の代表的なユースケースにおけるデータの送信方法を紹介します。
Amazon Web Services (AWS) と組み合わせる
ボタンを押したときに AWS Lambda にリクエストを送信する ― SORACOM Funk + AWS Lambda パターン
SORACOM LTE-M Button シリーズから AWS Lambda の関数にリクエストを送信して、任意の処理を実行するボタンアプリケーションを構築できます。この場合は、SORACOM Funk から AWS Lambda の関数を呼び出すパターンを利用します。
詳しくは、SORACOM Funk + AWS Lambda パターン を参照してください。
ボタンを押したときに AWS IoT Core を経由して AWS の各種サービスにリクエストを送信する ― SORACOM Funnel + AWS IoT Core パターン
SORACOM LTE-M Button シリーズから、AWS のさまざまなサービスにリクエストを送信するボタンアプリケーションを構築できます。この場合は、SORACOM Funnel から AWS IoT Core を経由して、AWS のさまざまなサービスにリクエストを送信するパターンを利用します。
詳しくは、SORACOM Funnel + AWS IoT Core パターン を参照してください。
Microsoft Azure と組み合わせる
Azure が提供する FaaS である Azure Functions との組み合わせを実現するデザインパターンは以下のとおりです。
Azure Functions の呼び出しは SORACOM Funk を利用することで非常に容易に実現できます。 一方、Azure Functions の Webhook の呼び出し制約 から、大量のデータを常時受け付けるようなアプリケーションになる場合は SORACOM Funnel + Azure Event Hubs パターン も検討します。ただし、Azure Event Hubs は仮想サーバの課金体系に近く、データの発生頻度や量によっては費用が割高になる可能性もあるため、コスト面からの検討も必要です。
ボタンと Azure Functions 連携をすばやく構築する ― SORACOM Funk + Azure Functions パターン
ボタンと Azure Functions 連携をすばやく構築する場合は、SORACOM Funk から Azure Functions を呼び出すパターンを利用します。
具体的な方法は SORACOM Funk + Azure Functions パターン を参照してください。
大量のボタンデバイスからのデータを確実に処理する ― SORACOM Funnel + Azure Event Hubs パターン
大量のボタンデバイスからのデータを確実に処理する場合は、SORACOM Funnel から Azure Event Hubs を通じて Azure Functions を利用する方法があります。
具体的な方法は SORACOM Funnel + Azure Event Hubs パターン を参照してください。
Google Cloud と組み合わせる
Google Cloud が提供する FaaS である Google Cloud Functions (以下、Cloud Functions) との組み合わせを実現するデザインパターンは以下のとおりです。
Cloud Function を安全に運用するためには URL の保護が必要です。一方、Cloud Functions 単体で URL の保護を行うためには多くの作業 (*1) を行う必要があります。 ここでは、URL の難読化による保護と SORACOM Funk の組み合わせ、Google Cloud Pub/Sub (以下、Cloud Pub/Sub) による認証 (保護) と SORACOM Funnel の組み合わせを紹介します。Cloud Pub/Sub は大量のデータを処理する基盤としても利用できるため、保護だけでなく大量のデバイスからの接続を受け付ける場合にも有用です。
- (*1) 多くの作業: OAuth 画面を構成した後、サービスアカウントを作成、ロールの設定を行い、同アカウントの OAuth トークンをコマンドラインやブラウザを利用して生成・入手。また、トークンの有効期限が切れたら再発行する運用も必要となる。
ボタンと Google Cloud Functions 連携をすばやく構築する ― SORACOM Funk + Google Cloud Functions パターン
ボタンと Google Cloud Functions 連携をすばやく構築する場合は、SORACOM Funk から Cloud Functions を呼び出すパターンを利用します。
具体的な方法は SORACOM Funk + Google Cloud Functions パターン を参照してください。
関数の保護を手軽に実現する、または大量のボタンデバイスからのデータを確実に処理する ― SORACOM Funnel + Google Cloud Pub/Sub パターン
関数の保護を手軽に実現する、または大量のボタンデバイスからのデータを確実に処理する場合は、SORACOM Funnel から Google Cloud Pub/Sub を通じて Google Cloud Functions を呼び出すパターンを利用します。
具体的な方法は SORACOM Funnel + Google Cloud Pub/Sub パターン を参照してください。
