数据类型
数据类型
ThingsCloud 设备属性支持以下数据类型:
Number(数值)
任意数值,不区分整数和浮点数,例如:
-12345
0
0.123
12.345
12345
附加选项:
- 单位
- 精度
- 最小值
- 最大值
提示
当设置数值属性的最大值或最小值后,如果上报或下发的数值属性不符合该条件,ThingsCloud 会拒绝处理,您可以在设备调试中查看详细错误提示,便于修改合理的限制条件。
例如,设备上报数值型的属性格式:
{
"temperature": 23.2,
"humidity": 56.1
}
Text(文本)
Plaintext 字符串,例如:
auto
例如,设备上报文本型的属性格式:
{
"mode": "auto"
}
Switch(开关量)
Switch 开关量用于表示两种状态,例如 LED 的开/关,继电器的闭合/断开。
开关量使用布尔类型,如下:
true/false
为了支持各种硬件设备的开关量表达方式,开关量允许在设备和云平台之间的消息 JSON 中使用多种开关值,如下:
- 布尔类型
true/false
- 整数类型
1/0
- 文本类型
ON/OFF
附加选项:
- ON 文字
- OFF 文字
例如,设备上报开关量型的属性格式:
{
"switch1": false,
"switch2": true
}
Enum(枚举型)
Enum 类型的属性,本身也是一种文本类型,区别在于必须在限定的枚举值中取值。
例如,设备上报枚举型的属性格式:
{
"mode": "1"
}
Object(键值对集合)
{
"key1": value1,
"key2": value2,
"key3": value3,
...
}
value
表示已支持的任意基本数据类型。
例如,设备上报键值对型的属性格式:
{
"data": {
"temperature": 31.2,
"switch": true,
"mode": "1"
}
}
List(列表)
[
value1,
value2,
value3,
...
]
value
表示已支持的任意基本数据类型。
例如,设备上报列表型的属性格式:
{
"data": [
1,
3,
5
]
}
MapPoint(地理坐标)
该数据类型用于表示地理坐标,可在内置的坐标转换和电子围栏等规则中使用。
该数据类型的结构如下:
{
"lat": number,
"lng": number
}
例如,设备上报地理坐标型的属性格式:
{
"location": {
"lat": 41.0203,
"lng": 38.3183
}
}
MapCircle(地理圆形围栏)
该数据类型用于表示地理圆形围栏,可在内置的电子围栏规则中使用。
该数据类型的结构如下:
{
"centerPoint": {
"lat": number,
"lng": number
},
"radius": number
}
centerPoint
:圆形区域的中心点位置。radius
:圆形的半径,单位是米。
例如,设备上报地理圆形围栏型的属性格式:
{
"map_circle": {
"centerPoint": {
"lat": 41.0203,
"lng": 38.3189
},
"radius": 500
}
}
MapPolygon(地理多边形围栏)
该数据类型用于表示地理多边形围栏,可在内置的电子围栏规则中使用。
该数据类型的结构如下:
[
{
"lat": number,
"lng": number
},
{
"lat": number,
"lng": number
},
{
"lat": number,
"lng": number
},
...
]