Soracom

Users

スタートガイド
Home スタートガイド IoT デザインパターン

SORACOM LTE-M Button と各種クラウドサービスを連携する

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、IBM 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 を呼び出すパターンを利用します。

button_design_patterns / Button - Funk - Azure Functions

具体的な方法は SORACOM Funk + Azure Functions パターン を参照してください。

大量のボタンデバイスからのデータを確実に処理する ― SORACOM Funnel + Azure Event Hubs パターン

大量のボタンデバイスからのデータを確実に処理する場合は、SORACOM Funnel から Azure Event Hubs を通じて Azure Functions を利用する方法があります。

button_design_patterns / Button - 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 単体でエンドポイント保護を行うためには多くの作業 (*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 を呼び出すパターンを利用します。

button_design_patterns / Button - Funk - Google Cloud Functions

具体的な方法は SORACOM Funk + Google Cloud Functions パターン を参照してください。

関数の保護を手軽に実現する、もしくは大量のボタンデバイスからのデータを確実に処理する ― SORACOM Funnel + Google Cloud Pub/Sub パターン

関数の保護を手軽に実現する、もしくは大量のボタンデバイスからのデータを確実に処理する場合は、SORACOM Funnel から Google Cloud Pub/Sub を通じて Google Cloud Functions を呼び出すパターンを利用します。

button_design_patterns / Button - Funnel - Google Cloud Pub/Sub + Google Cloud Functions

具体的な方法は SORACOM Funnel + Google Cloud Pub/Sub パターン を参照してください。

IBM Cloud と組み合わせる

IBM Cloud が提供する FaaS である IBM Cloud Functions との組み合わせを実現するデザインパターンは以下のとおりです。

IBM Cloud Functions は、それ自身で Webhook (HTTP トリガー) を受けることも可能であるため、SORACOM Beam からの利用が容易となっています。 標準では URL を知っていればどこからでもコール可能となっています。HTTP リクエストを認証する仕組みは 追加で設定を行う ことで可能です。

SORACOM Beam + IBM Cloud Functions パターン

IBM Cloud でボタンアプリケーションを構築する場合は、SORACOM Beam から IBM Cloud Functions の Webhook を呼び出す方法があります。

button_design_patterns / Button - Beam - IBM Cloud Functions

具体的な方法は SORACOM Beam + IBM Cloud Functions パターン を参照してください。