3.1.4.4 デバイスのTSLモデルを照会する

デバイスの TSL (Thing Specification Language) モデルをクエリします。

リクエスト URL

GET {base_url}/device/openapi/v1/devices/{deviceId}/thing-specification

リクエストパラメータ

表 1. ヘッダーパラメータ
パラメータ 必須 タイプ 説明
Authorization Yes String API呼び出しに有効なアクセストークン。

形式はBearer {access_token}です。

表2. パスパラメーター
パラメータ 必須 タイプ 説明
deviceId Yes Long このデバイスの一意のID。デバイスを追加した際に返されます。

注: deviceID を保存していない場合は、特定のデバイスの検索を使用してデバイスの ID を照会できます。

応答パラメータ

 
パラメータ タイプ 説明
data Object<TSL_Model> 照会したデバイスの TSL モデル
status String API リクエストの結果。

  • Success
  • Failed
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 サポート


Milesight製品

ウェーブクレスト株式会社が運営するMilesight製品特設サイトです

居住者の健康を確保

お知らせ

  1. 2025-4-3

    ピープル・センシング 駆動型スマートビルディング

    People Sensing Insights を通じてビルインテリジェンスに革命をもたらします。…
  2. 2023-7-21

    LoRaWANの説明: 理論から実践へのガイド

    この包括的なビデオでは、LoRaWANを深く掘り下げ、その仕組み、利点、アプリケーションについて説明…
  3. 2023-4-6

    センシング・インサイト Milesight リブランディングのお知らせ

    https://youtu.be/r40DK40DjIY …
ページ上部へ戻る