Ver Fonte

讨论修改优化

miricy há 1 ano atrás
pai
commit
6ffc393b05
1 ficheiros alterados com 53 adições e 24 exclusões
  1. 53 24
      product/deviceconfig.md

+ 53 - 24
product/deviceconfig.md

@@ -93,10 +93,10 @@ Authorization: Bearer {{token}}
     {
         "id":    1,  //设备配置id
         "pid":    1,  //设备父级id,0为顶级,父级id目前可以是网关id,也可以是面板id,面板下的gpio设备或ble,zigbee设备需要通过面板转发控制的设备,父id为面板id,即面板可以当网关用
-        "areaId":    "区域id",
+        "area_id":    "区域id",
         "area":    "区域名称",
         "name":    "0001", //设备名称,设备唯一名称
-        "displayName":    "设备显示名称",
+        "display_name":    "设备显示名称",
         "type":    "设备类型",  //entrance_guard 门禁,light ,switch,aircon,curtain,fan,airrefresh
         "subtype":    "设备子类型",
         "channels":[{//缓存的设备状态,或初始默认值,可选,不传时为空,具体项看设备控制协议定义
@@ -109,7 +109,16 @@ Authorization: Bearer {{token}}
         "config":  //所有设备整体配置
         {
             "address": "12345678", //地址
-            "ports": [1,2,3,4,5], //多端口 当为继电器窗帘时,继电器按顺序排列1为开,2为关端口,当为空调时,按数组顺序 1,2,3为一二三档对应的继电器端口,4为制冷,5为制热端口,当为风扇或新风时,1,2,3为一二三档对应的继电器端口,当为浴霸时,1,2为灯光,3,4为取暖,5,6为排风
+            "ports": [
+                 {
+                   "type":"on",//on开,off关,open打开,close关闭,speed1风速1档,speed2风力2档,speed3风力3档,
+                   "value":1,//端口号
+                },
+                 {
+                   "type":"off",//on开,off关,open打开,close关闭,speed1风速1档,speed2风力2档,speed3风力3档,
+                   "value":2,//端口号
+                }
+              ], //多端口 当为继电器窗帘时,继电器按顺序排列1为开,2为关端口,当为空调时,按数组顺序 1,2,3为一二三档对应的继电器端口,4为制冷,5为制热端口,当为风扇或新风时,1,2,3为一二三档对应的继电器端口,当为浴霸时,1,2为灯光,3,4为取暖,5,6为排风
             "broadcast":    false,//跨网关是否广播  false为不广播,true为广播
             "sub_address":[22,33,44],  //如485协议窗帘,第一个即窗帘485地址,当为空调时,第一个为空调外机地址,第二个为内机地址,433协议窗帘时为遥控器id,433设备对应的遥控码,3字节16进制字符串格式, 取值范围 0-16777215(小端在后比如20:000014)
             "device_control":"protocol", //protocol(协议),central(继电器)
@@ -120,28 +129,33 @@ Authorization: Bearer {{token}}
             "temp": 26,//默认温度
             "humidity":    60,//默认湿度
             "speed":3 ,//空调,风扇风力档位数量,默认为3档,低,中,高
+            "auto_speed":true,//风力是否支持自动档,针对空调,新风空调
             "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
+            "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/gpio/zigbee/bluetooth/dali/knx/plc-iot
             "associated_sensor":    //关联传感器,如温湿度传感器,第一个为环境温湿度传感器,当为地暖时,第二个为报警温度传感器,默认45度
-                          [{"name":"humiture1","calibration":10},
+                          [
+                            {"name":"humiture1","calibration":10},
                                      {"name":"humiture2", //关联传感器2,设备唯一的名称
                                              "calibration":5,  //校正温度度数
                                              "alarm_temp":45//报警温度
                                              }],
             "associated_scene": //-设备关联的场景,一般是输入类型设备,如干节点输入,按键,传感器等,场景数组中每次只出发一个场景
                     [
-                      {"name":"scene1",//场景名称
-                       "expression":"order",//场景执行条件,表达式为真执行,order为执行顺序和下标一致时执行,其他为表达式判断为真时执行
+                      {
+                        "name":"scene1",//场景名称
+                        "mode":"order",// order代表网关或面板循环执行对应数组下标的场景
+                        "expression":"order",//场景执行条件,表达式为真执行,order为执行顺序和下标一致时执行,其他为表达式判断为真时执行
                       },
                       {
                         "name":"scene2",
-                         "expression":"value=10",//value为设备属性的某个键,取值后和具体数字或字符串比较,为真时执行
+                        "mode":"order",// order代表网关或面板循环执行对应数组下标的场景
+                        "expression":"value=12341234",//value为设备属性的某个键,取值后和具体数字或字符串比较,为真时执行
                       }
                      ],
             "card_format":1,//卡数据格式 0为无,1为10位10进制,2为10位10进制反向输出,3为8位16进制,4为8位16进制反向输出,5为8位10进制(id后3字节转换),6为00+8位10进制,7为8位10进制(id后4字节转换),8为5位10进制
-            "associated_lock":["lock1","lock1"],    //关联的锁,如门锁,窗锁,门禁等唯一名称
+            "associated_device":[{"name":"lockdevice1","action":"unlock"}],    //关联要开的锁,如门锁,窗锁,干节点关联设备
+            "":"", //面板是否连接外网作为app网关代理
             //智能控制面板配置 panel
             "display_device":    //面板上要显示的设备列表
                 [{
@@ -280,7 +294,7 @@ Authorization: Bearer {{token}}
     {
         "address": "A5", //地址继电器地址或协议转换器地址
         "ports": [1,2],  //继电器按顺序排列1为开,2为关端口,can协议转换窗帘为协议转换器端口
-        "control_type":    2,  //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点
+        "control_type":    2,  //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot,默认canbus
     }
   },
@@ -295,7 +309,7 @@ Authorization: Bearer {{token}}
         "address": "A5", //地址继电器地址或协议转换器地址
         "ports": [1,2],  //继电器按顺序排列1为开,2为关端口,can协议转换窗帘为协议转换器端口
         "sub_address":[225533],  //如485协议窗帘,第一个即窗帘485地址,或433窗帘的遥控器id,433设备对应的遥控码,3字节16进制字符串格式, 取值范围 0-16777215(小端在后比如0x112233)
-        "control_type":    0,  //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点
+        "control_type":    0,  //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot,默认canbus
     }
   },
@@ -315,11 +329,12 @@ Authorization: Bearer {{token}}
     "config":  
     {
         "address": "A5", //canbus总线时,地址为继电器地址或协议转换器地址,网络总线时,地址为网络设备mac地址
-        "ports": [1,2,3,4,5],  //按数组顺序 1,2,3为一二三档对应的继电器端口,4为制冷,5为制热端口
-        "control_type":    1,  //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点
+        "ports": [1,2,3,4,5],  //按数组顺序 1,2,3为一二三档对应的风力档位,4为制冷,5为制热端口
+        "control_type":    1,  //控制类型 0协议类型,1为继电器
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot,默认canbus
         "temp": 30,//默认温度
         "speed":3 ,//空调,风扇风力档位数量,默认为3档,低,中,高,取值1-6
+        "auto_speed":true,//风力是否支持自动档,true支持,false不支持针对空调,新风空调
         "modes": ["fan","cool","heat",""],//支持模式列表 fan,cool,heat,auto,saving,dehumidify,sleeping
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot
         "associated_sensor":    //关联传感器,如温湿度传感器,第一个为环境温湿度传感器,当为地暖时,第二个为报警温度传感器,默认45度
@@ -340,10 +355,11 @@ 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为继电器
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot,默认canbus
         "temp": 30,//默认温度
         "speed":3 ,//空调,风扇风力档位数量,默认为3档,低,中,高,取值1-6
+        "auto_speed":true,//风力是否支持自动档,true支持,false不支持针对空调,新风空调
         "modes": ["fan","cool","heat",""],//支持模式列表 fan,cool,heat,auto,saving,dehumidify,sleeping
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot
         "associated_sensor":    //关联传感器,如温湿度传感器,第一个为环境温湿度传感器,当为地暖时,第二个为报警温度传感器,默认45度
@@ -362,7 +378,7 @@ Authorization: Bearer {{token}}
     {
         "address": "A5", //canbus总线时,地址为继电器地址或协议转换器地址,网络总线时,地址为网络设备mac地址
         "ports": [1,2,3,4,5],  //按数组顺序 1,2,3为一二三档对应的继电器端口,4为制冷,5为制热端口
-        "control_type":    1,  //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点
+        "control_type":    1,  //控制类型 0协议类型,1为继电器
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot,默认canbus
         "temp": 30,//默认温度
         "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/RS485/zigbee/bluetooth/dali/knx/plc-iot
@@ -385,7 +401,7 @@ Authorization: Bearer {{token}}
         "address": "A5", //canbus总线时,地址为继电器地址或协议转换器地址,网络总线时,地址为网络设备mac地址
         "ports": [1,2,3,4],  //按数组顺序 1为对应的协议转换器端口,取值范围1-4,当为继电器新风时,1,2,3分别为1,2,3档对应继电器端口
         "sub_address":[22,33],  //第一个为新风外机地址,第二个为新风内机地址,继电器新风不存在子地址
-        "control_type":    0,  //控制类型 0协议类型,1为继电器,当为窗帘时1为单信号,2继电器断信号,3继电器双信号,4为干节点
+        "control_type":    0,  //控制类型 0协议类型,1为继电器
         "temp": 30,//默认温度
         "speed":3 ,//空调,风扇风力档位数量,默认为3档,低,中,高,取值1-6
         "modes": ["fan","cool","heat",""],//模式列表 fan,cool,heat,auto,saving,dehumidify,sleeping,fan_inner(内循环),fan_side(旁通)/heat_exchange(热交换)
@@ -407,7 +423,7 @@ 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为干节点开关switch,5为干节点轻触touch
+        "control_type":    0,  //控制类型 0协议类型,1为继电器
         "temp": 30,//默认温度
         "speed":3 ,//空调,风扇风力档位数量,默认为3档,低,中,高,取值1-6
         "modes": ["fan","cool","heat",""],//支持模式列表 fan,cool,heat,auto
@@ -509,7 +525,7 @@ Authorization: Bearer {{token}}
                       }
                      ],
         "card_format":1,//卡数据格式 0为无,1为10位10进制,2为10位10进制反向输出,3为8位16进制,4为8位16进制反向输出,5为8位10进制(id后3字节转换),6为00+8位10进制,7为8位10进制(id后4字节转换),8为5位10进制
-        "associated_lock":["lock1","lock1"],    //关联的锁,如门锁,窗锁,门禁等唯一名称
+        "associated_device":[{"name":"lockdevice1","action":"unlock"}],    //关联要开的锁,如门锁,窗锁,干节点关联设备
         "camera_type": "IR",// 门禁摄像头类型,IR红外,RGB为全彩,RGB_IR为红外+彩
         "fill_light":    false,//是否开启补光灯
         "live_detection":    false,//是否开启活体检测
@@ -520,11 +536,11 @@ Authorization: Bearer {{token}}
 ]
 ```
 
-### 干节点面板设备配置数据格式
+### 干节点面板和干节点面板关联设备配置数据格式
 
 ```json
 [
-{
+{//干节点面板
     "id": 1, "pid": 1,"areaId": "CAN区域", "area": "区域名称", "name": "0001", "displayName": "空调",
     "type":    "panel",
     "subtype":    "dry_contact", 
@@ -533,10 +549,23 @@ Authorization: Bearer {{token}}
         "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
+        "control_type":    0,  //控制类型 4为干节点开关switch,5为干节点轻触touch
+        "associated_device":[{"name":"dry_contact_device1"}],    //关联要开的锁,如门锁,窗锁,干节点关联设备
+    }
+  },
+  {//干节点面板关联的设备
+    "id": 1, "pid": 1,"areaId": "CAN区域", "area": "区域名称", "name": "dry_contact_device1", "displayName": "空调",
+    "type":    "dry_contact",
+    "subtype":    "common", 
+    "config":  
+    {
+        "bus":"canbus",//设备接入总线或协议类型,canbus/network/serial/gpio/RS485/zigbee/bluetooth/dali/knx/plc-iot
+        "address": "11", //地址为网络设备mac地址
+        "ports":[1],
         "associated_scene": //-设备关联的场景,一般是输入类型设备,如干节点输入,按键,传感器等,场景数组中每次只出发一个场景
                     [
                       {"name":"scene1",//场景名称
+                       "mode":"order",//
                        "expression":"order",//场景执行条件,表达式为真执行,order为执行顺序和下标一致时执行,其他为表达式判断为真时执行
                       },
                       {
@@ -562,7 +591,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本地服务
+        "master":true,//是否为主网关,主网关为true,其他网关为false,主网关可对各子网关进行转发,主网关包含mqtt本地服务
         "city":{
                 "Location_ID": "101010800",
                 "Location_Name_EN": "Yanqing",
@@ -703,7 +732,7 @@ Authorization: Bearer {{token}}
                         "name": "action",
                         "type": "STRING"}]
                 }
-            ],  //场景默认配置,不区分时令,一般处理非温控类设备,不管哪个季节都执行
+            ],  //场景默认配置,不区分时令,common始终执行,分季节时common加对应季节的场景
             "summer":[],//夏季配置,处理温控类设备,夏季要执行的场景
             "winter":[],//冬季配置,处理温控类设备,冬季要执行的场景
         }