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 権限を付けるようにしてください。

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

SORACOM Funnel を有効にする

Funnel の設定はグループに対して行います

ここでは、グループの設定を変更する操作のみを説明します。グループの仕組みやグループを作成する操作ついて詳しくは、グループ設定 を参照してください。

  1. SIM グループ画面で [SORACOM Funnel 設定] をクリックします。

    SIM グループ画面を表示する操作について詳しくは、グループの設定を変更する を参照してください。

  2. スイッチをクリックして「ON」にします。

  3. 各項目を設定します。

    項目説明
    [転送先サービス]「Microsoft Azure Event Hubs」を選択
    [転送先 URL]https://aeNohy7phuko-eh0.servicebus.windows.net/sensor0/messages を入力
    [認証情報]認証情報の登録 で登録した「azure-eventhubs (Azure Event Hubs send access)」を選択
    [送信データ形式]「JSON」を選択

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

  4. [保存] をクリックします。

  5. IoT SIM が所属するグループを切り替えます。

    IoT SIM の Funnel の設定が完了しました。

ステップ 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 アダプターを使用してデータを送信する」は完了です。