|
|
@@ -28,7 +28,7 @@
|
|
|
|
|
|
## 范围说明
|
|
|
|
|
|
-此开发文档只针对智能家居面板,门禁,网关等设备。
|
|
|
+此开发文档只针对智能家居面板,门禁,网关等设备。数据格式包含:设备配置列表数据,场景配置列表数据,区域列表数据等。
|
|
|
|
|
|
# 设备配置数据获取接口说明
|
|
|
|
|
|
@@ -81,6 +81,9 @@ Authorization: Bearer {{token}}
|
|
|
2. 失败,状态码401,授权失败
|
|
|
3. 具体返回状态码和http标准状态码一致,具体请查看[HTTP状态码](https://www.runoob.com/http/http-status-codes.html)
|
|
|
|
|
|
+## 返回数据格式总体定义说明
|
|
|
+1. 数据格式为json,返回数据为数据列表,json中采用驼峰命名方式
|
|
|
+
|
|
|
|
|
|
### 所有设备具有的配置属性返回数据格式示例
|
|
|
|
|
|
@@ -89,7 +92,7 @@ Authorization: Bearer {{token}}
|
|
|
//第一个模板为所有配置,包含必选配置和可选配置,不同设备类型的配置都有说明
|
|
|
{
|
|
|
"id": 1, //设备配置id
|
|
|
- "pid": 1, //设备父级id,0为顶级
|
|
|
+ "pid": 1, //设备父级id,0为顶级,父级id目前可以是网关id,也可以是面板id,面板下的gpio设备或ble,zigbee设备需要通过面板转发控制的设备,父id为面板id,即面板可以当网关用
|
|
|
"areaId": "区域id",
|
|
|
"area": "区域名称",
|
|
|
"name": "0001", //设备名称,设备唯一名称
|
|
|
@@ -114,9 +117,11 @@ Authorization: Bearer {{token}}
|
|
|
"keep_time": 5, //--门锁为单信号时,控制延时上锁时间,默认值为5秒,范围(1到30秒)如门禁开后5秒后自动上锁
|
|
|
"icons":["internal://array_light","http://www.abc.com/img/light.png"],//设备图标列表,默认数组第一个下标图标
|
|
|
"order": 1,//排序,值越小越靠前,相同的值按设备先后顺序
|
|
|
- "temp": 30,//默认温度
|
|
|
- "humidity": 50,//默认湿度
|
|
|
+ "temp": 26,//默认温度
|
|
|
+ "humidity": 60,//默认湿度
|
|
|
"speed":3 ,//空调,风扇风力档位数量,默认为3档,低,中,高
|
|
|
+ "main": true,//网关设备使用,主网关为true,无或false时为从属网关
|
|
|
+ "func":[],//面板功能列表,如
|
|
|
"modes": ["","","",""],//支持模式列表 fan,cool,heat,auto,saving,dehumidify,sleeping,fan_inner(内循环),fan_side(旁通)/heat_exchange(热交换)
|
|
|
"bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot
|
|
|
"associated_sensor": //关联传感器,如温湿度传感器,第一个为环境温湿度传感器,当为地暖时,第二个为报警温度传感器,默认45度
|
|
|
@@ -200,7 +205,7 @@ Authorization: Bearer {{token}}
|
|
|
"address": "A5", //地址
|
|
|
"ports": [1], //端口,只用一个端口的设备取数组第一个值
|
|
|
"bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot,默认canbus
|
|
|
- "temp": 30,//默认温度
|
|
|
+ "temp": 26,//默认温度
|
|
|
"humidity": 50//默认湿度
|
|
|
}
|
|
|
},
|
|
|
@@ -213,7 +218,7 @@ Authorization: Bearer {{token}}
|
|
|
"address": "A5A812344545", //地址蓝牙设备mac地址
|
|
|
"ports": [1], //端口,只用一个端口的设备取数组第一个值,保留,暂时没有使用
|
|
|
"bus":"bluetooth",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot,默认canbus
|
|
|
- "temp": 30,//默认温度
|
|
|
+ "temp": 26,//默认温度
|
|
|
"humidity": 50//默认湿度
|
|
|
}
|
|
|
}
|
|
|
@@ -362,8 +367,8 @@ Authorization: Bearer {{token}}
|
|
|
"temp": 30,//默认温度
|
|
|
"bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot
|
|
|
"associated_sensor": //关联传感器,如温湿度传感器,第一个为环境温湿度传感器,当为地暖时,第二个为报警温度传感器,默认45度
|
|
|
- [{"name":"humiture1","calibration":10},
|
|
|
- {"name":"humiture2", //关联传感器2,设备唯一的名称
|
|
|
+ [{"name":"humiture1","calibration":10},//关联传感器,设备唯一的名称,代表关联的环境温湿度传感器
|
|
|
+ {"name":"humiture2", //关联传感器2,设备唯一的名称,代表关联的地暖地下环境温度传感器,安全控制用
|
|
|
"calibration":5, //校正温度度数
|
|
|
"alarm_temp":45 //报警温度度数
|
|
|
}],
|
|
|
@@ -386,7 +391,7 @@ Authorization: Bearer {{token}}
|
|
|
"modes": ["fan","cool","heat",""],//模式列表 fan,cool,heat,auto,saving,dehumidify,sleeping,fan_inner(内循环),fan_side(旁通)/heat_exchange(热交换)
|
|
|
"bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot
|
|
|
"associated_sensor": //关联传感器,如温湿度传感器,第一个为环境温湿度传感器,当为地暖时,第二个为报警温度传感器,默认45度
|
|
|
- [{"name":"humiture2", //关联传感器,设备唯一的名称
|
|
|
+ [{"name":"humiture2", //关联传感器,设备唯一的名称,代表关联的环境温湿度传感器
|
|
|
"calibration":5, //校正温度度数
|
|
|
}],
|
|
|
}
|
|
|
@@ -402,12 +407,12 @@ Authorization: Bearer {{token}}
|
|
|
"address": "A5", //canbus总线时,地址为继电器地址或协议转换器地址,网络总线时,地址为网络设备mac地址
|
|
|
"ports": [1], //按数组顺序 1为对应的协议转换器端口,取值范围1-4
|
|
|
"sub_address":[22,33], //第一个为空调外机地址,第二个为内机地址
|
|
|
- "control_type": 0, //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点
|
|
|
+ "control_type": 0, //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点开关switch,5为干节点轻触touch
|
|
|
"temp": 30,//默认温度
|
|
|
"speed":3 ,//空调,风扇风力档位数量,默认为3档,低,中,高,取值1-6
|
|
|
"modes": ["fan","cool","heat",""],//支持模式列表 fan,cool,heat,auto
|
|
|
"associated_sensor": //关联传感器,如温湿度传感器,第一个为环境温湿度传感器,当为地暖时,第二个为报警温度传感器,默认45度
|
|
|
- [{"name":"humiture2", //关联传感器,设备唯一的名称
|
|
|
+ [{"name":"humiture2", //关联传感器,设备唯一的名称,代表关联的环境温湿度传感器
|
|
|
"calibration":5, //校正温度度数
|
|
|
}],
|
|
|
}
|
|
|
@@ -415,7 +420,15 @@ Authorization: Bearer {{token}}
|
|
|
]
|
|
|
```
|
|
|
|
|
|
-### 控制面板设备配置数据格式
|
|
|
+### 控制面板设备配置数据格式和说明
|
|
|
+
|
|
|
+1. 选择面板后,遍历面板下设备所有协议通道,并同时打开所有协议通道
|
|
|
+2. 设备指定协议通道为can,面板支持can则直接走can通道。面板不支持can,则走mqtt通道。
|
|
|
+3. 设备指定协议通道不为can,如设备pid等于当前面板id,则走设备指定的协议通道。
|
|
|
+ 如设备pid不等于当前面板id,则走mqtt协议通道。
|
|
|
+4. 如设备走zib/gpio/ble通道,则通过zib/gpio/ble通道直接控制设备,并同时通过mqtt广播状态。
|
|
|
+ 收到mqtt消息需要控制该设备时,需要通过zib/gpio/ble通道直接控制设备,并同时通过mqtt广播状态。
|
|
|
+5. 如果一个设备指定的是can协议。加到can面板上通过面板can直接控制,如果加到一个网络面板上,通过网络访问网关mqtt控制。
|
|
|
|
|
|
```json
|
|
|
[
|
|
|
@@ -506,6 +519,36 @@ Authorization: Bearer {{token}}
|
|
|
},
|
|
|
]
|
|
|
```
|
|
|
+
|
|
|
+### 干节点面板设备配置数据格式
|
|
|
+
|
|
|
+```json
|
|
|
+[
|
|
|
+{
|
|
|
+ "id": 1, "pid": 1,"areaId": "CAN区域", "area": "区域名称", "name": "0001", "displayName": "空调",
|
|
|
+ "type": "panel",
|
|
|
+ "subtype": "dry_contact",
|
|
|
+ "config":
|
|
|
+ {
|
|
|
+ "bus":"gpio",//设备接入总线或协议类型,canbus/network/serial/gpio/RS485/zigbee/bluetooth/dali/knx/plc-iot
|
|
|
+ "address": "11", //地址为网络设备mac地址
|
|
|
+ "ports": [1], //端口为canbus或485本机地址,纯网络面板,端口保留
|
|
|
+ "control_type": 0, //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点开关switch,5为干节点轻触touch
|
|
|
+ "associated_scene": //-设备关联的场景,一般是输入类型设备,如干节点输入,按键,传感器等,场景数组中每次只出发一个场景
|
|
|
+ [
|
|
|
+ {"name":"scene1",//场景名称
|
|
|
+ "expression":"order",//场景执行条件,表达式为真执行,order为执行顺序和下标一致时执行,其他为表达式判断为真时执行
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "name":"scene2",
|
|
|
+ "expression":"value=10",//value为设备属性的某个键,取值后和具体数字或字符串比较,为真时执行
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ },
|
|
|
+]
|
|
|
+```
|
|
|
+
|
|
|
### 网关设备配置数据格式
|
|
|
|
|
|
```json
|
|
|
@@ -519,6 +562,7 @@ Authorization: Bearer {{token}}
|
|
|
"address": "A51234F85667", //地址为网络设备mac地址
|
|
|
"ports": [1], //端口为canbus或485本机地址,纯网络面板,端口保留,或为网关本地id,跨网关时使用
|
|
|
"background":["http://192.168.0.1/bg.jpg", "http://192.168.0.1/bg.jpg"],//要下载同步缓存的背景图片,数组
|
|
|
+ "main":true,//是否为主网关,主网关为true,其他网关为false,主网关可对各子网关进行转发,主网关包含mqtt本地服务
|
|
|
"city":{
|
|
|
"Location_ID": "101010800",
|
|
|
"Location_Name_EN": "Yanqing",
|
|
|
@@ -725,9 +769,9 @@ Authorization: Bearer {{token}}
|
|
|
"type":"light",
|
|
|
"label":"灯光",
|
|
|
"subtypes":[
|
|
|
- {"subtype":"switch","label":"开关型","configs":["address","port"]},
|
|
|
- {"subtype":"rgb","label":"彩灯","configs":["address","port"]},
|
|
|
- {"subtype":"dimmer","label":"可调光灯","configs":["address","port"]}
|
|
|
+ {"subtype":"switch","label":"开关型","configs":["address","ports"]},
|
|
|
+ {"subtype":"rgb","label":"彩灯","configs":["address","ports"]},
|
|
|
+ {"subtype":"dimmer","label":"可调光灯","configs":["address","ports"]}
|
|
|
]
|
|
|
}
|
|
|
|