デバイスは、解析フラグ (? _sn=default) を含むカスタム Topic を介して IoT Platform にデータを送信できます。 IoT Platform はデータを受信した後、コンソールから送信されたデータ解析スクリプトを呼び出して、カスタムデータを JSON データに変換します。 次に、IoT Platform は後続のプロセスにデータを転送します。

説明

  • カスタム Topic データの解析をサポートしているのは、中国 (上海) リージョンのみです。
  • デバイスを設定する際、解析フラグ (? _sn=default) をカスタム Topic の後ろに追加する必要があります。 IoT Platform は、タグ付きの Topic を使用してデバイスから送信されたデータのみを解析します。

    たとえば、デバイスから Topic /${productKey}/${deviceName}/user/update にメッセージを送信するとします。 IoT Platform でデータを JSON 形式に解析する場合、 デバイス SDK の設定時、Topic を /${productKey}/${deviceName}/user/update? _sn=default と定義する必要があります。

    IoT Platform コンソールでカスタム Topic を作成すると、解析フラグが追加されず、通常の Topic として定義されます。
  • IoT Platform は、デバイスからクラウドにレポートされたデータのみを解析し、クラウドから送信されたダウンストリームデータは解析しません。
  • IoT Platform は、クラウドにレポートされたペイロードのみを解析し、解析したペイロードを返します。
  • データの Topic は、解析の前後で変化しません。 たとえば、デバイスから /${productKey}/${deviceName}/user/update にデータが送信されると、解析されたデータもこの Topic に送信されます。

データ解析用スクリプトの送信

  1. IoT Platform コンソールにログインします。
  2. 左側のナビゲーションウィンドウで、[デバイス] > [プロダクト] を選択します。
  3. [プロダクト] ページでターゲットプロダクトを見つけ、[表示] をクリックします。
  4. [プロダクト詳細] ページで、[データ解析] タブを選択します。
  5. スクリプト言語を選択します。 [スクリプトの編集] テキストボックスにスクリプトを入力します。

    JavaScript (ECMAScript 5) と Python 2.7 がサポートされています。

    呼び出される関数をスクリプトに定義します。

    • JavaScript (ECMAScript 5):transformPayload()
    • Python 2.7:Transform_payload ()

    完全なサンプルコードについては、「JavaScript 例」と「Python 例」をご参照ください。

    プロダクトのデータ形式カスタムの場合、TSL データを解析するスクリプトを記述する必要があります。 TSL データの解析の詳細については、「TSL データの解析例」をご参照ください。
  6. スクリプトをテストします。
    1. [アナログ入力] タブで、[シミュレーションタイプ][カスタム] に設定し、デバイスと Topic を選択します。
    2. シミュレートするデバイスレポートデータを入力し、[実行] をクリックします。
  7. スクリプトでデータが正しく解析されることを確認したら、 [送信] をクリックして、IoT Platform のバックエンドシステムにスクリプトを送信します。