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

Merge branch 'cwc' into 'master'

Cwc

See merge request chenweican/k-sdk!152
parents 83e2fb24 5dcf9fd9
...@@ -380,7 +380,8 @@ int kk_start_ccu_register(void) ...@@ -380,7 +380,8 @@ int kk_start_ccu_register(void)
if (h == 0) if (h == 0)
{ {
INFO_PRINT("kk_register receive nothing\n"); INFO_PRINT("kk_register receive nothing\n");
continue; close(sockfd);
return -1;
} }
if (h < 0) { if (h < 0) {
close(sockfd); close(sockfd);
......
...@@ -713,7 +713,12 @@ cJSON *kk_sync_ccu_version_to_sdk(cJSON *root,cJSON *data) ...@@ -713,7 +713,12 @@ cJSON *kk_sync_ccu_version_to_sdk(cJSON *root,cJSON *data)
{ {
//todo:同步CCU版本信息 //todo:同步CCU版本信息
cJSON *ccu_version = cJSON_CreateObject(); cJSON *ccu_version = cJSON_CreateObject();
cJSON_AddStringToObject(ccu_version, "cur_ccu_version", "1.0.0"); cJSON *version = cJSON_GetObjectItem(data,"firmwareVersion");
if(version != NULL){
cJSON_AddStringToObject(ccu_version, "cur_ccu_version", version->valuestring);
}else{
cJSON_AddStringToObject(ccu_version, "cur_ccu_version", "1.0.0");
}
cJSON_AddStringToObject(ccu_version, "downloaded_ccu_version", "1.0.0"); cJSON_AddStringToObject(ccu_version, "downloaded_ccu_version", "1.0.0");
cJSON_AddItemToObject(root, "ccu_version", ccu_version); cJSON_AddItemToObject(root, "ccu_version", ccu_version);
......
...@@ -71,7 +71,9 @@ typedef enum { ...@@ -71,7 +71,9 @@ typedef enum {
#define MSG_PROPERTY_STR "property" #define MSG_PROPERTY_STR "property"
#define MSG_PROPERTIES_STR "properties" #define MSG_PROPERTIES_STR "properties"
#define MSG_ONLINE_STATUS_STR "onlineStatus" #define MSG_ONLINE_STATUS_STR "onlineStatus"
#define MSG_AREA_ROOM_FLOORS "floors"
#define MSG_AREA_ROOM_FLOOR_ID "floorId"
#define MSG_AREA_ROOM_FLOOR_ROOMS "rooms"
/************************LOCK KEY*************************/ /************************LOCK KEY*************************/
#define MSG_KEYDELETE_NOTIFICATION_KEYID "KeyDeletedNotification.KeyID" #define MSG_KEYDELETE_NOTIFICATION_KEYID "KeyDeletedNotification.KeyID"
#define MSG_KEYDELETE_NOTIFICATION_KEYTYPE "KeyDeletedNotification.KeyType" #define MSG_KEYDELETE_NOTIFICATION_KEYTYPE "KeyDeletedNotification.KeyType"
......
...@@ -56,7 +56,9 @@ static int _kk_area_db_init(void) ...@@ -56,7 +56,9 @@ static int _kk_area_db_init(void)
idx INTEGER PRIMARY KEY, \ idx INTEGER PRIMARY KEY, \
name varchar(256), \ name varchar(256), \
roomId varchar(256), \ roomId varchar(256), \
armingstate INTEGER)"; armingstate INTEGER, \
floorId varchar(256), \
floorName varchar(256))";
if (sqlite3_exec(ctx->pDb, pAreaTable, NULL, NULL, &pcErr) != SQLITE_OK) if (sqlite3_exec(ctx->pDb, pAreaTable, NULL, NULL, &pcErr) != SQLITE_OK)
{ {
...@@ -212,13 +214,42 @@ int kk_room_add(const char *name,const char *roomId) ...@@ -212,13 +214,42 @@ int kk_room_add(const char *name,const char *roomId)
} }
} }
int kk_get_roomname_by_id(const char *roomid,char *roomname,int len)
{
int isExist = 0;
sqlite3_stmt *stmt;
char *pRoomname = NULL;
kk_area_ctx_t *ctx = _kk_area_get_ctx();
char *sqlCmd = NULL;
int tlen = 0;
if(roomname == NULL){
return -1;
}
_kk_area_lock();
sqlCmd = sqlite3_mprintf("select * from AreaInfo WHERE roomId= '%s'",roomid);
sqlite3_prepare_v2(ctx->pDb, sqlCmd, strlen(sqlCmd), &stmt, NULL);
//INFO_PRINT("total_column = %d\n", sqlite3_column_count(stmt));
while(sqlite3_step(stmt) == SQLITE_ROW){
pRoomname = (char*)sqlite3_column_text(stmt, DB_ROOM_NAME);
}
if(pRoomname != NULL && strlen(pRoomname) > 0){
tlen = strlen(pRoomname) > len?len:strlen(pRoomname);
strncpy(roomname,pRoomname,tlen);
}else{
strcpy(roomname,"");
}
sqlite3_finalize(stmt);
sqlite3_free(sqlCmd);
_kk_area_unlock();
return 0;
}
int kk_room_update_armingstate(int state,const char *roomid) int kk_room_update_armingstate(int state,const char *roomid)
{ {
char *sqlCmd = NULL; char *sqlCmd = NULL;
int rc = 0; int rc = 0;
char *zErrMsg = 0; char *zErrMsg = 0;
kk_area_ctx_t *ctx = _kk_area_get_ctx(); kk_area_ctx_t *ctx = _kk_area_get_ctx();
_kk_area_lock(); _kk_area_lock();
sqlCmd = sqlite3_mprintf("UPDATE AreaInfo SET armingstate=%d WHERE roomId= '%s'",state,roomid); sqlCmd = sqlite3_mprintf("UPDATE AreaInfo SET armingstate=%d WHERE roomId= '%s'",state,roomid);
rc = sqlite3_exec(ctx->pDb, sqlCmd, NULL, NULL, &zErrMsg); rc = sqlite3_exec(ctx->pDb, sqlCmd, NULL, NULL, &zErrMsg);
...@@ -232,6 +263,26 @@ int kk_room_update_armingstate(int state,const char *roomid) ...@@ -232,6 +263,26 @@ int kk_room_update_armingstate(int state,const char *roomid)
_kk_area_unlock(); _kk_area_unlock();
return SUCCESS_RETURN; return SUCCESS_RETURN;
} }
int kk_room_set_floor_info(const char*floorId,const char* floorName,const char *roomid)
{
char *sqlCmd = NULL;
int rc = 0;
char *zErrMsg = 0;
kk_area_ctx_t *ctx = _kk_area_get_ctx();
_kk_area_lock();
sqlCmd = sqlite3_mprintf("UPDATE AreaInfo SET floorId=%s,floorName=%s WHERE roomId= '%s'",floorId,floorName,roomid);
rc = sqlite3_exec(ctx->pDb, sqlCmd, NULL, NULL, &zErrMsg);
if( rc != SQLITE_OK ){
ERROR_PRINT("SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}else{
INFO_PRINT("Table updata data successfully\n");
}
sqlite3_free(sqlCmd);
_kk_area_unlock();
return SUCCESS_RETURN;
}
int kk_room_delete(const char *roomId) int kk_room_delete(const char *roomId)
{ {
int res = 0; int res = 0;
...@@ -239,7 +290,7 @@ int kk_room_delete(const char *roomId) ...@@ -239,7 +290,7 @@ int kk_room_delete(const char *roomId)
char *sqlCmd = NULL; char *sqlCmd = NULL;
char *zErrMsg = 0; char *zErrMsg = 0;
const char *deleteCmd = "delete from AreaInfo where roomId = '%s';"; const char *deleteCmd = "delete from AreaInfo where roomId = '%s';";
kk_room_dev_remove_by_roomid(roomId);
_kk_area_lock(); _kk_area_lock();
sqlCmd = sqlite3_mprintf(deleteCmd,roomId); sqlCmd = sqlite3_mprintf(deleteCmd,roomId);
...@@ -276,6 +327,7 @@ static int _kk_check_dev_exist(const char* deviceCode,const char *epNum) ...@@ -276,6 +327,7 @@ static int _kk_check_dev_exist(const char* deviceCode,const char *epNum)
if(!strcmp(deviceCode,pDeviceCode) && !strcmp(pEpNum,epNum)) if(!strcmp(deviceCode,pDeviceCode) && !strcmp(pEpNum,epNum))
{ {
isExist = 1; isExist = 1;
INFO_PRINT("_kk_check_dev_exist\n");
break; break;
} }
} }
...@@ -294,7 +346,7 @@ int kk_room_dev_add(const char *roomId,const char *roomName,const char *deviceCo ...@@ -294,7 +346,7 @@ int kk_room_dev_add(const char *roomId,const char *roomName,const char *deviceCo
if(_kk_check_dev_exist(deviceCode,epNum)){ if(_kk_check_dev_exist(deviceCode,epNum)){
sqlCmd = sqlite3_mprintf("UPDATE AreaDevInfo SET roomId='%s', devName='%s', devName='%s'\ sqlCmd = sqlite3_mprintf("UPDATE AreaDevInfo SET roomId='%s', roomName='%s', devName='%s'\
WHERE deviceCode= '%s' and epNum = '%s'",roomId,roomName,devName,deviceCode,epNum); WHERE deviceCode= '%s' and epNum = '%s'",roomId,roomName,devName,deviceCode,epNum);
} }
else{ else{
...@@ -440,6 +492,27 @@ int kk_get_device_roomInfo(const char* deviceCode,int epNum,char *roomName,char ...@@ -440,6 +492,27 @@ int kk_get_device_roomInfo(const char* deviceCode,int epNum,char *roomName,char
_kk_area_unlock(); _kk_area_unlock();
return isGet; return isGet;
} }
int kk_room_dev_remove_by_roomid(const char *roomid)
{
int res = 0;
kk_area_ctx_t *ctx = _kk_area_get_ctx();
char *sqlCmd = NULL;
char *zErrMsg = 0;
const char *deleteCmd = "delete from AreaDevInfo where roomId = '%s';";
_kk_area_lock();
sqlCmd = sqlite3_mprintf(deleteCmd,roomid);
res = sqlite3_exec(ctx->pDb, sqlCmd, NULL, NULL, &zErrMsg);
if( res != SQLITE_OK ){
ERROR_PRINT("SQL error: %s\n", zErrMsg);
sqlite3_free(zErrMsg);
}else{
//INFO_PRINT("sub device insert data successfully\n");
}
sqlite3_free(sqlCmd);
_kk_area_unlock();
return SUCCESS_RETURN;
}
int kk_room_dev_remove(const char *deviceCode,const char *epNum) int kk_room_dev_remove(const char *deviceCode,const char *epNum)
{ {
int res = 0; int res = 0;
...@@ -448,9 +521,6 @@ int kk_room_dev_remove(const char *deviceCode,const char *epNum) ...@@ -448,9 +521,6 @@ int kk_room_dev_remove(const char *deviceCode,const char *epNum)
char *zErrMsg = 0; char *zErrMsg = 0;
const char *insertCmd = NULL; const char *insertCmd = NULL;
printf("deviceCode---->%s,%s\n",deviceCode,epNum);
if(epNum == NULL){ if(epNum == NULL){
insertCmd = "delete from AreaDevInfo where deviceCode = '%s';"; insertCmd = "delete from AreaDevInfo where deviceCode = '%s';";
} }
......
...@@ -12,6 +12,8 @@ enum{ ...@@ -12,6 +12,8 @@ enum{
DB_ROOM_NAME, DB_ROOM_NAME,
DB_ROOM_ID, DB_ROOM_ID,
DB_ROOM_ARMING, DB_ROOM_ARMING,
DB_ROOM_FLOORID,
DB_ROOM_FLOORNAME,
}; };
enum{ enum{
...@@ -36,5 +38,7 @@ int kk_get_room_armingstate(const char* roomId); ...@@ -36,5 +38,7 @@ int kk_get_room_armingstate(const char* roomId);
int kk_get_roomId_by_deviceCode(const char* deviceCode,const char *epNum,char *roomId,int size); int kk_get_roomId_by_deviceCode(const char* deviceCode,const char *epNum,char *roomId,int size);
int kk_get_device_roomInfo(const char* deviceCode,int epNum,char *roomName,char *roomId); int kk_get_device_roomInfo(const char* deviceCode,int epNum,char *roomName,char *roomId);
int kk_room_reset_armingstate(void); int kk_room_reset_armingstate(void);
int kk_room_dev_remove_by_roomid(const char *roomid);
int kk_room_set_floor_info(const char*floorId,const char* floorName,const char *roomid);
#endif #endif
...@@ -59,10 +59,15 @@ const char DM_MSG_INFO[] DM_READ_ONLY; ...@@ -59,10 +59,15 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
#define KK_THING_TOPO_CHANGE_MSG "/thing/topo/change" #define KK_THING_TOPO_CHANGE_MSG "/thing/topo/change"
#define KK_THING_SERVICE_REBOOT "/thing/service/reboot" #define KK_THING_SERVICE_REBOOT "/thing/service/reboot"
#define KK_THING_SERVICE_ADDROOM "/thing/service/addRoom" #define KK_THING_SERVICE_ADDROOM "/thing/service/addRoom"
#define KK_THING_SERVICE_ADDROOM_REPLY "/thing/service/addRoom_reply"
#define KK_THING_SERVICE_UPDATEROOM "/thing/service/updateRoom"
#define KK_THING_SERVICE_UPDATEROOM_REPLY "/thing/service/updateRoom_reply"
#define KK_THING_SERVICE_DELETEROOM "/thing/service/deleteRoom" #define KK_THING_SERVICE_DELETEROOM "/thing/service/deleteRoom"
#define KK_THING_SERVICE_DELETEROOM_REPLY "/thing/service/deleteRoom_reply"
#define KK_THING_SERVICE_ADDDEVICETOROOM "/thing/service/addDeviceToRoom" #define KK_THING_SERVICE_ADDDEVICETOROOM "/thing/service/addDeviceToRoom"
#define KK_THING_SERVICE_ADDDEVICETOROOM_REPLY "/thing/service/addDeviceToRoom_reply" #define KK_THING_SERVICE_ADDDEVICETOROOM_REPLY "/thing/service/addDeviceToRoom_reply"
#define KK_THING_SERVICE_REMOVEDEVICEFROMROOM "/thing/service/removeDeviceFromRoom" #define KK_THING_SERVICE_REMOVEDEVICEFROMROOM "/thing/service/removeDeviceFromRoom"
#define KK_THING_SERVICE_REMOVEDEVICEFROMROOM_REPLY "/thing/service/removeDeviceFromRoom_reply"
#define KK_THING_SERVICE_EXECUTEROOM "/thing/service/executeRoom" #define KK_THING_SERVICE_EXECUTEROOM "/thing/service/executeRoom"
#define KK_THING_SERVICE_SETLOCALTIMER "/thing/service/setLocalTimer" #define KK_THING_SERVICE_SETLOCALTIMER "/thing/service/setLocalTimer"
#define KK_THING_SERVICE_GETLOCALTIMER "/thing/service/getLocalTimer" #define KK_THING_SERVICE_GETLOCALTIMER "/thing/service/getLocalTimer"
...@@ -73,10 +78,14 @@ const char DM_MSG_INFO[] DM_READ_ONLY; ...@@ -73,10 +78,14 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
#define KK_THING_SERVICE_DELETEKEY "/thing/service/DeleteKey" #define KK_THING_SERVICE_DELETEKEY "/thing/service/DeleteKey"
#define KK_THING_SERVICE_MODIFYKEY "/thing/service/ModifyKey" #define KK_THING_SERVICE_MODIFYKEY "/thing/service/ModifyKey"
#define KK_THING_SERVICE_ADDSCENC "/thing/service/addScene" #define KK_THING_SERVICE_ADDSCENC "/thing/service/addScene"
#define KK_THING_SERVICE_ADDSCENC_REPLY "/thing/service/addScene_reply"
#define KK_THING_SERVICE_DELETESCENC "/thing/service/deleteScene" #define KK_THING_SERVICE_DELETESCENC "/thing/service/deleteScene"
#define KK_THING_SERVICE_DELETESCENC_REPLY "/thing/service/deleteScene_reply"
#define KK_THING_SERVICE_UPDATESCENC "/thing/service/updateScene" #define KK_THING_SERVICE_UPDATESCENC "/thing/service/updateScene"
#define KK_THING_SERVICE_UPDATESCENC_REPLY "/thing/service/updateScene_reply"
#define KK_THING_SERVICE_PROPERTY_GET_REPLY "/thing/service/property/get_reply" #define KK_THING_SERVICE_PROPERTY_GET_REPLY "/thing/service/property/get_reply"
#define KK_THING_SERVICE_EXECUTESCENE "/thing/service/executeScene" #define KK_THING_SERVICE_EXECUTESCENE "/thing/service/executeScene"
#define KK_THING_SERVICE_EXECUTESCENE_REPLY "/thing/service/executeScene_reply"
#define KK_THING_SERVICE_NEGATIVE "/thing/service/negativeProperty" #define KK_THING_SERVICE_NEGATIVE "/thing/service/negativeProperty"
#define KK_THING_METHOD_DELETESCENC "thing.service.deleteScene" #define KK_THING_METHOD_DELETESCENC "thing.service.deleteScene"
#define KK_THING_METHOD_UPDATESCENC "thing.service.updateScene" #define KK_THING_METHOD_UPDATESCENC "thing.service.updateScene"
...@@ -88,9 +97,10 @@ const char DM_MSG_INFO[] DM_READ_ONLY; ...@@ -88,9 +97,10 @@ const char DM_MSG_INFO[] DM_READ_ONLY;
#define KK_THING_SERVICE_SYNCDEVICEINFO_REPLY "/thing/service/syncDeviceInfo_reply" #define KK_THING_SERVICE_SYNCDEVICEINFO_REPLY "/thing/service/syncDeviceInfo_reply"
#define KK_THING_SERVICE_CLOUDSTATUS "/thing/service/cloudStatus" #define KK_THING_SERVICE_CLOUDSTATUS "/thing/service/cloudStatus"
#define KK_THING_SERVICE_EXECUTEDNDMODE "/thing/service/executeDNDMode" #define KK_THING_SERVICE_EXECUTEDNDMODE "/thing/service/executeDNDMode"
#define KK_THING_SERVICE_SETFLOOR "/thing/service/setAllFloors"
#define KK_THING_SERVICE_SETFLOOR_REPLY "/thing/service/setAllFloors_reply"
#define KK_THING_SERVICE_GETFLOOR "/thing/service/getAllFloors"
#define KK_THING_SERVICE_GETFLOOR_REPLY "/thing/service/getAllFloors_reply"
#define KK_THING_SERVICE_SYNCINFO_REPLY "/thing/service/syncinfo_reply" #define KK_THING_SERVICE_SYNCINFO_REPLY "/thing/service/syncinfo_reply"
#define KK_THING_SERVICE_SYNCINFOPUSH_REPLY "/thing/service/syncinfopush_reply" #define KK_THING_SERVICE_SYNCINFOPUSH_REPLY "/thing/service/syncinfopush_reply"
......
This diff is collapsed.
This diff is collapsed.
...@@ -19,6 +19,13 @@ ...@@ -19,6 +19,13 @@
"channel":"1", "channel":"1",
"valueRange":[], "valueRange":[],
"value": 0 "value": 0
},{
"identifier":"ColorTemperature",
"opcodemap":"ADJUST_COLOUR_TEMPERATURE",
"dataType":"int",
"channel":"1",
"valueRange":[],
"value": 0
} }
], ],
"oldccu":[ "oldccu":[
...@@ -38,6 +45,14 @@ ...@@ -38,6 +45,14 @@
"valueRange":[], "valueRange":[],
"syn":"bri", "syn":"bri",
"synType":"int" "synType":"int"
},{
"opcode":"ADJUST_COLOUR_TEMPERATURE",
"identifiermap":"ColorTemperature",
"dataType":"int",
"channel":"1",
"valueRange":[],
"syn":"colour_temperature",
"synType":"int"
} }
] ]
......
...@@ -19,6 +19,13 @@ ...@@ -19,6 +19,13 @@
"channel":"1", "channel":"1",
"valueRange":[], "valueRange":[],
"value": 0 "value": 0
},{
"identifier":"ColorTemperature",
"opcodemap":"ADJUST_COLOUR_TEMPERATURE",
"dataType":"int",
"channel":"1",
"valueRange":[],
"value": 0
},{ },{
"identifier":"PowerSwitch", "identifier":"PowerSwitch",
"opcodemap":"SWITCH", "opcodemap":"SWITCH",
...@@ -33,6 +40,13 @@ ...@@ -33,6 +40,13 @@
"channel":"2", "channel":"2",
"valueRange":[], "valueRange":[],
"value": 0 "value": 0
},{
"identifier":"ColorTemperature",
"opcodemap":"ADJUST_COLOUR_TEMPERATURE",
"dataType":"int",
"channel":"2",
"valueRange":[],
"value": 0
} }
], ],
"oldccu":[ "oldccu":[
...@@ -52,6 +66,14 @@ ...@@ -52,6 +66,14 @@
"valueRange":[], "valueRange":[],
"syn":"bri", "syn":"bri",
"synType":"int" "synType":"int"
},{
"opcode":"ADJUST_COLOUR_TEMPERATURE",
"identifiermap":"ColorTemperature",
"dataType":"int",
"channel":"1",
"valueRange":[],
"syn":"colour_temperature",
"synType":"int"
},{ },{
"opcode":"SWITCH", "opcode":"SWITCH",
"identifiermap":"PowerSwitch", "identifiermap":"PowerSwitch",
...@@ -68,6 +90,14 @@ ...@@ -68,6 +90,14 @@
"valueRange":[], "valueRange":[],
"syn":"bri", "syn":"bri",
"synType":"int" "synType":"int"
},{
"opcode":"ADJUST_COLOUR_TEMPERATURE",
"identifiermap":"ColorTemperature",
"dataType":"int",
"channel":"2",
"valueRange":[],
"syn":"colour_temperature",
"synType":"int"
} }
] ]
......
{
"productCode":"3093",
"operateType":"512",
"channel":3,
"syn_type":1,
"syn_opcode":"DIMMABLE_LIGHT_STATUS",
"newccu":[
{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"1",
"valueRange":[0,1],
"value": 0
},{
"identifier":"Brightness",
"opcodemap":"ADJUST_LUMINANCE",
"dataType":"int",
"channel":"1",
"valueRange":[],
"value": 0
},{
"identifier":"ColorTemperature",
"opcodemap":"ADJUST_COLOUR_TEMPERATURE",
"dataType":"int",
"channel":"1",
"valueRange":[],
"value": 0
},{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"2",
"valueRange":[0,1],
"value": 0
},{
"identifier":"Brightness",
"opcodemap":"ADJUST_LUMINANCE",
"dataType":"int",
"channel":"2",
"valueRange":[],
"value": 0
},{
"identifier":"ColorTemperature",
"opcodemap":"ADJUST_COLOUR_TEMPERATURE",
"dataType":"int",
"channel":"2",
"valueRange":[],
"value": 0
},{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"3",
"valueRange":[0,1],
"value": 0
},{
"identifier":"Brightness",
"opcodemap":"ADJUST_LUMINANCE",
"dataType":"int",
"channel":"3",
"valueRange":[],
"value": 0
},{
"identifier":"ColorTemperature",
"opcodemap":"ADJUST_COLOUR_TEMPERATURE",
"dataType":"int",
"channel":"3",
"valueRange":[],
],
"oldccu":[
{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"1",
"valueRange":["OFF","ON"],
"syn":"on",
"synType":"bool"
},{
"opcode":"ADJUST_LUMINANCE",
"identifiermap":"Brightness",
"dataType":"int",
"channel":"1",
"valueRange":[],
"syn":"bri",
"synType":"int"
},{
"opcode":"ADJUST_COLOUR_TEMPERATURE",
"identifiermap":"ColorTemperature",
"dataType":"int",
"channel":"1",
"valueRange":[],
"syn":"colour_temperature",
"synType":"int"
},{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"2",
"valueRange":["OFF","ON"],
"syn":"on",
"synType":"bool"
},{
"opcode":"ADJUST_LUMINANCE",
"identifiermap":"Brightness",
"dataType":"int",
"channel":"2",
"valueRange":[],
"syn":"bri",
"synType":"int"
},{
"opcode":"ADJUST_COLOUR_TEMPERATURE",
"identifiermap":"ColorTemperature",
"dataType":"int",
"channel":"2",
"valueRange":[],
"syn":"colour_temperature",
"synType":"int"
},{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"3",
"valueRange":["OFF","ON"],
"syn":"on",
"synType":"bool"
},{
"opcode":"ADJUST_LUMINANCE",
"identifiermap":"Brightness",
"dataType":"int",
"channel":"3",
"valueRange":[],
"syn":"bri",
"synType":"int"
},{
"opcode":"ADJUST_COLOUR_TEMPERATURE",
"identifiermap":"ColorTemperature",
"dataType":"int",
"channel":"3",
"valueRange":[],
"syn":"colour_temperature",
"synType":"int"
}
]
}
\ No newline at end of file
{
"productCode":"3129",
"operateType":"3",
"channel":1,
"newccu":[
{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"1",
"valueRange":[0,1],
"value": 0
}
],
"oldccu":[
{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"1",
"valueRange":["OFF","ON"]
}
]
}
\ No newline at end of file
{
"productCode":"3130",
"operateType":"3",
"channel":2,
"newccu":[
{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"1",
"valueRange":[0,1],
"value": 0
},
{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"2",
"valueRange":[0,1],
"value": 0
}
],
"oldccu":[
{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"1",
"valueRange":["OFF","ON"]
},
{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"2",
"valueRange":["OFF","ON"]
}
]
}
\ No newline at end of file
{
"productCode":"3131",
"operateType":"3",
"channel":3,
"newccu":[
{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"1",
"valueRange":[0,1],
"value": 0
},
{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"2",
"valueRange":[0,1],
"value": 0
},
{
"identifier":"PowerSwitch",
"opcodemap":"SWITCH",
"dataType":"int",
"channel":"3",
"valueRange":[0,1],
"value": 0
}
],
"oldccu":[
{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"1",
"valueRange":["OFF","ON"]
},
{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"2",
"valueRange":["OFF","ON"]
},
{
"opcode":"SWITCH",
"identifiermap":"PowerSwitch",
"dataType":"map",
"channel":"3",
"valueRange":["OFF","ON"]
}
]
}
\ No newline at end of file
{ {
"schema": "https://iot-ap.ikonke.com/model/product_3119.json", "schema": "https://iot-ap.ikonke.com/model/product_3119.json",
"productType": "sensor", "productType": "sensor",
"version": "1.0", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3119", "productCode": "3119",
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
} }
}, },
{ {
"identifier": "Carbondioxide", "identifier": "CO2",
"name": "CO2检测值", "name": "CO2检测值",
"dataType": { "dataType": {
"type": "int", "type": "int",
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
"type": "int", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "999", "max": "9999",
"unit": "ug/m3", "unit": "ug/m3",
"unitName": "微克每立方米", "unitName": "微克每立方米",
"step": "1" "step": "1"
...@@ -67,16 +67,30 @@ ...@@ -67,16 +67,30 @@
} }
}, },
{ {
"identifier": "Formaldehyde", "identifier": "HCHO",
"name": "当前甲醛检测值", "name": "甲醛检测值",
"dataType": { "dataType": {
"type": "double", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "1", "max": "9999",
"unit": "mg/m3", "unit": "ug/m3",
"unitName": "毫克每立方米", "unitName": "微克每立方米",
"step": "0.01" "step": "1"
}
}
},
{
"identifier": "Pollution",
"name": "TVOC检测值",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "9999",
"unit": "ug/m3",
"unitName": "微克每立方米",
"step": "1"
} }
} }
} }
...@@ -85,9 +99,10 @@ ...@@ -85,9 +99,10 @@
"inputData": [ "inputData": [
"Temperature", "Temperature",
"Humidity", "Humidity",
"Carbondioxide", "CO2",
"PM2.5", "PM2.5",
"Formaldehyde" "HCHO",
"Pollution"
], ],
"method": "thing.service.property.get", "method": "thing.service.property.get",
"name": "get", "name": "get",
...@@ -130,7 +145,7 @@ ...@@ -130,7 +145,7 @@
} }
}, },
{ {
"identifier": "Carbondioxide", "identifier": "CO2",
"name": "CO2检测值", "name": "CO2检测值",
"accessMode": "r", "accessMode": "r",
"required": false, "required": false,
...@@ -154,7 +169,7 @@ ...@@ -154,7 +169,7 @@
"type": "int", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "999", "max": "9999",
"unit": "ug/m3", "unit": "ug/m3",
"unitName": "微克每立方米", "unitName": "微克每立方米",
"step": "1" "step": "1"
...@@ -162,18 +177,34 @@ ...@@ -162,18 +177,34 @@
} }
}, },
{ {
"identifier": "Formaldehyde", "identifier": "HCHO",
"name": "当前甲醛检测值", "name": "甲醛检测值",
"accessMode": "r", "accessMode": "r",
"required": false, "required": false,
"dataType": { "dataType": {
"type": "double", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "1", "max": "9999",
"unit": "mg/m3", "unit": "ug/m3",
"unitName": "毫克每立方米", "unitName": "微克每立方米",
"step": "0.01" "step": "1"
}
}
},
{
"identifier": "Pollution",
"name": "TVOC检测值",
"accessMode": "r",
"required": false,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "9999",
"unit": "ug/m3",
"unitName": "微克每立方米",
"step": "1"
} }
} }
} }
...@@ -210,7 +241,7 @@ ...@@ -210,7 +241,7 @@
} }
}, },
{ {
"identifier": "Carbondioxide", "identifier": "CO2",
"name": "CO2检测值", "name": "CO2检测值",
"dataType": { "dataType": {
"type": "int", "type": "int",
...@@ -230,7 +261,7 @@ ...@@ -230,7 +261,7 @@
"type": "int", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "999", "max": "9999",
"unit": "ug/m3", "unit": "ug/m3",
"unitName": "微克每立方米", "unitName": "微克每立方米",
"step": "1" "step": "1"
...@@ -238,16 +269,30 @@ ...@@ -238,16 +269,30 @@
} }
}, },
{ {
"identifier": "Formaldehyde", "identifier": "HCHO",
"name": "当前甲醛检测值", "name": "甲醛检测值",
"dataType": { "dataType": {
"type": "double", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "1", "max": "9999",
"unit": "mg/m3", "unit": "mg/m3",
"unitName": "毫克每立方米", "unitName": "微克每立方米",
"step": "0.01" "step": "1"
}
}
},
{
"identifier": "Pollution",
"name": "TVOC检测值",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "9999",
"unit": "ug/m3",
"unitName": "微克每立方米",
"step": "1"
} }
} }
} }
......
{
"schema":"https://iot-ap.ikonke.com/model/product_3129.json",
"productType":"switch",
"version": "1.0",
"profile":{
"heartbeat":"300",
"productCode":"3129",
"productName":"肖邦系列.单火线单路灯控面板Z3S"
},
"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":[
"PowerSwitch"
],
"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_3130.json",
"productType":"switch",
"version": "1.0",
"profile":{
"heartbeat":"300",
"productCode":"3130",
"productName":"肖邦系列.单火线双路灯控面板Z3S"
},
"services":[
{
"outputData":[
],
"identifier":"set",
"inputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
}
],
"method":"thing.service.property.set",
"name":"set",
"required":true,
"callType":"async",
"desc":"属性设置"
},
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
}
],
"identifier":"get",
"inputData":[
"PowerSwitch_1",
"PowerSwitch_2"
],
"method":"thing.service.property.get",
"name":"get",
"required":true,
"callType":"async",
"desc":"属性获取"
},
{
"outputData":[
],
"identifier":"negativeProperty",
"inputData":[
"PowerSwitch_1",
"PowerSwitch_2"
],
"method":"thing.service.negativeProperty",
"name":"negativeProperty",
"required":true,
"callType":"async",
"desc":"属性值取反"
}
],
"properties":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
}
],
"events":[
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"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_3131.json",
"productType":"switch",
"version": "1.0",
"profile":{
"heartbeat":"300",
"productCode":"3131",
"productName":"肖邦系列.单火线三路灯控面板Z3S"
},
"services":[
{
"outputData":[
],
"identifier":"set",
"inputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_3",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
}
],
"method":"thing.service.property.set",
"name":"set",
"required":true,
"callType":"async",
"desc":"属性设置"
},
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_3",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
}
],
"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":[
"PowerSwitch_1",
"PowerSwitch_2",
"PowerSwitch_3"
],
"method":"thing.service.negativeProperty",
"name":"negativeProperty",
"required":true,
"callType":"async",
"desc":"属性值取反"
}
],
"properties":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"PowerSwitch_3",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
}
],
"events":[
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_3",
"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_3132.json", "schema": "https://iot-ap.ikonke.com/model/product_3132.json",
"productType": "sensor", "productType": "sensor",
"version": "1.0", "version": "1.1",
"profile": { "profile": {
"heartbeat": "300", "heartbeat": "300",
"productCode": "3132", "productCode": "3132",
...@@ -39,7 +39,7 @@ ...@@ -39,7 +39,7 @@
} }
}, },
{ {
"identifier": "Carbondioxide", "identifier": "CO2",
"name": "CO2检测值", "name": "CO2检测值",
"dataType": { "dataType": {
"type": "int", "type": "int",
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
"type": "int", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "999", "max": "9999",
"unit": "ug/m3", "unit": "ug/m3",
"unitName": "微克每立方米", "unitName": "微克每立方米",
"step": "1" "step": "1"
...@@ -67,16 +67,30 @@ ...@@ -67,16 +67,30 @@
} }
}, },
{ {
"identifier": "Formaldehyde", "identifier": "HCHO",
"name": "当前甲醛检测值", "name": "甲醛检测值",
"dataType": { "dataType": {
"type": "double", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "1", "max": "9999",
"unit": "mg/m3", "unit": "mg/m3",
"unitName": "毫克每立方米", "unitName": "微克每立方米",
"step": "0.01" "step": "1"
}
}
},
{
"identifier": "Pollution",
"name": "TVOC检测值",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "9999",
"unit": "ug/m3",
"unitName": "微克每立方米",
"step": "1"
} }
} }
} }
...@@ -85,9 +99,9 @@ ...@@ -85,9 +99,9 @@
"inputData": [ "inputData": [
"Temperature", "Temperature",
"Humidity", "Humidity",
"Carbondioxide", "CO2",
"PM2.5", "PM2.5",
"Formaldehyde" "HCHO"
], ],
"method": "thing.service.property.get", "method": "thing.service.property.get",
"name": "get", "name": "get",
...@@ -130,7 +144,7 @@ ...@@ -130,7 +144,7 @@
} }
}, },
{ {
"identifier": "Carbondioxide", "identifier": "CO2",
"name": "CO2检测值", "name": "CO2检测值",
"accessMode": "r", "accessMode": "r",
"required": false, "required": false,
...@@ -154,7 +168,7 @@ ...@@ -154,7 +168,7 @@
"type": "int", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "999", "max": "9999",
"unit": "ug/m3", "unit": "ug/m3",
"unitName": "微克每立方米", "unitName": "微克每立方米",
"step": "1" "step": "1"
...@@ -162,18 +176,34 @@ ...@@ -162,18 +176,34 @@
} }
}, },
{ {
"identifier": "Formaldehyde", "identifier": "HCHO",
"name": "当前甲醛检测值", "name": "甲醛检测值",
"accessMode": "r", "accessMode": "r",
"required": false, "required": false,
"dataType": { "dataType": {
"type": "double", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "1", "max": "9999",
"unit": "mg/m3", "unit": "ug/m3",
"unitName": "毫克每立方米", "unitName": "微克每立方米",
"step": "0.01" "step": "1"
}
}
},
{
"identifier": "Pollution",
"name": "TVOC检测值",
"accessMode": "r",
"required": false,
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "9999",
"unit": "ug/m3",
"unitName": "微克每立方米",
"step": "1"
} }
} }
} }
...@@ -210,7 +240,7 @@ ...@@ -210,7 +240,7 @@
} }
}, },
{ {
"identifier": "Carbondioxide", "identifier": "CO2",
"name": "CO2检测值", "name": "CO2检测值",
"dataType": { "dataType": {
"type": "int", "type": "int",
...@@ -230,7 +260,7 @@ ...@@ -230,7 +260,7 @@
"type": "int", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "999", "max": "9999",
"unit": "ug/m3", "unit": "ug/m3",
"unitName": "微克每立方米", "unitName": "微克每立方米",
"step": "1" "step": "1"
...@@ -238,16 +268,30 @@ ...@@ -238,16 +268,30 @@
} }
}, },
{ {
"identifier": "Formaldehyde", "identifier": "HCHO",
"name": "当前甲醛检测值", "name": "甲醛检测值",
"dataType": { "dataType": {
"type": "double", "type": "int",
"specs": { "specs": {
"min": "0", "min": "0",
"max": "1", "max": "9999",
"unit": "mg/m3", "unit": "ug/m3",
"unitName": "毫克每立方米", "unitName": "微克每立方米",
"step": "0.01" "step": "1"
}
}
},
{
"identifier": "Pollution",
"name": "TVOC检测值",
"dataType": {
"type": "int",
"specs": {
"min": "0",
"max": "9999",
"unit": "ug/m3",
"unitName": "微克每立方米",
"step": "1"
} }
} }
} }
......
{
"schema":"https://iot-ap.ikonke.com/model/product_3156.json",
"productType":"switch",
"version": "1.0",
"profile":{
"heartbeat":"300",
"productCode":"3156",
"productName":"美思系列.零火线单路灯控面板Z3S"
},
"services":[
{
"outputData":[
],
"identifier":"set",
"inputData":[
{
"identifier":"PowerSwitch",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"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":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"identifier":"get",
"inputData":[
"PowerSwitch",
"NoDisturbMode"
],
"method":"thing.service.property.get",
"name":"get",
"required":true,
"callType":"async",
"desc":"属性获取"
},
{
"outputData":[
],
"identifier":"negativeProperty",
"inputData":[
"PowerSwitch"
],
"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
},
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关",
"accessMode":"rw",
"required":true
}
],
"events":[
{
"outputData":[
{
"identifier":"PowerSwitch",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"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_3157.json",
"productType":"switch",
"version": "1.0",
"profile":{
"heartbeat":"300",
"productCode":"3157",
"productName":"美思系列.零火线双路灯控面板Z3S"
},
"services":[
{
"outputData":[
],
"identifier":"set",
"inputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"method":"thing.service.property.set",
"name":"set",
"required":true,
"callType":"async",
"desc":"属性设置"
},
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"identifier":"get",
"inputData":[
"PowerSwitch_1",
"PowerSwitch_2",
"NoDisturbMode"
],
"method":"thing.service.property.get",
"name":"get",
"required":true,
"callType":"async",
"desc":"属性获取"
},
{
"outputData":[
],
"identifier":"negativeProperty",
"inputData":[
"PowerSwitch_1",
"PowerSwitch_2"
],
"method":"thing.service.negativeProperty",
"name":"negativeProperty",
"required":true,
"callType":"async",
"desc":"属性值取反"
}
],
"properties":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关",
"accessMode":"rw",
"required":true
}
],
"events":[
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"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_3158.json",
"productType":"switch",
"version": "1.0",
"profile":{
"heartbeat":"300",
"productCode":"3158",
"productName":"美思系列.零火线三路灯控面板Z3S"
},
"services":[
{
"outputData":[
],
"identifier":"set",
"inputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_3",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"method":"thing.service.property.set",
"name":"set",
"required":true,
"callType":"async",
"desc":"属性设置"
},
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_3",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"identifier":"get",
"inputData":[
"PowerSwitch_1",
"PowerSwitch_2",
"PowerSwitch_3",
"NoDisturbMode"
],
"method":"thing.service.property.get",
"name":"get",
"required":true,
"callType":"async",
"desc":"属性获取"
},
{
"outputData":[
],
"identifier":"negativeProperty",
"inputData":[
"PowerSwitch_1",
"PowerSwitch_2",
"PowerSwitch_3"
],
"method":"thing.service.negativeProperty",
"name":"negativeProperty",
"required":true,
"callType":"async",
"desc":"属性值取反"
}
],
"properties":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"PowerSwitch_3",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关",
"accessMode":"rw",
"required":true
},
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关",
"accessMode":"rw",
"required":true
}
],
"events":[
{
"outputData":[
{
"identifier":"PowerSwitch_1",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_2",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"PowerSwitch_3",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"电源开关"
},
{
"identifier":"NoDisturbMode",
"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_3163.json",
"productType": "lightPanel",
"version": "1.0",
"profile": {
"heartbeat": "300",
"productCode": "3163",
"productName": "美思系列.零火线调光面板Z3S(KONKE)"
},
"services": [
{
"outputData": [],
"identifier": "set",
"inputData": [
{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
},
{
"identifier": "Brightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "亮度"
}
],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
},
{
"outputData": [
{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
},
{
"identifier": "Brightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "亮度"
}
],
"identifier": "get",
"inputData": [
"PowerSwitch",
"Brightness"
],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
},
{
"outputData":[
],
"identifier":"negativeProperty",
"inputData":[
"PowerSwitch"
],
"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
},
{
"identifier": "Brightness",
"name": "亮度",
"accessMode": "rw",
"required": false,
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
}
}
],
"events": [
{
"outputData": [
{
"identifier": "PowerSwitch",
"dataType": {
"specs": {
"0": "关闭",
"1": "打开"
},
"type": "bool"
},
"name": "电源开关"
},
{
"identifier": "Brightness",
"dataType": {
"type": "int",
"specs": {
"min": "1",
"max": "100",
"unit": "%",
"unitName": "百分比",
"step": "1"
}
},
"name": "亮度"
}
],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
}
]
}
{
"schema": "https://iot-ap.ikonke.com/model/product_3164.json",
"productType": "scene",
"version": "1.0",
"profile": {
"heartbeat": "300",
"productCode": "3164",
"productName": "美思系列.零火线情景面板Z3S"
},
"services": [
{
"outputData": [],
"identifier": "set",
"inputData": [
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"method": "thing.service.property.set",
"name": "set",
"required": true,
"callType": "async",
"desc": "属性设置"
},
{
"outputData": [
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"identifier": "get",
"inputData": ["NoDisturbMode"],
"method": "thing.service.property.get",
"name": "get",
"required": true,
"callType": "async",
"desc": "属性获取"
}
],
"properties": [
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关",
"accessMode":"rw",
"required":true
}
],
"events": [
{
"outputData": [
{
"identifier":"NoDisturbMode",
"dataType":{
"specs":{
"0":"关闭",
"1":"打开"
},
"type":"bool"
},
"name":"勿扰模式开关"
}
],
"identifier": "property",
"method": "thing.event.property.post",
"name": "property",
"type": "info",
"required": true,
"desc": "属性上报"
},
{
"outputData": [
{
"identifier": "SceneNum",
"dataType": {
"specs": {
"1": "场景1",
"2": "场景2",
"3": "场景3",
"4": "场景4"
},
"type": "enum"
},
"name": "场景编号"
}
],
"identifier": "SceneRecall",
"method": "thing.event.SceneRecall.post",
"name": "SceneRecall",
"type": "scene",
"required": true,
"desc": "场景触发上报"
}
]
}
{
"schema": "https://iot-ap.ikonke.com/model/product_3185.json",
"productType": "scene",
"version": "1.0",
"profile": {
"heartbeat": "1200",
"productCode": "3185",
"productName": "肖邦系列.单火线双控快捷面板(KONKE)"
},
"services": [
],
"properties": [
],
"events": [
{
"outputData": [
{
"identifier": "SceneNum",
"dataType": {
"specs": {
"1": "场景1",
"2": "场景2",
"3": "场景3"
},
"type": "enum"
},
"name": "场景编号"
}
],
"identifier": "SceneRecall",
"method": "thing.event.SceneRecall.post",
"name": "SceneRecall",
"type": "scene",
"required": true,
"desc": "场景触发上报"
}
]
}
1.3.4 1.1.4
\ No newline at end of file \ No newline at end of file
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