ルールエンジンを使用して、DataHub にデータを転送できます。その後、DataHub から Realtime Compute for Apache Flink または MaxCompute にデータを転送して計算できます。このトピックでは、データ転送プロセスについて説明します。この例では、TSL (Thing Specification Language) 通信トピックをソース トピックとして使用します。
前提条件
DataHub へのデータ転送をサポートするリージョンに、DataHub にデータを転送できる IoT Platform インスタンスが作成されていること。 DataHub。データ転送をサポートするリージョンの詳細については、「リージョン」をご参照ください。
DataSource という名前のデータソースが作成されており、TSL 通信トピックがデータソースに追加されていること。 詳細については、「データソースの作成」をご参照ください。
データを受信するために使用される DataHub プロジェクトとトピックが作成されていること。DataHub の使用方法の詳細については、「プロジェクトの管理」をご参照ください。
重要Enterprise Edition インスタンスを使用する場合、DataHub プロジェクトは Enterprise Edition インスタンスが存在するのと同じリージョンに存在する必要があります。
使用上の注意
データ転送機能の新バージョンまたは旧バージョンを使用して、DataHub にデータを転送できます。旧バージョンのデータ転送機能の使用方法の詳細については、「DataHub へのデータ転送 (旧バージョンのデータ転送機能を使用)」をご参照ください。
データ転送先の作成
- IoT Platform コンソール にログオンします。
[概要] ページで、[すべての環境] をクリックします。[すべての環境] タブで、管理するインスタンスを見つけ、インスタンス ID またはインスタンス名をクリックします。
- 左側のナビゲーション ウィンドウで、 を選択します。
[データ転送] ページの右上隅にある [新しいバージョンに移動] をクリックして、新しいバージョンに移動します。
説明[メッセージ転送] > [データ転送] を選択すると、新しいバージョンの [データ転送] ページが表示されます。
- [データ転送先] タブをクリックします。このタブで、[データ転送先の作成] をクリックします。
[データ転送先の作成] ダイアログ ボックスで、データ転送先の名前を入力します。例: DataPurpose。その他のパラメーターを設定し、[OK] をクリックします。次の表にパラメーターを示します。

パラメーター
説明
操作
ドロップダウン リストから [datahub にデータを送信] を選択します。
リージョン
DataHub がアクティブになっているリージョンを選択します。
プロジェクト
DataHub プロジェクトを選択します。
[プロジェクトの作成] をクリックして DataHub コンソールに移動し、プロジェクトを作成できます。詳細については、「プロジェクトの管理」をご参照ください。
トピック
データを受信する DataHub トピックを選択します。
トピックを選択すると、ルールエンジンは自動的にトピックのスキーマを取得します。ルールエンジンによって選別されたデータは、スキーマにマッピングされます。
説明データは
${}形式でスキーマにマッピングする必要があります。そうでない場合、定数がスキーマ テーブルに格納されます。スキーマでは、ルールエンジンと同じデータ型を使用する必要があります。そうでない場合、データは格納できません。
[トピックの作成] をクリックして DataHub コンソールに移動し、トピックを作成できます。
ロール
IoT Platform に DataHub にデータを書き込む権限を付与します。
RAM (Resource Access Management) ロールがない場合は、[RAM ロールの作成] をクリックして RAM コンソールに移動し、RAM ロールを作成して、そのロールに権限を付与します。詳細については、「RAM ロールの作成」をご参照ください。
パーサーの設定と起動
DataParser という名前のパーサーを作成します。詳細については、「パーサーの作成」をご参照ください。
[パーサーの詳細] ページで、パーサーを作成済みのデータソースに関連付けます。
ウィザードの [データソース] ステップで、[データソースの関連付け] をクリックします。
表示されるダイアログ ボックスで、データソース[データソース] ドロップダウン リストから [OK] を選択し、 をクリックします。
[パーサーの詳細] ページで、パーサーを作成済みのデータ転送先に関連付けます。
ウィザードの [データ転送先] をクリックします。[データ転送先] セクションで、[データ転送先の関連付け] をクリックします。
表示されるダイアログ ボックスで、データ目的[データ転送先] ドロップダウン リストから [OK] を選択し、 をクリックします。
[データ転送先] セクションで、[データ転送先 ID] を表示して保存します。この例では、ID は [1000] です。
パーサースクリプトを記述するときは、[データ転送先 ID] を使用する必要があります。
- [パーサーの詳細] ページで、[パーサー] をクリックします。
コードエディタにスクリプトを入力します。スクリプトの変更方法については、「スクリプト構文」をご参照ください。
関数パラメーターについては、「関数」をご参照ください。
// payload() 関数を使用して、デバイスから送信されたデータを取得し、JSON 形式に変換します。 var data = payload("json"); // 送信された TSL データを転送します。 writeDatahub(1000, data);[デバッグ] をクリックします。表示されるダイアログ ボックスで、プロダクトとデバイスを選択し、トピックを指定して、ペイロード データを入力し、スクリプトが想定どおりに実行されるかどうかを確認します。
次の図にパラメーターを示します。

次の結果は、スクリプトが実行されたことを示しています。

- [公開] をクリックします。
パーサー[データ転送] ページの データパーサー[開始] タブに移動します。 パーサーを見つけ、[アクション] 列の をクリックしてパーサーを起動します。