本文へジャンプします。

ニフクラ ユーザーガイド

プロジェクトの作成

このチュートリアルでは、IoTデバイスハブにプロジェクトを作成し、シミュレーターを使用して、デバイスとアプリ間の双方向通信を実行します。

Step1:プロジェクトを作成する

IoT製品のプロジェクトを編成します。

コントロールパネルの「マイプロジェクト」ページを表示し、「+新規」ボタンをクリックします。

プロジェクトの名前と簡単な説明を入力し、ユーザーのログイン方法を指定し、「保存」ボタンをクリックするとプロジェクトを作成することができます。
このチュートリアルでは、「ユーザーは電話番号を使用してログインします。」オプションを選択します。

プロジェクトを作成すると、新しいエントリーがプロジェクトリストに表示されます。
作成したプロジェクトを選択し、プロジェクトダッシュボードを表示します。

マイプロジェクト

Step2:デバイスクラスを定義する

IoTデバイスハブに接続されているデバイスは、デバイスクラスの1つのインスタンスになります。
製造する多数のIoT製品が同じ動作をする場合、それらの製品は同じデバイスクラスに属します。

デバイスクラスを定義する

1つ目の製品に対して、デバイスクラスを定義します。

「デバイス」セクションに移動し、「デバイスクラス」の「+新規」ボタンをクリックします。

クラスID(smart_lightなど)と説明を入力し、「保存」ボタンをクリックするとデバイスクラスを定義することができます。

デバイスクラス

Step3:デバイスをインスタンス化する

デバイスクラスの定義の次は、デバイスインスタンスを作成します。

同じ製品が2つある場合は、IoTデバイスハブで2つのデバイスインスタンスを作成します。 同じ製品が1,000個ある場合は、1,000個のデバイスインスタンスを作成します。

  • ※プロジェクトがオンデマンドデバイスプロビジョニングを許可するように構成されていない限り、デバイスインスタンスのエントリーを事前にプロビジョニングしておく必要があります。

smart_lightデバイスクラスに対して、デバイスを1つ作成します。

「デバイス」セクションに移動し、「デバイスクラス」から「smart_light」を選択し、「デバイスリスト」の「+新規」ボタンをクリックします。

ダイアログの「タグ」を任意で入力し、「追加」ボタンをクリックすると新しいデバイスを作成することができます。

デバイスリスト

作成したデバイスがリストに表示されます。
新たに作成されたデバイスの詳細情報を表示するには、そのデバイスの行をクリックします。

詳細情報には、「APIキー」や「クレームコード」などのステータス情報が表示されます。これについては後述します。

デバイスの詳細

Step4:アプリを定義する

アプリとは、ユーザーが所有するデバイスの制御を可能にするソフトウエアです。
例えば、製造しているデバイスを制御するモバイルアプリを設計する予定がある場合は、そのアプリの定義を作成する必要があります。

アプリを定義する

アプリを作成します。

「アプリ」セクションをクリックし、「+新規」ボタンをクリックします。

アプリ作成フォームが表示されるので、アプリを一意に識別するアプリID(controller_appなど)と説明を入力し、「保存」ボタンをクリックするとアプリを定義することができます。

アプリリスト

ここまででデバイスクラスとアプリを含むプロジェクトができました。プロジェクトにはデバイスインスタンスも含まれます。
以上が開発者の作業です。

Step5:プロジェクトのユーザーになる

ここからは、プロジェクトのユーザー(利用者)として作業します。

一般的に、ユーザーは製品を購入し、対応するモバイルアプリをダウンロードします。

このチュートリアルでは、製品やモバイルアプリをまだ作成していませんが、デバイスシミュレーターおよびアプリシミュレーターを使用することにより、 ユーザーが体験する環境をシミュレートすることができます。

ユーザーとして自分を登録する

コントロールパネルの「アプリ」セクションを表示し、「controller_app」エントリーを選択し、 「シミュレーターの起動」ボタンをクリックします。

アプリシミュレーターは、実際のモバイルアプリと同じようにAPIリクエストを送信するので、 「新規ユーザーの登録」ボタンをクリックし、ユーザーとして自分を登録します。

名前とテキストメッセージを受信可能な電話番号(※)を入力すると、IoTデバイスハブより、認証コードを含むテキストメッセージがその電話番号に送信されます。

  • ※このチュートリアルでは、Step1−[2]で「ユーザーが電話番号を使用してログインする」オプションを選択しました。
    このオプションは、携帯電話から簡単で安全なログインが可能なため、主要ユーザーインターフェイスとしてモバイルアプリを使用する場合は、このオプションを推奨します。

アプリシミュレーター

受信した認証コードをアプリシミュレーターに入力し、「送信」をクリックすると、プロジェクトのユーザーとしてログインすることができます。

アプリシミュレーター

ホームの作成

ホームとは、デバイスが接続される場所です。
ホームのメンバーは、ホームに接続されているデバイスを制御でき、ユーザーは複数のホームに属することができます。

