Commit d34621bd authored by 陈伟灿's avatar 陈伟灿

Merge branch 'cwc' into 'master'

Cwc

See merge request chenweican/k-sdk!103
parents 604f4d05 57d22634
This diff is collapsed.
...@@ -200,7 +200,7 @@ int __nanomsg_init(Bloop_ctrl_t *loop_ctrl, ipc_type type,char* chlMark, char* i ...@@ -200,7 +200,7 @@ int __nanomsg_init(Bloop_ctrl_t *loop_ctrl, ipc_type type,char* chlMark, char* i
case IPC_PLAT2MID: { case IPC_PLAT2MID: {
//创建2个通道 pipe和pub/sub //创建2个通道 pipe和pub/sub
char addr[30] = {0}; char addr[30] = {0};
printf("[%s][%d]\n",__FUNCTION__,__LINE__);
loop_ctrl->ba.n = nn_socket(AF_SP, NN_PUSH); loop_ctrl->ba.n = nn_socket(AF_SP, NN_PUSH);
if (loop_ctrl->ba.n < 0) { if (loop_ctrl->ba.n < 0) {
ERROR_PRINT("loop_ctrl->ba.n =%d \r\n",loop_ctrl->ba.n); ERROR_PRINT("loop_ctrl->ba.n =%d \r\n",loop_ctrl->ba.n);
...@@ -214,9 +214,8 @@ int __nanomsg_init(Bloop_ctrl_t *loop_ctrl, ipc_type type,char* chlMark, char* i ...@@ -214,9 +214,8 @@ int __nanomsg_init(Bloop_ctrl_t *loop_ctrl, ipc_type type,char* chlMark, char* i
} }
sprintf(addr, GW2CCU_PIPE, ip); sprintf(addr, GW2CCU_PIPE, ip);
printf("---------addr:%s\n",addr);
if (nn_connect(loop_ctrl->ba.n, addr) < 0) {//pipe if (nn_connect(loop_ctrl->ba.n, addr) < 0) {//pipe
printf("[%s][%d]\n",__FUNCTION__,__LINE__); ERROR_PRINT("nn_connect error ---2\r\n");
return -1; return -1;
} }
//订阅 //订阅
...@@ -230,9 +229,8 @@ int __nanomsg_init(Bloop_ctrl_t *loop_ctrl, ipc_type type,char* chlMark, char* i ...@@ -230,9 +229,8 @@ int __nanomsg_init(Bloop_ctrl_t *loop_ctrl, ipc_type type,char* chlMark, char* i
memset(addr,0, sizeof(addr)); memset(addr,0, sizeof(addr));
sprintf(addr, GW2CCU_PUBSUB, ip); sprintf(addr, GW2CCU_PUBSUB, ip);
printf("---------addr:%s\n",addr);
if (nn_connect(loop_ctrl->ab.n, addr) < 0) {//sub if (nn_connect(loop_ctrl->ab.n, addr) < 0) {//sub
printf("[%s][%d]\n",__FUNCTION__,__LINE__); ERROR_PRINT("nn_connect error ---3\r\n");
return -1; return -1;
} }
......
...@@ -472,11 +472,13 @@ int dm_mgr_check_heartbeat_timeout(time_t timestamp) ...@@ -472,11 +472,13 @@ int dm_mgr_check_heartbeat_timeout(time_t timestamp)
if(search_node->devid == KK_DM_DEVICE_CCU_DEVICEID){ if(search_node->devid == KK_DM_DEVICE_CCU_DEVICEID){
continue; continue;
} }
//printf("[%s][%d]search_node->productCode:%s\n",__FUNCTION__,__LINE__,search_node->productCode); #if 0
//printf("[%s][%d]search_node->hb_timeout:%d\n",__FUNCTION__,__LINE__,search_node->hb_timeout); printf("[%s][%d]search_node->productCode:%s\n",__FUNCTION__,__LINE__,search_node->productCode);
//printf("[%s][%d]search_node->isOffline:%d\n",__FUNCTION__,__LINE__,search_node->isOffline); printf("[%s][%d]search_node->hb_timeout:%d\n",__FUNCTION__,__LINE__,search_node->hb_timeout);
//printf("[%s][%d]search_node->timestamp:%d\n",__FUNCTION__,__LINE__,search_node->timestamp); printf("[%s][%d]search_node->isOffline:%d\n",__FUNCTION__,__LINE__,search_node->isOffline);
//printf("[%s][%d]timestamp:%d\n",__FUNCTION__,__LINE__,timestamp); printf("[%s][%d]search_node->timestamp:%d\n",__FUNCTION__,__LINE__,search_node->timestamp);
printf("[%s][%d]timestamp:%d\n",__FUNCTION__,__LINE__,timestamp);
#endif
if((timestamp - search_node->timestamp) >= search_node->hb_timeout){ if((timestamp - search_node->timestamp) >= search_node->hb_timeout){
if(search_node->isOffline != KK_DEV_OFFLINE){ if(search_node->isOffline != KK_DEV_OFFLINE){
dm_mgr_set_dev_onoffline(search_node,1); dm_mgr_set_dev_onoffline(search_node,1);
...@@ -1289,6 +1291,7 @@ int dm_mgr_upstream_status_online(_IN_ int devid) ...@@ -1289,6 +1291,7 @@ int dm_mgr_upstream_status_online(_IN_ int devid)
if (res != SUCCESS_RETURN) { if (res != SUCCESS_RETURN) {
return FAIL_RETURN; return FAIL_RETURN;
} }
#if 0
if(strlen(node->fatherDeviceCode) > 0){ if(strlen(node->fatherDeviceCode) > 0){
res = dm_mgr_get_device_by_devicecode(node->fatherDeviceCode,&gw_node); res = dm_mgr_get_device_by_devicecode(node->fatherDeviceCode,&gw_node);
if (res != SUCCESS_RETURN) { if (res != SUCCESS_RETURN) {
...@@ -1298,7 +1301,9 @@ int dm_mgr_upstream_status_online(_IN_ int devid) ...@@ -1298,7 +1301,9 @@ int dm_mgr_upstream_status_online(_IN_ int devid)
memcpy(request.productCode,gw_node->productCode,strlen(gw_node->productCode)); memcpy(request.productCode,gw_node->productCode,strlen(gw_node->productCode));
memcpy(request.deviceCode,gw_node->deviceCode,strlen(gw_node->deviceCode)); memcpy(request.deviceCode,gw_node->deviceCode,strlen(gw_node->deviceCode));
}else{ }else
#endif
{
memcpy(request.productCode,node->productCode,strlen(node->productCode)); memcpy(request.productCode,node->productCode,strlen(node->productCode));
memcpy(request.deviceCode,node->deviceCode,strlen(node->deviceCode)); memcpy(request.deviceCode,node->deviceCode,strlen(node->deviceCode));
} }
...@@ -1353,16 +1358,17 @@ int dm_mgr_upstream_status_offline(_IN_ int devid) ...@@ -1353,16 +1358,17 @@ int dm_mgr_upstream_status_offline(_IN_ int devid)
if (res != SUCCESS_RETURN) { if (res != SUCCESS_RETURN) {
return FAIL_RETURN; return FAIL_RETURN;
} }
if(strlen(node->fatherDeviceCode) > 0){ //if(strlen(node->fatherDeviceCode) > 0){
res = dm_mgr_get_device_by_devicecode(node->fatherDeviceCode,&gw_node); //res = dm_mgr_get_device_by_devicecode(node->fatherDeviceCode,&gw_node);
if (res != SUCCESS_RETURN) { //if (res != SUCCESS_RETURN) {
ERROR_PRINT("ERROR [%s][%d] res:%d\n",__FUNCTION__,__LINE__,res); //ERROR_PRINT("ERROR [%s][%d] res:%d\n",__FUNCTION__,__LINE__,res);
return FAIL_RETURN; //return FAIL_RETURN;
} //}
memcpy(request.productCode,gw_node->productCode,strlen(gw_node->productCode)); //memcpy(request.productCode,gw_node->productCode,strlen(gw_node->productCode));
memcpy(request.deviceCode,gw_node->deviceCode,strlen(gw_node->deviceCode)); //memcpy(request.deviceCode,gw_node->deviceCode,strlen(gw_node->deviceCode));
}else{ //}else
{
memcpy(request.productCode,node->productCode,strlen(node->productCode)); memcpy(request.productCode,node->productCode,strlen(node->productCode));
memcpy(request.deviceCode,node->deviceCode,strlen(node->deviceCode)); memcpy(request.deviceCode,node->deviceCode,strlen(node->deviceCode));
} }
......
...@@ -986,7 +986,7 @@ int dm_msg_thing_property_post_by_identify(char *deviceCode,cJSON *params) ...@@ -986,7 +986,7 @@ int dm_msg_thing_property_post_by_identify(char *deviceCode,cJSON *params)
//memset(propertiesbuf[0],0x0,sizeof(propertiesbuf[0])); //memset(propertiesbuf[0],0x0,sizeof(propertiesbuf[0]));
//memcpy(propertiesbuf[0],property->identifier,strlen(property->identifier)); //memcpy(propertiesbuf[0],property->identifier,strlen(property->identifier));
//printf("propertiesbuf[0]:%s,num:%d\n",propertiesbuf[0],num); //printf("propertiesbuf[0]:%s,num:%d\n",propertiesbuf[0],num);
epNumInt = 1; //epNumInt = 1;
} }
propertyItem = cJSON_GetObjectItem(params, property->identifier); propertyItem = cJSON_GetObjectItem(params, property->identifier);
if(propertyItem != NULL){ if(propertyItem != NULL){
......
{
"schema": "https://iot-ap.ikonke.com/model/product_1002.json",
"productType": "switch",
"profile": {
"heartbeat": "3000",
"productCode": "1002",
"productName": "铂金系列一路灯控"
},
"services": [{
"outputData": [],
"identifier": "set",
"inputData": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
}],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
}, {
"outputData": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
}],
"identifier": "get",
"inputData": ["PowerSwitch"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}, {
"outputData": [],
"identifier": "negativeProperty",
"inputData": [{
"identifier": "PropertyName",
"dataType": {
"specs": {
"length": "50"
},
"type": "text"
},
"name": "属性名字"
}],
"method": "thing.service.negativeProperty",
"name": "negativeProperty",
"required": true,
"callType": "async",
"desc": "属性值取反"
}],
"properties": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关",
"accessMode": "rw",
"required": true
}],
"events": [{
"outputData": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1003.json",
"productType": "switch",
"profile": {
"heartbeat": "3000",
"productCode": "1003",
"productName": "铂金系列二路灯控"
},
"services": [{
"outputData": [],
"identifier": "set",
"inputData": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路"
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路"
}],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
}, {
"outputData": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路"
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路"
}],
"identifier": "get",
"inputData": ["PowerSwitch_1", "PowerSwitch_2"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}, {
"outputData": [],
"identifier": "negativeProperty",
"inputData": [{
"identifier": "PropertyName",
"dataType": {
"specs": {
"length": "50"
},
"type": "text"
},
"name": "属性名字"
}],
"method": "thing.service.negativeProperty",
"name": "negativeProperty",
"required": true,
"callType": "async",
"desc": "属性值取反"
}],
"properties": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路",
"accessMode": "rw",
"required": true
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路",
"accessMode": "rw",
"required": true
}],
"events": [{
"outputData": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路"
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路"
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1004.json",
"productType": "switch",
"profile": {
"heartbeat": "3000",
"productCode": "1004",
"productName": "铂金系列三路灯控 "
},
"services": [{
"outputData": [],
"identifier": "set",
"inputData": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路"
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路"
}, {
"identifier": "PowerSwitch_3",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关3路"
}],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
}, {
"outputData": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路"
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路"
}, {
"identifier": "PowerSwitch_3",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关3路"
}],
"identifier": "get",
"inputData": ["PowerSwitch_1", "PowerSwitch_2", "PowerSwitch_3"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}, {
"outputData": [],
"identifier": "negativeProperty",
"inputData": [{
"identifier": "PropertyName",
"dataType": {
"specs": {
"length": "50"
},
"type": "text"
},
"name": "属性名字"
}],
"method": "thing.service.negativeProperty",
"name": "negativeProperty",
"required": true,
"callType": "async",
"desc": "属性值取反"
}],
"properties": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路",
"accessMode": "rw",
"required": true
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路",
"accessMode": "rw",
"required": true
}, {
"identifier": "PowerSwitch_3",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关3路",
"accessMode": "rw",
"required": true
}],
"events": [{
"outputData": [{
"identifier": "PowerSwitch_1",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关1路"
}, {
"identifier": "PowerSwitch_2",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关2路"
}, {
"identifier": "PowerSwitch_3",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关3路"
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1007.json",
"productType": "curtain",
"profile": {
"heartbeat": "3000",
"productCode": "1007",
"productName": "铂金系列推窗面板"
},
"services": [{
"outputData": [],
"identifier": "set",
"inputData": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启"
},
"type": "enum"
},
"name": "推窗器操作模式"
}],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
}, {
"outputData": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启"
},
"type": "enum"
},
"name": "推窗器操作模式"
}],
"identifier": "get",
"inputData": ["OperationMode"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启"
},
"type": "enum"
},
"name": "推窗器操作模式",
"accessMode": "rw",
"required": true
}],
"events": [{
"outputData": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启"
},
"type": "enum"
},
"name": "推窗器操作模式"
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1008.json",
"productType": "sensor",
"profile": {
"heartbeat": "3000",
"productCode": "1008",
"productName": "铂金系列长供电SOS"
},
"services": [{
"outputData": [{
"identifier": "SosState",
"name": "紧急按钮状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "get",
"inputData": ["SosState", "Battery", "DismantleState"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "SosState",
"name": "门磁状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"accessMode": "r",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"events": [{
"outputData": [{
"identifier": "SosState",
"name": "门磁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}, {
"outputData": [{
"identifier": "SosState",
"name": "门磁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}],
"identifier": "sosAlarm",
"method": "thing.event.sosAlarm.post",
"name": "sosAlarm",
"type": "alarm",
"required": true,
"desc": "紧急按钮告警"
}, {
"outputData": [{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}],
"identifier": "BatteryAlarm",
"method": "thing.event.BatteryAlarm.post",
"name": "BatteryAlarm",
"type": "alarm",
"required": true,
"desc": "低电量告警"
}, {
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": [{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}]
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1012.json",
"productType": "sensor",
"profile": {
"heartbeat": "3000",
"productCode": "1012",
"productName": "铂金系列SOS按钮"
},
"services": [{
"outputData": [{
"identifier": "SosState",
"name": "紧急按钮状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "get",
"inputData": ["SosState", "Battery", "DismantleState"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "SosState",
"name": "门磁状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"accessMode": "r",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"events": [{
"outputData": [{
"identifier": "SosState",
"name": "门磁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}, {
"outputData": [{
"identifier": "SosState",
"name": "门磁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}],
"identifier": "sosAlarm",
"method": "thing.event.sosAlarm.post",
"name": "sosAlarm",
"type": "alarm",
"required": true,
"desc": "紧急按钮告警"
}, {
"outputData": [{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}],
"identifier": "BatteryAlarm",
"method": "thing.event.BatteryAlarm.post",
"name": "BatteryAlarm",
"type": "alarm",
"required": true,
"desc": "低电量告警"
}, {
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": [{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}]
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1015.json",
"productType": "sensor",
"profile": {
"heartbeat": "3000",
"productCode": "1015",
"productName": "KPL燃气报警器"
},
"services": [{
"outputData": [{
"identifier": "GasSensorState",
"name": "燃气检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "燃气泄漏"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "get",
"inputData": ["GasSensorState", "Battery", "DismantleState"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "GasSensorState",
"name": "燃气检测状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "燃气泄漏"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"accessMode": "r",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"events": [{
"outputData": [{
"identifier": "GasSensorState",
"name": "燃气检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "燃气泄漏"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}, {
"outputData": [{
"identifier": "GasSensorState",
"name": "燃气检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "燃气泄漏"
}
}
}],
"identifier": "gasAlarm",
"method": "thing.event.gasAlarm.post",
"name": "gasAlarm",
"type": "alarm",
"required": true,
"desc": "燃气告警"
}, {
"outputData": [{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}],
"identifier": "BatteryAlarm",
"method": "thing.event.BatteryAlarm.post",
"name": "batteryAlarm",
"type": "alarm",
"required": true,
"desc": "低电量告警"
}, {
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": [{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}]
}]
}
\ No newline at end of file
This diff is collapsed.
{
"schema": "https://iot-ap.ikonke.com/model/product_1018.json",
"productType": "curtain",
"profile": {
"heartbeat": "3000",
"productCode": "1018",
"productName": "杜亚窗帘电机"
},
"services": [{
"outputData": [],
"identifier": "set",
"inputData": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启",
"2": "暂停"
},
"type": "enum"
},
"name": "窗帘操作模式"
}, {
"identifier": "Position",
"dataType": {
"specs": {
"unit": "%",
"min": "0",
"unitName": "百分比",
"max": "100",
"step": "1"
},
"type": "int"
},
"name": "窗帘打开位置"
}, {
"identifier": "WorkMode",
"dataType": {
"specs": {
"0": "正转",
"1": "反转",
"2": "校验"
},
"type": "enum"
},
"name": "窗帘工作模式"
}, {
"identifier": "RouteState",
"dataType": {
"specs": {
"0": "未设置",
"1": "已设置"
},
"type": "enum"
},
"name": "行程设置"
}],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
}, {
"outputData": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启",
"2": "暂停"
},
"type": "enum"
},
"name": "窗帘操作模式"
}, {
"identifier": "Position",
"dataType": {
"specs": {
"unit": "%",
"min": "0",
"unitName": "百分比",
"max": "100",
"step": "1"
},
"type": "int"
},
"name": "窗帘打开位置"
}, {
"identifier": "WorkMode",
"dataType": {
"specs": {
"0": "正转",
"1": "反转",
"2": "校验"
},
"type": "enum"
},
"name": "窗帘工作模式"
}, {
"identifier": "RouteState",
"dataType": {
"specs": {
"0": "未设置",
"1": "已设置"
},
"type": "enum"
},
"name": "行程设置"
}],
"identifier": "get",
"inputData": ["OperationMode", "Position", "WorkMode", "RouteState"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启",
"2": "暂停"
},
"type": "enum"
},
"name": "窗帘操作模式",
"accessMode": "rw",
"required": true
}, {
"identifier": "WorkMode",
"dataType": {
"specs": {
"0": "正转",
"1": "反转",
"2": "校验"
},
"type": "enum"
},
"name": "窗帘工作模式",
"accessMode": "rw",
"required": true
}, {
"identifier": "Position",
"dataType": {
"specs": {
"unit": "%",
"min": "0",
"unitName": "百分比",
"max": "100",
"step": "1"
},
"type": "int"
},
"name": "窗帘打开位置",
"accessMode": "rw",
"required": true
}, {
"identifier": "RouteState",
"dataType": {
"specs": {
"0": "未设置",
"1": "已设置"
},
"type": "enum"
},
"accessMode": "rw",
"required": true,
"name": "行程设置"
}],
"events": [{
"outputData": [{
"identifier": "OperationMode",
"dataType": {
"specs": {
"0": "关闭",
"1": "开启",
"2": "暂停"
},
"type": "enum"
},
"name": "窗帘操作模式"
}, {
"identifier": "Position",
"dataType": {
"specs": {
"unit": "%",
"min": "0",
"unitName": "百分比",
"max": "100",
"step": "1"
},
"type": "int"
},
"name": "窗帘打开位置"
}, {
"identifier": "WorkMode",
"dataType": {
"specs": {
"0": "正转",
"1": "反转",
"2": "校验"
},
"type": "enum"
},
"name": "窗帘工作模式"
}, {
"identifier": "RouteState",
"dataType": {
"specs": {
"0": "未设置",
"1": "已设置"
},
"type": "enum"
},
"name": "行程设置"
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1020.json",
"productType": "sensor",
"profile": {
"heartbeat": "3000",
"productCode": "1020",
"productName": "环境传感器"
},
"services": [{
"outputData": [{
"identifier": "Temperature",
"name": "温度",
"dataType": {
"type": "double",
"specs": {
"min": "-40",
"max": "100",
"unit": "°C",
"unitName": "摄氏度",
"step": "0.01"
}
}
}, {
"identifier": "Humidity",
"name": "当前湿度",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "Illuminance",
"name": "光照度检测值",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "65535",
"unit": "Lux",
"unitName": "照度",
"step": "0.01"
}
}
}],
"identifier": "get",
"inputData": ["Temperature", "Humidity", "Illuminance"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}, {
"outputData": [],
"inputData": [],
"identifier": "PositioningDevice",
"method": "thing.service.PositioningDevice",
"name": "PositioningDevice",
"required": true,
"callType": "async",
"desc": "设备定位"
}],
"properties": [{
"identifier": "CurrentTemperature",
"name": "当前温度",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "-40",
"max": "80",
"unit": "°C",
"unitName": "摄氏度",
"step": "0.01"
}
}
}, {
"identifier": "CurrentHumidity",
"name": "当前湿度",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "Illuminance",
"name": "光照度检测值",
"accessMode": "r",
"required": true,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "65535",
"unit": "Lux",
"unitName": "照度",
"step": "0.01"
}
}
}, {
"identifier": "Illuminance",
"name": "仅用于光照作为场景触发条件",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"1": "黑夜[0~10]",
"2": "暗淡(10,100]",
"3": "正常(100,500]",
"4": "明亮(>500)"
}
}
}],
"events": [{
"outputData": [{
"identifier": "Temperature",
"name": "温度",
"dataType": {
"type": "double",
"specs": {
"min": "-40",
"max": "100",
"unit": "°C",
"unitName": "摄氏度",
"step": "0.01"
}
}
}, {
"identifier": "Humidity",
"name": "当前湿度",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "Illuminance",
"name": "光照度检测值",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "65535",
"unit": "Lux",
"unitName": "照度",
"step": "0.01"
}
}
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1022.json",
"productType": "light",
"profile": {
"heartbeat": "3000",
"productCode": "1022",
"productName": "RGBW灯带"
},
"services": [{
"outputData": [],
"identifier": "set",
"inputData": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
}, {
"identifier": "RGBColor",
"dataType": {
"type": "struct",
"specs": [{
"identifier": "Red",
"name": "红色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Green",
"name": "绿色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Blue",
"name": "蓝色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}]
},
"name": "RGB调色"
}, {
"identifier": "Brightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "亮度"
}, {
"identifier": "WhiteBrightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "白光亮度"
}, {
"identifier": "Mode",
"dataType": {
"type": "enum",
"specs": {
"1": "模式1",
"2": "模式2",
"3": "模式3",
"4": "模式4",
"5": "模式5",
"6": "模式6",
"7": "模式7",
"8": "模式8",
"9": "模式9",
"10": "模式10",
"11": "模式11",
"12": "模式12"
}
},
"name": "模式"
}],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
}, {
"outputData": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
}, {
"identifier": "RGBColor",
"dataType": {
"type": "struct",
"specs": [{
"identifier": "Red",
"name": "红色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Green",
"name": "绿色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Blue",
"name": "蓝色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}]
},
"name": "RGB调色"
}, {
"identifier": "brightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "亮度"
}, {
"identifier": "whiteBrightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "白光亮度"
}, {
"identifier": "Mode",
"dataType": {
"type": "enum",
"specs": {
"1": "模式1",
"2": "模式2",
"3": "模式3",
"4": "模式4",
"5": "模式5",
"6": "模式6",
"7": "模式7",
"8": "模式8",
"9": "模式9",
"10": "模式10",
"11": "模式11",
"12": "模式12"
}
},
"name": "模式"
}, {
"identifier": "ModeType",
"dataType": {
"type": "enum",
"specs": {
"MANUALMODE": "手动",
"PICKEDMODE": "精选",
"DYNAMICMODE": "动态"
}
},
"name": "模式类型"
}],
"identifier": "get",
"inputData": ["PowerSwitch", "RGBColor", "Brightness", "WhiteBrightness", "Mode", "ModeType"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关",
"accessMode": "rw",
"required": true
}, {
"identifier": "RGBColor",
"name": "RGB调色",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "struct",
"specs": [{
"identifier": "Red",
"name": "红色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Green",
"name": "绿色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Blue",
"name": "蓝色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}]
}
}, {
"identifier": "Brightness",
"name": "亮度",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}, {
"identifier": "WhiteBrightness",
"name": "白光亮度",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}, {
"identifier": "Mode",
"name": "模式",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"1": "模式1",
"2": "模式2",
"3": "模式3",
"4": "模式4",
"5": "模式5",
"6": "模式6",
"7": "模式7",
"8": "模式8",
"9": "模式9",
"10": "模式10",
"11": "模式11",
"12": "模式12"
}
}
}, {
"identifier": "ModeType",
"accessMode": "w",
"required": false,
"name": "模式类型",
"dataType": {
"type": "enum",
"specs": {
"MANUALMODE": "手动",
"PICKEDMODE": "精选",
"DYNAMICMODE": "动态"
}
}
}],
"events": [{
"outputData": [{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
}, {
"identifier": "RGBColor",
"dataType": {
"type": "struct",
"specs": [{
"identifier": "Red",
"name": "红色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Green",
"name": "绿色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}, {
"identifier": "Blue",
"name": "蓝色",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "255",
"unitName": "无",
"step": "1"
}
}
}]
},
"name": "RGB调色"
}, {
"identifier": "Brightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "亮度"
}, {
"identifier": "WhiteBrightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "白光亮度"
}, {
"identifier": "Mode",
"dataType": {
"type": "enum",
"specs": {
"1": "模式1",
"2": "模式2",
"3": "模式3",
"4": "模式4",
"5": "模式5",
"6": "模式6",
"7": "模式7",
"8": "模式8",
"9": "模式9",
"10": "模式10",
"11": "模式11",
"12": "模式12"
}
},
"name": "模式"
}, {
"identifier": "ModeType",
"dataType": {
"type": "enum",
"specs": {
"MANUALMODE": "手动",
"PICKEDMODE": "精选",
"DYNAMICMODE": "动态"
}
},
"name": "模式类型"
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1023.json",
"productType": "sensor",
"profile": {
"heartbeat": "3000",
"productCode": "1023",
"productName": "KPL门磁"
},
"services": [{
"outputData": [{
"identifier": "ContactState",
"name": "门磁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "get",
"inputData": ["ContactState", "Battery", "DismantleState"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "ContactState",
"name": "门磁状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"accessMode": "r",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"events": [{
"outputData": [{
"identifier": "ContactState",
"name": "门磁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}, {
"outputData": [{
"identifier": "ContactState",
"name": "门磁状态",
"dataType": {
"type": "enum",
"specs": {
"0": "关闭",
"1": "打开"
}
}
}],
"identifier": "contactAlarm",
"method": "thing.event.contactAlarm.post",
"name": "contactAlarm",
"type": "alarm",
"required": true,
"desc": "门磁告警"
}, {
"outputData": [{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}],
"identifier": "BatteryAlarm",
"method": "thing.event.BatteryAlarm.post",
"name": "BatteryAlarm",
"type": "alarm",
"required": true,
"desc": "低电量告警"
}, {
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": [{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}]
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1024.json",
"productType": "sensor",
"profile": {
"heartbeat": "3000",
"productCode": "1024",
"productName": "KPL水浸"
},
"services": [{
"outputData": [{
"identifier": "WaterSensorState",
"name": "水浸检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "有水浸入"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "get",
"inputData": ["WaterSensorState", "Battery", "DismantleState"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}],
"properties": [{
"identifier": "WaterSensorState",
"name": "水浸检测状态",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "有水浸入"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"accessMode": "r",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"events": [{
"outputData": [{
"identifier": "WaterSensorState",
"name": "水浸检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "有水浸入"
}
}
}, {
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}, {
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}, {
"outputData": [{
"identifier": "WaterSensorState",
"name": "水浸检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "有水浸入"
}
}
}],
"identifier": "waterAlarm",
"method": "thing.event.waterAlarm.post",
"name": "waterAlarm",
"type": "alarm",
"required": true,
"desc": "水浸告警"
}, {
"outputData": [{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}],
"identifier": "BatteryAlarm",
"method": "thing.event.BatteryAlarm.post",
"name": "BatteryAlarm",
"type": "alarm",
"required": true,
"desc": "低电量告警"
}, {
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": [{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}]
}]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1028.json",
"productType": "controller",
"profile": {
"heartbeat": "3000",
"productCode": "1028",
"productName": "断水面板(电磁水阀控制器)"
},
"services": [
{
"identifier": "set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置",
"method": "thing.service.property.set",
"inputData": [
{
"identifier": "PowerSwitch",
"name": "电源开关",
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
}
],
"outputData": []
},
{
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [],
"outputData": []
}
],
"properties": [
{
"identifier": "PowerSwitch",
"name": "电源开关",
"accessMode": "w",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
}
],
"events": [
{
"identifier": "post",
"name": "post",
"type": "info",
"required": true,
"desc": "属性上报",
"method": "thing.event.property.post",
"outputData": [
{
"identifier": "PowerSwitch",
"name": "电源开关",
"dataType": {
"type": "bool",
"specs": {
"0": "关闭",
"1": "开启"
}
}
}
]
}
]
}
\ No newline at end of file
{
"schema": "https://iot-ap.ikonke.com/model/product_1029.json",
"productType": "controller",
"profile": {
"heartbeat": "3000",
"productCode": "1029",
"productName": "燃气机械臂控制器"
},
"services": [
{
"identifier": "set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置",
"method": "thing.service.property.set",
"inputData": [
{
"identifier": "PowerSwitch",
"name": "电源开关",
"dataType": {
"type": "bool",
"specs": {
"0": "关闭"
}
}
}
],
"outputData": []
},
{
"identifier": "get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取",
"method": "thing.service.property.get",
"inputData": [],
"outputData": []
}
],
"properties": [
{
"identifier": "PowerSwitch",
"name": "电源开关",
"accessMode": "w",
"required": true,
"dataType": {
"type": "bool",
"specs": {
"0": "关闭"
}
}
}
],
"events": [
{
"identifier": "post",
"name": "post",
"type": "info",
"required": true,
"desc": "属性上报",
"method": "thing.event.property.post",
"outputData": [
{
"identifier": "PowerSwitch",
"name": "电源开关",
"dataType": {
"type": "bool",
"specs": {
"0": "关闭"
}
}
}
]
}
]
}
\ No newline at end of file
This diff is collapsed.
{
"schema": "https://iot-ap.ikonke.com/model/product_1035.json",
"productType": "sensor",
"profile": {
"heartbeat": "3000",
"productCode": "1035",
"productName": "kit silicon labs 人体感应"
},
"services": [
{
"outputData": [
{
"identifier": "MotionAlarmState",
"name": "红外检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "无人",
"1": "有人"
}
}
},
{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
},
{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}
],
"identifier": "get",
"inputData": [
"MotionAlarmState",
"Battery",
"DismantleState"
],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}
],
"properties": [
{
"identifier": "MotionAlarmState",
"name": "红外检测状态(2~7仅用于场景)",
"accessMode": "r",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "不触发",
"1": "触发",
"2": "智能有人",
"3": "智能无人_2分钟",
"4": "智能无人_5分钟",
"5": "智能无人_10分钟",
"6": "智能无人_15分钟",
"7": "智能无人_30分钟"
}
}
},
{
"identifier": "Battery",
"name": "电池电量",
"accessMode": "r",
"required": false,
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
},
{
"identifier": "DismantleState",
"name": "拆卸状态",
"accessMode": "r",
"required": false,
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}
],
"events": [
{
"outputData": [
{
"identifier": "MotionAlarmState",
"name": "红外检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "无人",
"1": "有人"
}
}
},
{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
},
{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}
],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
},
{
"outputData": [
{
"identifier": "MotionAlarmState",
"name": "红外检测状态",
"dataType": {
"type": "enum",
"specs": {
"0": "无人",
"1": "有人"
}
}
}
],
"identifier": "motionAlarm",
"method": "thing.event.motionAlarm.post",
"name": "motionAlarm",
"type": "alarm",
"required": true,
"desc": "红外检测告警"
},
{
"outputData": [
{
"identifier": "Battery",
"name": "电池电量",
"dataType": {
"type": "double",
"specs": {
"min": "0",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "0.01"
}
}
}
],
"identifier": "BatteryAlarm",
"method": "thing.event.BatteryAlarm.post",
"name": "BatteryAlarm",
"type": "alarm",
"required": true,
"desc": "低电量告警"
},
{
"identifier": "TamperAlarm",
"name": "防撬报警",
"type": "alert",
"required": true,
"method": "thing.event.TamperAlarm.post",
"outputData": [
{
"identifier": "DismantleState",
"name": "拆卸状态",
"dataType": {
"type": "enum",
"specs": {
"0": "正常",
"1": "被拆卸"
}
}
}
]
}
]
}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
...@@ -93,7 +93,7 @@ ...@@ -93,7 +93,7 @@
{ {
"outputData": [ "outputData": [
{ {
"identifier": "SceneId", "identifier": "SceneNum",
"dataType": { "dataType": {
"specs": { "specs": {
"1": "场景1", "1": "场景1",
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3014.json", "schema": "https://iot-ap.ikonke.com/model/product_3014.json",
"productType": "scene", "productType": "scene",
"version": "1", "version": "1.0",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3014", "productCode": "3014",
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3015.json", "schema": "https://iot-ap.ikonke.com/model/product_3015.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.0",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3015", "productCode": "3015",
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3016.json", "schema": "https://iot-ap.ikonke.com/model/product_3016.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.0",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3016", "productCode": "3016",
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3028", "productCode": "3028",
"productName": "肖邦系列.白色零火线调光面板Z3S(KONKE)" "productName": "肖邦系列.零火线调光面板Z3S(KONKE)"
}, },
"services": [ "services": [
{ {
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3029.json", "schema": "https://iot-ap.ikonke.com/model/product_3029.json",
"productType": "floorHeating", "productType": "floorHeating",
"version": "1.0",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3029", "productCode": "3029",
"productName": "肖邦系列.白色水地暖面板Z3S(KONKE)" "productName": "肖邦系列.水地暖面板Z3S(KONKE)"
}, },
"services": [ "services": [
{ {
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3039.json", "schema": "https://iot-ap.ikonke.com/model/product_3039.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3039", "productCode": "3039",
...@@ -78,6 +78,21 @@ ...@@ -78,6 +78,21 @@
"step": "0.01" "step": "0.01"
} }
} }
},
{
"identifier": "SensorType",
"name": "安防等级",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "在家安防",
"1": "室外安防",
"2": "24小时警戒",
"3": "无警戒"
}
}
} }
], ],
"events": [ "events": [
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3040.json", "schema": "https://iot-ap.ikonke.com/model/product_3040.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3040", "productCode": "3040",
...@@ -71,6 +71,21 @@ ...@@ -71,6 +71,21 @@
"1": "故障" "1": "故障"
} }
} }
},
{
"identifier": "SensorType",
"name": "安防等级",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "在家安防",
"1": "室外安防",
"2": "24小时警戒",
"3": "无警戒"
}
}
} }
], ],
"events": [ "events": [
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3041.json", "schema": "https://iot-ap.ikonke.com/model/product_3041.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3041", "productCode": "3041",
...@@ -128,6 +128,21 @@ ...@@ -128,6 +128,21 @@
"1": "故障" "1": "故障"
} }
} }
},
{
"identifier": "SensorType",
"name": "安防等级",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "在家安防",
"1": "室外安防",
"2": "24小时警戒",
"3": "无警戒"
}
}
} }
], ],
"events": [ "events": [
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3042.json", "schema": "https://iot-ap.ikonke.com/model/product_3042.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3042", "productCode": "3042",
...@@ -78,6 +78,21 @@ ...@@ -78,6 +78,21 @@
"step": "0.01" "step": "0.01"
} }
} }
},
{
"identifier": "SensorType",
"name": "安防等级",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "在家安防",
"1": "室外安防",
"2": "24小时警戒",
"3": "无警戒"
}
}
} }
], ],
"events": [ "events": [
......
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3043.json", "schema": "https://iot-ap.ikonke.com/model/product_3043.json",
"productType": "sensor", "productType": "sensor",
"version": "1", "version": "1.1",
"profile": { "profile": {
"heartbeat": "1200", "heartbeat": "1200",
"productCode": "3043", "productCode": "3043",
...@@ -78,6 +78,21 @@ ...@@ -78,6 +78,21 @@
"step": "0.01" "step": "0.01"
} }
} }
},
{
"identifier": "SensorType",
"name": "安防等级",
"accessMode": "rw",
"required": true,
"dataType": {
"type": "enum",
"specs": {
"0": "在家安防",
"1": "室外安防",
"2": "24小时警戒",
"3": "无警戒"
}
}
} }
], ],
"events": [ "events": [
......
This diff is collapsed.
This diff is collapsed.
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3046.json", "schema": "https://iot-ap.ikonke.com/model/product_3046.json",
"productType": "scene", "productType": "scene",
"version": "1", "version": "1.0",
"profile": { "profile": {
"heartbeat": "7200", "heartbeat": "7200",
"productCode": "3046", "productCode": "3046",
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment