MENU

Soracom

Users

Azure Event Hubs アダプターを使用する

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

ステップ 1: Azure を設定する

リソースグループの作成

Microsoft Azure Portal にログインし、「その他のサービス」を選択した後、表示される検索ボックスに resource と入力します。 「リソース グループ」が表示されますのでクリックします。

「追加」をクリックし、表示されたダイアログに下記の通り入力し、「作成」をクリックします。

  • リソース グループ名: <任意の文字列> (今回は SoracomFunnelDemo0 としました)
  • サブスクリプション: <任意> (今回は 無料試用版 としました)
  • リソース グループの場所: <任意> (今回は 東日本 としました)

以上でリソースグループの作成は完了です。

Event Hubs の作成と設定

「その他のサービス」を選択した後、表示される検索ボックスに event と入力します。 すると「Event Hubs」が表示されますのでクリックします。

「追加」をクリックし、表示されたダイアログに下記の通り入力し、「作成」をクリックします。

  • Name: <任意の文字列> (今回は aeNohy7phuko-eh0 としました)
  • Pricing tier: Basic
  • サブスクリプション: <任意> (今回は 無料試用版 としました)
  • Resource group: 既存のものを使用 → 任意のリソースグループ (今回は SoracomFunnelDemo0 )

※場所はリソースグループから自動的に決定されます

1~2 分経つと Event Hubs が作成されます。「更新」を押すと一覧に表示されるようになります。 表示された Event Hubs をクリックし、「Event Hubs」をクリックします。その後「Event Hub」をクリックします。

表示されたダイアログに下記の通り入力し、「Create」をクリックします。

  • Name: <任意の文字列> (今回は sensor0 としました)

以上で Event Hubs の作成と設定は完了です。

ステップ 2: SORACOM を設定する

認証情報の登録

SORACOM ユーザーコンソールにログインし、右上のユーザー名 / メールアドレスをクリックし、「セキュリティ」をクリックします。

「認証情報ストア」をクリックし、「認証情報を登録」をクリックします。

表示されたダイアログに下記の通り入力し、「登録」をクリックします。

  • 接続情報 ID: <任意の文字列> (今回は azure-eventhubs としました)
  • 概要: <任意の文字列> (今回は Azure Event Hubs send access としました)
  • 種別: Azure 認証情報
  • Policy name: <Event Hubs にアクセスできるポリシー名> (今回は Event Hubs 標準の RootManagerSharedAccessKey を利用しています)
  • Key: <上記ポリシーに紐づいた Primary Key もしくは Secondary Key>

※ Policy name と Key は Event Hubs の管理ページ内「Shared access policies」から入手できます。また権限を限定したポリシーを作成することも可能ですが、そのポリシーには Send 権限を付けるようにしてください

以上で認証情報の登録は完了です。

Funnel の設定

次に、Funnel の設定を行います。 「Menu」をクリックし、「SIM グループ」をクリックします。

「追加」をクリックします。

表示されたダイアログに下記の通り入力し、「グループ作成」をクリックします。

  • グループ名: <任意の文字列> (今回は AzureEventHubs としました)

SIM グループ管理ページには、先ほど作成したグループが表示されているため、それをクリックします。

「SORACOM Funnel 設定」をクリックし、「OFF」と表示されているスイッチをクリックします。
すると「ON」に切り替わってダイアログに入力できるようになるので、下記の通り入力し、「保存」をクリックします。

  • 転送先サービス: Microsoft Azure Event Hubs
  • 転送先 URL: https://aeNohy7phuko-eh0.servicebus.windows.net/sensor0/messages
  • 認証情報: azure-eventhubs (Azure Event Hubs send access)
  • 送信データ形式: JSON

※転送先 URL の組み立て方法: は Event Hubs で最初に作成した時の文字列、また は Event Hub の文字列です

以上で Funnel の作成は完了です。

Funnel が設定されているグループに SIM を所属させる

このままではまだ Funnel を利用できません。先ほど作成し Funnel の設定を行った SIM グループに SIM を所属させることで、利用できるようになります。

「Menu」をクリックし、「 SIM 管理」をクリックします。

所属させたい SIM のチェックボックスをチェックし、「操作」をクリックした後、「所属グループ変更」をクリックします。

※今回は Wio LTE と表示されている SIM を操作します。

表示されたダイアログに下記の通り入力し、「グループ変更」をクリックします。

  • 新しい所属グループ: (今回は AzureEventHubs を利用します)

以下のように、対象の SIM のグループが設定されていれば、完了です。

ステップ 3: データを送信する

いよいよデータを送信します。 Funnel の エントリーポイント へリクエストを送信します。

  • 送信コマンド例
$ nc funnel.soracom.io 23080
{"message":"Hello SORACOM Funnel via TCP!"} [Enter]
200
[Ctrl+C]
  • 送信コマンド例
$ nc -u funnel.soracom.io 23080
{"message":"Hello SORACOM Funnel via UDP!"} [Enter]
200
[Ctrl+C]
  • 送信コマンド例
~$ 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

ステップ 4: データの送信を確認する

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


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

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

今後も様々な機能の追加を検討していきますので、是非ご要望をお聞かせください。 ​ 以上で、「SORACOM Funnel の Event Hubs アダプターを使用してデータを送信する」は完了です。