ログインすると「マイホーム」画面が表示されます。
「+新規」ボタンをクリックし、ホームの名前(「My home」など)を入力し、「追加」ボタンをクリックすると新しいホームを作成することができます。

デバイスの電源投入

デバイスの購入後、ユーザーはデバイスの電源を入れ、ネットワークに接続します。
デバイスシミュレーターでこれらの手順をシミュレーションできます。

コントロールパネルを開き、「デバイス」セクションをクリックし、「デバイスクラス」リストで「smart_light」をクリックします。
「デバイスリスト」で最初のデバイスをクリックすると、「デバイスの詳細」ページが表示されます。

「シミュレーターの起動」ボタンをクリックして、そのデバイスに対するデバイスシミュレーターを起動します。
これがデバイスの電源投入と同等の操作となります。

デバイスの所有権のクレーム

デバイスは「電源投入」されていますが、ユーザーはまだデバイスの所有権を要求していません。
特定のデバイスの所有権をクレームするには、デバイスのクレームコードを知っている必要があります。

各デバイスには、「1234567890abcdef」のような16桁の16進文字列である固有のクレームコードが割り当てられています。
通常、クレームコードは製品に付属します(例えばパッケージに印字されています)が、 このチュートリアルでは、デバイスシミュレーターの「デバイス情報」パネルに表示されるクレームコードを使用します。

デバイスシミュレーター

クレームモードの有効化

IoTデバイスハブでは、ほかのユーザーが正当なユーザーからデバイスの所有権を盗むことを防ぐために、 デバイスのクレームの可否を制御することができます。
デバイスは、クレームモードが有効な場合にのみクレーム可能です。

デバイスシミュレーターで、デバイスのクレームモードを有効にしてみましょう。

クレームモードの有効期間は5分です。
期限が切れた場合は、「クレームモード」ボタンを再度クリックすると、再度有効にすることができます。

デバイスの情報

デバイスのクレーム

アプリシミュレーターを使用して、クレームモードのデバイスをクレームできます。

アプリシミュレーターで「マイホーム」に移動し、自分で作成したホームを選択します。

「ホーム情報」パネルで、「デバイス」メニュー項目を選択すると、現在ホームに接続されているデバイスのリストが表示されます。

「デバイス」パネルの「+新規」ボタンをクリックすると、「クレームコード」フィールドを含むフォームが表示されるので、 デバイスシミュレーターからのクレームコードをコピーして貼り付け、「追加」ボタンをクリックすると、 (ユーザーとして)デバイスを所有したことになり、アプリシミュレーターからデバイスを制御できるようになります。

Step6:デバイスにコマンドを送信する

IoTデバイスハブを利用して、モバイルアプリからデバイスを制御することができます。
Step5までの手順により、この制御をシミュレーションの準備が整いました。

  • ※このシミュレーションを行う前に、デバイスシミュレーターは、WebSocket経由でIoTデバイスハブに接続し、コマンドの受信を待機している状態にしてください。 「デバイス情報」パネルに緑色の「接続」ボタンが表示される場合は、「接続」ボタンをクリックし接続を開始します。

「ホーム情報」パネルで「コマンド/イベント」メニュー項目を選択すると、 「送信: コマンド」パネルが表示されます。

「ターゲット」プルダウンからデバイスを選択し、コマンドの詳細を指定します。

コマンドは、アクションとパラメーターから構成されます。
アクションはコマンドの名前です。ここでは、アクションとして「light」を使用します。パラメーターは、「on」を「1」に設定します。

送信:コマンド

すべてのデータを入力したら、「コマンドの送信」ボタンをクリックします。 指定したコマンドがアプリシミュレーターからIoTデバイスハブに送信され、ターゲットのデバイスに配信されます。

コマンドの送信

デバイスシミュレーターでは、「着信: コマンド」パネルにコマンドが表示されます。
「詳細」をクリックすると、コマンドの詳細情報が表示されます。

着信: コマンド

コマンドの詳細情報

Step7:デバイスからイベントをトリガーする

デバイスはイベントという形でクラウドにデータ送信できます。
クラウドを経由してアプリもそのイベントを受信可能です。この手順では、デバイスシミュレーターに戻ってイベントをトリガーします。

「発信: イベント」パネルで、「イベントタイプ」に「light-status」と入力します。「イベントデータ」は、「status」を「on」に設定します。
イベントデータに同じキーを複数した場合は、後から指定されたものだけが送信されます。

発信: イベント

「イベントのトリガー」ボタンをクリックして、イベントをIoTデバイスハブに送信します。
アプリシミュレーターの「着信: イベント」パネルには、以下のような内容が表示されます。
「詳細」をクリックすると、イベントの詳細情報が表示されます。

着信: イベント

イベントの詳細情報

まとめ

以上で、IoTデバイスハブ上に主要なアクションをいくつか実行できる小さなプロジェクトを構成することができました。

アプリからのデバイス制御や、デバイスから状態変更をアプリに通知することができます。
この双方向通信のほかに、製品に対するデバイス、ユーザーの管理機能もセットアップしました。

推奨画面サイズ 1024×768 以上