このトピックでは、データ形式がカスタムのプロダクトの Thing Specification Language (TSL) データを解析するスクリプトを記述する方法について説明します。 アップストリームとダウンストリームのプロパティデータを解析するサンプルスクリプトを示します。
手順 1:スクリプトの送信
手順 2:オンラインでのスクリプトのテスト
スクリプトの編集後、[アナログ入力] タブで [シミュレーションタイプ] を選択し 、テストスクリプトとシミュレーションデータを入力してスクリプトをテストします。
- デバイスからレポートされたプロパティデータを解析します。
シミュレーションタイプを [デバイス送信データ] に設定し、次のシミュレーションデータを入力して [実行] をクリックします。
0x00002233441232013fa00000
データ解析エンジンは、スクリプトで定義されたルールに従って、パススルーデータを JSON データに変換します。
[解析結果] をクリックして、解析されたデータを表示します。
{ "method": "thing.event.property.post", "id": "2241348", "params": { "prop_float": 1.25, "prop_int16": 4658, "prop_bool": 1 }, "version": "1.0" }
- IoT Platform から返されたレスポンスを解析します。
シミュレーションタイプを [デバイス受信データ] に設定し、次の JSON データを入力して [実行] をクリックします。
{ "id": "12345", "version": "1.0", "code": 200, "method": "thing.event.property.post", "data": {} }
データ解析エンジンは、JSON データを次のデータに変換します。
0x0200003039c8
- IoT Platform から送信されたプロパティ設定用のデータを解析します。
シミュレーションタイプを [デバイス受信データ] に設定し、次の JSON データを入力して [実行] をクリックします。
{ "method": "thing.service.property.set", "id": "12345", "version": "1.0", "params": { "prop_float": 123.452, "prop_int16": 333, "prop_bool": 1 } }
データ解析エンジンは、JSON データを次のデータに変換します。
0x0100003039014d0142f6e76d
- プロパティを設定した後、デバイスから返された結果データを解析します。
シミュレーションタイプを [デバイス送信データ] に設定し、次のシミュレーションデータを入力して [実行] をクリックします。
0x0300223344c8
データ解析エンジンは、パススルーデータを次の JSON データに変換します。
{ "code": "200", "data": {}, "id": "2241348", "version": "1.0" }
手順 3:スクリプトの送信
スクリプトでデータが正しく解析されることを確認したら、[送信] をクリックして、IoT Platform のバックエンドシステムにスクリプトを送信します。
手順 4:物理デバイスでのデバッグ
スクリプトを使用する前に、実デバイスを使用して IoT Platform と通信します。 IoT Platform がスクリプトを呼び出し、アップストリームデータとダウンストリームデータを解析できることを確認してください。
- アップストリームプロパティデータをテストします。
- デバイスからレポートされたプロパティデータ (
0x00002233441232013fa00000
など) を使用します。 - IoT Platform コンソールで、 を選択します。
- ターゲットデバイスを見つけ、[表示] をクリックします。 [デバイス情報] ページの [ステータス] タブで、プロパティデータが存在するかどうかを確認します。
- デバイスからレポートされたプロパティデータ (
- ダウンストリームプロパティデータをテストします。
- IoT Platform コンソールで、 を選択します。
- デバッグするプロダクトとデバイスを選択します。 [実デバイスのデバッグ] をクリックします。 デバッグ機能をプロパティの識別子 (prop_int16 など) に設定します。 メソッドを [Set] に設定します。 次のデータを入力し、[コマンドの送信] をクリックします。
{ "method": "thing.service.property.set", "id": "12345", "version": "1.0", "params": { "prop_float": 123.452, "prop_int16": 333, "prop_bool": 1 } }
- デバイスがプロパティ設定用のデータを受信しているかどうかを確認します。
- このデバイスの [デバイス情報] ページの [ステータス] タブで、プロパティデータをレポートしているかどうかを確認します。
関連トピック
- JavaScript (ECMAScript 5) のスクリプトテンプレートと例の詳細については、「JavaScript 例」をご参照ください。
- Python 2.7 のスクリプトテンプレートと例の詳細については、次をご参照ください。 Python 例
- データ解析プロセスの詳細については、「データ解析」をご参照ください。
- カスタム Topic データの解析方法の詳細については、「概要」をご参照ください。