デバイスの TSL (Thing Specification Language) モデルをクエリします。
リクエスト URL
GET {base_url}/device/openapi/v1/devices/{deviceId}/thing-specification
リクエストパラメータ
パラメータ | 必須 | タイプ | 説明 |
---|---|---|---|
Authorization | Yes | String | API呼び出しに有効なアクセストークン。
形式はBearer {access_token}です。 |
パラメータ | 必須 | タイプ | 説明 |
---|---|---|---|
deviceId | Yes | Long | このデバイスの一意のID。デバイスを追加した際に返されます。
注: deviceID を保存していない場合は、特定のデバイスの検索を使用してデバイスの ID を照会できます。 |
応答パラメータ
パラメータ | タイプ | 説明 |
---|---|---|
data | Object<TSL_Model> | 照会したデバイスの TSL モデル |
status | String | API リクエストの結果。
|
requestId | String | リクエストの一意の ID。リクエストをすばやく見つけるために使用できます。 |
- TSL_Model
-
パラメータ タイプ 説明 version String - デバイスの TSL モデルのバージョン
properties Array<TSL_Properties> - プロパティは、このデバイスのステータスおよび情報を記述します
events Array<TSL_Events> - イベントには、通知および処理のためにデバイスから Milesight 開発プラットフォームに報告された情報が含まれます
services Array<TSL_Services> - サービスには、外部から呼び出すことができるデバイスのコマンドまたはメソッドが含まれます。
- TSL_Properties
-
パラメータ タイプ 説明 id String - プロパティのユニークID
propertyKey String - プロパティのキー
name String - プロパティの名前
description String - プロパティの説明
accessMode String - プロパティのアクセスモード
R
: 読み取り専用プロパティは、変更できない静的データまたは値であり、デバイスのステータスや情報を記述するために使用されます。たとえば、デバイスの SN (シリアル番号) やファームウェアのバージョンなどです。W
: 書き込み専用プロパティは、設定可能なパラメータであり、デバイスの設定を表します。たとえば、センサーのデータ報告間隔などです。- 注: 書き込み専用プロパティの値は、デバイスプロパティを段階的に更新を使用して、デバイスの設定を更新するために変更できます。
RW
: 読み取りおよび書き込みプロパティ。デバイス情報を記述するだけでなく、変更もできます。たとえば、スマートソケットのオン/オフステータスなどです。- 注: 読み取りおよび書き込みプロパティの値は、デバイスプロパティを段階的に更新を使用して、デバイスの設定を更新するために変更できます。
dataSpec Object - このプロパティのデータ定義。
注: 返されるパラメーターはデバイスのモデルによって異なります。
dataType String プロパティのデータ型。 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
elementDataType String 要素データの型 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
parentId String 親プロパティの ID。 defaultValue String このプロパティのデフォルト値。 unitName String - 単位の名前
fractionDigits Integer - 保持する小数点以下の桁数
coefficient Number - プロパティの係数。
validator Object - このプロパティのデータ検証ルールを適用するメカニズム。
min Number - 最小値。
max Number - 最大値。
minSize Integer String
データの最小長。
maxSize Integer String
およびArray
データの最大長。
required Boolean このプロパティが必須であるかどうか true
: 必須false
: オプション
encoding String String
データのエンコード方法。
HEX
ASCII
UTF8
BASE64
mapping Object - 列挙型マッピング
key String Enum値. value String - プロパティ名
assist providerType String dependsOnValue Object id String values Array<Integer> lengthBy String indexBy String indexBase Integer separateElements Boolean
- TSL_Events
-
パラメータ タイプ 説明 id String - イベントのユニークID
name String - イベントの名前
description String - イベントの説明
type String イベントのタイプ INFO
WARN
ERROR
outputs Array - このイベントが発生した際に報告される出力パラメーター。
id String - 出力パラメーターのユニークID。
propertyKey String - この報告されるプロパティのキー
name String - この出力パラメーターの名前
description String - この出力パラメーターの説明
dataSpec Object - この出力パラメーターのデータ定義
dataType String 出力パラメーターのデータ型。 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
elementDataType String 要素データの型 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
parentId String - 親出力パラメータの ID
defaultValue String - この出力パラメータのデフォルト値。
unitName String - 単位の名前。
fractionDigits Integer - 保持する小数点以下の桁数。
coefficient Number - 出力パラメータの係数。
validator Object - この出力パラメータのデータ検証ルールを適用するメカニズム。
min Number - 最小値。
max Number - 最大値。
minSize Integer 文字列
データの最小長。
maxSize Integer String
およびArray
データの最大長。
required Boolean この出力パラメータが必須であるかどうか true
: 必須false
:オプション
encoding String String
データのエンコード方法。
HEX
ASCII
UTF8
BASE64
mapping Object - 列挙型マッピング。
key String Enum 値. value String - イベント名。
ref String - 既存のプロパティを参照。
- TSL_Services
-
パラメータ タイプ 説明 id String - このサービスの一意のID
name String - サービスの名前
description String - サービスの説明
callType String このサービス呼び出しのタイプ: SYNC
: 同期呼び出しASYNC
: 非同期呼び出し。
inputs Array - このサービスが呼び出された際の入力パラメーター(ダウンリンクデータ)。
id String - この入力パラメーターのユニークID。
propertyKey String name String - この入力パラメーターの名前。
description String - この入力パラメーターの説明。
dataSpec Object - この入力パラメーターのデータ定義。
dataType String この入力パラメーターのデータ型。 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
elementDataType String 要素データの型。 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
parentId String - 親入力パラメーターのID。
defaultValue String - この入力パラメータのデフォルト値。
unitName String - 単位の名前。
fractionDigits Integer - 保持する小数点以下の桁数。
coefficient Number - 入力パラメータの係数。
validator Object - この入力パラメータのデータ検証ルールを適用するメカニズム。
min Number - 最小値
max Number - 最大値
minSize Integer String
データの最小長。
maxSize Integer String
およびArray
データの最大長。
required Boolean この入力パラメータが必須であるかどうか true
: 必須false
: オプション
encoding String String
データのエンコード方法。
HEX
ASCII
UTF8
BASE64
mapping Object - 列挙型マッピング。
key String Enum 値 value String - サービス名。
ref String - 既存のプロパティを参照します
outputs Array - 出力パラメータ、つまり、このサービスが呼び出されたときに報告されるデータ。
id String - 出力パラメータの一意の ID。
propertyKey String name String - この出力パラメータの名前。
description String - この出力パラメータの説明。
dataSpec Object - この出力パラメータのデータ定義。
dataType String 出力パラメータのデータ型。 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
elementDataType String 要素データの型。 BOOL
STRING
STRUCT
DATE
ARRAY
INT
LONG
FLOAT
DOUBLE
ENUM
parentId String - 親出力パラメータの ID。
defaultValue String - この出力パラメータのデフォルト値。
unitName String - 単位の名前
fractionDigits Integer - 保持する小数点以下の桁数。
coefficient Number - 出力パラメータの係数。
validator Object - この出力パラメータのデータ検証ルールを適用するメカニズム。
min Number - 最小値
max Number - 最大値
minSize Integer String
データの最小長さ。
maxSize Integer String
およびArray
データの最大長さ。
required Boolean この出力パラメーターが必須かどうか true
: 必須false
:任意
encoding String 文字列
データのエンコード方法。
HEX
ASCII
UTF8
BASE64
mapping Object - 列挙型マッピング
key String Enum 値. value String サービス名。 ref String - 既存のプロパティを参照。
例
- リクエスト例
-
- ID「1739930666380779522」のデバイスの TSL モデルをクエリします。
-
GET /device/openapi/v1/devices/1739930666380779522/thing-specification HTTP/1.1 Host: demo.milesight.com Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6InllYXN0b25lLWRlZmF1bHQta2V5LWlkIn0.eyJncmFudF90eXBlIjoiY2xpZW50X2NyZWRlbnRpYWxzIiwic2NvcGUiOlsib3BlbmFwaSJdLCJjbGllbnRfZXh0Ijp7ImFwcF9pZCI6IjE3MzY5NTQ4MDE3MTMzMjgxMzAifSwiZXhwIjoxNzAzMjEzMDk4LCJhdXRob3JpdGllcyI6WyJST0xFX0NMSUVOVCJdLCJqdGkiOiJiYjJjN2U4Yy03NGQwLTQ4NjEtODE3MS1iYTc0NWRlMGY0NmQiLCJjbGllbnRfaWQiOiI4OTNkNzdjNy1mMGNiLTRmMzQtOWNhMS03YzJhNGNmMTEzNDgiLCJ0cyI6MTcwMzIwOTQ5ODMzNH0 Content-Type: application/json
- Response example
-
HTTP/1.1 200 OK { "data": { "version": "v1.0", "properties": [ { "id": "ipso_version", "name": "${pd.common.tsl.property.ipso_version.name}", "accessMode": "R", "dataSpec": { "dataType": "INT", "validator": { "required": true } } }, { "id": "sn", "name": "${pd.common.tsl.property.sn.name}", "accessMode": "R", "dataSpec": { "dataType": "STRING", "validator": { "maxSize": 12, "required": true }, "encoding": "HEX" } }, { "id": "hardware_version", "name": "${pd.common.tsl.property.hardware_version.name}", "accessMode": "R", "dataSpec": { "dataType": "STRING", "validator": { "maxSize": 4, "required": true }, "encoding": "HEX" } }, { "id": "firmware_version", "name": "${pd.common.tsl.property.firmware_version.name}", "accessMode": "R", "dataSpec": { "dataType": "STRING", "validator": { "maxSize": 4, "required": true }, "encoding": "HEX" } }, { "id": "lorawan_class", "name": "${pd.common.tsl.property.lorawan_class.name}", "accessMode": "R", "dataSpec": { "dataType": "ENUM", "validator": { "required": true }, "mapping": { "0": "${pd.common.tsl.property.lorawan_class.enum.0}" } } }, { "id": "battery", "name": "${pd.common.tsl.property.battery.name}", "accessMode": "R", "dataSpec": { "dataType": "INT", "unitName": "%", "validator": { "min": 1.0, "max": 100.0, "required": true } } }, { "id": "temperature", "name": "${pd.ws203.tsl.property.temperature.name}", "accessMode": "R", "dataSpec": { "dataType": "FLOAT", "unitName": "℃", "fractionDigits": 1, "coefficient": 0.1, "validator": { "required": true } } }, { "id": "humidity", "name": "${pd.ws203.tsl.property.humidity.name}", "accessMode": "R", "dataSpec": { "dataType": "FLOAT", "unitName": "%RH", "fractionDigits": 1, "coefficient": 0.5, "validator": { "min": 0.0, "max": 100.0, "required": true } } }, { "id": "pir_status", "name": "${pd.ws203.tsl.property.pir_status.name}", "accessMode": "R", "dataSpec": { "dataType": "ENUM", "validator": { "required": true }, "mapping": { "0": "${pd.ws203.tsl.property.pir_status.enum.0}", "1": "${pd.ws203.tsl.property.pir_status.enum.1}" } } }, { "id": "reporting_interval", "name": "${pd.ws203.tsl.property.reporting_interval.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "reporting_interval.time", "name": "${pd.ws203.tsl.property.reporting_interval.time.name}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "reporting_interval", "defaultValue": "30", "unitName": "min", "validator": { "min": 1.0, "max": 1440.0, "required": true } } }, { "id": "collecting_interval", "name": "${pd.ws203.tsl.property.collecting_interval.name}", "accessMode": "W", "dataSpec": { "dataType": "INT", "defaultValue": "1", "unitName": "min", "validator": { "min": 1.0, "max": 1440.0, "required": true } } }, { "id": "vacancy_reporting_interval", "name": "${pd.ws203.tsl.property.vacancy_reporting_interval.name}", "description": "${pd.ws203.tsl.property.vacancy_reporting_interval.description}", "accessMode": "W", "dataSpec": { "dataType": "INT", "defaultValue": "300", "unitName": "s", "validator": { "min": 60.0, "max": 3600.0, "required": true } } }, { "id": "led_indicator", "name": "${pd.ws203.tsl.property.led_indicator.name}", "description": "${pd.ws203.tsl.property.led_indicator.description}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.led_indicator.enum.0}", "true": "${pd.ws203.tsl.property.led_indicator.enum.1}" } } }, { "id": "time_zone", "name": "${pd.ws203.tsl.property.time_zone.name}", "accessMode": "W", "dataSpec": { "dataType": "ENUM", "defaultValue": "0", "validator": { "required": true }, "mapping": { "0": "${pd.ws203.tsl.property.time_zone.enum.0}", "10": "${pd.ws203.tsl.property.time_zone.enum.10}", "20": "${pd.ws203.tsl.property.time_zone.enum.20}", "30": "${pd.ws203.tsl.property.time_zone.enum.30}", "35": "${pd.ws203.tsl.property.time_zone.enum.35}", "40": "${pd.ws203.tsl.property.time_zone.enum.40}", "45": "${pd.ws203.tsl.property.time_zone.enum.45}", "50": "${pd.ws203.tsl.property.time_zone.enum.50}", "55": "${pd.ws203.tsl.property.time_zone.enum.55}", "57": "${pd.ws203.tsl.property.time_zone.enum.57}", "60": "${pd.ws203.tsl.property.time_zone.enum.60}", "65": "${pd.ws203.tsl.property.time_zone.enum.65}", "70": "${pd.ws203.tsl.property.time_zone.enum.70}", "80": "${pd.ws203.tsl.property.time_zone.enum.80}", "90": "${pd.ws203.tsl.property.time_zone.enum.90}", "95": "${pd.ws203.tsl.property.time_zone.enum.95}", "100": "${pd.ws203.tsl.property.time_zone.enum.100}", "105": "${pd.ws203.tsl.property.time_zone.enum.105}", "110": "${pd.ws203.tsl.property.time_zone.enum.110}", "120": "${pd.ws203.tsl.property.time_zone.enum.120}", "127": "${pd.ws203.tsl.property.time_zone.enum.127}", "130": "${pd.ws203.tsl.property.time_zone.enum.130}", "140": "${pd.ws203.tsl.property.time_zone.enum.140}", "-120": "${pd.ws203.tsl.property.time_zone.enum._120}", "-110": "${pd.ws203.tsl.property.time_zone.enum._110}", "-100": "${pd.ws203.tsl.property.time_zone.enum._100}", "-95": "${pd.ws203.tsl.property.time_zone.enum._95}", "-90": "${pd.ws203.tsl.property.time_zone.enum._90}", "-80": "${pd.ws203.tsl.property.time_zone.enum._80}", "-70": "${pd.ws203.tsl.property.time_zone.enum._70}", "-60": "${pd.ws203.tsl.property.time_zone.enum._60}", "-50": "${pd.ws203.tsl.property.time_zone.enum._50}", "-40": "${pd.ws203.tsl.property.time_zone.enum._40}", "-35": "${pd.ws203.tsl.property.time_zone.enum._35}", "-30": "${pd.ws203.tsl.property.time_zone.enum._30}", "-20": "${pd.ws203.tsl.property.time_zone.enum._20}", "-10": "${pd.ws203.tsl.property.time_zone.enum._10}" } } }, { "id": "data_storage_enable", "name": "${pd.ws203.tsl.property.data_storage_enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.data_storage_enable.enum.0}", "true": "${pd.ws203.tsl.property.data_storage_enable.enum.1}" } } }, { "id": "retransmission_enable", "name": "${pd.ws203.tsl.property.retransmission_enable.name}", "description": "${pd.ws203.tsl.property.retransmission_enable.description}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.retransmission_enable.enum.0}", "true": "${pd.ws203.tsl.property.retransmission_enable.enum.1}" } } }, { "id": "retransmission_interval", "name": "${pd.ws203.tsl.property.retransmission_interval.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "retransmission_interval.interval", "name": "${pd.ws203.tsl.property.retransmission_interval.interval.name}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "retransmission_interval", "defaultValue": "600", "unitName": "s", "validator": { "min": 30.0, "max": 1200.0, "required": true } } }, { "id": "retrival_interval", "name": "${pd.ws203.tsl.property.retrival_interval.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "retrival_interval.interval", "name": "${pd.ws203.tsl.property.retrival_interval.interval.name}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "retrival_interval", "defaultValue": "60", "unitName": "s", "validator": { "min": 30.0, "max": 1200.0, "required": true } } }, { "id": "threshold_parameter", "name": "${pd.ws203.tsl.property.threshold_parameter.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "threshold_parameter.threshold_condition", "name": "${pd.ws203.tsl.property.threshold_parameter.threshold_condition.name}", "accessMode": "W", "dataSpec": { "dataType": "ENUM", "parentId": "threshold_parameter", "defaultValue": "0", "validator": { "required": true }, "mapping": { "0": "${pd.ws203.tsl.property.threshold_parameter.threshold_condition.enum.0}", "1": "${pd.ws203.tsl.property.threshold_parameter.threshold_condition.enum.1}", "2": "${pd.ws203.tsl.property.threshold_parameter.threshold_condition.enum.2}", "3": "${pd.ws203.tsl.property.threshold_parameter.threshold_condition.enum.3}", "4": "${pd.ws203.tsl.property.threshold_parameter.threshold_condition.enum.4}" } } }, { "id": "threshold_parameter.threshold_max", "name": "${pd.ws203.tsl.property.threshold_parameter.threshold_max.name}", "accessMode": "W", "dataSpec": { "dataType": "FLOAT", "parentId": "threshold_parameter", "defaultValue": "0", "unitName": "℃", "fractionDigits": 1, "coefficient": 0.1, "validator": { "min": -30.0, "max": 60.0, "required": true } } }, { "id": "threshold_parameter.threshold_min", "name": "${pd.ws203.tsl.property.threshold_parameter.threshold_min.name}", "accessMode": "W", "dataSpec": { "dataType": "FLOAT", "parentId": "threshold_parameter", "defaultValue": "0", "unitName": "℃", "fractionDigits": 1, "coefficient": 0.1, "validator": { "min": -30.0, "max": 60.0, "required": true } } }, { "id": "d2d_enable", "name": "${pd.ws203.tsl.property.d2d_enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_enable.enum.1}" } } }, { "id": "d2d_key", "name": "${pd.ws203.tsl.property.d2d_key.name}", "accessMode": "W", "dataSpec": { "dataType": "STRING", "defaultValue": "5572404c696e6b4c", "validator": { "minSize": 16, "maxSize": 16, "required": true }, "encoding": "HEX" } }, { "id": "d2d_trigger_by_occupied_temperature", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "d2d_trigger_by_occupied_temperature.enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_occupied_temperature", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.enable.enum.1}" } } }, { "id": "d2d_trigger_by_occupied_temperature.lora_uplink_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.lora_uplink_enable.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.lora_uplink_enable.description}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_occupied_temperature", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.lora_uplink_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.lora_uplink_enable.enum.1}" } } }, { "id": "d2d_trigger_by_occupied_temperature.control_command", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.control_command.name}", "accessMode": "W", "dataSpec": { "dataType": "STRING", "parentId": "d2d_trigger_by_occupied_temperature", "defaultValue": "0000", "validator": { "minSize": 4, "maxSize": 4, "required": true }, "encoding": "HEX" } }, { "id": "d2d_trigger_by_occupied_temperature.control_time_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.control_time_enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_occupied_temperature", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.control_time_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.control_time_enable.enum.1}" } } }, { "id": "d2d_trigger_by_occupied_temperature.control_time", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.control_time.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_occupied_temperature.control_time.description}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "d2d_trigger_by_occupied_temperature", "defaultValue": "5", "unitName": "min", "validator": { "required": true } } }, { "id": "d2d_trigger_by_occupied", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "d2d_trigger_by_occupied.enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_occupied", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.enable.enum.1}" } } }, { "id": "d2d_trigger_by_occupied.lora_uplink_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.lora_uplink_enable.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.lora_uplink_enable.description}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_occupied", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.lora_uplink_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.lora_uplink_enable.enum.1}" } } }, { "id": "d2d_trigger_by_occupied.control_command", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.control_command.name}", "accessMode": "W", "dataSpec": { "dataType": "STRING", "parentId": "d2d_trigger_by_occupied", "defaultValue": "0000", "validator": { "minSize": 4, "maxSize": 4, "required": true }, "encoding": "HEX" } }, { "id": "d2d_trigger_by_occupied.control_time_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.control_time_enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_occupied", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.control_time_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.control_time_enable.enum.1}" } } }, { "id": "d2d_trigger_by_occupied.control_time", "name": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.control_time.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_occupied.control_time.description}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "d2d_trigger_by_occupied", "defaultValue": "5", "unitName": "min", "validator": { "required": true } } }, { "id": "d2d_trigger_by_vacant", "name": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "d2d_trigger_by_vacant.enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_vacant", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.enable.enum.1}" } } }, { "id": "d2d_trigger_by_vacant.lora_uplink_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.lora_uplink_enable.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.lora_uplink_enable.description}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_vacant", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.lora_uplink_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.lora_uplink_enable.enum.1}" } } }, { "id": "d2d_trigger_by_vacant.control_command", "name": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.control_command.name}", "accessMode": "W", "dataSpec": { "dataType": "STRING", "parentId": "d2d_trigger_by_vacant", "defaultValue": "0000", "validator": { "minSize": 4, "maxSize": 4, "required": true }, "encoding": "HEX" } }, { "id": "d2d_trigger_by_vacant.control_time_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.control_time_enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_vacant", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.control_time_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.control_time_enable.enum.1}" } } }, { "id": "d2d_trigger_by_vacant.control_time", "name": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.control_time.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_vacant.control_time.description}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "d2d_trigger_by_vacant", "defaultValue": "5", "unitName": "min", "validator": { "required": true } } }, { "id": "d2d_trigger_by_temperature_threshold", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "d2d_trigger_by_temperature_threshold.enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_temperature_threshold", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.enable.enum.1}" } } }, { "id": "d2d_trigger_by_temperature_threshold.lora_uplink_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.lora_uplink_enable.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.lora_uplink_enable.description}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_temperature_threshold", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.lora_uplink_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.lora_uplink_enable.enum.1}" } } }, { "id": "d2d_trigger_by_temperature_threshold.control_command", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.control_command.name}", "accessMode": "W", "dataSpec": { "dataType": "STRING", "parentId": "d2d_trigger_by_temperature_threshold", "defaultValue": "0000", "validator": { "minSize": 4, "maxSize": 4, "required": true }, "encoding": "HEX" } }, { "id": "d2d_trigger_by_temperature_threshold.control_time_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.control_time_enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_temperature_threshold", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.control_time_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.control_time_enable.enum.1}" } } }, { "id": "d2d_trigger_by_temperature_threshold.control_time", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.control_time.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold.control_time.description}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "d2d_trigger_by_temperature_threshold", "defaultValue": "5", "unitName": "min", "validator": { "required": true } } }, { "id": "d2d_trigger_by_temperature_threshold_release", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.name}", "accessMode": "W", "dataSpec": { "dataType": "STRUCT", "validator": { "required": true } } }, { "id": "d2d_trigger_by_temperature_threshold_release.enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_temperature_threshold_release", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.enable.enum.1}" } } }, { "id": "d2d_trigger_by_temperature_threshold_release.lora_uplink_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.lora_uplink_enable.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.lora_uplink_enable.description}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_temperature_threshold_release", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.lora_uplink_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.lora_uplink_enable.enum.1}" } } }, { "id": "d2d_trigger_by_temperature_threshold_release.control_command", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.control_command.name}", "accessMode": "W", "dataSpec": { "dataType": "STRING", "parentId": "d2d_trigger_by_temperature_threshold_release", "defaultValue": "0000", "validator": { "minSize": 4, "maxSize": 4, "required": true }, "encoding": "HEX" } }, { "id": "d2d_trigger_by_temperature_threshold_release.control_time_enable", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.control_time_enable.name}", "accessMode": "W", "dataSpec": { "dataType": "BOOL", "parentId": "d2d_trigger_by_temperature_threshold_release", "defaultValue": "false", "validator": { "required": true }, "mapping": { "false": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.control_time_enable.enum.0}", "true": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.control_time_enable.enum.1}" } } }, { "id": "d2d_trigger_by_temperature_threshold_release.control_time", "name": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.control_time.name}", "description": "${pd.ws203.tsl.property.d2d_trigger_by_temperature_threshold_release.control_time.description}", "accessMode": "W", "dataSpec": { "dataType": "INT", "parentId": "d2d_trigger_by_temperature_threshold_release", "defaultValue": "5", "unitName": "min", "validator": { "required": true } } } ], "events": [ { "id": "temperature_threshold_alarm", "name": "${pd.ws203.tsl.event.temperature_threshold_alarm.name}", "type": "WARN", "outputs": [ { "ref": "temperature" }, { "id": "temperature_threshold_alarm.alarm_type", "name": "${pd.ws203.tsl.param.temperature_threshold_alarm.alarm_type.name}", "dataSpec": { "dataType": "ENUM", "parentId": "temperature_threshold_alarm", "validator": { "required": true }, "mapping": { "0": "${pd.ws203.tsl.param.temperature_threshold_alarm.alarm_type.enum.0}", "1": "${pd.ws203.tsl.param.temperature_threshold_alarm.alarm_type.enum.1}" } } } ] }, { "id": "historical_data", "name": "${pd.ws203.tsl.event.historical_data.name}", "type": "INFO", "outputs": [ { "id": "historical_data.timestamp", "name": "${pd.ws203.tsl.param.historical_data.timestamp.name}", "dataSpec": { "dataType": "DATE", "parentId": "historical_data", "unitName": "s", "validator": { "required": true } } }, { "id": "historical_data.trigger_type", "name": "${pd.ws203.tsl.param.historical_data.trigger_type.name}", "dataSpec": { "dataType": "ENUM", "parentId": "historical_data", "validator": { "required": true }, "mapping": { "0": "${pd.ws203.tsl.param.historical_data.trigger_type.enum.0}", "1": "${pd.ws203.tsl.param.historical_data.trigger_type.enum.1}", "2": "${pd.ws203.tsl.param.historical_data.trigger_type.enum.2}", "3": "${pd.ws203.tsl.param.historical_data.trigger_type.enum.3}", "4": "${pd.ws203.tsl.param.historical_data.trigger_type.enum.4}" } } }, { "id": "historical_data.pir_status", "name": "${pd.ws203.tsl.param.historical_data.pir_status.name}", "dataSpec": { "dataType": "ENUM", "parentId": "historical_data", "validator": { "required": true }, "mapping": { "0": "${pd.ws203.tsl.param.historical_data.pir_status.enum.0}", "1": "${pd.ws203.tsl.param.historical_data.pir_status.enum.1}" } } }, { "id": "historical_data.temperature", "name": "${pd.ws203.tsl.param.historical_data.temperature.name}", "dataSpec": { "dataType": "FLOAT", "parentId": "historical_data", "unitName": "℃", "fractionDigits": 1, "coefficient": 0.1, "validator": { "required": true } } }, { "id": "historical_data.humidity", "name": "${pd.ws203.tsl.param.historical_data.humidity.name}", "dataSpec": { "dataType": "FLOAT", "parentId": "historical_data", "unitName": "%RH", "fractionDigits": 1, "coefficient": 0.5, "validator": { "min": 0.0, "max": 100.0, "required": true } } } ] } ], "services": [ { "id": "reboot", "name": "${pd.ws203.tsl.service.reboot.name}", "callType": "ASYNC", "inputs": [], "outputs": [] }, { "id": "query_device_status", "name": "${pd.ws203.tsl.service.query_device_status.name}", "callType": "ASYNC", "inputs": [], "outputs": [] }, { "id": "time_synchronize", "name": "${pd.ws203.tsl.service.time_synchronize.name}", "callType": "ASYNC", "inputs": [], "outputs": [] }, { "id": "clear_historical_data", "name": "${pd.ws203.tsl.service.clear_historical_data.name}", "callType": "ASYNC", "inputs": [], "outputs": [] }, { "id": "retrival_historical_data_by_time", "name": "${pd.ws203.tsl.service.retrival_historical_data_by_time.name}", "callType": "ASYNC", "inputs": [ { "id": "retrival_historical_data_by_time.time", "name": "${pd.ws203.tsl.param.retrival_historical_data_by_time.time.name}", "dataSpec": { "dataType": "DATE", "parentId": "retrival_historical_data_by_time", "unitName": "s", "validator": { "required": true } } } ], "outputs": [] }, { "id": "retrival_historical_data_by_time_range", "name": "${pd.ws203.tsl.service.retrival_historical_data_by_time_range.name}", "callType": "ASYNC", "inputs": [ { "id": "retrival_historical_data_by_time_range.start_time", "name": "${pd.ws203.tsl.param.retrival_historical_data_by_time_range.start_time.name}", "dataSpec": { "dataType": "DATE", "parentId": "retrival_historical_data_by_time_range", "unitName": "s", "validator": { "required": true } } }, { "id": "retrival_historical_data_by_time_range.end_time", "name": "${pd.ws203.tsl.param.retrival_historical_data_by_time_range.end_time.name}", "dataSpec": { "dataType": "DATE", "parentId": "retrival_historical_data_by_time_range", "unitName": "s", "validator": { "required": true } } } ], "outputs": [] }, { "id": "stop_historical_data_retrival", "name": "${pd.ws203.tsl.service.stop_historical_data_retrival.name}", "callType": "ASYNC", "inputs": [], "outputs": [] } ] }, "status": "Success", "requestId": "f2c9e4437820f8168d23b4cf754aa62d" }
関連記事
ソリューション / IoT サポート
- ▢3. Milesight開発プラットフォームAPIの概要システムをサードパーティのアプリケーションと統合するためのアプリケーションプログラミングインターフェース (API) を提供しています
- 3.1.1.1 APIリクエスト構造Milesight Development Platform APIのリクエスト構造について説明します
- 3.1.1.2 API レスポンス結果APIリクエストを受信すると、Milesight Development Platformはリクエストの結果を示すHTTPステータスコードと、API呼び出しで要求された情報を含むJSONレスポンスボディを返します。
- 3.1.2 API インターフェース一覧このトピックでは、Milesight Development Platform API のインターフェースの要約リストを提供します。
- 3.1.3.1 API 認証ルールMilesight Development Platform APIは、OAuth 2.0を使用して認証を行い、アプリケーションがMilesight Development Platform上のリソースにアクセスするためのセキュアなトークンを発行します。
- 3.1.3.2 API アクセス トークンの取得アクセス トークンは、認証された API 呼び出しを検証するために使用されます。アプリケーションはまずアクセス トークンをリクエストし、その後、Milesight Development Platform API にアクセスするすべてのリクエストにそのトークンを含める必要があります。
- 3.1.3.3 API アクセス トークンの更新Milesight Development Platformとアプリケーション間の安全でスムーズな通信を確保するため、アクセス トークンが有効期限切れになる前に更新する必要があります。
- 3.1.4.1 デバイスを追加するMilesight Development Platform にデバイスを追加し、現在のアプリケーションに関連付けます。
- 3.1.4.10 特定のデバイスの設定を取得する特定のデバイスの詳細な設定を照会します。
- 3.1.4.2 特定のデバイスを検索する現在のアプリケーションに関連付けられているすべてのデバイスから、特定のデバイスを検索します。
- 3.1.4.3 特定のデバイスをクエリする特定のデバイスの詳細情報を照会します。
- 3.1.4.4 デバイスのTSLモデルを照会するデバイスの TSL (Thing Specification Language) モデルをクエリします。
- 3.1.4.5 デバイス サービスを非同期に呼び出すデバイスのサービスを非同期で呼び出します。
- 3.1.4.5 プロパティ レポートの履歴データを照会するデバイスプロパティレポートの履歴データを照会するためのインターフェースについて紹介します。
- 3.1.4.6 デバイス情報の更新デバイスの名前、説明、およびタグを更新します。
- 3.1.4.7 デバイス プロパティを段階的に更新するデバイスのプロパティを段階的に更新します。これは、単一のデバイスおよび単純なパラメータの更新に適しています。
- 3.1.4.8 デバイスを削除するMilesight Development Platform からデバイスを削除します。
- 3.1.4.9 アプリケーションからデバイスを削除するMilesight Development Platform のアプリケーションからデバイスを削除します。
- 3.1.5.1 RPS用のプロファイルURLを指定するデバイスの RPS (リダイレクトおよびプロビジョニングサービス) でプロファイル URL を指定します。
- 3.1.5.2 クエリ プロファイル URL リスト現在のアプリケーション内のプロファイル URL リストを照会します。
- 3.1.5.3 デバイスのRPSレコードの削除RPS のプロファイル URL を指定してデバイスを Milesight Development Platform に追加する場合、またはデバイスを別のプラットフォームに転送する場合は、RPS レコードの一意性を確保するために、デバイスの現在の RPS レコードを削除する必要があります。
- 3.1.6.1 構成タスクの作成リモートデバイスに設定を適用するための設定タスクを作成します。これは、大量のデバイスや設定パラメータが多い場合に適しています。単一のデバイスや単純なパラメータの更新については、「デバイスプロパティの段階的な更新」を参照してください。
- 3.2.1 イベント通知の概要要件、Webhook ワークフロー、サポートされている Webhook イベントなど、Milesight Development Platform Webhook の概要について詳しく説明します。
- 3.2.2 Webhook イベント通知の設定サードパーティのアプリケーションが、デバイスが Milesight Development Platform にデータを報告したときにリアルタイムの通知を受け取ることができるように、Webhook イベント通知を設定する方法について説明します。
- 3.2.3.1 デバイスデータイベント「DEVICE_DATA」の例と説明について説明します。
- 3.2.3.2 タスクデータイベント「TASK_DATA」の例と詳細について説明します。