SORACOM Developers

Getting Started

SORACOM Funnel の Event Hubs アダプターを使用してデータを送信する

当ガイドでは、SORACOM Funnel(以下、Funnel) の Event Hubs アダプターを使用し、デバイスから送信するデータを Microsoft Azure のストリーム処理を行うサービス「Event Hubs」に送信します。

なお、Funnel の設定は、SORACOM ユーザーコンソールを使用しています。


はじめに

Funnel は、デバイスからのデータを特定のクラウドサービスに直接転送するクラウドリソースアダプターです。

Funnel を使用すると、クラウドサービス上のリソースを指定するだけで、デバイスからのデータを直接に収集できます。 SORACOM Beamとの大きな相違点は、送信先が汎用的なプロトコルではない一方で、最小限の手間で、迅速にクラウドサービスを利用することができます。

Funnel概要

当ガイドでは、以下のような流れで進めます。

  1. Event Hubs の設定
  2. Funnel の設定
  3. データの送信
  4. データの送信を確認する

Event Hubs の設定

まず、クラウドサービス側の Event Hubs を設定します。 Microsoft Azure Portal にログインし、Event Hubs を選択します。

Funnel

次に名前空間を追加します。ここでは、「sora-namepace」としています。

Funnel

Event Hubs サービスを追加します。

Funnel

Event Hub が作成されたら共有アクセスポリシーの設定を行います。デバイスからデータを受け取るポリシーとして SendRule を作成します。その他のサービス等からのアクセスポリシーとして ReceiveRule を作成します。パーミッションは以下の通りとしています。

Funnel

共有アクセスポリシーを設定したら、画面下にある保存をクリックしてください。 最後に、生成された共有アクセスキーを確認します。(SORACOM の設定で使用します。)

Funnel

以上で、Event Hubs の設定は完了です。

Funnel の設定

次に、Funnel の設定を行います。 SORACOM 側 (Funnel) の設定は、以下の2つのステップで完了します。

クレデンシャルの登録

まず、Event Hubs にアクセスするためのクレデンシャル情報を登録します。 (先ほど確認した共有アクセスキーを設定します。)

ユーザーコンソールにログインしてください。

画面左上部のプルダウンメニューから「セキュリティ」、左のメニューから「認証情報ストア」を選び、「認証情報を登録」をクリックします。

Funnel

以下の画面が表示されますので、認証情報を登録します。

Funnel

ここでは、「my-eventhub-key01」で登録しました。

クラウドサービスの指定

次に、Funnel の設定からクラウドサービスの設定を行います。

ユーザーコンソールの画面左上部のプルダウンメニューから「グループ」をクリックし、対象のグループを選択します。(新規にグループを作成しても構いません。) グループの「SORACOM Funnel 設定」のタブを開き、以下のようにクラウドサービスを指定します。

Funnel

以上で、設定は完了です。

データの送信

いよいよデータを送信します。 SORACOM Air の SIM を先ほど Funnel の設定を行ったグループに所属させてください。

Funnel のエンドポイントに対し、リクエストを送信します。エンドポイントは、以下となります。

TCP で送信

$ nc funnel.soracom.io 23080
{"message":"Hello SORACOM Funnel via TCP!"} [Enter]
200
[Ctrl+C]

UDP で送信

$ nc -u funnel.soracom.io 23080
{"message":"Hello SORACOM Funnel via UDP!"} [Enter]
200
[Ctrl+C]

HTTP で送信

~$ curl -vX POST http://funnel.soracom.io -d '{"message":"Hello SORACOM Funnel via HTTP!"}' -H Content-Type:application/json
* Rebuilt URL to: http://funnel.soracom.io/
*   Trying 100.127.65.43...
* Connected to funnel.soracom.io (100.127.65.43) port 80 (#0)
> POST / HTTP/1.1
> Host: funnel.soracom.io
> User-Agent: curl/7.43.0
> Accept: */*
> Content-Type:application/json
> Content-Length: 44
>
* upload completely sent off: 44 out of 44 bytes
< HTTP/1.1 204 No Content
< Date: Thu, 14 Jan 2016 17:18:46 GMT
< Connection: keep-alive
<
* Connection #0 to host funnel.soracom.io left intact

データの送信を確認する

Event Hubs のダッシュボードを確認して、データが送信されたことを確認します。 「メッセージ」を確認することで、送信されていることがわかります。

Funnel


当ガイドでご覧頂いたとおり、Funnel を使用することで、デバイスに Azure の SDK をいれる必要はありません。 また、クラウドサービスのクレデンシャル情報をデバイスに持つ必要もありません。

クラウドサービスのクレデンシャル情報とリソースURLを SORACOM に設定するのみで、デバイスからは、HTTP、TCP もしくは UDP で直接クラウドサービスにデータを送信することが可能となりました。 最小限の手間で、迅速にデバイスとクラウドサービスを利用したシステムを使うことができるようになります。

今後も様々な機能の追加を検討していきますので、是非ご要望をお聞かせください。 ​

以上で、「SORACOM Funnel の Event Hubs アダプターを使用してデータを送信する」は完了です。

Getting Started

SORACOM Air for セルラー

SORACOM Air for LoRaWAN

SORACOM Air for Sigfox

SORACOM Beam

SORACOM Canal/Direct/Door

SORACOM Endorse

SORACOM Funnel

SORACOM Gate

SORACOM Harvest

SORACOM Inventory

SORACOM Junction

サービス機能詳細

Developer Tools

pagetop